From 613f2bee59151e43240229ffeb83d68cb7ef59ae Mon Sep 17 00:00:00 2001 From: Ryan Tate Date: Wed, 29 Nov 2017 19:33:38 -0800 Subject: [PATCH 01/10] WIP; run your own gittoken server alpha --- .babelrc | 2 +- .dockerignore | 4 +- Dockerfile | 12 +- bin/app.js | 5 + dist/contracts/getRewardDetails.js | 28 + dist/contracts/index.js | 82 + dist/faucet.js | 1 - dist/index.js | 184 +- dist/middleware/WebHookMiddleware.js | 36 + dist/middleware/index.js | 14 + dist/mysql/index.js | 29 + dist/mysql/query.js | 27 + dist/mysql/saveContribution.js | 34 + dist/mysql/saveTotalSupply.js | 36 + dist/mysql/saveUserBalance.js | 41 + dist/routers/AuthRouter.js | 59 + dist/routers/WebHookRouter.js | 33 + dist/routers/index.js | 19 + dist/sequelize.js | 18 - dist/utils/index.js | 19 + dist/utils/parseContribution.js | 74 + dist/utils/signContribution.js | 47 + docker-compose.yml | 32 +- gittoken.config.js | 11 +- package-lock.json | 9514 ++++++++++++++++++++++++++ package.json | 27 +- parity/chain.json | 78 - src/contracts/index.js | 26 + src/index.js | 167 +- src/middleware/WebHookMiddleware.js | 29 + src/middleware/index.js | 5 + src/mysql/index.js | 11 + src/mysql/query.js | 10 + src/mysql/saveContribution.js | 69 + src/mysql/saveTotalSupply.js | 37 + src/mysql/saveUserBalance.js | 50 + src/routers/AuthRouter.js | 53 + src/routers/WebHookRouter.js | 17 + src/routers/index.js | 7 + src/utils/index.js | 7 + src/utils/parseContribution.js | 62 + src/utils/signContribution.js | 42 + src_old/index.js | 75 + torvalds/Dockerfile | 15 + torvalds/chain.json | 94 + {parity => torvalds}/config.toml | 47 +- utils/keccak.js | 55 - utils/keygen.js | 56 - yarn.lock | 3832 ----------- 49 files changed, 10990 insertions(+), 4242 deletions(-) create mode 100644 bin/app.js create mode 100644 dist/contracts/getRewardDetails.js create mode 100644 dist/contracts/index.js delete mode 100644 dist/faucet.js create mode 100644 dist/middleware/WebHookMiddleware.js create mode 100644 dist/middleware/index.js create mode 100644 dist/mysql/index.js create mode 100644 dist/mysql/query.js create mode 100644 dist/mysql/saveContribution.js create mode 100644 dist/mysql/saveTotalSupply.js create mode 100644 dist/mysql/saveUserBalance.js create mode 100644 dist/routers/AuthRouter.js create mode 100644 dist/routers/WebHookRouter.js create mode 100644 dist/routers/index.js delete mode 100644 dist/sequelize.js create mode 100644 dist/utils/index.js create mode 100644 dist/utils/parseContribution.js create mode 100644 dist/utils/signContribution.js create mode 100644 package-lock.json delete mode 100644 parity/chain.json create mode 100644 src/contracts/index.js create mode 100644 src/middleware/WebHookMiddleware.js create mode 100644 src/middleware/index.js create mode 100644 src/mysql/index.js create mode 100644 src/mysql/query.js create mode 100644 src/mysql/saveContribution.js create mode 100644 src/mysql/saveTotalSupply.js create mode 100644 src/mysql/saveUserBalance.js create mode 100644 src/routers/AuthRouter.js create mode 100644 src/routers/WebHookRouter.js create mode 100644 src/routers/index.js create mode 100644 src/utils/index.js create mode 100644 src/utils/parseContribution.js create mode 100644 src/utils/signContribution.js create mode 100644 src_old/index.js create mode 100644 torvalds/Dockerfile create mode 100644 torvalds/chain.json rename {parity => torvalds}/config.toml (50%) delete mode 100644 utils/keccak.js delete mode 100644 utils/keygen.js delete mode 100644 yarn.lock diff --git a/.babelrc b/.babelrc index 8403745..d08fc51 100644 --- a/.babelrc +++ b/.babelrc @@ -3,7 +3,7 @@ "development": { "presets": [ "stage-0", - "es2015" + "env" ], "plugins": [ [ diff --git a/.dockerignore b/.dockerignore index 22e9a6b..49dd65e 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,3 +1,5 @@ /gittoken/* -/parity/keys/DevelopmentChain/* node_modules +src_old +dist +keystore/* diff --git a/Dockerfile b/Dockerfile index 015263d..ecd51e8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,15 +1,13 @@ -FROM node:6.11.0 - -RUN npm i -g yarn +FROM node:8.8.1 WORKDIR /gittoken-server # RUN git clone https://github.com/git-token/express-server.git . ADD . . -RUN yarn install -RUN yarn run build-src +RUN npm install +RUN npm run build -ENTRYPOINT yarn run start +ENTRYPOINT npm run start -EXPOSE 1324 1325 +EXPOSE 3000 diff --git a/bin/app.js b/bin/app.js new file mode 100644 index 0000000..c4b70c3 --- /dev/null +++ b/bin/app.js @@ -0,0 +1,5 @@ +const GitTokenServer = require('../dist/index').default; +const config = require('../gittoken.config.js') + +/* Run GitToken Server; Set configuration details in an .env file called gittoken.env */ +const server = new GitTokenServer(config) diff --git a/dist/contracts/getRewardDetails.js b/dist/contracts/getRewardDetails.js new file mode 100644 index 0000000..a5ee233 --- /dev/null +++ b/dist/contracts/getRewardDetails.js @@ -0,0 +1,28 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = getRewardDetails; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +// import GitTokenRewardPoints from 'gittoken-contracts/build/contracts/GitTokenRewardPoints.json' + +function getRewardDetails(_ref) { + var eventType = _ref.eventType, + subEventType = _ref.subEventType; + + return new _bluebird2.default(function (resolve, reject) { + // TODO Write The GitTokenRewardPoints.sol Contract + // Make call to contract. + resolve({ + rewardValue: 0, + reservedValue: 0 + }); + }); +} \ No newline at end of file diff --git a/dist/contracts/index.js b/dist/contracts/index.js new file mode 100644 index 0000000..7f894ba --- /dev/null +++ b/dist/contracts/index.js @@ -0,0 +1,82 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); + +var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); + +var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); + +var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); + +var _createClass2 = require('babel-runtime/helpers/createClass'); + +var _createClass3 = _interopRequireDefault(_createClass2); + +var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); + +var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); + +var _inherits2 = require('babel-runtime/helpers/inherits'); + +var _inherits3 = _interopRequireDefault(_inherits2); + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +var _gittokenKeystoreGenerator = require('gittoken-keystore-generator'); + +var _gittokenKeystoreGenerator2 = _interopRequireDefault(_gittokenKeystoreGenerator); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +/* babel-plugin-inline-import 'gittoken-contracts/build/contracts/RewardPoints.json' */var RewardPoints = '{\n "contract_name": "RewardPoints",\n "abi": [\n {\n "constant": true,\n "inputs": [\n {\n "name": "",\n "type": "address"\n }\n ],\n "name": "owner",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n },\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "name": "setRewardDetails",\n "outputs": [\n {\n "name": "success",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n }\n ],\n "name": "getRewardDetails",\n "outputs": [\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "newOwner",\n "type": "address"\n }\n ],\n "name": "transferOwnership",\n "outputs": [],\n "payable": false,\n "type": "function"\n },\n {\n "inputs": [\n {\n "name": "_decimals",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "constructor"\n }\n ],\n "unlinked_binary": "0x606060405234156200001057600080fd5b60405160208062006449833981016040528080519150505b5b600160a060020a0333166000908152602081905260409020805460ff191660011790555b600381905560fa600a82900a0260016040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e6368000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f746167000000000000000000000000000000000000000000000000000000000081526003810191909152602301604051809103902081905550600354600a0a6103e80260016040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a016040518091039020604051908152602001604051809103902081905550600354600a0a6101f4026001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60640260016040517f666f726b00000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6103e80260016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006001604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c01604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60640260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f63616e63656c6c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60fa026001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f6368616e6765640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e01604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6109c40260016040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c7400000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e766572746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60fa026001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6064026001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f7375626d6974746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6064026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6064026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6469736d6973736564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f7665640000000000000000000081526016810191909152603601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a6109c40260016040517f70696e6700000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a60fa0260016040517f7075736800000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6113880260016040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c6973686564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6103e80260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e670000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f727900000000000000000081526017810191909152603701604051809103902081905550600354600a0a6103e80260016040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f73746172746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040519081526020016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260026040517f666f726b0000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006002604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f63616e63656c6c65640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f6368616e676564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a613a980260026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a613a980260026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c740000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e76657274656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e6564000000000000000000000000000000000000000000000000815260088101919091526028016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6372656174656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f7375626d69747465640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6469736d697373656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f766564000000000000000000008152601681019190915260360160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a6113880260026040517f70696e670000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f707573680000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c697368656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e67000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f720000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f72790000000000000000008152601781019190915260370160405190819003902055600060026040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260026040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f737461727465640000000000000000000000000000000000000000000000000081526007810191909152602701604051908190039020555b505b6106458062005d646000396000f300606060405263ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663666e1b39811461005e5780638bea03961461009157806392956c1e1461013f578063f2fde38b146101ea575b600080fd5b341561006957600080fd5b61007d600160a060020a036004351661020b565b604051901515815260200160405180910390f35b341561009c57600080fd5b61007d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505084359460200135935061022092505050565b604051901515815260200160405180910390f35b341561014a57600080fd5b6101d260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496506103ee95505050505050565b60405191825260208201526040908101905180910390f35b34156101f557600080fd5b610209600160a060020a0360043516610593565b005b60006020819052908152604090205460ff1681565b600160a060020a03331660009081526020819052604081205460ff16151561024757600080fd5b826001866040518082805190602001908083835b6020831061027b57805182525b601f19909201916020918201910161025b565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106102df57805182525b601f1990920191602091820191016102bf565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405190819003902055816002866040518082805190602001908083835b6020831061034857805182525b601f199092019160209182019101610328565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106103ac57805182525b601f19909201916020918201910161038c565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051908190039020555060015b5b949350505050565b6000806001846040518082805190602001908083835b6020831061042457805182525b601f199092019160209182019101610404565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020836040518082805190602001908083835b6020831061048857805182525b601f199092019160209182019101610468565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020546002856040518082805190602001908083835b602083106104ef57805182525b601f1990920191602091820191016104cf565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020846040518082805190602001908083835b6020831061055357805182525b601f199092019160209182019101610533565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902054915091505b9250929050565b600160a060020a03331660009081526020819052604090205460ff1615156105ba57600080fd5b600160a060020a03811660009081526020819052604090205460ff16151561061457600160a060020a03808216600090815260208190526040808220805460ff199081166001179091553390931682529020805490911690555b5b5b505600a165627a7a723058208d12e75bd223f0bd37d987450a0870b0595347cc346051647a28ac82ed911ac90029696e7374616c6c6174696f6e5f7265706f7369746f72696573000000000000006465706c6f796d656e745f73746174757300000000000000000000000000000070756c6c5f726571756573745f7265766965775f636f6d6d656e74000000000070756c6c5f726571756573745f726576696577000000000000000000000000006d61726b6574706c6163655f7075726368617365000000000000000000000000",\n "networks": {\n "9": {\n "events": {},\n "links": {},\n "address": "0x9e7658e5c0fce950df41b55714ddeb73d2b72cd9",\n "updated_at": 1511985340227\n }\n },\n "schema_version": "0.0.5",\n "updated_at": 1511985340227\n}'; + +var GitTokenContracts = function (_GitTokenKeystoreGene) { + (0, _inherits3.default)(GitTokenContracts, _GitTokenKeystoreGene); + + function GitTokenContracts(options) { + (0, _classCallCheck3.default)(this, GitTokenContracts); + + var _this = (0, _possibleConstructorReturn3.default)(this, (GitTokenContracts.__proto__ || (0, _getPrototypeOf2.default)(GitTokenContracts)).call(this, options)); + + _this.RewardPoints = _this.load({ contract: RewardPoints, network: '9' }); + console.log('this.RewardPoints', _this.RewardPoints); + return _this; + } + + (0, _createClass3.default)(GitTokenContracts, [{ + key: 'load', + value: function load(_ref) { + var contract = _ref.contract, + network = _ref.network; + + var _JSON$parse = JSON.parse(contract), + abi = _JSON$parse.abi, + networks = _JSON$parse.networks; + + var address = networks[network]['address']; + + var C = this.eth.contract(abi).at(address); + + C['abi'].filter(function (item) { + if (item['type'] == 'function') { + return true; + } + }).map(function (item) { + var name = item.name; + + C[name] = (0, _bluebird.promisifyAll)(C[name]); + }); + + return C; + } + }]); + return GitTokenContracts; +}(_gittokenKeystoreGenerator2.default); + +exports.default = GitTokenContracts; \ No newline at end of file diff --git a/dist/faucet.js b/dist/faucet.js deleted file mode 100644 index 9a390c3..0000000 --- a/dist/faucet.js +++ /dev/null @@ -1 +0,0 @@ -"use strict"; \ No newline at end of file diff --git a/dist/index.js b/dist/index.js index 65aef2b..c3a1da7 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1,102 +1,144 @@ 'use strict'; -var _express = require('express'); - -var _express2 = _interopRequireDefault(_express); - -var _http = require('http'); - -var _http2 = _interopRequireDefault(_http); - -var _cors = require('cors'); +Object.defineProperty(exports, "__esModule", { + value: true +}); -var _cors2 = _interopRequireDefault(_cors); +var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); -var _path = require('path'); +var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); -var _path2 = _interopRequireDefault(_path); +var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); -var _bodyParser = require('body-parser'); +var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); -var _bodyParser2 = _interopRequireDefault(_bodyParser); +var _createClass2 = require('babel-runtime/helpers/createClass'); -var _index = require('gittoken-api-middleware/dist/index'); +var _createClass3 = _interopRequireDefault(_createClass2); -var _index2 = _interopRequireDefault(_index); +var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); -var _passport = require('passport'); - -var _passport2 = _interopRequireDefault(_passport); +var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); -var _passportGithub = require('passport-github'); +var _inherits2 = require('babel-runtime/helpers/inherits'); -var _expressGraphql = require('express-graphql'); +var _inherits3 = _interopRequireDefault(_inherits2); -var _expressGraphql2 = _interopRequireDefault(_expressGraphql); +var _express = require('express'); -var _graphql = require('graphql'); +var _express2 = _interopRequireDefault(_express); -var _sequelize = require('./sequelize'); +var _cors = require('cors'); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _cors2 = _interopRequireDefault(_cors); -var gittokenConfig = require(process.argv[2] || process.cwd() + '/gittoken.config.js'); -var githubCredentials = gittokenConfig.githubCredentials, - sessionSecret = gittokenConfig.api.sessionSecret; +var _bodyParser = require('body-parser'); +var _bodyParser2 = _interopRequireDefault(_bodyParser); -var app = (0, _express2.default)(); -var port = 1324; +var _passport = require('passport'); -_passport2.default.use(new _passportGithub.Strategy(githubCredentials, function (accessToken, refreshToken, profile, cb) { - cb(null, { accessToken: accessToken, profile: profile }); -})); +var _passport2 = _interopRequireDefault(_passport); -_passport2.default.serializeUser(function (user, cb) { - cb(null, user); -}); +var _mysql = require('mysql'); -_passport2.default.deserializeUser(function (user, cb) { - cb(null, user); -}); +var _mysql2 = _interopRequireDefault(_mysql); -app.use((0, _cors2.default)()); -app.use(require('cookie-parser')()); -app.use(_bodyParser2.default.json()); // handle json data -app.use(_bodyParser2.default.urlencoded({ extended: true })); // handle URL-encoded data +var _passportGithub = require('passport-github2'); -/** - * Serve static files - */ +var _index = require('./utils/index'); -// app.use('/', -// express.static(`${process.cwd()}/node_modules/gittoken-messenger-ui/`)) +var _index2 = require('./contracts/index'); -app.use('/', _express2.default.static(process.cwd() + '/node_modules/gittoken-dashboard/')); +var _index3 = _interopRequireDefault(_index2); -app.use(require('express-session')({ - secret: sessionSecret, - resave: true, - saveUninitialized: true -})); +var _index4 = require('./mysql/index'); -/** - * Setup GitHub OAuth Strategy - */ -app.use(_passport2.default.initialize()); -app.use(_passport2.default.session()); +var _index5 = require('./routers/index'); -app.get('/auth/github', _passport2.default.authenticate('github')); -app.get('/auth/github/callback', _passport2.default.authenticate('github', { failureRedirect: '/' }), function (req, res) { - res.redirect('/'); -}); +var _index6 = require('./middleware/index'); -/** - * Establish GitToken Middleware Services - */ -var gittoken = new _index2.default(gittokenConfig); -app.use('/gittoken', gittoken.routeRequests()); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -app.listen(port, function () { - console.log('GitToken Server Listening on Port ' + port); -}); \ No newline at end of file +// import GitTokenKeystoreGenerator from 'gittoken-keystore-generator' +var GitTokenServer = function (_GitTokenContracts) { + (0, _inherits3.default)(GitTokenServer, _GitTokenContracts); + + function GitTokenServer(_ref) { + var mysqlOpts = _ref.mysqlOpts, + _ref$api = _ref.api, + port = _ref$api.port, + sessionSecret = _ref$api.sessionSecret, + githubCredentials = _ref.githubCredentials, + dirPath = _ref.dirPath, + address = _ref.address, + recoveryShare = _ref.recoveryShare, + web3Provider = _ref.web3Provider; + (0, _classCallCheck3.default)(this, GitTokenServer); + + /* Bind Options*/ + var _this = (0, _possibleConstructorReturn3.default)(this, (GitTokenServer.__proto__ || (0, _getPrototypeOf2.default)(GitTokenServer)).call(this, { dirPath: dirPath, address: address, recoveryShare: recoveryShare, web3Provider: web3Provider })); + + _this.port = port; + _this.githubCredentials = githubCredentials; + _this.sessionSecret = sessionSecret; + _this.web3Provider = web3Provider; + + /* Bind Methods */ + _this.AuthRouter = _index5.AuthRouter.bind(_this); + _this.WebHookRouter = _index5.WebHookRouter.bind(_this); + _this.WebHookMiddleware = _index6.WebHookMiddleware.bind(_this); + _this.parseContribution = _index.parseContribution.bind(_this); + _this.signContribution = _index.signContribution.bind(_this); + _this.query = _index4.query.bind(_this); + _this.saveContribution = _index4.saveContribution.bind(_this); + _this.saveUserBalance = _index4.saveUserBalance.bind(_this); + _this.saveTotalSupply = _index4.saveTotalSupply.bind(_this); + + /* MySql Connection */ + _this.mysql = _mysql2.default.createConnection(mysqlOpts); + + /* Express Application */ + _this.app = (0, _express2.default)(); + _this.app.use((0, _cors2.default)()); + _this.app.use(require('cookie-parser')()); + _this.app.use(require('express-session')({ + secret: _this.sessionSecret, + resave: true, + saveUninitialized: true + })); + _this.app.use(_bodyParser2.default.json()); // handle json data + _this.app.use(_bodyParser2.default.urlencoded({ extended: true })); // handle + + _this.app.use('/auth/', _this.AuthRouter()); + _this.app.use('/webhook/', _this.WebHookRouter()); + + _this.app.use('/', function (req, res) { + res.send('Hello, GitToken Server!'); + }); + + /* Run GitToken Server */ + _this.listen(); + return _this; + } + + /** + * [listen description] + * @return {[type]} [description] + */ + + + (0, _createClass3.default)(GitTokenServer, [{ + key: 'listen', + value: function listen() { + var _this2 = this; + + this.app.listen(this.port, function () { + console.log('GitToken Server Listening on Port ' + _this2.port); + }); + } + }]); + return GitTokenServer; +}(_index3.default); + +exports.default = GitTokenServer; \ No newline at end of file diff --git a/dist/middleware/WebHookMiddleware.js b/dist/middleware/WebHookMiddleware.js new file mode 100644 index 0000000..ed78cd4 --- /dev/null +++ b/dist/middleware/WebHookMiddleware.js @@ -0,0 +1,36 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = WebHookMiddleware; +function WebHookMiddleware(req, res, next) { + var _this = this; + + var headers = req.headers, + payload = req.body.payload; + + + this.parseContribution({ headers: headers, payload: JSON.parse(payload) }).then(function (contribution) { + + console.log('contribution', contribution); + return _this.signContribution(contribution); + }).then(function (signedContribution) { + + console.log('signedContribution', signedContribution); + return _this.saveContribution(signedContribution); + }).then(function (savedContribution) { + console.log('savedContribution', savedContribution); + req.contribution = savedContribution; + return _this.saveTotalSupply(req.contribution); + }).then(function (totalSupply) { + req.totalSupply = totalSupply; + return _this.saveUserBalance(req.contribution); + }).then(function (userBalance) { + req.userBalance = userBalance; + next(); + }).catch(function (error) { + console.log('error', error); + res.status(500).send(error.message); + }); +} \ No newline at end of file diff --git a/dist/middleware/index.js b/dist/middleware/index.js new file mode 100644 index 0000000..b0880b2 --- /dev/null +++ b/dist/middleware/index.js @@ -0,0 +1,14 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.WebHookMiddleware = undefined; + +var _WebHookMiddleware = require('./WebHookMiddleware'); + +var _WebHookMiddleware2 = _interopRequireDefault(_WebHookMiddleware); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.WebHookMiddleware = _WebHookMiddleware2.default; \ No newline at end of file diff --git a/dist/mysql/index.js b/dist/mysql/index.js new file mode 100644 index 0000000..a8d24fb --- /dev/null +++ b/dist/mysql/index.js @@ -0,0 +1,29 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.query = exports.saveTotalSupply = exports.saveUserBalance = exports.saveContribution = undefined; + +var _saveContribution = require('./saveContribution'); + +var _saveContribution2 = _interopRequireDefault(_saveContribution); + +var _saveUserBalance = require('./saveUserBalance'); + +var _saveUserBalance2 = _interopRequireDefault(_saveUserBalance); + +var _saveTotalSupply = require('./saveTotalSupply'); + +var _saveTotalSupply2 = _interopRequireDefault(_saveTotalSupply); + +var _query = require('./query'); + +var _query2 = _interopRequireDefault(_query); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.saveContribution = _saveContribution2.default; +exports.saveUserBalance = _saveUserBalance2.default; +exports.saveTotalSupply = _saveTotalSupply2.default; +exports.query = _query2.default; \ No newline at end of file diff --git a/dist/mysql/query.js b/dist/mysql/query.js new file mode 100644 index 0000000..af5fca0 --- /dev/null +++ b/dist/mysql/query.js @@ -0,0 +1,27 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = query; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function query(_ref) { + var _this = this; + + var queryString = _ref.queryString; + + return new _bluebird2.default(function (resolve, reject) { + _this.mysql.query(queryString, function (error, results, fields) { + if (error) { + reject(error); + } + resolve(results); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/saveContribution.js b/dist/mysql/saveContribution.js new file mode 100644 index 0000000..f3dcef4 --- /dev/null +++ b/dist/mysql/saveContribution.js @@ -0,0 +1,34 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = saveContribution; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function saveContribution(contribution) { + var _this = this; + + return new _bluebird2.default(function (resolve, reject) { + _this.query({ + queryString: '\n CREATE TABLE IF NOT EXISTS contributions (\n organization CHARACTER(39),\n contributor CHARACTER(42),\n username TEXT,\n eventType TEXT,\n subEventType TEXT,\n rewardValue BIGINT NOT NULL DEFAULT 0,\n reservedValue BIGINT NOT NULL DEFAULT 0,\n date BIGINT NOT NULL DEFAULT 0,\n delivery_id CHARACTER(36) PRIMARY KEY,\n hash CHARACTER(66),\n r CHARACTER(64),\n s CHARACTER(64),\n v BIGINT NOT NULL DEFAULT 0\n );\n ' + }).then(function () { + return _this.query({ + queryString: '\n INSERT INTO contributions (\n organization,\n contributor,\n username,\n eventType,\n subEventType,\n rewardValue,\n reservedValue,\n date,\n delivery_id,\n hash,\n r,\n s,\n v\n ) VALUES (\n "' + contribution['organization'] + '",\n "' + contribution['contributor'] + '",\n "' + contribution['username'] + '",\n "' + contribution['eventType'] + '",\n "' + contribution['subEventType'] + '",\n ' + contribution['rewardValue'] + ',\n ' + contribution['reservedValue'] + ',\n ' + contribution['date'] + ',\n "' + contribution['delivery_id'] + '",\n "' + contribution['hash'] + '",\n "' + contribution['r'] + '",\n "' + contribution['s'] + '",\n ' + contribution['v'] + '\n );\n ' + }); + }).then(function () { + return _this.query({ + queryString: '\n SELECT * FROM contributions WHERE delivery_id = "' + contribution['delivery_id'] + '";\n ' + }); + }).then(function (contribution) { + resolve(contribution[0]); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/saveTotalSupply.js b/dist/mysql/saveTotalSupply.js new file mode 100644 index 0000000..45589e7 --- /dev/null +++ b/dist/mysql/saveTotalSupply.js @@ -0,0 +1,36 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = saveTotalSupply; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function saveTotalSupply(contribution) { + var _this = this; + + return new _bluebird2.default(function (resolve, reject) { + var rewardValue = contribution.rewardValue, + reservedValue = contribution.reservedValue, + date = contribution.date; + + + _this.query({ queryString: '\n CREATE TABLE IF NOT EXISTS total_supply (\n total_tokens BIGINT NOT NULL DEFAULT 0,\n date BIGINT NOT NULL DEFAULT 0 PRIMARY KEY\n );\n ' }).then(function () { + return _this.query({ queryString: '\n SELECT * FROM total_supply ORDER BY date DESC LIMIT 1;\n ' }); + }).then(function (data) { + var total_tokens = data.length ? data[0]['total_tokens'] : 0; + return _this.query({ queryString: '\n INSERT INTO total_supply (\n total_tokens,\n date\n ) VALUES (\n ' + (total_tokens += rewardValue + reservedValue) + ',\n ' + date + '\n );\n ' }); + }).then(function () { + return _this.query({ queryString: '\n SELECT * FROM total_supply ORDER BY date DESC LIMIT 1;\n ' }); + }).then(function (data) { + resolve(data[0]); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/saveUserBalance.js b/dist/mysql/saveUserBalance.js new file mode 100644 index 0000000..00d3870 --- /dev/null +++ b/dist/mysql/saveUserBalance.js @@ -0,0 +1,41 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = saveUserBalance; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function saveUserBalance(contribution) { + var _this = this; + + return new _bluebird2.default(function (resolve, reject) { + var rewardValue = contribution.rewardValue, + username = contribution.username, + contributor = contribution.contributor; + + + _this.query({ queryString: '\n CREATE TABLE IF NOT EXISTS balances (\n username CHARACTER(39) PRIMARY KEY,\n contributor CHARACTER(42) NOT NULL DEFAULT "0x0",\n balance BIGINT NOT NULL DEFAULT 0\n );\n ' }).then(function () { + return _this.query({ queryString: '\n SELECT * FROM balances WHERE username = "' + username + '";\n ' }); + }).then(function (data) { + if (data.length) { + var balance = data[0].balance; + + return _this.query({ queryString: '\n UPDATE balances\n SET balance = ' + (balance += rewardValue) + '\n WHERE username = "' + username + '";\n ' }); + } else { + return _this.query({ queryString: '\n INSERT INTO balances (\n username,\n contributor,\n balance\n ) VALUES (\n "' + username + '",\n "' + contributor + '",\n ' + rewardValue + '\n );\n ' }); + } + }).then(function () { + return _this.query({ queryString: '\n SELECT * FROM balances WHERE username = "' + username + '";\n ' }); + }).then(function (data) { + resolve(data[0]); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/routers/AuthRouter.js b/dist/routers/AuthRouter.js new file mode 100644 index 0000000..1dbd1fa --- /dev/null +++ b/dist/routers/AuthRouter.js @@ -0,0 +1,59 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = AuthRouter; + +var _passport = require('passport'); + +var _passport2 = _interopRequireDefault(_passport); + +var _passportGithub = require('passport-github2'); + +var _express = require('express'); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function AuthRouter() { + var router = (0, _express.Router)(); + this.passport = _passport2.default; + + this.passport.use(new _passportGithub.Strategy(this.githubCredentials, function (accessToken, refreshToken, profile, cb) { + var user = { accessToken: accessToken, profile: profile, refreshToken: refreshToken }; + cb(null, user); + })); + + this.passport.serializeUser(function (user, cb) { + cb(null, user); + }); + + this.passport.deserializeUser(function (user, cb) { + cb(null, user); + }); + + router.use(this.passport.initialize()); + router.use(this.passport.session()); + + router.get('/github', this.passport.authenticate('github')); + router.get('/github/callback', this.passport.authenticate('github', { failureRedirect: '/' }), function (req, res) { + res.redirect('/'); + }); + + router.get('/verify/:address', function (req, res) { + var passport = req.session.passport, + address = req.params.address; + + + if (!passport || !passport['user']) { + res.redirect('/auth/github'); + } else { + var username = req.user.profile.username; + + + res.send('\n Authenticating GitToken Contributor Address, ' + address + ',\n with GitHub User, ' + username + '\n '); + } + }); + + return router; +} \ No newline at end of file diff --git a/dist/routers/WebHookRouter.js b/dist/routers/WebHookRouter.js new file mode 100644 index 0000000..30576c6 --- /dev/null +++ b/dist/routers/WebHookRouter.js @@ -0,0 +1,33 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _stringify = require('babel-runtime/core-js/json/stringify'); + +var _stringify2 = _interopRequireDefault(_stringify); + +exports.default = WebHookRouter; + +var _express = require('express'); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function WebHookRouter() { + var router = (0, _express.Router)(); + + router.post('/', this.WebHookMiddleware, function (req, res) { + var contribution = req.contribution, + totalSupply = req.totalSupply, + userBalance = req.userBalance; + + res.status(200).send((0, _stringify2.default)({ + contribution: contribution, + userBalance: userBalance, + totalSupply: totalSupply + }, null, 2)); + }); + + return router; +} \ No newline at end of file diff --git a/dist/routers/index.js b/dist/routers/index.js new file mode 100644 index 0000000..cb5215e --- /dev/null +++ b/dist/routers/index.js @@ -0,0 +1,19 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.WebHookRouter = exports.AuthRouter = undefined; + +var _AuthRouter = require('./AuthRouter'); + +var _AuthRouter2 = _interopRequireDefault(_AuthRouter); + +var _WebHookRouter = require('./WebHookRouter'); + +var _WebHookRouter2 = _interopRequireDefault(_WebHookRouter); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.AuthRouter = _AuthRouter2.default; +exports.WebHookRouter = _WebHookRouter2.default; \ No newline at end of file diff --git a/dist/sequelize.js b/dist/sequelize.js deleted file mode 100644 index b9d9b56..0000000 --- a/dist/sequelize.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _sequelize = require('sequelize'); - -var _sequelize2 = _interopRequireDefault(_sequelize); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var sequelize = new _sequelize2.default({ - dialect: 'sqlite', - storage: process.cwd() + '/db/gittoken.sqlite' -}); - -exports.default = sequelize; \ No newline at end of file diff --git a/dist/utils/index.js b/dist/utils/index.js new file mode 100644 index 0000000..ceea282 --- /dev/null +++ b/dist/utils/index.js @@ -0,0 +1,19 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.parseContribution = exports.signContribution = undefined; + +var _signContribution = require('./signContribution'); + +var _signContribution2 = _interopRequireDefault(_signContribution); + +var _parseContribution = require('./parseContribution'); + +var _parseContribution2 = _interopRequireDefault(_parseContribution); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.signContribution = _signContribution2.default; +exports.parseContribution = _parseContribution2.default; \ No newline at end of file diff --git a/dist/utils/parseContribution.js b/dist/utils/parseContribution.js new file mode 100644 index 0000000..bcafd83 --- /dev/null +++ b/dist/utils/parseContribution.js @@ -0,0 +1,74 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _promise = require('babel-runtime/core-js/promise'); + +var _promise2 = _interopRequireDefault(_promise); + +exports.default = parseContribution; + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function parseContribution(_ref) { + var _this = this; + + var headers = _ref.headers, + payload = _ref.payload; + + return new _promise2.default(function (resolve, reject) { + var eventType = headers['x-github-event']; + + var getSubEventType = function getSubEventType(_ref2) { + var eventType = _ref2.eventType, + payload = _ref2.payload; + + switch (eventType) { + case 'create': + return payload['ref_type']; + break; + case 'delete': + return payload['ref_type']; + break; + case 'deployment_status': + return payload['state']; + break; + case 'gollum': + return payload['pages'][0]['action']; // Should this be reward for each gollum (wiki page touched)? + break; + case 'page_build': + return payload['build']['status']; + break; + case 'pull_request': + return payload['pull_request']['merged'] ? payload['pull_request']['merged'] : payload['action']; // ternary => true ? 'a' : 'b' + break; + case 'status': + return payload['state']; + break; + default: + return payload['action']; + } + }; + + var subEventType = getSubEventType({ eventType: eventType, payload: payload }); + + _promise2.default.resolve(_this.RewardPoints.getRewardDetails.call(eventType, subEventType)).then(function (data) { + console.log('data', data); + resolve({ + username: payload['sender']['login'], + contributor: null, + date: new Date().getTime(), + delivery_id: headers['x-github-delivery'], + eventType: eventType, + organization: payload['organization']['login'], + reservedValue: 0, + rewardValue: 0, + subEventType: subEventType + }); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/utils/signContribution.js b/dist/utils/signContribution.js new file mode 100644 index 0000000..885456e --- /dev/null +++ b/dist/utils/signContribution.js @@ -0,0 +1,47 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _extends2 = require('babel-runtime/helpers/extends'); + +var _extends3 = _interopRequireDefault(_extends2); + +exports.default = signContribution; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function signContribution(contribution) { + var _this = this; + + return new _bluebird2.default(function (resolve, reject) { + var organization = contribution.organization, + contributor = contribution.contributor, + username = contribution.username, + eventType = contribution.eventType, + subEventType = contribution.subEventType, + rewardValue = contribution.rewardValue, + reservedValue = contribution.reservedValue, + date = contribution.date, + delivery_id = contribution.delivery_id; + + + var messageHash = _this.sha3([organization, contributor, username, eventType, subEventType, rewardValue, reservedValue, date, delivery_id]); + + _this.signMessage({ messageHash: messageHash }).then(function (signature) { + resolve((0, _extends3.default)({ + hash: messageHash.toString('hex'), + r: signature['r'].toString('hex'), + s: signature['s'].toString('hex'), + v: signature['v'] + }, contribution)); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index f90e481..2177e33 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,34 +1,36 @@ version: '3.0' +volumes: + torvalds-network: + gittoken-server: + mysql-volume: services: mysql: ports: - 3306:3306 env_file: - mysql.env + volumes: + - mysql-volume:/var/lib/mysql image: mysql gittoken: ports: - - 1324:1324 - - 1325:1325 + - 4242:3000 env_file: - gittoken.env - mysql.env build: context: . volumes: - - /root/gittoken-server/:/mnt/ - parity: + - gittoken-server:/mnt/gittoken + torvalds: ports: - - 8080:8080 - - 8180:8180 - - 8545:8545 - - 30303:30303 - image: parity/parity:v1.6.8 + - 5180:8180 + - 5545:8545 + - 5546:8546 + - 30305:30303 + build: + context: ./torvalds/. volumes: - # Ensure volume paths are correct on host; e.g. the following assumes - # the docker host has pulled this repo at the location, - # `~/.gittoken/express-server`, and has a valid config file located within - # the /parity subdirectory - - /root/gittoken-server/parity/:/mnt/parity - command: --reseal-min-period 0 --gasprice 0 --rpccorsdomain="*" --geth --config /mnt/parity/config.toml + - torvalds-network:/mnt/parity + command: --config /mnt/parity/config.toml diff --git a/gittoken.config.js b/gittoken.config.js index 33bd348..40d6ca5 100644 --- a/gittoken.config.js +++ b/gittoken.config.js @@ -16,12 +16,10 @@ const config = { web3Provider: process.env['WEB3_PROVIDER'], - isGitHubHook: Boolean(process.env['IS_GITHUB_WEBHOOK'] === 'true'), dirPath: process.env['GITTOKEN_DIRECTORY_PATH'], - keystoreFileName: process.env['GITTOKEN_KEYSTORE_FILENAME'], - contractFile: process.env['GITTOKEN_CONTRACT_FILE'], - faucetActive: Boolean(process.env['GITTOKEN_FAUCET_ACTIVE'] === 'true'), - config: { + recoveryShare: process.env['GITTOKEN_RECOVERY_SHARE'], + address: process.env['GITTOKEN_ADDRESS'], + gittokenParams: { contributor: process.env['GITTOKEN_CONTRACT_OWNER'], name: process.env['GITTOKEN_CONTRACT_NAME'], username: process.env['GITTOKEN_CONTRACT_OWNER_USERNAME'], @@ -35,7 +33,8 @@ const config = { callbackURL: process.env['GITHUB_API_CALLBACK_URL'] }, api: { - sessionSecret: process.env['GITTOKEN_API_SESSION_SECRET'] + sessionSecret: process.env['GITTOKEN_API_SESSION_SECRET'], + port: process.env['GITTOKEN_API_PORT'] }, mysqlOpts: { host: process.env['MYSQL_HOST'], diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..95201d8 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,9514 @@ +{ + "name": "gittoken-server", + "version": "0.1.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "acorn": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.2.1.tgz", + "integrity": "sha512-jG0u7c4Ly+3QkkW18V+NRDN+4bWHdln30NL1ZL2AvFZZmQe/BfopYCtghCKKVBUSetZ4QKcyA0pY6/4Gw8Pv8w==" + }, + "acorn-dynamic-import": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz", + "integrity": "sha1-x1K9IQvvZ5UBtsbLf8hPj0cVjMQ=", + "requires": { + "acorn": "4.0.13" + }, + "dependencies": { + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" + } + } + }, + "ajv": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.0.tgz", + "integrity": "sha1-6yhAdG6dxIvV4GOjbj/UAMXqtak=", + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.0.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, + "ajv-keywords": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", + "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=" + }, + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "requires": { + "kind-of": "3.2.2", + "longest": "1.0.1", + "repeat-string": "1.6.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "requires": { + "micromatch": "2.3.11", + "normalize-path": "2.1.1" + } + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "requires": { + "arr-flatten": "1.1.0" + } + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" + }, + "asn1.js": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.2.tgz", + "integrity": "sha512-b/OsSjvWEo8Pi8H0zsDd2P6Uqo2TK2pH8gNLSJtNLM2Db0v2QaAZ0pBQJXVjAn4gBuugeVDr7s63ZogpUIwWDg==", + "requires": { + "bn.js": "4.11.8", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" + } + }, + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "requires": { + "util": "0.10.3" + } + }, + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "4.17.4" + } + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=" + }, + "babel-cli": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.26.0.tgz", + "integrity": "sha1-UCq1SHTX24itALiHoGODzgPQAvE=", + "dev": true, + "requires": { + "babel-core": "6.26.0", + "babel-polyfill": "6.26.0", + "babel-register": "6.26.0", + "babel-runtime": "6.26.0", + "chokidar": "1.7.0", + "commander": "2.12.1", + "convert-source-map": "1.5.1", + "fs-readdir-recursive": "1.1.0", + "glob": "7.1.2", + "lodash": "4.17.4", + "output-file-sync": "1.1.2", + "path-is-absolute": "1.0.1", + "slash": "1.0.0", + "source-map": "0.5.7", + "v8flags": "2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "optional": true, + "requires": { + "micromatch": "2.3.11", + "normalize-path": "2.1.1" + } + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "optional": true, + "requires": { + "arr-flatten": "1.1.0" + } + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true, + "optional": true + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true, + "optional": true + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "dev": true, + "optional": true + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" + } + }, + "babel-core": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", + "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-generator": "6.26.0", + "babel-helpers": "6.24.1", + "babel-messages": "6.23.0", + "babel-register": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "convert-source-map": "1.5.1", + "debug": "2.6.9", + "json5": "0.5.1", + "lodash": "4.17.4", + "minimatch": "3.0.4", + "path-is-absolute": "1.0.1", + "private": "0.1.8", + "slash": "1.0.0", + "source-map": "0.5.7" + } + }, + "babel-generator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", + "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", + "dev": true, + "requires": { + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.4", + "source-map": "0.5.7", + "trim-right": "1.0.1" + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-polyfill": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", + "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "core-js": "2.5.1", + "regenerator-runtime": "0.10.5" + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "requires": { + "babel-core": "6.26.0", + "babel-runtime": "6.26.0", + "core-js": "2.5.1", + "home-or-tmp": "2.0.0", + "lodash": "4.17.4", + "mkdirp": "0.5.1", + "source-map-support": "0.4.18" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "binary-extensions": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", + "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "dev": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "optional": true, + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "optional": true, + "requires": { + "anymatch": "1.3.2", + "async-each": "1.0.1", + "fsevents": "1.1.3", + "glob-parent": "2.0.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "2.0.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.1.0" + } + }, + "commander": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.12.1.tgz", + "integrity": "sha512-PCNLExLlI5HiPdaJs4pMXwOTHkSCpNQ1QJH9ykZLKtKEyKu3p9HgmH5l97vM8c0IUz6d54l+xEu2GG9yuYrFzA==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", + "dev": true + }, + "core-js": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", + "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true, + "optional": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "2.0.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "optional": true, + "requires": { + "is-posix-bracket": "0.1.1" + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "optional": true, + "requires": { + "fill-range": "2.2.3" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "optional": true, + "requires": { + "is-extglob": "1.0.0" + } + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true, + "optional": true + }, + "fill-range": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", + "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", + "dev": true, + "optional": true, + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.7", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true, + "optional": true + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "optional": true, + "requires": { + "for-in": "1.0.2" + } + }, + "fs-readdir-recursive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", + "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", + "dev": true, + "optional": true, + "requires": { + "nan": "2.8.0", + "node-pre-gyp": "0.6.39" + }, + "dependencies": { + "abbrev": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "ajv": { + "version": "4.11.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.2.9" + } + }, + "asn1": { + "version": "0.2.3", + "bundled": true, + "dev": true, + "optional": true + }, + "assert-plus": { + "version": "0.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "asynckit": { + "version": "0.4.0", + "bundled": true, + "dev": true, + "optional": true + }, + "aws-sign2": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "aws4": { + "version": "1.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "balanced-match": { + "version": "0.4.2", + "bundled": true, + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "block-stream": { + "version": "0.0.9", + "bundled": true, + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "boom": { + "version": "2.10.1", + "bundled": true, + "dev": true, + "requires": { + "hoek": "2.16.3" + } + }, + "brace-expansion": { + "version": "1.1.7", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "0.4.2", + "concat-map": "0.0.1" + } + }, + "buffer-shims": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "caseless": { + "version": "0.12.0", + "bundled": true, + "dev": true, + "optional": true + }, + "co": { + "version": "4.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "combined-stream": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "cryptiles": { + "version": "2.0.5", + "bundled": true, + "dev": true, + "requires": { + "boom": "2.10.1" + } + }, + "dashdash": { + "version": "1.14.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "debug": { + "version": "2.6.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.4.2", + "bundled": true, + "dev": true, + "optional": true + }, + "delayed-stream": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "extend": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "extsprintf": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "bundled": true, + "dev": true, + "optional": true + }, + "form-data": { + "version": "2.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.15" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "fstream": { + "version": "1.0.11", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.1" + } + }, + "fstream-ignore": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fstream": "1.0.11", + "inherits": "2.0.3", + "minimatch": "3.0.4" + } + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "1.1.1", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "getpass": { + "version": "0.1.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true, + "dev": true + }, + "har-schema": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "har-validator": { + "version": "4.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ajv": "4.11.8", + "har-schema": "1.0.5" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "hawk": { + "version": "3.1.3", + "bundled": true, + "dev": true, + "requires": { + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" + } + }, + "hoek": { + "version": "2.16.3", + "bundled": true, + "dev": true + }, + "http-signature": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "0.2.0", + "jsprim": "1.4.0", + "sshpk": "1.13.0" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "ini": { + "version": "1.3.4", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "isstream": { + "version": "0.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "jodid25519": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "bundled": true, + "dev": true, + "optional": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsonify": "0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "jsonify": { + "version": "0.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "jsprim": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.0.2", + "json-schema": "0.2.3", + "verror": "1.3.6" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "mime-db": { + "version": "1.27.0", + "bundled": true, + "dev": true + }, + "mime-types": { + "version": "2.1.15", + "bundled": true, + "dev": true, + "requires": { + "mime-db": "1.27.0" + } + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "node-pre-gyp": { + "version": "0.6.39", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "1.0.2", + "hawk": "3.1.3", + "mkdirp": "0.5.1", + "nopt": "4.0.1", + "npmlog": "4.1.0", + "rc": "1.2.1", + "request": "2.81.0", + "rimraf": "2.6.1", + "semver": "5.3.0", + "tar": "2.2.1", + "tar-pack": "3.4.0" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1.1.0", + "osenv": "0.1.4" + } + }, + "npmlog": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "oauth-sign": { + "version": "0.8.2", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "performance-now": { + "version": "0.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "1.0.7", + "bundled": true, + "dev": true + }, + "punycode": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "optional": true + }, + "qs": { + "version": "6.4.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.4", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.2.9", + "bundled": true, + "dev": true, + "requires": { + "buffer-shims": "1.0.0", + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "1.0.1", + "util-deprecate": "1.0.2" + } + }, + "request": { + "version": "2.81.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "4.2.1", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.15", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.4.0", + "safe-buffer": "5.0.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.6.0", + "uuid": "3.0.1" + } + }, + "rimraf": { + "version": "2.6.1", + "bundled": true, + "dev": true, + "requires": { + "glob": "7.1.2" + } + }, + "safe-buffer": { + "version": "5.0.1", + "bundled": true, + "dev": true + }, + "semver": { + "version": "5.3.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sntp": { + "version": "1.0.9", + "bundled": true, + "dev": true, + "requires": { + "hoek": "2.16.3" + } + }, + "sshpk": { + "version": "1.13.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jodid25519": "1.0.2", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "stringstream": { + "version": "0.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "2.2.1", + "bundled": true, + "dev": true, + "requires": { + "block-stream": "0.0.9", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "tar-pack": { + "version": "3.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "2.6.8", + "fstream": "1.0.11", + "fstream-ignore": "1.0.5", + "once": "1.4.0", + "readable-stream": "2.2.9", + "rimraf": "2.6.1", + "tar": "2.2.1", + "uid-number": "0.0.6" + } + }, + "tough-cookie": { + "version": "2.3.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "punycode": "1.4.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "bundled": true, + "dev": true, + "optional": true + }, + "uid-number": { + "version": "0.0.6", + "bundled": true, + "dev": true, + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "uuid": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "verror": { + "version": "1.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "extsprintf": "1.0.2" + } + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + } + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "optional": true, + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "2.0.1" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "dev": true, + "requires": { + "loose-envify": "1.3.1" + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "optional": true, + "requires": { + "binary-extensions": "1.11.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true, + "optional": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "optional": true, + "requires": { + "is-primitive": "2.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true, + "optional": true + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "optional": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true, + "optional": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true, + "optional": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "optional": true, + "requires": { + "isarray": "1.0.0" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "1.1.6" + } + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", + "dev": true + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "dev": true, + "requires": { + "js-tokens": "3.0.2" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "optional": true, + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "nan": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=", + "dev": true, + "optional": true + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "1.1.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "optional": true, + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "output-file-sync": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", + "integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "mkdirp": "0.5.1", + "object-assign": "4.1.1" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "optional": true, + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true, + "optional": true + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true, + "optional": true + }, + "randomatic": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", + "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", + "dev": true, + "optional": true, + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "optional": true, + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "optional": true, + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "optional": true, + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "dev": true, + "optional": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "readdirp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", + "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "dev": true, + "optional": true, + "requires": { + "graceful-fs": "4.1.11", + "minimatch": "3.0.4", + "readable-stream": "2.3.3", + "set-immediate-shim": "1.0.1" + } + }, + "regenerator-runtime": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "optional": true, + "requires": { + "is-equal-shallow": "0.1.3" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true, + "optional": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "1.0.2" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true, + "optional": true + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "0.5.7" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "5.1.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "user-home": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", + "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true, + "optional": true + }, + "v8flags": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", + "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=", + "dev": true, + "requires": { + "user-home": "1.1.1" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + } + } + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" + } + }, + "babel-core": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", + "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", + "requires": { + "babel-code-frame": "6.26.0", + "babel-generator": "6.26.0", + "babel-helpers": "6.24.1", + "babel-messages": "6.23.0", + "babel-register": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "convert-source-map": "1.5.1", + "debug": "2.6.9", + "json5": "0.5.1", + "lodash": "4.17.4", + "minimatch": "3.0.4", + "path-is-absolute": "1.0.1", + "private": "0.1.8", + "slash": "1.0.0", + "source-map": "0.5.7" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "babel-generator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", + "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", + "requires": { + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.4", + "source-map": "0.5.7", + "trim-right": "1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" + } + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-define-map": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", + "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "requires": { + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-optimise-call-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", + "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-helper-replace-supers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", + "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", + "requires": { + "babel-helper-optimise-call-expression": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-inline-import": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/babel-plugin-inline-import/-/babel-plugin-inline-import-2.0.6.tgz", + "integrity": "sha1-ijwXlWG1A79K8xnzytQ15reyhjw=", + "dev": true, + "requires": { + "require-resolve": "0.0.2" + }, + "dependencies": { + "path-extra": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/path-extra/-/path-extra-1.0.3.tgz", + "integrity": "sha1-fBEhiablDVlXkOetIDfkTkEMEWY=", + "dev": true + }, + "require-resolve": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/require-resolve/-/require-resolve-0.0.2.tgz", + "integrity": "sha1-urQQqxruLz9Vt5MXRR3TQodk5vM=", + "dev": true, + "requires": { + "x-path": "0.0.2" + } + }, + "x-path": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/x-path/-/x-path-0.0.2.tgz", + "integrity": "sha1-KU0Ha7l6dwbMBwu7Km/YxU32exI=", + "dev": true, + "requires": { + "path-extra": "1.0.3" + } + } + } + }, + "babel-plugin-transform-es2015-arrow-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", + "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-block-scoped-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", + "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-block-scoping": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", + "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-plugin-transform-es2015-classes": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", + "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", + "requires": { + "babel-helper-define-map": "6.26.0", + "babel-helper-function-name": "6.24.1", + "babel-helper-optimise-call-expression": "6.24.1", + "babel-helper-replace-supers": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-computed-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", + "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-duplicate-keys": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", + "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-for-of": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", + "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", + "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-amd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", + "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", + "requires": { + "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", + "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", + "requires": { + "babel-plugin-transform-strict-mode": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-systemjs": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", + "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-umd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", + "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", + "requires": { + "babel-plugin-transform-es2015-modules-amd": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-object-super": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", + "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", + "requires": { + "babel-helper-replace-supers": "6.24.1", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "requires": { + "babel-helper-call-delegate": "6.24.1", + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-shorthand-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", + "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-template-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", + "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-typeof-symbol": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", + "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "regexpu-core": "2.0.0" + } + }, + "babel-plugin-transform-regenerator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", + "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", + "requires": { + "regenerator-transform": "0.10.1" + } + }, + "babel-plugin-transform-runtime": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz", + "integrity": "sha1-iEkNRGUC6puOfvsP4J7E2ZR5se4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-preset-env": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.6.1.tgz", + "integrity": "sha512-W6VIyA6Ch9ePMI7VptNn2wBM6dbG0eSz25HEiL40nQXCsXGTGZSTZu1Iap+cj3Q0S5a7T9+529l/5Bkvd+afNA==", + "dev": true, + "requires": { + "babel-plugin-check-es2015-constants": "6.22.0", + "babel-plugin-syntax-trailing-function-commas": "6.22.0", + "babel-plugin-transform-async-to-generator": "6.24.1", + "babel-plugin-transform-es2015-arrow-functions": "6.22.0", + "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", + "babel-plugin-transform-es2015-block-scoping": "6.26.0", + "babel-plugin-transform-es2015-classes": "6.24.1", + "babel-plugin-transform-es2015-computed-properties": "6.24.1", + "babel-plugin-transform-es2015-destructuring": "6.23.0", + "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", + "babel-plugin-transform-es2015-for-of": "6.23.0", + "babel-plugin-transform-es2015-function-name": "6.24.1", + "babel-plugin-transform-es2015-literals": "6.22.0", + "babel-plugin-transform-es2015-modules-amd": "6.24.1", + "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", + "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", + "babel-plugin-transform-es2015-modules-umd": "6.24.1", + "babel-plugin-transform-es2015-object-super": "6.24.1", + "babel-plugin-transform-es2015-parameters": "6.24.1", + "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", + "babel-plugin-transform-es2015-spread": "6.22.0", + "babel-plugin-transform-es2015-sticky-regex": "6.24.1", + "babel-plugin-transform-es2015-template-literals": "6.22.0", + "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", + "babel-plugin-transform-es2015-unicode-regex": "6.24.1", + "babel-plugin-transform-exponentiation-operator": "6.24.1", + "babel-plugin-transform-regenerator": "6.26.0", + "browserslist": "2.9.1", + "invariant": "2.2.2", + "semver": "5.4.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-define-map": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", + "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-optimise-call-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", + "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-replace-supers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", + "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", + "dev": true, + "requires": { + "babel-helper-optimise-call-expression": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-functions": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-arrow-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", + "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-block-scoped-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", + "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-block-scoping": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", + "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-plugin-transform-es2015-classes": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", + "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", + "dev": true, + "requires": { + "babel-helper-define-map": "6.26.0", + "babel-helper-function-name": "6.24.1", + "babel-helper-optimise-call-expression": "6.24.1", + "babel-helper-replace-supers": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-computed-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", + "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-duplicate-keys": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", + "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-for-of": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", + "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", + "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-amd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", + "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", + "dev": true, + "requires": { + "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", + "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", + "dev": true, + "requires": { + "babel-plugin-transform-strict-mode": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-systemjs": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", + "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-umd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", + "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", + "dev": true, + "requires": { + "babel-plugin-transform-es2015-modules-amd": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-object-super": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", + "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", + "dev": true, + "requires": { + "babel-helper-replace-supers": "6.24.1", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true, + "requires": { + "babel-helper-call-delegate": "6.24.1", + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-shorthand-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", + "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-template-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", + "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-typeof-symbol": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", + "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "regexpu-core": "2.0.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", + "babel-plugin-syntax-exponentiation-operator": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-regenerator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", + "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", + "dev": true, + "requires": { + "regenerator-transform": "0.10.1" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "browserslist": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.9.1.tgz", + "integrity": "sha512-3n3nPdbUqn3nWmsy4PeSQthz2ja1ndpoXta+dwFFNhveGjMg6FXpWYe12vsTpNoXJbzx3j7GZXdtoVIdvh3JbA==", + "dev": true, + "requires": { + "caniuse-lite": "1.0.30000770", + "electron-to-chromium": "1.3.27" + } + }, + "caniuse-lite": { + "version": "1.0.30000770", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000770.tgz", + "integrity": "sha1-vI5/ULBzJzOQ22qzVzeJCaFOm9s=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "electron-to-chromium": { + "version": "1.3.27", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.27.tgz", + "integrity": "sha1-eOy4o5kGYYe7N07t412ccFZagD0=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "dev": true, + "requires": { + "loose-envify": "1.3.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", + "dev": true + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "dev": true, + "requires": { + "js-tokens": "3.0.2" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "regenerate": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", + "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==", + "dev": true + }, + "regenerator-transform": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", + "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "private": "0.1.8" + } + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true, + "requires": { + "regenerate": "1.3.3", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "0.5.0" + } + }, + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + } + } + }, + "babel-preset-es2015": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz", + "integrity": "sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk=", + "requires": { + "babel-plugin-check-es2015-constants": "6.22.0", + "babel-plugin-transform-es2015-arrow-functions": "6.22.0", + "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", + "babel-plugin-transform-es2015-block-scoping": "6.26.0", + "babel-plugin-transform-es2015-classes": "6.24.1", + "babel-plugin-transform-es2015-computed-properties": "6.24.1", + "babel-plugin-transform-es2015-destructuring": "6.23.0", + "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", + "babel-plugin-transform-es2015-for-of": "6.23.0", + "babel-plugin-transform-es2015-function-name": "6.24.1", + "babel-plugin-transform-es2015-literals": "6.22.0", + "babel-plugin-transform-es2015-modules-amd": "6.24.1", + "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", + "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", + "babel-plugin-transform-es2015-modules-umd": "6.24.1", + "babel-plugin-transform-es2015-object-super": "6.24.1", + "babel-plugin-transform-es2015-parameters": "6.24.1", + "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", + "babel-plugin-transform-es2015-spread": "6.22.0", + "babel-plugin-transform-es2015-sticky-regex": "6.24.1", + "babel-plugin-transform-es2015-template-literals": "6.22.0", + "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", + "babel-plugin-transform-es2015-unicode-regex": "6.24.1", + "babel-plugin-transform-regenerator": "6.26.0" + } + }, + "babel-preset-stage-0": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz", + "integrity": "sha1-VkLRUEL5E4TX5a+LyIsduVsDnmo=", + "dev": true, + "requires": { + "babel-plugin-transform-do-expressions": "6.22.0", + "babel-plugin-transform-function-bind": "6.22.0", + "babel-preset-stage-1": "6.24.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" + } + }, + "babel-helper-bindify-decorators": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz", + "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-explode-class": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz", + "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=", + "dev": true, + "requires": { + "babel-helper-bindify-decorators": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-async-generators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", + "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=", + "dev": true + }, + "babel-plugin-syntax-class-constructor-call": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz", + "integrity": "sha1-nLnTn+Q8hgC+yBRkVt3L1OGnZBY=", + "dev": true + }, + "babel-plugin-syntax-class-properties": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", + "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=", + "dev": true + }, + "babel-plugin-syntax-decorators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", + "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=", + "dev": true + }, + "babel-plugin-syntax-do-expressions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz", + "integrity": "sha1-V0d1YTmqJtOQ0JQQsDdEugfkeW0=", + "dev": true + }, + "babel-plugin-syntax-dynamic-import": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", + "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-export-extensions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz", + "integrity": "sha1-cKFITw+QiaToStRLrDU8lbmxJyE=", + "dev": true + }, + "babel-plugin-syntax-function-bind": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz", + "integrity": "sha1-SMSV8Xe98xqYHnMvVa3AvdJgH0Y=", + "dev": true + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-generator-functions": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz", + "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-generators": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-functions": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-class-constructor-call": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz", + "integrity": "sha1-gNwoVQWsBn3LjWxl4vbxGrd2Xvk=", + "dev": true, + "requires": { + "babel-plugin-syntax-class-constructor-call": "6.18.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-class-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", + "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-plugin-syntax-class-properties": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-decorators": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz", + "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=", + "dev": true, + "requires": { + "babel-helper-explode-class": "6.24.1", + "babel-plugin-syntax-decorators": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-do-expressions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz", + "integrity": "sha1-KMyvkoEtlJws0SgfaQyP3EaK6bs=", + "dev": true, + "requires": { + "babel-plugin-syntax-do-expressions": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", + "babel-plugin-syntax-exponentiation-operator": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-export-extensions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz", + "integrity": "sha1-U3OLR+deghhYnuqUbLvTkQm75lM=", + "dev": true, + "requires": { + "babel-plugin-syntax-export-extensions": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-function-bind": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz", + "integrity": "sha1-xvuOlqwpajELjPjqQBRiQH3fapc=", + "dev": true, + "requires": { + "babel-plugin-syntax-function-bind": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-object-rest-spread": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", + "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", + "dev": true, + "requires": { + "babel-plugin-syntax-object-rest-spread": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-preset-stage-1": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz", + "integrity": "sha1-dpLNfc1oSZB+auSgqFWJz7niv7A=", + "dev": true, + "requires": { + "babel-plugin-transform-class-constructor-call": "6.24.1", + "babel-plugin-transform-export-extensions": "6.22.0", + "babel-preset-stage-2": "6.24.1" + } + }, + "babel-preset-stage-2": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz", + "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=", + "dev": true, + "requires": { + "babel-plugin-syntax-dynamic-import": "6.18.0", + "babel-plugin-transform-class-properties": "6.24.1", + "babel-plugin-transform-decorators": "6.24.1", + "babel-preset-stage-3": "6.24.1" + } + }, + "babel-preset-stage-3": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz", + "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=", + "dev": true, + "requires": { + "babel-plugin-syntax-trailing-function-commas": "6.22.0", + "babel-plugin-transform-async-generator-functions": "6.24.1", + "babel-plugin-transform-async-to-generator": "6.24.1", + "babel-plugin-transform-exponentiation-operator": "6.24.1", + "babel-plugin-transform-object-rest-spread": "6.26.0" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "dev": true, + "requires": { + "loose-envify": "1.3.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", + "dev": true + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "dev": true, + "requires": { + "js-tokens": "3.0.2" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + } + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "requires": { + "babel-core": "6.26.0", + "babel-runtime": "6.26.0", + "core-js": "2.5.1", + "home-or-tmp": "2.0.0", + "lodash": "4.17.4", + "mkdirp": "0.5.1", + "source-map-support": "0.4.18" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.1", + "regenerator-runtime": "0.11.0" + }, + "dependencies": { + "core-js": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", + "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=" + }, + "regenerator-runtime": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz", + "integrity": "sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A==" + } + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } + }, + "babelify": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/babelify/-/babelify-7.3.0.tgz", + "integrity": "sha1-qlau3nBn/XvVSWZu4W3ChQh+iOU=", + "requires": { + "babel-core": "6.26.0", + "object-assign": "4.1.1" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base64-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", + "integrity": "sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw==" + }, + "big.js": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", + "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==" + }, + "bignumber.js": { + "version": "git+https://github.com/frozeman/bignumber.js-nolookahead.git#57692b3ecfc98bbdd6b3a516cb2353652ea49934" + }, + "binary-extensions": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", + "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=" + }, + "bip39": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/bip39/-/bip39-2.4.0.tgz", + "integrity": "sha512-1++HywqIyPtWDo7gm4v0ylYbwkLvHkuwVSKbBlZBbTCP/mnkyrlARBny906VLAwxJbC5xw9EvuJasHFIZaIFMQ==", + "requires": { + "create-hash": "1.1.3", + "pbkdf2": "3.0.14", + "randombytes": "2.0.5", + "safe-buffer": "5.1.1", + "unorm": "1.4.1" + } + }, + "bluebird": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", + "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==" + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "body-parser": { + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", + "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "requires": { + "bytes": "3.0.0", + "content-type": "1.0.4", + "debug": "2.6.9", + "depd": "1.1.1", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "on-finished": "2.3.0", + "qs": "6.5.1", + "raw-body": "2.3.2", + "type-is": "1.6.15" + }, + "dependencies": { + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "requires": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": "1.4.0" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" + }, + "mime-types": { + "version": "2.1.17", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", + "requires": { + "mime-db": "1.30.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, + "raw-body": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", + "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "unpipe": "1.0.0" + } + }, + "setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" + }, + "type-is": { + "version": "1.6.15", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", + "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.17" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + } + } + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "browser-stdout": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz", + "integrity": "sha1-81HTKWnTL6XXpVZxVCY9korjvR8=" + }, + "browserify-aes": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.1.tgz", + "integrity": "sha512-UGnTYAnB2a3YuYKIRy1/4FB2HdM866E0qC46JXvVTYKlBlZlnvfpSfY6OKfXZAkv70eJ2a1SqzpAo5CRhZGDFg==", + "requires": { + "buffer-xor": "1.0.3", + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "evp_bytestokey": "1.0.3", + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + }, + "browserify-cipher": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", + "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=", + "requires": { + "browserify-aes": "1.1.1", + "browserify-des": "1.0.0", + "evp_bytestokey": "1.0.3" + } + }, + "browserify-des": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", + "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=", + "requires": { + "cipher-base": "1.0.4", + "des.js": "1.0.0", + "inherits": "2.0.3" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "requires": { + "bn.js": "4.11.8", + "randombytes": "2.0.5" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "requires": { + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "elliptic": "6.4.0", + "inherits": "2.0.3", + "parse-asn1": "5.1.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "requires": { + "pako": "1.0.6" + } + }, + "buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "requires": { + "base64-js": "1.2.1", + "ieee754": "1.1.8", + "isarray": "1.0.0" + } + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" + }, + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "requires": { + "align-text": "0.1.4", + "lazy-cache": "1.0.4" + } + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "requires": { + "anymatch": "1.3.2", + "async-each": "1.0.1", + "fsevents": "1.1.3", + "glob-parent": "2.0.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "2.0.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.1.0" + } + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "requires": { + "center-align": "0.1.3", + "right-align": "0.1.3", + "wordwrap": "0.0.2" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "commander": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", + "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "requires": { + "graceful-readlink": "1.0.1" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "requires": { + "date-now": "0.1.4" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=" + }, + "cookie-parser": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.3.tgz", + "integrity": "sha1-D+MfoZ0AC5X0qt8fU/3CuKIDuqU=", + "requires": { + "cookie": "0.3.1", + "cookie-signature": "1.0.6" + }, + "dependencies": { + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + } + } + }, + "core-js": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", + "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "cors": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.4.tgz", + "integrity": "sha1-K9OB8usgECAQXNUOpZ2mMJBpRoY=", + "requires": { + "object-assign": "4.1.1", + "vary": "1.1.2" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + } + } + }, + "create-ecdh": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", + "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=", + "requires": { + "bn.js": "4.11.8", + "elliptic": "6.4.0" + } + }, + "create-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", + "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=", + "requires": { + "cipher-base": "1.0.4", + "inherits": "2.0.3", + "ripemd160": "2.0.1", + "sha.js": "2.4.9" + } + }, + "create-hmac": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", + "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=", + "requires": { + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "inherits": "2.0.3", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.9" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "requires": { + "lru-cache": "4.1.1", + "shebang-command": "1.2.0", + "which": "1.3.0" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "requires": { + "browserify-cipher": "1.0.0", + "browserify-sign": "4.0.4", + "create-ecdh": "4.0.0", + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "diffie-hellman": "5.0.2", + "inherits": "2.0.3", + "pbkdf2": "3.0.14", + "public-encrypt": "4.0.0", + "randombytes": "2.0.5", + "randomfill": "1.0.3" + } + }, + "crypto-js": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.1.8.tgz", + "integrity": "sha1-cV8HC/YBTyrpkqmLOSkli3E/CNU=" + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "requires": { + "es5-ext": "0.10.37" + } + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" + } + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "requires": { + "repeating": "2.0.1" + } + }, + "diff": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.2.0.tgz", + "integrity": "sha1-yc45Okt8vQsFinJck98pkCeGj/k=" + }, + "diffie-hellman": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", + "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=", + "requires": { + "bn.js": "4.11.8", + "miller-rabin": "4.0.1", + "randombytes": "2.0.5" + } + }, + "domain-browser": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", + "integrity": "sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw=" + }, + "dotenv": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", + "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=" + }, + "elliptic": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", + "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0", + "hash.js": "1.1.3", + "hmac-drbg": "1.0.1", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0", + "minimalistic-crypto-utils": "1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "requires": { + "hash.js": "1.1.3", + "minimalistic-assert": "1.0.0", + "minimalistic-crypto-utils": "1.0.1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "minimalistic-assert": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", + "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + } + } + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" + }, + "enhanced-resolve": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz", + "integrity": "sha1-BCHjOf1xQZs9oT0Smzl5BAIwR24=", + "requires": { + "graceful-fs": "4.1.11", + "memory-fs": "0.4.1", + "object-assign": "4.1.1", + "tapable": "0.2.8" + } + }, + "errno": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz", + "integrity": "sha1-uJbiOp5ei6M4cfyZar02NfyaHH0=", + "requires": { + "prr": "0.0.0" + } + }, + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "requires": { + "is-arrayish": "0.2.1" + } + }, + "es5-ext": { + "version": "0.10.37", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.37.tgz", + "integrity": "sha1-DudB0Ui4AGm6J9AgOTdWryV978M=", + "requires": { + "es6-iterator": "2.0.3", + "es6-symbol": "3.1.1" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.37", + "es6-symbol": "3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.37", + "es6-iterator": "2.0.3", + "es6-set": "0.1.5", + "es6-symbol": "3.1.1", + "event-emitter": "0.3.5" + } + }, + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.37", + "es6-iterator": "2.0.3", + "es6-symbol": "3.1.1", + "event-emitter": "0.3.5" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.37" + } + }, + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.37", + "es6-iterator": "2.0.3", + "es6-symbol": "3.1.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "requires": { + "es6-map": "0.1.5", + "es6-weak-map": "2.0.2", + "esrecurse": "4.2.0", + "estraverse": "4.2.0" + } + }, + "esrecurse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz", + "integrity": "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=", + "requires": { + "estraverse": "4.2.0", + "object-assign": "4.1.1" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "ethereum-common": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", + "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=" + }, + "ethereumjs-testrpc": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ethereumjs-testrpc/-/ethereumjs-testrpc-4.1.3.tgz", + "integrity": "sha512-zVipEeZQcBnOzpGQk4ngFbd+VUYJDWASnGpquHthSPta3Kcy33qOwAIx3hXRmDdp4d2zbm8licximJWbpEG1hA==", + "requires": { + "webpack": "3.8.1" + } + }, + "ethereumjs-tx": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.3.tgz", + "integrity": "sha1-7OBR0+/b53GtKlGNYWMsoqt17Ls=", + "requires": { + "ethereum-common": "0.0.18", + "ethereumjs-util": "5.1.2" + } + }, + "ethereumjs-util": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.1.2.tgz", + "integrity": "sha1-JboCFcu0wvCxCKb5avKi5i5Fkh8=", + "requires": { + "babel-preset-es2015": "6.24.1", + "babelify": "7.3.0", + "bn.js": "4.11.8", + "create-hash": "1.1.3", + "ethjs-util": "0.1.4", + "keccak": "1.3.0", + "rlp": "2.0.0", + "secp256k1": "3.2.5" + } + }, + "ethjs-util": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.4.tgz", + "integrity": "sha1-HItoeSV0RO9NPz+7rC3tEs2ZfZM=", + "requires": { + "is-hex-prefixed": "1.0.0", + "strip-hex-prefix": "1.0.0" + } + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.37" + } + }, + "events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "requires": { + "md5.js": "1.3.4", + "safe-buffer": "5.1.1" + } + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "requires": { + "is-posix-bracket": "0.1.1" + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "requires": { + "fill-range": "2.2.3" + } + }, + "express": { + "version": "4.16.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", + "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=", + "requires": { + "accepts": "1.3.4", + "array-flatten": "1.1.1", + "body-parser": "1.18.2", + "content-disposition": "0.5.2", + "content-type": "1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "1.1.1", + "encodeurl": "1.0.1", + "escape-html": "1.0.3", + "etag": "1.8.1", + "finalhandler": "1.1.0", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "1.1.2", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "2.0.2", + "qs": "6.5.1", + "range-parser": "1.2.0", + "safe-buffer": "5.1.1", + "send": "0.16.1", + "serve-static": "1.13.1", + "setprototypeof": "1.1.0", + "statuses": "1.3.1", + "type-is": "1.6.15", + "utils-merge": "1.0.1", + "vary": "1.1.2" + }, + "dependencies": { + "accepts": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", + "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=", + "requires": { + "mime-types": "2.1.17", + "negotiator": "0.6.1" + } + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "encodeurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.1.tgz", + "integrity": "sha1-eePVhlU0aQn+bw9Fpd5oEDspTSA=" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "finalhandler": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.1", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.3.1", + "unpipe": "1.0.0" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "requires": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": "1.3.1" + }, + "dependencies": { + "setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" + } + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ipaddr.js": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.5.2.tgz", + "integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A=" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" + }, + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" + }, + "mime-types": { + "version": "2.1.17", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", + "requires": { + "mime-db": "1.30.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "proxy-addr": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz", + "integrity": "sha1-ZXFQT0e7mI7IGAJT+F3X4UlSvew=", + "requires": { + "forwarded": "0.1.2", + "ipaddr.js": "1.5.2" + } + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "send": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", + "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", + "requires": { + "debug": "2.6.9", + "depd": "1.1.1", + "destroy": "1.0.4", + "encodeurl": "1.0.1", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.3.1" + } + }, + "serve-static": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", + "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", + "requires": { + "encodeurl": "1.0.1", + "escape-html": "1.0.3", + "parseurl": "1.3.2", + "send": "0.16.1" + } + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" + }, + "type-is": { + "version": "1.6.15", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", + "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.17" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + } + } + }, + "express-session": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.15.6.tgz", + "integrity": "sha512-r0nrHTCYtAMrFwZ0kBzZEXa1vtPVrw0dKvGSrKP4dahwBQ1BJpF2/y1Pp4sCD/0kvxV4zZeclyvfmw0B4RMJQA==", + "requires": { + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "crc": "3.4.4", + "debug": "2.6.9", + "depd": "1.1.1", + "on-headers": "1.0.1", + "parseurl": "1.3.2", + "uid-safe": "2.1.5", + "utils-merge": "1.0.1" + }, + "dependencies": { + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "crc": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz", + "integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "on-headers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", + "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=" + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, + "random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=" + }, + "uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "requires": { + "random-bytes": "1.0.0" + } + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + } + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "requires": { + "is-extglob": "1.0.0" + } + }, + "fast-deep-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", + "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=" + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" + }, + "fill-range": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", + "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.7", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "requires": { + "locate-path": "2.0.0" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "requires": { + "for-in": "1.0.2" + } + }, + "fs-extra": { + "version": "0.30.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", + "integrity": "sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=", + "requires": { + "graceful-fs": "4.1.11", + "jsonfile": "2.4.0", + "klaw": "1.3.1", + "path-is-absolute": "1.0.1", + "rimraf": "2.6.2" + }, + "dependencies": { + "jsonfile": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "requires": { + "graceful-fs": "4.1.11" + } + } + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", + "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", + "optional": true, + "requires": { + "nan": "2.8.0", + "node-pre-gyp": "0.6.39" + }, + "dependencies": { + "abbrev": { + "version": "1.1.0", + "bundled": true, + "optional": true + }, + "ajv": { + "version": "4.11.8", + "bundled": true, + "optional": true, + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true + }, + "aproba": { + "version": "1.1.1", + "bundled": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "optional": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.2.9" + } + }, + "asn1": { + "version": "0.2.3", + "bundled": true, + "optional": true + }, + "assert-plus": { + "version": "0.2.0", + "bundled": true, + "optional": true + }, + "asynckit": { + "version": "0.4.0", + "bundled": true, + "optional": true + }, + "aws-sign2": { + "version": "0.6.0", + "bundled": true, + "optional": true + }, + "aws4": { + "version": "1.6.0", + "bundled": true, + "optional": true + }, + "balanced-match": { + "version": "0.4.2", + "bundled": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "bundled": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "block-stream": { + "version": "0.0.9", + "bundled": true, + "requires": { + "inherits": "2.0.3" + } + }, + "boom": { + "version": "2.10.1", + "bundled": true, + "requires": { + "hoek": "2.16.3" + } + }, + "brace-expansion": { + "version": "1.1.7", + "bundled": true, + "requires": { + "balanced-match": "0.4.2", + "concat-map": "0.0.1" + } + }, + "buffer-shims": { + "version": "1.0.0", + "bundled": true + }, + "caseless": { + "version": "0.12.0", + "bundled": true, + "optional": true + }, + "co": { + "version": "4.6.0", + "bundled": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true + }, + "combined-stream": { + "version": "1.0.5", + "bundled": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "bundled": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true + }, + "cryptiles": { + "version": "2.0.5", + "bundled": true, + "requires": { + "boom": "2.10.1" + } + }, + "dashdash": { + "version": "1.14.1", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "debug": { + "version": "2.6.8", + "bundled": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.4.2", + "bundled": true, + "optional": true + }, + "delayed-stream": { + "version": "1.0.0", + "bundled": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "bundled": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "extend": { + "version": "3.0.1", + "bundled": true, + "optional": true + }, + "extsprintf": { + "version": "1.0.2", + "bundled": true + }, + "forever-agent": { + "version": "0.6.1", + "bundled": true, + "optional": true + }, + "form-data": { + "version": "2.1.4", + "bundled": true, + "optional": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.15" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true + }, + "fstream": { + "version": "1.0.11", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.1" + } + }, + "fstream-ignore": { + "version": "1.0.5", + "bundled": true, + "optional": true, + "requires": { + "fstream": "1.0.11", + "inherits": "2.0.3", + "minimatch": "3.0.4" + } + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "optional": true, + "requires": { + "aproba": "1.1.1", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "getpass": { + "version": "0.1.7", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true + }, + "har-schema": { + "version": "1.0.5", + "bundled": true, + "optional": true + }, + "har-validator": { + "version": "4.2.1", + "bundled": true, + "optional": true, + "requires": { + "ajv": "4.11.8", + "har-schema": "1.0.5" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "optional": true + }, + "hawk": { + "version": "3.1.3", + "bundled": true, + "requires": { + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" + } + }, + "hoek": { + "version": "2.16.3", + "bundled": true + }, + "http-signature": { + "version": "1.1.1", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "0.2.0", + "jsprim": "1.4.0", + "sshpk": "1.13.0" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true + }, + "ini": { + "version": "1.3.4", + "bundled": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true + }, + "isstream": { + "version": "0.1.2", + "bundled": true, + "optional": true + }, + "jodid25519": { + "version": "1.0.2", + "bundled": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "jsbn": { + "version": "0.1.1", + "bundled": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "bundled": true, + "optional": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "bundled": true, + "optional": true, + "requires": { + "jsonify": "0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "bundled": true, + "optional": true + }, + "jsonify": { + "version": "0.0.0", + "bundled": true, + "optional": true + }, + "jsprim": { + "version": "1.4.0", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.0.2", + "json-schema": "0.2.3", + "verror": "1.3.6" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "mime-db": { + "version": "1.27.0", + "bundled": true + }, + "mime-types": { + "version": "2.1.15", + "bundled": true, + "requires": { + "mime-db": "1.27.0" + } + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "requires": { + "brace-expansion": "1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "optional": true + }, + "node-pre-gyp": { + "version": "0.6.39", + "bundled": true, + "optional": true, + "requires": { + "detect-libc": "1.0.2", + "hawk": "3.1.3", + "mkdirp": "0.5.1", + "nopt": "4.0.1", + "npmlog": "4.1.0", + "rc": "1.2.1", + "request": "2.81.0", + "rimraf": "2.6.1", + "semver": "5.3.0", + "tar": "2.2.1", + "tar-pack": "3.4.0" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "optional": true, + "requires": { + "abbrev": "1.1.0", + "osenv": "0.1.4" + } + }, + "npmlog": { + "version": "4.1.0", + "bundled": true, + "optional": true, + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true + }, + "oauth-sign": { + "version": "0.8.2", + "bundled": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "osenv": { + "version": "0.1.4", + "bundled": true, + "optional": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true + }, + "performance-now": { + "version": "0.2.0", + "bundled": true, + "optional": true + }, + "process-nextick-args": { + "version": "1.0.7", + "bundled": true + }, + "punycode": { + "version": "1.4.1", + "bundled": true, + "optional": true + }, + "qs": { + "version": "6.4.0", + "bundled": true, + "optional": true + }, + "rc": { + "version": "1.2.1", + "bundled": true, + "optional": true, + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.4", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.2.9", + "bundled": true, + "requires": { + "buffer-shims": "1.0.0", + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "1.0.1", + "util-deprecate": "1.0.2" + } + }, + "request": { + "version": "2.81.0", + "bundled": true, + "optional": true, + "requires": { + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "4.2.1", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.15", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.4.0", + "safe-buffer": "5.0.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.6.0", + "uuid": "3.0.1" + } + }, + "rimraf": { + "version": "2.6.1", + "bundled": true, + "requires": { + "glob": "7.1.2" + } + }, + "safe-buffer": { + "version": "5.0.1", + "bundled": true + }, + "semver": { + "version": "5.3.0", + "bundled": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "optional": true + }, + "sntp": { + "version": "1.0.9", + "bundled": true, + "requires": { + "hoek": "2.16.3" + } + }, + "sshpk": { + "version": "1.13.0", + "bundled": true, + "optional": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jodid25519": "1.0.2", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.1", + "bundled": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "stringstream": { + "version": "0.0.5", + "bundled": true, + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "optional": true + }, + "tar": { + "version": "2.2.1", + "bundled": true, + "requires": { + "block-stream": "0.0.9", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "tar-pack": { + "version": "3.4.0", + "bundled": true, + "optional": true, + "requires": { + "debug": "2.6.8", + "fstream": "1.0.11", + "fstream-ignore": "1.0.5", + "once": "1.4.0", + "readable-stream": "2.2.9", + "rimraf": "2.6.1", + "tar": "2.2.1", + "uid-number": "0.0.6" + } + }, + "tough-cookie": { + "version": "2.3.2", + "bundled": true, + "optional": true, + "requires": { + "punycode": "1.4.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "bundled": true, + "optional": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "bundled": true, + "optional": true + }, + "uid-number": { + "version": "0.0.6", + "bundled": true, + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true + }, + "uuid": { + "version": "3.0.1", + "bundled": true, + "optional": true + }, + "verror": { + "version": "1.3.6", + "bundled": true, + "optional": true, + "requires": { + "extsprintf": "1.0.2" + } + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "optional": true, + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true + } + } + }, + "get-caller-file": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", + "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=" + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" + }, + "gittoken-contracts": { + "version": "0.0.57", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.57.tgz", + "integrity": "sha512-PzQ19g6lGqnJ62zZD2X/y1yh4H9RT25eHa9fjqkb830PezVlQhopa/rZ6uyEcHzERd4vgH2QW8XyZuW8OQV6yQ==", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.18", + "truffle": "3.4.11", + "web3": "0.19.1" + }, + "dependencies": { + "bignumber.js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", + "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + }, + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } + }, + "gittoken-keystore-generator": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/gittoken-keystore-generator/-/gittoken-keystore-generator-0.0.20.tgz", + "integrity": "sha512-JYdHfF+pJizvg+dEBnS+x8MzuTwzPlX9oa7HR6fa7xdd42RERk2msXFyULun4bx/ta6HObXGttKNvO3XA7vnag==", + "requires": { + "bip39": "2.4.0", + "bluebird": "3.5.1", + "ethereumjs-tx": "1.3.3", + "ethereumjs-util": "5.1.2", + "jsonfile": "3.0.1", + "keythereum": "1.0.2", + "web3": "0.20.2" + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "requires": { + "is-glob": "2.0.1" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + }, + "graphql": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-0.10.5.tgz", + "integrity": "sha512-Q7cx22DiLhwHsEfUnUip1Ww/Vfx7FS0w6+iHItNuN61+XpegHSa3k5U0+6M5BcpavQImBwFiy0z3uYwY7cXMLQ==", + "requires": { + "iterall": "1.1.3" + }, + "dependencies": { + "iterall": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.1.3.tgz", + "integrity": "sha512-Cu/kb+4HiNSejAPhSaN1VukdNTTi/r4/e+yykqjlG/IW+1gZH5b4+Bq3whDX4tvbYugta3r8KTMUiqT3fIGxuQ==" + } + } + }, + "growl": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", + "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=" + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=" + }, + "hash-base": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", + "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=", + "requires": { + "inherits": "2.0.3" + } + }, + "he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=" + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "hosted-git-info": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", + "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==" + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" + }, + "ieee754": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", + "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=" + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "interpret": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", + "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=" + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "requires": { + "binary-extensions": "1.11.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "requires": { + "builtin-modules": "1.1.1" + } + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=" + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "requires": { + "is-primitive": "2.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "requires": { + "is-extglob": "1.0.0" + } + }, + "is-hex-prefixed": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", + "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=" + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "requires": { + "kind-of": "3.2.2" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" + }, + "json-loader": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", + "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==" + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" + }, + "json3": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", + "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=" + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + }, + "jsonfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", + "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", + "requires": { + "graceful-fs": "4.1.11" + } + }, + "keccak": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-1.3.0.tgz", + "integrity": "sha512-JgsKPxYhcJxKrV+TrCyg/GwZbOjhpRPrz2kG8xbAsUaIDelUlKjm08YcwBO9Fm8sqf/Kg8ZWkk6nWujhLykfvw==", + "requires": { + "bindings": "1.3.0", + "inherits": "2.0.3", + "nan": "2.8.0", + "prebuild-install": "2.3.0", + "safe-buffer": "5.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", + "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.3" + } + }, + "bindings": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", + "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" + }, + "bl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", + "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "chownr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", + "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "deep-extend": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", + "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "end-of-stream": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", + "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", + "requires": { + "once": "1.4.0" + } + }, + "expand-template": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz", + "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==" + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } + } + }, + "nan": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" + }, + "node-abi": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.1.2.tgz", + "integrity": "sha512-hmUtb8m75RSi7N+zZLYqe75XDvZB+6LyTBPkj2DConvNgQet2e3BIqEwe1LLvqMrfyjabuT5ZOrTioLCH1HTdA==", + "requires": { + "semver": "5.4.1" + } + }, + "noop-logger": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", + "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "prebuild-install": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.3.0.tgz", + "integrity": "sha512-gzjq2oHB8oMbzJSsSh9MQ64zrXZGt092/uT4TLZlz2qnrPxpWqp4vYB7LZrDxnlxf5RfbCjkgDI/z0EIVuYzAw==", + "requires": { + "expand-template": "1.1.0", + "github-from-package": "0.0.0", + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "node-abi": "2.1.2", + "noop-logger": "0.1.1", + "npmlog": "4.1.2", + "os-homedir": "1.0.2", + "pump": "1.0.3", + "rc": "1.2.2", + "simple-get": "1.4.3", + "tar-fs": "1.16.0", + "tunnel-agent": "0.6.0", + "xtend": "4.0.1" + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "pump": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", + "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", + "requires": { + "end-of-stream": "1.4.0", + "once": "1.4.0" + } + }, + "rc": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.2.tgz", + "integrity": "sha1-2M6ctX6NZNnHut2YdsfDTL48cHc=", + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "simple-get": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", + "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", + "requires": { + "once": "1.4.0", + "unzip-response": "1.0.2", + "xtend": "4.0.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "tar-fs": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.0.tgz", + "integrity": "sha512-I9rb6v7mjWLtOfCau9eH5L7sLJyU2BnxtEZRQ5Mt+eRKmf1F0ohXmT/Jc3fr52kDvjJ/HV5MH3soQfPL5bQ0Yg==", + "requires": { + "chownr": "1.0.1", + "mkdirp": "0.5.1", + "pump": "1.0.3", + "tar-stream": "1.5.5" + } + }, + "tar-stream": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", + "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "requires": { + "bl": "1.2.1", + "end-of-stream": "1.4.0", + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "unzip-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", + "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "wide-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", + "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } + } + }, + "keythereum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/keythereum/-/keythereum-1.0.2.tgz", + "integrity": "sha1-YSukHN4lSxfddzfnUjeubuUWKZI=", + "requires": { + "keccak": "1.2.0", + "secp256k1": "3.2.5", + "sjcl": "1.0.6", + "uuid": "3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", + "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.3" + } + }, + "bindings": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", + "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" + }, + "bl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", + "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "chownr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", + "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "deep-extend": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", + "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "end-of-stream": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", + "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", + "requires": { + "once": "1.4.0" + } + }, + "expand-template": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz", + "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==" + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "keccak": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-1.2.0.tgz", + "integrity": "sha1-tTYY/HlhtkL25z8VRu7DMp9+/+A=", + "requires": { + "bindings": "1.3.0", + "inherits": "2.0.3", + "nan": "2.8.0", + "prebuild-install": "2.3.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } + } + }, + "nan": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" + }, + "node-abi": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.1.2.tgz", + "integrity": "sha512-hmUtb8m75RSi7N+zZLYqe75XDvZB+6LyTBPkj2DConvNgQet2e3BIqEwe1LLvqMrfyjabuT5ZOrTioLCH1HTdA==", + "requires": { + "semver": "5.4.1" + } + }, + "noop-logger": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", + "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "prebuild-install": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.3.0.tgz", + "integrity": "sha512-gzjq2oHB8oMbzJSsSh9MQ64zrXZGt092/uT4TLZlz2qnrPxpWqp4vYB7LZrDxnlxf5RfbCjkgDI/z0EIVuYzAw==", + "requires": { + "expand-template": "1.1.0", + "github-from-package": "0.0.0", + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "node-abi": "2.1.2", + "noop-logger": "0.1.1", + "npmlog": "4.1.2", + "os-homedir": "1.0.2", + "pump": "1.0.3", + "rc": "1.2.2", + "simple-get": "1.4.3", + "tar-fs": "1.16.0", + "tunnel-agent": "0.6.0", + "xtend": "4.0.1" + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "pump": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", + "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", + "requires": { + "end-of-stream": "1.4.0", + "once": "1.4.0" + } + }, + "rc": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.2.tgz", + "integrity": "sha1-2M6ctX6NZNnHut2YdsfDTL48cHc=", + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "simple-get": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", + "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", + "requires": { + "once": "1.4.0", + "unzip-response": "1.0.2", + "xtend": "4.0.1" + } + }, + "sjcl": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/sjcl/-/sjcl-1.0.6.tgz", + "integrity": "sha1-ZBVGKmPMDUIVxJuuydP6DBtTUg8=" + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "tar-fs": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.0.tgz", + "integrity": "sha512-I9rb6v7mjWLtOfCau9eH5L7sLJyU2BnxtEZRQ5Mt+eRKmf1F0ohXmT/Jc3fr52kDvjJ/HV5MH3soQfPL5bQ0Yg==", + "requires": { + "chownr": "1.0.1", + "mkdirp": "0.5.1", + "pump": "1.0.3", + "tar-stream": "1.5.5" + } + }, + "tar-stream": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", + "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "requires": { + "bl": "1.2.1", + "end-of-stream": "1.4.0", + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "unzip-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", + "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.0.0.tgz", + "integrity": "sha1-Zyj8BFnEUNeWqZwxg3VpvfZy1yg=" + }, + "wide-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", + "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + }, + "klaw": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", + "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", + "requires": { + "graceful-fs": "4.1.11" + } + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "requires": { + "invert-kv": "1.0.0" + } + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } + }, + "loader-runner": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz", + "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=" + }, + "loader-utils": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", + "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", + "requires": { + "big.js": "3.2.0", + "emojis-list": "2.1.0", + "json5": "0.5.1" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "requires": { + "p-locate": "2.0.0", + "path-exists": "3.0.0" + } + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "lodash._baseassign": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", + "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=", + "requires": { + "lodash._basecopy": "3.0.1", + "lodash.keys": "3.1.2" + } + }, + "lodash._basecopy": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", + "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=" + }, + "lodash._basecreate": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz", + "integrity": "sha1-G8ZhYU2qf8MRt9A78WgGoCE8+CE=" + }, + "lodash._getnative": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", + "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=" + }, + "lodash._isiterateecall": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", + "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=" + }, + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" + }, + "lodash.create": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lodash.create/-/lodash.create-3.1.1.tgz", + "integrity": "sha1-1/KEnw29p+BGgruM1yqwIkYd6+c=", + "requires": { + "lodash._baseassign": "3.2.0", + "lodash._basecreate": "3.0.3", + "lodash._isiterateecall": "3.0.9" + } + }, + "lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=" + }, + "lodash.isarray": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", + "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=" + }, + "lodash.keys": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", + "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", + "requires": { + "lodash._getnative": "3.9.1", + "lodash.isarguments": "3.1.0", + "lodash.isarray": "3.0.4" + } + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "lru-cache": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", + "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "md5.js": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", + "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "requires": { + "hash-base": "3.0.4", + "inherits": "2.0.3" + }, + "dependencies": { + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + } + } + }, + "mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "requires": { + "mimic-fn": "1.1.0" + } + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "requires": { + "errno": "0.1.4", + "readable-stream": "2.3.3" + } + }, + "memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=" + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0" + } + }, + "mimic-fn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", + "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=" + }, + "minimalistic-assert": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", + "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + }, + "mocha": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.5.3.tgz", + "integrity": "sha512-/6na001MJWEtYxHOV1WLfsmR4YIynkUEhBwzsb+fk2qmQ3iqsi258l/Q2MWHJMImAcNpZ8DEdYAK72NHoIQ9Eg==", + "requires": { + "browser-stdout": "1.3.0", + "commander": "2.9.0", + "debug": "2.6.8", + "diff": "3.2.0", + "escape-string-regexp": "1.0.5", + "glob": "7.1.1", + "growl": "1.9.2", + "he": "1.1.1", + "json3": "3.3.2", + "lodash.create": "3.1.1", + "mkdirp": "0.5.1", + "supports-color": "3.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.8", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", + "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", + "requires": { + "ms": "2.0.0" + } + }, + "glob": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", + "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=" + }, + "supports-color": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz", + "integrity": "sha1-cqJiiU2dQIuVbKBf83su2KbiotU=", + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "mysql": { + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/mysql/-/mysql-2.15.0.tgz", + "integrity": "sha512-C7tjzWtbN5nzkLIV+E8Crnl9bFyc7d3XJcBAvHKEVkjrYjogz3llo22q6s/hw+UcsE4/844pDob9ac+3dVjQSA==", + "requires": { + "bignumber.js": "4.0.4", + "readable-stream": "2.3.3", + "safe-buffer": "5.1.1", + "sqlstring": "2.3.0" + }, + "dependencies": { + "bignumber.js": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.0.4.tgz", + "integrity": "sha512-LDXpJKVzEx2/OqNbG9mXBNvHuiRL4PzHCGfnANHMJ+fv68Ads3exDVJeGDJws+AoNEuca93bU3q+S0woeUaCdg==" + } + } + }, + "nan": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=", + "optional": true + }, + "node-libs-browser": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", + "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", + "requires": { + "assert": "1.4.1", + "browserify-zlib": "0.2.0", + "buffer": "4.9.1", + "console-browserify": "1.1.0", + "constants-browserify": "1.0.0", + "crypto-browserify": "3.12.0", + "domain-browser": "1.1.7", + "events": "1.1.1", + "https-browserify": "1.0.0", + "os-browserify": "0.3.0", + "path-browserify": "0.0.0", + "process": "0.11.10", + "punycode": "1.4.1", + "querystring-es3": "0.2.1", + "readable-stream": "2.3.3", + "stream-browserify": "2.0.1", + "stream-http": "2.7.2", + "string_decoder": "1.0.3", + "timers-browserify": "2.0.4", + "tty-browserify": "0.0.0", + "url": "0.11.0", + "util": "0.10.3", + "vm-browserify": "0.0.4" + } + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "requires": { + "hosted-git-info": "2.5.0", + "is-builtin-module": "1.0.0", + "semver": "5.4.1", + "validate-npm-package-license": "3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "1.1.0" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "requires": { + "path-key": "2.0.1" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "oauth": { + "version": "0.9.15", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", + "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "original-require": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/original-require/-/original-require-1.0.1.tgz", + "integrity": "sha1-DxMEcVhM0zURxew4yNWSE/msXiA=" + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "requires": { + "execa": "0.7.0", + "lcid": "1.0.0", + "mem": "1.1.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + }, + "p-limit": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz", + "integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=" + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "requires": { + "p-limit": "1.1.0" + } + }, + "pako": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", + "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==" + }, + "parse-asn1": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz", + "integrity": "sha1-N8T5t+06tlx0gXtfJICTf7+XxxI=", + "requires": { + "asn1.js": "4.9.2", + "browserify-aes": "1.1.1", + "create-hash": "1.1.3", + "evp_bytestokey": "1.0.3", + "pbkdf2": "3.0.14" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "requires": { + "error-ex": "1.3.1" + } + }, + "passport": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.3.2.tgz", + "integrity": "sha1-ndAJ+RXo/glbASSgG4+C2gdRAQI=", + "requires": { + "passport-strategy": "1.0.0", + "pause": "0.0.1" + }, + "dependencies": { + "passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=" + }, + "pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10=" + } + } + }, + "passport-github": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/passport-github/-/passport-github-1.1.0.tgz", + "integrity": "sha1-jOHj/NYa11eOsd9ZWDnkrqEjVdQ=", + "requires": { + "passport-oauth2": "1.4.0" + }, + "dependencies": { + "oauth": { + "version": "0.9.15", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", + "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=" + }, + "passport-oauth2": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.4.0.tgz", + "integrity": "sha1-9i+BWDy+EmCb585vFguTlaJ7hq0=", + "requires": { + "oauth": "0.9.15", + "passport-strategy": "1.0.0", + "uid2": "0.0.3", + "utils-merge": "1.0.1" + } + }, + "passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=" + }, + "uid2": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", + "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + } + } + }, + "passport-github2": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/passport-github2/-/passport-github2-0.1.11.tgz", + "integrity": "sha1-yStW88OKROdmqsfp58E4TF6TyZk=", + "requires": { + "passport-oauth2": "1.4.0" + } + }, + "passport-oauth2": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.4.0.tgz", + "integrity": "sha1-9i+BWDy+EmCb585vFguTlaJ7hq0=", + "requires": { + "oauth": "0.9.15", + "passport-strategy": "1.0.0", + "uid2": "0.0.3", + "utils-merge": "1.0.1" + } + }, + "passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=" + }, + "path-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "requires": { + "pify": "2.3.0" + } + }, + "pbkdf2": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", + "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", + "requires": { + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.9" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "requires": { + "pinkie": "2.0.4" + } + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "prr": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz", + "integrity": "sha1-GoS4WQgyVQFBGFPQCB7j+obikmo=" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + }, + "public-encrypt": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", + "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=", + "requires": { + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.1.3", + "parse-asn1": "5.1.0", + "randombytes": "2.0.5" + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" + }, + "randomatic": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", + "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "randombytes": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz", + "integrity": "sha512-8T7Zn1AhMsQ/HI1SjcCfT/t4ii3eAqco3yOcSzS4mozsOz69lHLsoMXmF9nZgnFanYscnSlUSgs8uZyKzpE6kg==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "randomfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.3.tgz", + "integrity": "sha512-YL6GrhrWoic0Eq8rXVbMptH7dAxCs0J+mh5Y0euNekPPYaxEmdVGim6GdoxoRzKW2yJoU8tueifS7mYxvcFDEQ==", + "requires": { + "randombytes": "2.0.5", + "safe-buffer": "5.1.1" + } + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "readdirp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", + "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "requires": { + "graceful-fs": "4.1.11", + "minimatch": "3.0.4", + "readable-stream": "2.3.3", + "set-immediate-shim": "1.0.1" + } + }, + "regenerate": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", + "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==" + }, + "regenerator-transform": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", + "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "private": "0.1.8" + } + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "requires": { + "is-equal-shallow": "0.1.3" + } + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "requires": { + "regenerate": "1.3.3", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=" + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "requires": { + "jsesc": "0.5.0" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + }, + "repeat-element": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "requires": { + "is-finite": "1.0.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "require-from-string": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", + "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=" + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "requires": { + "align-text": "0.1.4" + } + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "requires": { + "glob": "7.1.2" + } + }, + "ripemd160": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", + "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", + "requires": { + "hash-base": "2.0.2", + "inherits": "2.0.3" + } + }, + "rlp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.0.0.tgz", + "integrity": "sha1-nbOE/0uJqPYVY9kjldhiWxjzr7A=" + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "secp256k1": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.2.5.tgz", + "integrity": "sha1-Dd5bJ+UCFmX23/ynssPgEMbBPJM=", + "requires": { + "bindings": "1.3.0", + "bip66": "1.1.5", + "bn.js": "4.11.8", + "create-hash": "1.1.3", + "drbg.js": "1.0.1", + "elliptic": "6.4.0", + "nan": "2.8.0", + "prebuild-install": "2.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", + "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.3" + } + }, + "bindings": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", + "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" + }, + "bip66": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz", + "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "bl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", + "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "browserify-aes": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.1.tgz", + "integrity": "sha512-UGnTYAnB2a3YuYKIRy1/4FB2HdM866E0qC46JXvVTYKlBlZlnvfpSfY6OKfXZAkv70eJ2a1SqzpAo5CRhZGDFg==", + "requires": { + "buffer-xor": "1.0.3", + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "evp_bytestokey": "1.0.3", + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "chownr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", + "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "create-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", + "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=", + "requires": { + "cipher-base": "1.0.4", + "inherits": "2.0.3", + "ripemd160": "2.0.1", + "sha.js": "2.4.9" + } + }, + "create-hmac": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", + "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=", + "requires": { + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "inherits": "2.0.3", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.9" + } + }, + "deep-extend": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", + "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "drbg.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", + "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", + "requires": { + "browserify-aes": "1.1.1", + "create-hash": "1.1.3", + "create-hmac": "1.1.6" + } + }, + "end-of-stream": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", + "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", + "requires": { + "once": "1.4.0" + } + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "requires": { + "md5.js": "1.3.4", + "safe-buffer": "5.1.1" + } + }, + "expand-template": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz", + "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==" + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "hash-base": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", + "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=", + "requires": { + "inherits": "2.0.3" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "md5.js": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", + "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "requires": { + "hash-base": "3.0.4", + "inherits": "2.0.3" + }, + "dependencies": { + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + } + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } + } + }, + "nan": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" + }, + "node-abi": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.1.2.tgz", + "integrity": "sha512-hmUtb8m75RSi7N+zZLYqe75XDvZB+6LyTBPkj2DConvNgQet2e3BIqEwe1LLvqMrfyjabuT5ZOrTioLCH1HTdA==", + "requires": { + "semver": "5.4.1" + } + }, + "noop-logger": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", + "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "prebuild-install": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.3.0.tgz", + "integrity": "sha512-gzjq2oHB8oMbzJSsSh9MQ64zrXZGt092/uT4TLZlz2qnrPxpWqp4vYB7LZrDxnlxf5RfbCjkgDI/z0EIVuYzAw==", + "requires": { + "expand-template": "1.1.0", + "github-from-package": "0.0.0", + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "node-abi": "2.1.2", + "noop-logger": "0.1.1", + "npmlog": "4.1.2", + "os-homedir": "1.0.2", + "pump": "1.0.3", + "rc": "1.2.2", + "simple-get": "1.4.3", + "tar-fs": "1.16.0", + "tunnel-agent": "0.6.0", + "xtend": "4.0.1" + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "pump": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", + "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", + "requires": { + "end-of-stream": "1.4.0", + "once": "1.4.0" + } + }, + "rc": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.2.tgz", + "integrity": "sha1-2M6ctX6NZNnHut2YdsfDTL48cHc=", + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "ripemd160": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", + "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", + "requires": { + "hash-base": "2.0.2", + "inherits": "2.0.3" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "sha.js": { + "version": "2.4.9", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.9.tgz", + "integrity": "sha512-G8zektVqbiPHrylgew9Zg1VRB1L/DtXNUVAM6q4QLy8NE3qtHlFXTf8VLL4k1Yl6c7NMjtZUTdXV+X44nFaT6A==", + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "simple-get": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", + "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", + "requires": { + "once": "1.4.0", + "unzip-response": "1.0.2", + "xtend": "4.0.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "tar-fs": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.0.tgz", + "integrity": "sha512-I9rb6v7mjWLtOfCau9eH5L7sLJyU2BnxtEZRQ5Mt+eRKmf1F0ohXmT/Jc3fr52kDvjJ/HV5MH3soQfPL5bQ0Yg==", + "requires": { + "chownr": "1.0.1", + "mkdirp": "0.5.1", + "pump": "1.0.3", + "tar-stream": "1.5.5" + } + }, + "tar-stream": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", + "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "requires": { + "bl": "1.2.1", + "end-of-stream": "1.4.0", + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "unzip-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", + "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "wide-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", + "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } + } + }, + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "sha.js": { + "version": "2.4.9", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.9.tgz", + "integrity": "sha512-G8zektVqbiPHrylgew9Zg1VRB1L/DtXNUVAM6q4QLy8NE3qtHlFXTf8VLL4k1Yl6c7NMjtZUTdXV+X44nFaT6A==", + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + }, + "solc": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/solc/-/solc-0.4.18.tgz", + "integrity": "sha512-Kq+O3PNF9Pfq7fB+lDYAuoqRdghLmZyfngsg0h1Hj38NKAeVHeGPOGeZasn5KqdPeCzbMFvaGyTySxzGv6aXCg==", + "requires": { + "fs-extra": "0.30.0", + "memorystream": "0.3.1", + "require-from-string": "1.2.1", + "semver": "5.4.1", + "yargs": "4.8.1" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "requires": { + "lcid": "1.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "0.2.1" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" + }, + "window-size": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz", + "integrity": "sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU=" + }, + "yargs": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-4.8.1.tgz", + "integrity": "sha1-wMQpJMpKqmsObaFznfshZDn53cA=", + "requires": { + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "lodash.assign": "4.2.0", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "window-size": "0.2.0", + "y18n": "3.2.1", + "yargs-parser": "2.4.1" + } + }, + "yargs-parser": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-2.4.1.tgz", + "integrity": "sha1-hVaN488VD/SfpRgl8DqMiA3cxcQ=", + "requires": { + "camelcase": "3.0.0", + "lodash.assign": "4.2.0" + } + } + } + }, + "source-list-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz", + "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "requires": { + "source-map": "0.5.7" + } + }, + "spdx-correct": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", + "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", + "requires": { + "spdx-license-ids": "1.2.2" + } + }, + "spdx-expression-parse": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz", + "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=" + }, + "spdx-license-ids": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", + "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=" + }, + "sqlstring": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.0.tgz", + "integrity": "sha1-UluKT9Jtb3GqYegipsr5dtMa0qg=" + }, + "stream-browserify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", + "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.3" + } + }, + "stream-http": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.7.2.tgz", + "integrity": "sha512-c0yTD2rbQzXtSsFSVhtpvY/vS6u066PcXOX9kBB3mSO76RiUQzL340uJkGBWnlBg4/HZzqiUXtaVA7wcRcJgEw==", + "requires": { + "builtin-status-codes": "3.0.0", + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "to-arraybuffer": "1.0.1", + "xtend": "4.0.1" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "3.0.0" + } + } + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" + }, + "strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=", + "requires": { + "is-hex-prefixed": "1.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "tapable": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.8.tgz", + "integrity": "sha1-mTcqXJmb8t8WCvwNdL7U9HlIzSI=" + }, + "timers-browserify": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.4.tgz", + "integrity": "sha512-uZYhyU3EX8O7HQP+J9fTVYwsq90Vr68xPEFo7yrVImIxYvHgukBEgOB/SgGoorWVTzGM/3Z+wUNnboA4M8jWrg==", + "requires": { + "setimmediate": "1.0.5" + } + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" + }, + "truffle": { + "version": "3.4.11", + "resolved": "https://registry.npmjs.org/truffle/-/truffle-3.4.11.tgz", + "integrity": "sha512-DT5nArmVW0wPCPMCHrYyVrhBbTiA2VLTOXIbbHULHTCJSFOSsDK6EDKA2nrtzq3fZ6i++ZS34iIjLNY27dBLXQ==", + "requires": { + "mocha": "3.5.3", + "original-require": "1.0.1", + "solc": "0.4.15" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "requires": { + "lcid": "1.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "solc": { + "version": "0.4.15", + "resolved": "https://registry.npmjs.org/solc/-/solc-0.4.15.tgz", + "integrity": "sha1-iujxYGoSSj+BwoudzssJZOvfnyU=", + "requires": { + "fs-extra": "0.30.0", + "memorystream": "0.3.1", + "require-from-string": "1.2.1", + "semver": "5.4.1", + "yargs": "4.8.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "0.2.1" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" + }, + "window-size": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz", + "integrity": "sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU=" + }, + "yargs": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-4.8.1.tgz", + "integrity": "sha1-wMQpJMpKqmsObaFznfshZDn53cA=", + "requires": { + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "lodash.assign": "4.2.0", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "window-size": "0.2.0", + "y18n": "3.2.1", + "yargs-parser": "2.4.1" + } + }, + "yargs-parser": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-2.4.1.tgz", + "integrity": "sha1-hVaN488VD/SfpRgl8DqMiA3cxcQ=", + "requires": { + "camelcase": "3.0.0", + "lodash.assign": "4.2.0" + } + } + } + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" + }, + "uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "requires": { + "source-map": "0.5.7", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" + }, + "dependencies": { + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "requires": { + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", + "window-size": "0.1.0" + } + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "optional": true + }, + "uglifyjs-webpack-plugin": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz", + "integrity": "sha1-uVH0q7a9YX5m9j64kUmOORdj4wk=", + "requires": { + "source-map": "0.5.7", + "uglify-js": "2.8.29", + "webpack-sources": "1.1.0" + } + }, + "uid2": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", + "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=" + }, + "unorm": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/unorm/-/unorm-1.4.1.tgz", + "integrity": "sha1-NkIA1fE2RsqLzURJAnEzVhR5IwA=" + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" + } + } + }, + "utf8": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-2.1.2.tgz", + "integrity": "sha1-H6DZJw6b6FDZsFAn9jUZv0ZFfZY=" + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "requires": { + "inherits": "2.0.1" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + } + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "validate-npm-package-license": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", + "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", + "requires": { + "spdx-correct": "1.0.2", + "spdx-expression-parse": "1.0.4" + } + }, + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "requires": { + "indexof": "0.0.1" + } + }, + "watchpack": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.4.0.tgz", + "integrity": "sha1-ShRyvLuVK9Cpu0A2gB+VTfs5+qw=", + "requires": { + "async": "2.6.0", + "chokidar": "1.7.0", + "graceful-fs": "4.1.11" + } + }, + "web3": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.20.2.tgz", + "integrity": "sha1-xU2sX8DjdzmcBMGm7LsS5FEyeNY=", + "requires": { + "bignumber.js": "git+https://github.com/frozeman/bignumber.js-nolookahead.git#57692b3ecfc98bbdd6b3a516cb2353652ea49934", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + }, + "webpack": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.8.1.tgz", + "integrity": "sha512-5ZXLWWsMqHKFr5y0N3Eo5IIisxeEeRAajNq4mELb/WELOR7srdbQk2N5XiyNy2A/AgvlR3AmeBCZJW8lHrolbw==", + "requires": { + "acorn": "5.2.1", + "acorn-dynamic-import": "2.0.2", + "ajv": "5.5.0", + "ajv-keywords": "2.1.1", + "async": "2.6.0", + "enhanced-resolve": "3.4.1", + "escope": "3.6.0", + "interpret": "1.1.0", + "json-loader": "0.5.7", + "json5": "0.5.1", + "loader-runner": "2.3.0", + "loader-utils": "1.1.0", + "memory-fs": "0.4.1", + "mkdirp": "0.5.1", + "node-libs-browser": "2.1.0", + "source-map": "0.5.7", + "supports-color": "4.5.0", + "tapable": "0.2.8", + "uglifyjs-webpack-plugin": "0.4.6", + "watchpack": "1.4.0", + "webpack-sources": "1.1.0", + "yargs": "8.0.2" + }, + "dependencies": { + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "webpack-sources": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz", + "integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==", + "requires": { + "source-list-map": "2.0.0", + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "requires": { + "isexe": "2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" + }, + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "xhr2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/xhr2/-/xhr2-0.1.4.tgz", + "integrity": "sha1-f4dliEdxbbUCYyOBL4GMras4el8=" + }, + "xmlhttprequest": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", + "integrity": "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "yargs": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", + "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", + "requires": { + "camelcase": "4.1.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "2.1.0", + "read-pkg-up": "2.0.0", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "3.2.1", + "yargs-parser": "7.0.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } + } + } + } + }, + "yargs-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", + "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", + "requires": { + "camelcase": "4.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" + } + } + } + } +} diff --git a/package.json b/package.json index 6d4f8c8..0ee2cc0 100644 --- a/package.json +++ b/package.json @@ -1,16 +1,19 @@ { "name": "gittoken-server", - "version": "1.0.0", + "version": "0.1.0", "description": "Configurable GitToken Server", "main": "./src/index.js", "scripts": { "test": "mocha", - "build-src": "babel ./src/ --out-dir ./dist/ --plugins transform-runtime", - "start": "node ./dist/index.js", - "keccak256": "node ./utils/keccak.js", - "keygen": "node ./utils/keygen.js && mv ./keystore/UTC* ./parity/keys" + "build": "npx babel ./src/ --out-dir ./dist/ --plugins transform-runtime", + "start": "node ./bin/app.js" }, - "author": "Ryan Tate ", + "contributors": [ + { + "name": "Ryan Tate", + "email": "ryan.tate@gittoken.io" + } + ], "license": "ISC", "dependencies": { "bluebird": "^3.5.0", @@ -20,19 +23,17 @@ "debug": "^3.0.0", "dotenv": "^4.0.0", "express": "^4.15.3", - "express-graphql": "^0.6.6", "express-session": "^1.15.3", - "gittoken-api-middleware": "^0.2.22", - "gittoken-contracts": "0.0.36", - "gittoken-dashboard": "0.0.83", - "gittoken-messenger-ui": "0.0.9", + "gittoken-contracts": "0.0.57", + "gittoken-keystore-generator": "0.0.20", "graphql": "^0.10.4", "keccak": "^1.3.0", "keythereum": "^1.0.1", + "mysql": "^2.15.0", "passport": "^0.3.2", "passport-github": "^1.1.0", - "sequelize": "^4.3.2", - "sqlite3": "^3.1.8" + "passport-github2": "^0.1.11", + "web3": "^0.20.2" }, "devDependencies": { "babel-cli": "^6.24.1", diff --git a/parity/chain.json b/parity/chain.json deleted file mode 100644 index ece21bb..0000000 --- a/parity/chain.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "name": "DevelopmentChain", - "engine": { - "instantSeal": { - "params": {} - } - }, - "params": { - "accountStartNonce": "0x0", - "maximumExtraDataSize": "0x20", - "minGasLimit": "0x1388", - "networkID": "0x11" - }, - "genesis": { - "seal": { - "generic": "0x0" - }, - "difficulty": "0x20000", - "author": "0x0000000000000000000000000000000000000000", - "timestamp": "0x00", - "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", - "extraData": "0x", - "gasLimit": "0x5B8D80" - }, - "accounts": { - "0000000000000000000000000000000000000001": { - "balance": "1", - "builtin": { - "name": "ecrecover", - "pricing": { - "linear": { - "base": 3000, - "word": 0 - } - } - } - }, - "0000000000000000000000000000000000000002": { - "balance": "1", - "builtin": { - "name": "sha256", - "pricing": { - "linear": { - "base": 60, - "word": 12 - } - } - } - }, - "0000000000000000000000000000000000000003": { - "balance": "1", - "builtin": { - "name": "ripemd160", - "pricing": { - "linear": { - "base": 600, - "word": 120 - } - } - } - }, - "0000000000000000000000000000000000000004": { - "balance": "1", - "builtin": { - "name": "identity", - "pricing": { - "linear": { - "base": 15, - "word": 3 - } - } - } - }, - "024138ba30f69f108a4e0aad9d51b4b4a4e03dd7": { - "balance": "1606938044258990275541962092341162602522202993782792835301376" - } - } -} diff --git a/src/contracts/index.js b/src/contracts/index.js new file mode 100644 index 0000000..6518658 --- /dev/null +++ b/src/contracts/index.js @@ -0,0 +1,26 @@ +import Promise, { promisifyAll } from 'bluebird' +import GitTokenKeystoreGenerator from 'gittoken-keystore-generator' +import RewardPoints from 'gittoken-contracts/build/contracts/RewardPoints.json' + +export default class GitTokenContracts extends GitTokenKeystoreGenerator { + constructor(options) { + super(options) + this.RewardPoints = this.load({ contract: RewardPoints, network: '9' }) + } + + load({ contract, network }) { + const { abi, networks } = JSON.parse(contract) + const address = networks[network]['address'] + + let C = this.eth.contract(abi).at(address) + + C['abi'].filter((item) => { + if (item['type'] == 'function') { return true } + }).map((item) => { + const { name } = item + C[name] = promisifyAll(C[name]) + }) + + return C + } +} diff --git a/src/index.js b/src/index.js index 04d96cf..788ce4d 100644 --- a/src/index.js +++ b/src/index.js @@ -1,75 +1,100 @@ import express from 'express' -import http from 'http' import cors from 'cors' -import path from 'path' import bodyParser from 'body-parser' -import GitTokenMiddleware from 'gittoken-api-middleware/dist/index' +// import GitTokenKeystoreGenerator from 'gittoken-keystore-generator' import passport from 'passport' -import { Strategy } from 'passport-github' -import graphqlHTTP from 'express-graphql' -import { buildSchema } from 'graphql' -import { sequelize } from './sequelize' - -const gittokenConfig = require(process.argv[2] || `${process.cwd()}/gittoken.config.js`) -const { githubCredentials, api: { sessionSecret } } = gittokenConfig - -const app = express() -const port = 1324 - -passport.use(new Strategy(githubCredentials, - function(accessToken, refreshToken, profile, cb) { - cb(null, { accessToken, profile }); - }) -); - -passport.serializeUser((user, cb) => { - cb(null, user) -}) - -passport.deserializeUser((user, cb) => { - cb(null, user) -}) - -app.use(cors()) -app.use(require('cookie-parser')()); -app.use(bodyParser.json()) // handle json data -app.use(bodyParser.urlencoded({ extended: true })) // handle URL-encoded data - -/** - * Serve static files - */ - -// app.use('/', -// express.static(`${process.cwd()}/node_modules/gittoken-messenger-ui/`)) - -app.use('/', express.static(`${process.cwd()}/node_modules/gittoken-dashboard/`)) - -app.use(require('express-session')({ - secret: sessionSecret, - resave: true, - saveUninitialized: true -})); - - -/** - * Setup GitHub OAuth Strategy - */ -app.use(passport.initialize()); -app.use(passport.session()); - -app.get('/auth/github', passport.authenticate('github')) -app.get('/auth/github/callback', - passport.authenticate('github', { failureRedirect: '/' }), - (req, res) => { res.redirect('/') }) - - -/** - * Establish GitToken Middleware Services - */ -let gittoken = new GitTokenMiddleware(gittokenConfig) -app.use('/gittoken', gittoken.routeRequests()) - - -app.listen(port, () => { - console.log(`GitToken Server Listening on Port ${port}`) -}) +import mysql from 'mysql' +import { Strategy } from 'passport-github2' + +import { + signContribution, + parseContribution +} from './utils/index' + +import GitTokenContracts from './contracts/index' + +import { + query, + saveContribution, + saveUserBalance, + saveTotalSupply +} from './mysql/index' + +import { + AuthRouter, + WebHookRouter +} from './routers/index' + +import { + WebHookMiddleware +} from './middleware/index' + + + + +export default class GitTokenServer extends GitTokenContracts { + constructor({ + mysqlOpts, + api: { port, sessionSecret }, + githubCredentials, + dirPath, + address, + recoveryShare, + web3Provider + }) { + super({ dirPath, address, recoveryShare, web3Provider }) + /* Bind Options*/ + this.port = port + this.githubCredentials = githubCredentials + this.sessionSecret = sessionSecret + this.web3Provider = web3Provider + + /* Bind Methods */ + this.AuthRouter = AuthRouter.bind(this) + this.WebHookRouter = WebHookRouter.bind(this) + this.WebHookMiddleware = WebHookMiddleware.bind(this) + this.parseContribution = parseContribution.bind(this) + this.signContribution = signContribution.bind(this) + this.query = query.bind(this) + this.saveContribution = saveContribution.bind(this) + this.saveUserBalance = saveUserBalance.bind(this) + this.saveTotalSupply = saveTotalSupply.bind(this) + + /* MySql Connection */ + this.mysql = mysql.createConnection(mysqlOpts) + + /* Express Application */ + this.app = express() + this.app.use(cors()) + this.app.use(require('cookie-parser')()); + this.app.use(require('express-session')({ + secret: this.sessionSecret, + resave: true, + saveUninitialized: true + })); + this.app.use(bodyParser.json()) // handle json data + this.app.use(bodyParser.urlencoded({ extended: true })) // handle + + this.app.use('/auth/', this.AuthRouter()); + this.app.use('/webhook/', this.WebHookRouter()); + + this.app.use('/', (req, res) => { + res.send(`Hello, GitToken Server!`) + }) + + + + /* Run GitToken Server */ + this.listen() + } + + /** + * [listen description] + * @return {[type]} [description] + */ + listen() { + this.app.listen(this.port, () => { + console.log(`GitToken Server Listening on Port ${this.port}`) + }) + } +} diff --git a/src/middleware/WebHookMiddleware.js b/src/middleware/WebHookMiddleware.js new file mode 100644 index 0000000..02a7823 --- /dev/null +++ b/src/middleware/WebHookMiddleware.js @@ -0,0 +1,29 @@ +export default function WebHookMiddleware(req, res, next) { + const { headers, body: { payload } } = req + + this.parseContribution({ headers, payload: JSON.parse(payload) }).then((contribution) => { + + console.log('contribution', contribution) + return this.signContribution(contribution) + + }).then((signedContribution) => { + + console.log('signedContribution', signedContribution) + return this.saveContribution(signedContribution) + + }).then((savedContribution) => { + console.log('savedContribution', savedContribution) + req.contribution = savedContribution + return this.saveTotalSupply(req.contribution) + }).then((totalSupply) => { + req.totalSupply = totalSupply; + return this.saveUserBalance(req.contribution) + }).then((userBalance) => { + req.userBalance = userBalance + next() + }).catch((error) => { + console.log('error', error) + res.status(500).send(error.message) + }) + +} diff --git a/src/middleware/index.js b/src/middleware/index.js new file mode 100644 index 0000000..b48c4ef --- /dev/null +++ b/src/middleware/index.js @@ -0,0 +1,5 @@ +import WebHookMiddleware from './WebHookMiddleware' + +export { + WebHookMiddleware +} diff --git a/src/mysql/index.js b/src/mysql/index.js new file mode 100644 index 0000000..4a1b7bb --- /dev/null +++ b/src/mysql/index.js @@ -0,0 +1,11 @@ +import saveContribution from './saveContribution' +import saveUserBalance from './saveUserBalance' +import saveTotalSupply from './saveTotalSupply' +import query from './query' + +export { + saveContribution, + saveUserBalance, + saveTotalSupply, + query +} diff --git a/src/mysql/query.js b/src/mysql/query.js new file mode 100644 index 0000000..57674e2 --- /dev/null +++ b/src/mysql/query.js @@ -0,0 +1,10 @@ +import Promise from 'bluebird' + +export default function query({ queryString }) { + return new Promise((resolve, reject) => { + this.mysql.query(queryString, (error, results, fields) => { + if (error) { reject(error) } + resolve(results) + }) + }) +} diff --git a/src/mysql/saveContribution.js b/src/mysql/saveContribution.js new file mode 100644 index 0000000..b69d45e --- /dev/null +++ b/src/mysql/saveContribution.js @@ -0,0 +1,69 @@ +import Promise from 'bluebird' + +export default function saveContribution(contribution) { + return new Promise((resolve, reject) => { + this.query({ + queryString: ` + CREATE TABLE IF NOT EXISTS contributions ( + organization CHARACTER(39), + contributor CHARACTER(42), + username TEXT, + eventType TEXT, + subEventType TEXT, + rewardValue BIGINT NOT NULL DEFAULT 0, + reservedValue BIGINT NOT NULL DEFAULT 0, + date BIGINT NOT NULL DEFAULT 0, + delivery_id CHARACTER(36) PRIMARY KEY, + hash CHARACTER(66), + r CHARACTER(64), + s CHARACTER(64), + v BIGINT NOT NULL DEFAULT 0 + ); + ` + }).then(() => { + return this.query({ + queryString: ` + INSERT INTO contributions ( + organization, + contributor, + username, + eventType, + subEventType, + rewardValue, + reservedValue, + date, + delivery_id, + hash, + r, + s, + v + ) VALUES ( + "${ contribution['organization'] }", + "${ contribution['contributor'] }", + "${ contribution['username'] }", + "${ contribution['eventType'] }", + "${ contribution['subEventType'] }", + ${ contribution['rewardValue'] }, + ${ contribution['reservedValue'] }, + ${ contribution['date'] }, + "${ contribution['delivery_id'] }", + "${ contribution['hash'] }", + "${ contribution['r'] }", + "${ contribution['s'] }", + ${ contribution['v'] } + ); + ` + }) + }).then(() => { + return this.query({ + queryString: ` + SELECT * FROM contributions WHERE delivery_id = "${contribution['delivery_id']}"; + ` + }) + }).then((contribution) => { + resolve(contribution[0]) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/mysql/saveTotalSupply.js b/src/mysql/saveTotalSupply.js new file mode 100644 index 0000000..3e61fd5 --- /dev/null +++ b/src/mysql/saveTotalSupply.js @@ -0,0 +1,37 @@ +import Promise from 'bluebird' + +export default function saveTotalSupply(contribution) { + return new Promise((resolve, reject) => { + const { rewardValue, reservedValue, date } = contribution + + this.query({ queryString: ` + CREATE TABLE IF NOT EXISTS total_supply ( + total_tokens BIGINT NOT NULL DEFAULT 0, + date BIGINT NOT NULL DEFAULT 0 PRIMARY KEY + ); + ` }).then(() => { + return this.query({ queryString: ` + SELECT * FROM total_supply ORDER BY date DESC LIMIT 1; + ` }) + }).then((data) => { + let total_tokens = data.length ? data[0]['total_tokens'] : 0 + return this.query({ queryString: ` + INSERT INTO total_supply ( + total_tokens, + date + ) VALUES ( + ${ total_tokens += (rewardValue + reservedValue) }, + ${date} + ); + ` }) + }).then(() => { + return this.query({ queryString: ` + SELECT * FROM total_supply ORDER BY date DESC LIMIT 1; + ` }) + }).then((data) => { + resolve(data[0]) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/mysql/saveUserBalance.js b/src/mysql/saveUserBalance.js new file mode 100644 index 0000000..8c8fc17 --- /dev/null +++ b/src/mysql/saveUserBalance.js @@ -0,0 +1,50 @@ +import Promise from 'bluebird' + +export default function saveUserBalance(contribution) { + return new Promise((resolve, reject) => { + const { rewardValue, username, contributor } = contribution + + this.query({ queryString: ` + CREATE TABLE IF NOT EXISTS balances ( + username CHARACTER(39) PRIMARY KEY, + contributor CHARACTER(42) NOT NULL DEFAULT "0x0", + balance BIGINT NOT NULL DEFAULT 0 + ); + ` }).then(() => { + return this.query({ queryString: ` + SELECT * FROM balances WHERE username = "${username}"; + ` }) + }).then((data) => { + if (data.length) { + let { balance } = data[0] + return this.query({ queryString: ` + UPDATE balances + SET balance = ${ balance += rewardValue } + WHERE username = "${username}"; + ` }) + } else { + return this.query({ queryString: ` + INSERT INTO balances ( + username, + contributor, + balance + ) VALUES ( + "${username}", + "${contributor}", + ${rewardValue} + ); + ` }) + } + }).then(() => { + return this.query({ queryString: ` + SELECT * FROM balances WHERE username = "${username}"; + ` }) + }).then((data) => { + resolve(data[0]) + }).catch((error) => { + reject(error) + }) + + + }) +} diff --git a/src/routers/AuthRouter.js b/src/routers/AuthRouter.js new file mode 100644 index 0000000..f7a9b49 --- /dev/null +++ b/src/routers/AuthRouter.js @@ -0,0 +1,53 @@ +import passport from 'passport' +import { Strategy } from 'passport-github2' +import { Router } from 'express' + +export default function AuthRouter() { + let router = Router() + this.passport = passport + + this.passport.use(new Strategy(this.githubCredentials, + function(accessToken, refreshToken, profile, cb) { + const user = { accessToken, profile, refreshToken } + cb(null, user); + }) + ); + + this.passport.serializeUser((user, cb) => { + cb(null, user) + }) + + this.passport.deserializeUser((user, cb) => { + cb(null, user) + }) + + router.use(this.passport.initialize()); + router.use(this.passport.session()); + + router.get('/github', this.passport.authenticate('github')) + router.get('/github/callback', + this.passport.authenticate('github', { failureRedirect: '/' }), + (req, res) => { + res.redirect('/') + }) + + router.get('/verify/:address', (req, res) => { + const { + session: { passport }, + params: { address } + } = req + + if (!passport || !passport['user']) { + res.redirect('/auth/github') + } else { + const { user: { profile: { username } } } = req + + res.send(` + Authenticating GitToken Contributor Address, ${address}, + with GitHub User, ${username} + `) + } + }) + + return router +} diff --git a/src/routers/WebHookRouter.js b/src/routers/WebHookRouter.js new file mode 100644 index 0000000..733863e --- /dev/null +++ b/src/routers/WebHookRouter.js @@ -0,0 +1,17 @@ +import { Router } from 'express' + +export default function WebHookRouter() { + let router = Router() + + router.post('/', this.WebHookMiddleware, (req, res) => { + const { contribution, totalSupply, userBalance } = req + res.status(200).send(JSON.stringify({ + contribution, + userBalance, + totalSupply + }, null, 2)) + }) + + + return router +} diff --git a/src/routers/index.js b/src/routers/index.js new file mode 100644 index 0000000..f5b4099 --- /dev/null +++ b/src/routers/index.js @@ -0,0 +1,7 @@ +import AuthRouter from './AuthRouter' +import WebHookRouter from './WebHookRouter' + +export { + AuthRouter, + WebHookRouter +} diff --git a/src/utils/index.js b/src/utils/index.js new file mode 100644 index 0000000..24a1ffa --- /dev/null +++ b/src/utils/index.js @@ -0,0 +1,7 @@ +import signContribution from './signContribution' +import parseContribution from './parseContribution' + +export { + signContribution, + parseContribution +} diff --git a/src/utils/parseContribution.js b/src/utils/parseContribution.js new file mode 100644 index 0000000..f6f9e79 --- /dev/null +++ b/src/utils/parseContribution.js @@ -0,0 +1,62 @@ + + + +export default function parseContribution({ headers, payload }) { + return new Promise((resolve, reject) => { + const eventType = headers['x-github-event'] + + const getSubEventType = ({ eventType, payload }) => { + switch(eventType) { + case 'create': + return payload['ref_type'] + break; + case 'delete': + return payload['ref_type'] + break; + case 'deployment_status': + return payload['state'] + break; + case 'gollum': + return payload['pages'][0]['action'] // Should this be reward for each gollum (wiki page touched)? + break; + case 'page_build': + return payload['build']['status'] + break; + case 'pull_request': + return payload['pull_request']['merged'] ? payload['pull_request']['merged'] : payload['action'] // ternary => true ? 'a' : 'b' + break; + case 'status': + return payload['state'] + break; + default: + return payload['action'] + } + } + + const subEventType = getSubEventType({ eventType, payload }) + + this.RewardPoints.getRewardDetails.callAsync(eventType, subEventType).then((data) => { + + const rewardValue = data[0].toNumber() + const reservedValue = data[1].toNumber() + + console.log('reservedValue', reservedValue) + console.log('rewardValue', rewardValue) + + resolve({ + username: payload['sender']['login'], + contributor: null, + date: new Date().getTime(), + delivery_id: headers['x-github-delivery'], + eventType, + organization: payload['organization']['login'], + reservedValue, + rewardValue, + subEventType + }) + }).catch((error) => { + console.log('error', error) + reject(error) + }) + }) +} diff --git a/src/utils/signContribution.js b/src/utils/signContribution.js new file mode 100644 index 0000000..62eed27 --- /dev/null +++ b/src/utils/signContribution.js @@ -0,0 +1,42 @@ +import Promise from 'bluebird' + + +export default function signContribution(contribution) { + return new Promise((resolve, reject) => { + const { + organization, + contributor, + username, + eventType, + subEventType, + rewardValue, + reservedValue, + date, + delivery_id + } = contribution + + const messageHash = this.sha3([ + organization, + contributor, + username, + eventType, + subEventType, + rewardValue, + reservedValue, + date, + delivery_id + ]) + + this.signMessage({ messageHash }).then((signature) => { + resolve({ + hash: messageHash.toString('hex'), + r: signature['r'].toString('hex'), + s: signature['s'].toString('hex'), + v: signature['v'], + ...contribution + }) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src_old/index.js b/src_old/index.js new file mode 100644 index 0000000..04d96cf --- /dev/null +++ b/src_old/index.js @@ -0,0 +1,75 @@ +import express from 'express' +import http from 'http' +import cors from 'cors' +import path from 'path' +import bodyParser from 'body-parser' +import GitTokenMiddleware from 'gittoken-api-middleware/dist/index' +import passport from 'passport' +import { Strategy } from 'passport-github' +import graphqlHTTP from 'express-graphql' +import { buildSchema } from 'graphql' +import { sequelize } from './sequelize' + +const gittokenConfig = require(process.argv[2] || `${process.cwd()}/gittoken.config.js`) +const { githubCredentials, api: { sessionSecret } } = gittokenConfig + +const app = express() +const port = 1324 + +passport.use(new Strategy(githubCredentials, + function(accessToken, refreshToken, profile, cb) { + cb(null, { accessToken, profile }); + }) +); + +passport.serializeUser((user, cb) => { + cb(null, user) +}) + +passport.deserializeUser((user, cb) => { + cb(null, user) +}) + +app.use(cors()) +app.use(require('cookie-parser')()); +app.use(bodyParser.json()) // handle json data +app.use(bodyParser.urlencoded({ extended: true })) // handle URL-encoded data + +/** + * Serve static files + */ + +// app.use('/', +// express.static(`${process.cwd()}/node_modules/gittoken-messenger-ui/`)) + +app.use('/', express.static(`${process.cwd()}/node_modules/gittoken-dashboard/`)) + +app.use(require('express-session')({ + secret: sessionSecret, + resave: true, + saveUninitialized: true +})); + + +/** + * Setup GitHub OAuth Strategy + */ +app.use(passport.initialize()); +app.use(passport.session()); + +app.get('/auth/github', passport.authenticate('github')) +app.get('/auth/github/callback', + passport.authenticate('github', { failureRedirect: '/' }), + (req, res) => { res.redirect('/') }) + + +/** + * Establish GitToken Middleware Services + */ +let gittoken = new GitTokenMiddleware(gittokenConfig) +app.use('/gittoken', gittoken.routeRequests()) + + +app.listen(port, () => { + console.log(`GitToken Server Listening on Port ${port}`) +}) diff --git a/torvalds/Dockerfile b/torvalds/Dockerfile new file mode 100644 index 0000000..93ac8cf --- /dev/null +++ b/torvalds/Dockerfile @@ -0,0 +1,15 @@ +FROM parity/parity:v1.8.2 + +# Parity PoA Torvalds Relay Network +# Torvalds Authority Node: GitToken + + +# Add Configuration files +WORKDIR /mnt/parity + +# Add Configuration files +ADD config.toml . +ADD chain.json . + +EXPOSE 30303 8545 8180 8456 30303/udp +CMD parity diff --git a/torvalds/chain.json b/torvalds/chain.json new file mode 100644 index 0000000..4874903 --- /dev/null +++ b/torvalds/chain.json @@ -0,0 +1,94 @@ +{ + "name": "Torvalds", + "engine": { + "authorityRound": { + "params": { + "gasLimitBoundDivisor": "0x400", + "stepDuration": "1", + "validators": { + "list": [ + "0x00a054ffda97220e9a7483e6e7b87d445e4d6c96" + ] + } + } + } + }, + "params": { + "gasLimitBoundDivisor": "0x400", + "maximumExtraDataSize": "0x20", + "minGasLimit": "0xB71B00", + "networkID": "0x9" + }, + "genesis": { + "seal": { + "authorityRound": { + "step": "0x0", + "signature": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + } + }, + "difficulty": "0x20000", + "gasLimit": "0xB71B00" + }, + "accounts": { + "0x0000000000000000000000000000000000000001": { + "balance": "1", + "builtin": { + "name": "ecrecover", + "pricing": { + "linear": { + "base": 3000, + "word": 0 + } + } + } + }, + "0x0000000000000000000000000000000000000002": { + "balance": "1", + "builtin": { + "name": "sha256", + "pricing": { + "linear": { + "base": 60, + "word": 12 + } + } + } + }, + "0x0000000000000000000000000000000000000003": { + "balance": "1", + "builtin": { + "name": "ripemd160", + "pricing": { + "linear": { + "base": 600, + "word": 120 + } + } + } + }, + "0x0000000000000000000000000000000000000004": { + "balance": "1", + "builtin": { + "name": "identity", + "pricing": { + "linear": { + "base": 15, + "word": 3 + } + } + } + }, + "8CB2CeBB0070b231d4BA4D3b747acAebDFbbD142": { + "balance": "10000000000000000000000000000000000000000000" + }, + "7fAc1b57EbB9a2bAeA4643f9efb6eE237e76A8E5": { + "balance": "10000000000000000000000000000000000000000000" + }, + "024138ba30f69f108a4e0aad9d51b4b4a4e03dd7": { + "balance": "10000000000000000000000000000000000000000000" + }, + "0x00a054ffda97220e9a7483e6e7b87d445e4d6c96": { + "balance": "10000000000000000000000000000000000000000000" + } + } +} diff --git a/parity/config.toml b/torvalds/config.toml similarity index 50% rename from parity/config.toml rename to torvalds/config.toml index 05fec54..0088e7a 100644 --- a/parity/config.toml +++ b/torvalds/config.toml @@ -8,11 +8,9 @@ mode = "last" chain = "/mnt/parity/chain.json" base_path = "/mnt/parity" + [account] -# From: [,,] you'll be able to send tranasactions without password. -# Replace the following address to the corresponding passkey -unlock = ["024138ba30f69f108a4e0aad9d51b4b4a4e03dd7"] -password = ["/mnt/parity/keys/DevelopmentChain/.pk"] +# GitToken Signer Wallet Will create keystore for this node [ui] force = false @@ -31,17 +29,19 @@ port = 8545 apis = ["web3", "eth", "net", "parity", "traces", "rpc"] hosts = ["all"] -#[ws] -# JSON-RPC will be listening for connections on IP 0.0.0.0. -#interface = "0.0.0.0" -# Allows connecting from Origin '*'. -#origins = "*" +[websockets] +disable = false +port = 8546 +interface = "local" +origins = ["*"] +apis = ["web3", "eth", "net", "parity", "traces", "rpc", "secretstore"] +hosts = ["all"] + +[ipc] +disable = false +path = "/mnt/parity/jsonrpc.ipc" +apis = ["web3", "eth", "net", "parity", "parity_accounts", "personal", "traces", "rpc", "secretstore"] -#[secretstore] -# Secret Store will listen for connections on IP 0.0.0.0. -#interface = "0.0.0.0" -# Secret Store will listen for HTTP requests on IP 0.0.0.0. -#http_interface = "0.0.0.0" [ipfs] # Secret Store will listen for connections on IP 0.0.0.0. @@ -49,6 +49,19 @@ interface = "0.0.0.0" # Allows Cross-Origin Requests from domain '*'. cors = "*" -[dapps] -# Dapps Server will listen for connections on IP 0.0.0.0. -interface = "0.0.0.0" +[network] +port = 30303 +min_peers = 25 +max_peers = 50 +nat = "any" +id = 9 +bootnodes = [ + "enode://ec5473d51fe961d8df7d83b0c6fe431686e1c3fd5424ea9697d0de432e39fa461ca7ee5e636ea553e37cf6d5752e0c1ea43e5d6e71282e84017eabd8858e1c18@138.68.225.133:30303" +] +discovery = true +warp = true +allow_ips = "all" +snapshot_peers = 0 +max_pending_peers = 64 +no_serve_light = false +reserved_only = false diff --git a/utils/keccak.js b/utils/keccak.js deleted file mode 100644 index dd1cc33..0000000 --- a/utils/keccak.js +++ /dev/null @@ -1,55 +0,0 @@ -const createKeccakHash = require('keccak') - -// #!/usr/bin/env node -/** - * @fileOverview An example command line script. - * - * This outputs the number of bytes the content passed to it. - */ - -var encoding = 'utf-8'; -var data; - -/** - * Once we have data, carry out processing. In this case - * that means writing the length of the input in bytes. - */ -function processData () { - var hash = createKeccakHash('keccak256').update(new Buffer(data)).digest() - process.stdout.write(hash.toString('hex')) -} - -// ------------------------------------------------------------ -// Called with arguments. E.g.: -// ./example-script "pass in this string as input" -// ------------------------------------------------------------ - -if (process.stdin.isTTY) { - // Even though executed by name, the first argument is still "node", - // the second the script name. The third is the string we want. - data = new Buffer(process.argv[2] || '', encoding); - processData(); -} - -// ------------------------------------------------------------ -// Accepting piped content. E.g.: -// echo "pass in this string as input" | ./example-script -// ------------------------------------------------------------ - -else { - data = ''; - process.stdin.setEncoding(encoding); - - process.stdin.on('readable', function() { - var chunk; - while (chunk = process.stdin.read()) { - data += chunk; - } - }); - - process.stdin.on('end', function () { - // There will be a trailing \n from the user hitting enter. Get rid of it. - data = data.replace(/\n$/, ''); - processData(); - }); -} diff --git a/utils/keygen.js b/utils/keygen.js deleted file mode 100644 index f4f9f63..0000000 --- a/utils/keygen.js +++ /dev/null @@ -1,56 +0,0 @@ -const keythereum = require('keythereum') - -// #!/usr/bin/env node -/** - * @fileOverview An example command line script. - * - * This outputs the number of bytes the content passed to it. - */ - -var encoding = 'utf-8'; -var data; - -/** - * Once we have data, carry out processing. In this case - * that means writing the length of the input in bytes. - */ -function processData () { - const dk = keythereum.create() - const keystore = keythereum.dump(data, dk.privateKey, dk.salt, dk.iv, null); - keythereum.exportToFile(keystore) -} - -// ------------------------------------------------------------ -// Called with arguments. E.g.: -// ./example-script "pass in this string as input" -// ------------------------------------------------------------ - -if (process.stdin.isTTY) { - // Even though executed by name, the first argument is still "node", - // the second the script name. The third is the string we want. - data = new Buffer(process.argv[2] || '', encoding); - processData(); -} - -// ------------------------------------------------------------ -// Accepting piped content. E.g.: -// echo "pass in this string as input" | ./example-script -// ------------------------------------------------------------ - -else { - data = ''; - process.stdin.setEncoding(encoding); - - process.stdin.on('readable', function() { - var chunk; - while (chunk = process.stdin.read()) { - data += chunk; - } - }); - - process.stdin.on('end', function () { - // There will be a trailing \n from the user hitting enter. Get rid of it. - data = data.replace(/\n$/, ''); - processData(); - }); -} diff --git a/yarn.lock b/yarn.lock deleted file mode 100644 index 139a871..0000000 --- a/yarn.lock +++ /dev/null @@ -1,3832 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -abbrev@1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" - -abstract-leveldown@2.4.1, abstract-leveldown@~2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-2.4.1.tgz#b3bfedb884eb693a12775f0c55e9f0a420ccee64" - dependencies: - xtend "~4.0.0" - -abstract-leveldown@~2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-2.6.1.tgz#f9014a5669b746418e145168dea49a044ae15900" - dependencies: - xtend "~4.0.0" - -accepts@~1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.3.tgz#c3ca7434938648c3e0d9c1e328dd68b622c284ca" - dependencies: - mime-types "~2.1.11" - negotiator "0.6.1" - -acorn@^1.0.3: - version "1.2.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-1.2.2.tgz#c8ce27de0acc76d896d2b1fad3df588d9e82f014" - -aes-js@^0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-0.2.4.tgz#94b881ab717286d015fa219e08fb66709dda5a3d" - -after-all@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/after-all/-/after-all-2.0.2.tgz#20300298ed6094b4c85c98e7c8ad4dca628f9f73" - dependencies: - once "^1.3.0" - -ajv@^4.9.1: - version "4.11.8" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" - dependencies: - co "^4.6.0" - json-stable-stringify "^1.0.1" - -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - -anymatch@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.0.tgz#a3e52fa39168c825ff57b0248126ce5a8ff95507" - dependencies: - arrify "^1.0.0" - micromatch "^2.1.5" - -aproba@^1.0.3: - version "1.1.2" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1" - -are-we-there-yet@~1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - dependencies: - arr-flatten "^1.0.1" - -arr-flatten@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - -arrify@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - -asn1@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - -assert-plus@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - -async-eventemitter@^0.2.2: - version "0.2.3" - resolved "https://registry.yarnpkg.com/async-eventemitter/-/async-eventemitter-0.2.3.tgz#f79f480dfda6645a97bd6142c017150d63b4e70e" - dependencies: - async "^2.4.0" - -async@^1.4.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - -async@^2.0.1, async@^2.1.2, async@^2.4.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/async/-/async-2.5.0.tgz#843190fd6b7357a0b9e1c956edddd5ec8462b54d" - dependencies: - lodash "^4.14.0" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - -aws-sign2@~0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - -aws4@^1.2.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" - -babel-cli@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.24.1.tgz#207cd705bba61489b2ea41b5312341cf6aca2283" - dependencies: - babel-core "^6.24.1" - babel-polyfill "^6.23.0" - babel-register "^6.24.1" - babel-runtime "^6.22.0" - commander "^2.8.1" - convert-source-map "^1.1.0" - fs-readdir-recursive "^1.0.0" - glob "^7.0.0" - lodash "^4.2.0" - output-file-sync "^1.1.0" - path-is-absolute "^1.0.0" - slash "^1.0.0" - source-map "^0.5.0" - v8flags "^2.0.10" - optionalDependencies: - chokidar "^1.6.1" - -babel-code-frame@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" - dependencies: - chalk "^1.1.0" - esutils "^2.0.2" - js-tokens "^3.0.0" - -babel-core@^6.0.14, babel-core@^6.24.1: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.25.0.tgz#7dd42b0463c742e9d5296deb3ec67a9322dad729" - dependencies: - babel-code-frame "^6.22.0" - babel-generator "^6.25.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.25.0" - babel-traverse "^6.25.0" - babel-types "^6.25.0" - babylon "^6.17.2" - convert-source-map "^1.1.0" - debug "^2.1.1" - json5 "^0.5.0" - lodash "^4.2.0" - minimatch "^3.0.2" - path-is-absolute "^1.0.0" - private "^0.1.6" - slash "^1.0.0" - source-map "^0.5.0" - -babel-generator@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.25.0.tgz#33a1af70d5f2890aeb465a4a7793c1df6a9ea9fc" - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-types "^6.25.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.2.0" - source-map "^0.5.0" - trim-right "^1.0.1" - -babel-helper-bindify-decorators@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" - dependencies: - babel-helper-explode-assignable-expression "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-call-delegate@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-define-map@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.24.1.tgz#7a9747f258d8947d32d515f6aa1c7bd02204a080" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - lodash "^4.2.0" - -babel-helper-explode-assignable-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-explode-class@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" - dependencies: - babel-helper-bindify-decorators "^6.24.1" - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-function-name@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" - dependencies: - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-get-function-arity@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-hoist-variables@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-optimise-call-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-regex@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.24.1.tgz#d36e22fab1008d79d88648e32116868128456ce8" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - lodash "^4.2.0" - -babel-helper-remap-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-replace-supers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" - dependencies: - babel-helper-optimise-call-expression "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-check-es2015-constants@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-inline-import@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/babel-plugin-inline-import/-/babel-plugin-inline-import-2.0.5.tgz#1d0bf5c55939d4289f2869247400d0ad5b701a0d" - dependencies: - require-resolve "0.0.2" - -babel-plugin-syntax-async-functions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" - -babel-plugin-syntax-async-generators@^6.5.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" - -babel-plugin-syntax-class-constructor-call@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz#9cb9d39fe43c8600bec8146456ddcbd4e1a76416" - -babel-plugin-syntax-class-properties@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" - -babel-plugin-syntax-decorators@^6.13.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b" - -babel-plugin-syntax-do-expressions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz#5747756139aa26d390d09410b03744ba07e4796d" - -babel-plugin-syntax-dynamic-import@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da" - -babel-plugin-syntax-exponentiation-operator@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" - -babel-plugin-syntax-export-extensions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721" - -babel-plugin-syntax-function-bind@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz#48c495f177bdf31a981e732f55adc0bdd2601f46" - -babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - -babel-plugin-syntax-trailing-function-commas@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" - -babel-plugin-transform-async-generator-functions@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-generators "^6.5.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-async-to-generator@^6.22.0, babel-plugin-transform-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-class-constructor-call@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz#80dc285505ac067dcb8d6c65e2f6f11ab7765ef9" - dependencies: - babel-plugin-syntax-class-constructor-call "^6.18.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-class-properties@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac" - dependencies: - babel-helper-function-name "^6.24.1" - babel-plugin-syntax-class-properties "^6.8.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-decorators@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" - dependencies: - babel-helper-explode-class "^6.24.1" - babel-plugin-syntax-decorators "^6.13.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-do-expressions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz#28ccaf92812d949c2cd1281f690c8fdc468ae9bb" - dependencies: - babel-plugin-syntax-do-expressions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-arrow-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoping@^6.23.0, babel-plugin-transform-es2015-block-scoping@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.24.1.tgz#76c295dc3a4741b1665adfd3167215dcff32a576" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - lodash "^4.2.0" - -babel-plugin-transform-es2015-classes@^6.23.0, babel-plugin-transform-es2015-classes@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" - dependencies: - babel-helper-define-map "^6.24.1" - babel-helper-function-name "^6.24.1" - babel-helper-optimise-call-expression "^6.24.1" - babel-helper-replace-supers "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-computed-properties@^6.22.0, babel-plugin-transform-es2015-computed-properties@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-destructuring@^6.22.0, babel-plugin-transform-es2015-destructuring@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-duplicate-keys@^6.22.0, babel-plugin-transform-es2015-duplicate-keys@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-for-of@^6.22.0, babel-plugin-transform-es2015-for-of@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-function-name@^6.22.0, babel-plugin-transform-es2015-function-name@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" - dependencies: - babel-plugin-transform-es2015-modules-commonjs "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.1.tgz#d3e310b40ef664a36622200097c6d440298f2bfe" - dependencies: - babel-plugin-transform-strict-mode "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-modules-systemjs@^6.23.0, babel-plugin-transform-es2015-modules-systemjs@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-umd@^6.23.0, babel-plugin-transform-es2015-modules-umd@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" - dependencies: - babel-plugin-transform-es2015-modules-amd "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-object-super@^6.22.0, babel-plugin-transform-es2015-object-super@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" - dependencies: - babel-helper-replace-supers "^6.24.1" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-parameters@^6.23.0, babel-plugin-transform-es2015-parameters@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" - dependencies: - babel-helper-call-delegate "^6.24.1" - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-shorthand-properties@^6.22.0, babel-plugin-transform-es2015-shorthand-properties@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-spread@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-sticky-regex@^6.22.0, babel-plugin-transform-es2015-sticky-regex@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-template-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-typeof-symbol@^6.22.0, babel-plugin-transform-es2015-typeof-symbol@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-unicode-regex@^6.22.0, babel-plugin-transform-es2015-unicode-regex@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - regexpu-core "^2.0.0" - -babel-plugin-transform-exponentiation-operator@^6.22.0, babel-plugin-transform-exponentiation-operator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" - dependencies: - babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" - babel-plugin-syntax-exponentiation-operator "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-export-extensions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz#53738b47e75e8218589eea946cbbd39109bbe653" - dependencies: - babel-plugin-syntax-export-extensions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-function-bind@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz#c6fb8e96ac296a310b8cf8ea401462407ddf6a97" - dependencies: - babel-plugin-syntax-function-bind "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-object-rest-spread@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.23.0.tgz#875d6bc9be761c58a2ae3feee5dc4895d8c7f921" - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-regenerator@^6.22.0, babel-plugin-transform-regenerator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.24.1.tgz#b8da305ad43c3c99b4848e4fe4037b770d23c418" - dependencies: - regenerator-transform "0.9.11" - -babel-plugin-transform-runtime@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz#88490d446502ea9b8e7efb0fe09ec4d99479b1ee" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-strict-mode@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-polyfill@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.23.0.tgz#8364ca62df8eafb830499f699177466c3b03499d" - dependencies: - babel-runtime "^6.22.0" - core-js "^2.4.0" - regenerator-runtime "^0.10.0" - -babel-preset-env@^1.5.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.0.tgz#2de1c782a780a0a5d605d199c957596da43c44e4" - dependencies: - babel-plugin-check-es2015-constants "^6.22.0" - babel-plugin-syntax-trailing-function-commas "^6.22.0" - babel-plugin-transform-async-to-generator "^6.22.0" - babel-plugin-transform-es2015-arrow-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoping "^6.23.0" - babel-plugin-transform-es2015-classes "^6.23.0" - babel-plugin-transform-es2015-computed-properties "^6.22.0" - babel-plugin-transform-es2015-destructuring "^6.23.0" - babel-plugin-transform-es2015-duplicate-keys "^6.22.0" - babel-plugin-transform-es2015-for-of "^6.23.0" - babel-plugin-transform-es2015-function-name "^6.22.0" - babel-plugin-transform-es2015-literals "^6.22.0" - babel-plugin-transform-es2015-modules-amd "^6.22.0" - babel-plugin-transform-es2015-modules-commonjs "^6.23.0" - babel-plugin-transform-es2015-modules-systemjs "^6.23.0" - babel-plugin-transform-es2015-modules-umd "^6.23.0" - babel-plugin-transform-es2015-object-super "^6.22.0" - babel-plugin-transform-es2015-parameters "^6.23.0" - babel-plugin-transform-es2015-shorthand-properties "^6.22.0" - babel-plugin-transform-es2015-spread "^6.22.0" - babel-plugin-transform-es2015-sticky-regex "^6.22.0" - babel-plugin-transform-es2015-template-literals "^6.22.0" - babel-plugin-transform-es2015-typeof-symbol "^6.23.0" - babel-plugin-transform-es2015-unicode-regex "^6.22.0" - babel-plugin-transform-exponentiation-operator "^6.22.0" - babel-plugin-transform-regenerator "^6.22.0" - browserslist "^2.1.2" - invariant "^2.2.2" - semver "^5.3.0" - -babel-preset-es2015@^6.24.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939" - dependencies: - babel-plugin-check-es2015-constants "^6.22.0" - babel-plugin-transform-es2015-arrow-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoping "^6.24.1" - babel-plugin-transform-es2015-classes "^6.24.1" - babel-plugin-transform-es2015-computed-properties "^6.24.1" - babel-plugin-transform-es2015-destructuring "^6.22.0" - babel-plugin-transform-es2015-duplicate-keys "^6.24.1" - babel-plugin-transform-es2015-for-of "^6.22.0" - babel-plugin-transform-es2015-function-name "^6.24.1" - babel-plugin-transform-es2015-literals "^6.22.0" - babel-plugin-transform-es2015-modules-amd "^6.24.1" - babel-plugin-transform-es2015-modules-commonjs "^6.24.1" - babel-plugin-transform-es2015-modules-systemjs "^6.24.1" - babel-plugin-transform-es2015-modules-umd "^6.24.1" - babel-plugin-transform-es2015-object-super "^6.24.1" - babel-plugin-transform-es2015-parameters "^6.24.1" - babel-plugin-transform-es2015-shorthand-properties "^6.24.1" - babel-plugin-transform-es2015-spread "^6.22.0" - babel-plugin-transform-es2015-sticky-regex "^6.24.1" - babel-plugin-transform-es2015-template-literals "^6.22.0" - babel-plugin-transform-es2015-typeof-symbol "^6.22.0" - babel-plugin-transform-es2015-unicode-regex "^6.24.1" - babel-plugin-transform-regenerator "^6.24.1" - -babel-preset-stage-0@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz#5642d15042f91384d7e5af8bc88b1db95b039e6a" - dependencies: - babel-plugin-transform-do-expressions "^6.22.0" - babel-plugin-transform-function-bind "^6.22.0" - babel-preset-stage-1 "^6.24.1" - -babel-preset-stage-1@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz#7692cd7dcd6849907e6ae4a0a85589cfb9e2bfb0" - dependencies: - babel-plugin-transform-class-constructor-call "^6.24.1" - babel-plugin-transform-export-extensions "^6.22.0" - babel-preset-stage-2 "^6.24.1" - -babel-preset-stage-2@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" - dependencies: - babel-plugin-syntax-dynamic-import "^6.18.0" - babel-plugin-transform-class-properties "^6.24.1" - babel-plugin-transform-decorators "^6.24.1" - babel-preset-stage-3 "^6.24.1" - -babel-preset-stage-3@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" - dependencies: - babel-plugin-syntax-trailing-function-commas "^6.22.0" - babel-plugin-transform-async-generator-functions "^6.24.1" - babel-plugin-transform-async-to-generator "^6.24.1" - babel-plugin-transform-exponentiation-operator "^6.24.1" - babel-plugin-transform-object-rest-spread "^6.22.0" - -babel-register@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.1.tgz#7e10e13a2f71065bdfad5a1787ba45bca6ded75f" - dependencies: - babel-core "^6.24.1" - babel-runtime "^6.22.0" - core-js "^2.4.0" - home-or-tmp "^2.0.0" - lodash "^4.2.0" - mkdirp "^0.5.1" - source-map-support "^0.4.2" - -babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.23.0.tgz#0a9489f144de70efb3ce4300accdb329e2fc543b" - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.10.0" - -babel-template@^6.24.1, babel-template@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.25.0.tgz#665241166b7c2aa4c619d71e192969552b10c071" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.25.0" - babel-types "^6.25.0" - babylon "^6.17.2" - lodash "^4.2.0" - -babel-traverse@^6.24.1, babel-traverse@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.25.0.tgz#2257497e2fcd19b89edc13c4c91381f9512496f1" - dependencies: - babel-code-frame "^6.22.0" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-types "^6.25.0" - babylon "^6.17.2" - debug "^2.2.0" - globals "^9.0.0" - invariant "^2.2.0" - lodash "^4.2.0" - -babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.25.0.tgz#70afb248d5660e5d18f811d91c8303b54134a18e" - dependencies: - babel-runtime "^6.22.0" - esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^1.0.1" - -babelify@^7.3.0: - version "7.3.0" - resolved "https://registry.yarnpkg.com/babelify/-/babelify-7.3.0.tgz#aa56aede7067fd7bd549666ee16dc285087e88e5" - dependencies: - babel-core "^6.0.14" - object-assign "^4.0.0" - -babylon@^6.17.2: - version "6.17.4" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.17.4.tgz#3e8b7402b88d22c3423e137a1577883b15ff869a" - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - -base-x@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/base-x/-/base-x-1.1.0.tgz#42d3d717474f9ea02207f6d1aa1f426913eeb7ac" - -base64-js@^1.0.2: - version "1.2.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.1.tgz#a91947da1f4a516ea38e5b4ec0ec3773675e0886" - -bcrypt-pbkdf@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" - dependencies: - tweetnacl "^0.14.3" - -bignumber.js@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-4.0.2.tgz#2d1dc37ee5968867ecea90b6da4d16e68608d21d" - -"bignumber.js@git+https://github.com/debris/bignumber.js#master": - version "2.0.7" - resolved "git+https://github.com/debris/bignumber.js#c7a38de919ed75e6fb6ba38051986e294b328df9" - -"bignumber.js@git+https://github.com/debris/bignumber.js.git#94d7146671b9719e00a09c29b01a691bc85048c2": - version "2.0.7" - resolved "git+https://github.com/debris/bignumber.js.git#94d7146671b9719e00a09c29b01a691bc85048c2" - -binary-extensions@^1.0.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.8.0.tgz#48ec8d16df4377eae5fa5884682480af4d95c774" - -bindings@^1.2.1, bindings@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.2.1.tgz#14ad6113812d2d37d72e67b4cacb4bb726505f11" - -bip39@^2.2.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/bip39/-/bip39-2.3.1.tgz#c8238abc09d719c6f01136ef042daccc5dc3581b" - dependencies: - create-hash "^1.1.0" - pbkdf2 "^3.0.9" - randombytes "^2.0.1" - safe-buffer "^5.0.1" - unorm "^1.3.3" - -bip66@^1.1.3: - version "1.1.5" - resolved "https://registry.yarnpkg.com/bip66/-/bip66-1.1.5.tgz#01fa8748785ca70955d5011217d1b3139969ca22" - dependencies: - safe-buffer "^5.0.1" - -bitcore-lib@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/bitcore-lib/-/bitcore-lib-0.14.0.tgz#21cb2359fe7b997a3b7b773eb7d7275ae37d644e" - dependencies: - bn.js "=2.0.4" - bs58 "=2.0.0" - buffer-compare "=1.0.0" - elliptic "=3.0.3" - inherits "=2.0.1" - lodash "=3.10.1" - -bitcore-mnemonic@^1.2.2: - version "1.2.5" - resolved "https://registry.yarnpkg.com/bitcore-mnemonic/-/bitcore-mnemonic-1.2.5.tgz#45faba00163c557a054202ffe9a20fba2360685f" - dependencies: - bitcore-lib "^0.14.0" - unorm "^1.3.3" - -bitfield@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/bitfield/-/bitfield-1.1.2.tgz#a5477f00e33f2a76edc209aaf26bf09394a378cf" - -bl@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.1.tgz#cac328f7bee45730d404b692203fcb590e172d5e" - dependencies: - readable-stream "^2.0.5" - -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - dependencies: - inherits "~2.0.0" - -bluebird@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" - -bn.js@=2.0.4, bn.js@^2.0.0, bn.js@^2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-2.0.4.tgz#220a7cd677f7f1bfa93627ff4193776fe7819480" - -bn.js@^4.11.3, bn.js@^4.4.0, bn.js@^4.8.0: - version "4.11.7" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.7.tgz#ddb048e50d9482790094c13eb3fcfc833ce7ab46" - -body-parser@^1.17.2: - version "1.17.2" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.17.2.tgz#f8892abc8f9e627d42aedafbca66bf5ab99104ee" - dependencies: - bytes "2.4.0" - content-type "~1.0.2" - debug "2.6.7" - depd "~1.1.0" - http-errors "~1.6.1" - iconv-lite "0.4.15" - on-finished "~2.3.0" - qs "6.4.0" - raw-body "~2.2.0" - type-is "~1.6.15" - -boom@2.x.x: - version "2.10.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - dependencies: - hoek "2.x.x" - -brace-expansion@^1.1.7: - version "1.1.8" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -brfs@^1.4.0: - version "1.4.3" - resolved "https://registry.yarnpkg.com/brfs/-/brfs-1.4.3.tgz#db675d6f5e923e6df087fca5859c9090aaed3216" - dependencies: - quote-stream "^1.0.1" - resolve "^1.1.5" - static-module "^1.1.0" - through2 "^2.0.0" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - -browser-fingerprint@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/browser-fingerprint/-/browser-fingerprint-0.0.1.tgz#8df3cdca25bf7d5b3542d61545d730053fce604a" - -browserify-aes@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.0.6.tgz#5e7725dbdef1fd5930d4ebab48567ce451c48a0a" - dependencies: - buffer-xor "^1.0.2" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - inherits "^2.0.1" - -browserify-sha3@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/browserify-sha3/-/browserify-sha3-0.0.1.tgz#3ff34a3006ef15c0fb3567e541b91a2340123d11" - dependencies: - js-sha3 "^0.3.1" - -browserslist@^2.1.2: - version "2.1.5" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.1.5.tgz#e882550df3d1cd6d481c1a3e0038f2baf13a4711" - dependencies: - caniuse-lite "^1.0.30000684" - electron-to-chromium "^1.3.14" - -bs58@=2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/bs58/-/bs58-2.0.0.tgz#72b713bed223a0ac518bbda0e3ce3f4817f39eb5" - -bs58@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/bs58/-/bs58-2.0.1.tgz#55908d58f1982aba2008fa1bed8f91998a29bf8d" - -bs58@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/bs58/-/bs58-3.1.0.tgz#d4c26388bf4804cac714141b1945aa47e5eb248e" - dependencies: - base-x "^1.1.0" - -bs58check@^1.0.8: - version "1.3.4" - resolved "https://registry.yarnpkg.com/bs58check/-/bs58check-1.3.4.tgz#c52540073749117714fa042c3047eb8f9151cbf8" - dependencies: - bs58 "^3.1.0" - create-hash "^1.1.0" - -buffer-compare@=1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-compare/-/buffer-compare-1.0.0.tgz#acaa7a966e98eee9fae14b31c39a5f158fb3c4a2" - -buffer-equal@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-0.0.1.tgz#91bc74b11ea405bc916bc6aa908faafa5b4aac4b" - -buffer-xor@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - -buffer@^4.9.0: - version "4.9.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - -bytes@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.4.0.tgz#7d97196f9d5baf7f6935e25985549edd2a6c2339" - -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - -caniuse-lite@^1.0.30000684: - version "1.0.30000697" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000697.tgz#125fb00604b63fbb188db96a667ce2922dcd6cdd" - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - -chalk@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -checkpoint-store@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/checkpoint-store/-/checkpoint-store-1.1.0.tgz#04e4cb516b91433893581e6d4601a78e9552ea06" - dependencies: - functional-red-black-tree "^1.0.1" - -chokidar@^1.6.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" - dependencies: - anymatch "^1.3.0" - async-each "^1.0.0" - glob-parent "^2.0.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^2.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - optionalDependencies: - fsevents "^1.0.0" - -chownr@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -cliui@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" - -clone@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.1.tgz#d217d1e961118e3ac9a4b8bba3285553bf647cdb" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - -coinstring@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/coinstring/-/coinstring-2.3.0.tgz#cdb63363a961502404a25afb82c2e26d5ff627a4" - dependencies: - bs58 "^2.0.1" - create-hash "^1.1.1" - -combined-stream@^1.0.5, combined-stream@~1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" - dependencies: - delayed-stream "~1.0.0" - -commander@^2.8.1: - version "2.11.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - -concat-stream@~1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" - dependencies: - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - -content-type@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.2.tgz#b7d113aee7a8dd27bd21133c4dc2529df1721eed" - -convert-source-map@^1.1.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - -core-js@^1.1.1: - version "1.2.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" - -core-js@^2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.4.1.tgz#4de911e667b0eae9124e34254b53aea6fc618d3e" - -core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - -cors@^2.8.3: - version "2.8.3" - resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.3.tgz#4cf78e1d23329a7496b2fc2225b77ca5bb5eb802" - dependencies: - object-assign "^4" - vary "^1" - -create-hash@^1.1.0, create-hash@^1.1.1, create-hash@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - ripemd160 "^2.0.0" - sha.js "^2.4.0" - -create-hmac@^1.1.4: - version "1.1.6" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06" - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -cryptiles@2.x.x: - version "2.0.5" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" - dependencies: - boom "2.x.x" - -crypto-js@^3.1.4, crypto-js@^3.1.5: - version "3.1.8" - resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.8.tgz#715f070bf6014f2ae992a98b3929258b713f08d5" - -cuid@^1.2.5: - version "1.3.8" - resolved "https://registry.yarnpkg.com/cuid/-/cuid-1.3.8.tgz#4b875e0969bad764f7ec0706cf44f5fb0831f6b7" - dependencies: - browser-fingerprint "0.0.1" - core-js "^1.1.1" - node-fingerprint "0.0.2" - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - dependencies: - assert-plus "^1.0.0" - -debug@2.6.7, debug@^2.1.1, debug@^2.2.0: - version "2.6.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.7.tgz#92bad1f6d05bbb6bba22cca88bcd0ec894c2861e" - dependencies: - ms "2.0.0" - -decamelize@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - -deep-equal@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - -deep-extend@~0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" - -deferred-leveldown@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-1.2.1.tgz#5d25c3310f5fe909946f6240dc9f90dd109a71ef" - dependencies: - abstract-leveldown "~2.4.0" - -define-properties@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" - dependencies: - foreach "^2.0.5" - object-keys "^1.0.8" - -defined@^1.0.0, defined@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - -depd@1.1.0, depd@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.0.tgz#e1bd82c6aab6ced965b97b88b17ed3e528ca18c3" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - dependencies: - repeating "^2.0.0" - -dom-walk@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" - -drbg.js@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/drbg.js/-/drbg.js-1.0.1.tgz#3e36b6c42b37043823cdbc332d58f31e2445480b" - dependencies: - browserify-aes "^1.0.6" - create-hash "^1.1.2" - create-hmac "^1.1.4" - -duplexer2@~0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" - dependencies: - readable-stream "~1.1.9" - -duplexify@^3.4.2: - version "3.5.0" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.0.tgz#1aa773002e1578457e9d9d4a50b0ccaaebcbd604" - dependencies: - end-of-stream "1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" - dependencies: - jsbn "~0.1.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - -electron-to-chromium@^1.3.14: - version "1.3.15" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.15.tgz#08397934891cbcfaebbd18b82a95b5a481138369" - -elliptic@=3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-3.0.3.tgz#865c9b420bfbe55006b9f969f97a0d2c44966595" - dependencies: - bn.js "^2.0.0" - brorand "^1.0.1" - hash.js "^1.0.0" - inherits "^2.0.1" - -elliptic@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-3.1.0.tgz#c21682ef762769b56a74201609105da11d5f60cc" - dependencies: - bn.js "^2.0.3" - brorand "^1.0.1" - hash.js "^1.0.0" - inherits "^2.0.1" - -elliptic@^6.2.3: - version "6.4.0" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -encodeurl@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" - -encoding@^0.1.11: - version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" - dependencies: - iconv-lite "~0.4.13" - -end-of-stream@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.0.0.tgz#d4596e702734a93e40e9af864319eabd99ff2f0e" - dependencies: - once "~1.3.0" - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.0.tgz#7a90d833efda6cfa6eac0f4949dbb0fad3a63206" - dependencies: - once "^1.4.0" - -errno@~0.1.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.4.tgz#b896e23a9e5e8ba33871fc996abd3635fc9a1c7d" - dependencies: - prr "~0.0.0" - -error-ex@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.5.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c" - dependencies: - es-to-primitive "^1.1.1" - function-bind "^1.1.0" - is-callable "^1.1.3" - is-regex "^1.0.3" - -es-to-primitive@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" - dependencies: - is-callable "^1.1.1" - is-date-object "^1.0.1" - is-symbol "^1.0.1" - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - -escape-string-regexp@^1.0.2: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - -escodegen@~0.0.24: - version "0.0.28" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-0.0.28.tgz#0e4ff1715f328775d6cab51ac44a406cd7abffd3" - dependencies: - esprima "~1.0.2" - estraverse "~1.3.0" - optionalDependencies: - source-map ">= 0.1.2" - -escodegen@~1.3.2: - version "1.3.3" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.3.3.tgz#f024016f5a88e046fd12005055e939802e6c5f23" - dependencies: - esprima "~1.1.1" - estraverse "~1.5.0" - esutils "~1.0.0" - optionalDependencies: - source-map "~0.1.33" - -esprima@~1.0.2: - version "1.0.4" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" - -esprima@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.1.1.tgz#5b6f1547f4d102e670e140c509be6771d6aeb549" - -estraverse@~1.3.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.3.2.tgz#37c2b893ef13d723f276d878d60d8535152a6c42" - -estraverse@~1.5.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.5.1.tgz#867a3e8e58a9f84618afb6c2ddbcd916b7cbaf71" - -esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - -esutils@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570" - -etag@~1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.0.tgz#6f631aef336d6c46362b51764044ce216be3c051" - -eth-lightwallet@^2.5.4: - version "2.5.6" - resolved "https://registry.yarnpkg.com/eth-lightwallet/-/eth-lightwallet-2.5.6.tgz#6f10f134ca97531e4f03a194008d314322500c13" - dependencies: - bitcore-lib "^0.14.0" - bitcore-mnemonic "^1.2.2" - buffer "^4.9.0" - crypto-js "^3.1.5" - elliptic "^3.1.0" - ethereumjs-tx "^1.1.1" - ethereumjs-util "^5.1.1" - rlp "^2.0.0" - scrypt-async "^1.2.0" - tweetnacl "0.13.2" - web3 "^0.19.1" - -ethereum-common@0.0.18, ethereum-common@^0.0.18: - version "0.0.18" - resolved "https://registry.yarnpkg.com/ethereum-common/-/ethereum-common-0.0.18.tgz#2fdc3576f232903358976eb39da783213ff9523f" - -ethereumjs-account@^2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/ethereumjs-account/-/ethereumjs-account-2.0.4.tgz#f8c30231bcb707f4514d8a052c1f9da103624d47" - dependencies: - ethereumjs-util "^4.0.1" - rlp "^2.0.0" - -ethereumjs-block@^1.2.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/ethereumjs-block/-/ethereumjs-block-1.5.1.tgz#ffb9f636f2e7d4db4b8060df98f08e9d688dc660" - dependencies: - async "^2.0.1" - ethereum-common "0.0.18" - ethereumjs-tx "^1.2.2" - ethereumjs-util "^5.0.0" - merkle-patricia-tree "^2.1.2" - -ethereumjs-tx@^1.1.1, ethereumjs-tx@^1.2.0, ethereumjs-tx@^1.2.2, ethereumjs-tx@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/ethereumjs-tx/-/ethereumjs-tx-1.3.1.tgz#d6909abcfb37da6404fc18124d351eda20047dac" - dependencies: - ethereum-common "^0.0.18" - ethereumjs-util "^5.0.0" - -ethereumjs-util@^4.0.0, ethereumjs-util@^4.0.1, ethereumjs-util@^4.4.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-4.5.0.tgz#3e9428b317eebda3d7260d854fddda954b1f1bc6" - dependencies: - bn.js "^4.8.0" - create-hash "^1.1.2" - keccakjs "^0.2.0" - rlp "^2.0.0" - secp256k1 "^3.0.1" - -ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1, ethereumjs-util@^5.1.1, ethereumjs-util@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-5.1.2.tgz#25ba0215cbb4c2f0b108a6f96af2a2e62e45921f" - dependencies: - babel-preset-es2015 "^6.24.0" - babelify "^7.3.0" - bn.js "^4.8.0" - create-hash "^1.1.2" - ethjs-util "^0.1.3" - keccak "^1.0.2" - rlp "^2.0.0" - secp256k1 "^3.0.1" - -ethereumjs-vm@^2.0.2: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ethereumjs-vm/-/ethereumjs-vm-2.1.0.tgz#0faa3f5b6b6ecbd4c74f499c1260c27f712c7319" - dependencies: - async "^2.1.2" - async-eventemitter "^0.2.2" - ethereum-common "0.0.18" - ethereumjs-account "^2.0.3" - ethereumjs-block "^1.2.2" - ethereumjs-util "^4.0.1" - fake-merkle-patricia-tree "^1.0.1" - functional-red-black-tree "^1.0.1" - merkle-patricia-tree "^2.1.2" - -ethereumjs-wallet@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/ethereumjs-wallet/-/ethereumjs-wallet-0.6.0.tgz#82763b1697ee7a796be7155da9dfb49b2f98cfdb" - dependencies: - aes-js "^0.2.3" - bs58check "^1.0.8" - ethereumjs-util "^4.4.0" - hdkey "^0.7.0" - scrypt.js "^0.2.0" - utf8 "^2.1.1" - uuid "^2.0.1" - -ethjs-util@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/ethjs-util/-/ethjs-util-0.1.4.tgz#1c8b6879257444ef4d3f3fbbac2ded12cd997d93" - dependencies: - is-hex-prefixed "1.0.0" - strip-hex-prefix "1.0.0" - -evp_bytestokey@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz#497b66ad9fef65cd7c08a6180824ba1476b66e53" - dependencies: - create-hash "^1.1.1" - -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - dependencies: - is-posix-bracket "^0.1.0" - -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - dependencies: - fill-range "^2.1.0" - -expand-template@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-1.0.3.tgz#6c303323177a62b1b22c070279f7861287b69b1a" - -express@^4.15.3: - version "4.15.3" - resolved "https://registry.yarnpkg.com/express/-/express-4.15.3.tgz#bab65d0f03aa80c358408972fc700f916944b662" - dependencies: - accepts "~1.3.3" - array-flatten "1.1.1" - content-disposition "0.5.2" - content-type "~1.0.2" - cookie "0.3.1" - cookie-signature "1.0.6" - debug "2.6.7" - depd "~1.1.0" - encodeurl "~1.0.1" - escape-html "~1.0.3" - etag "~1.8.0" - finalhandler "~1.0.3" - fresh "0.5.0" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.1" - path-to-regexp "0.1.7" - proxy-addr "~1.1.4" - qs "6.4.0" - range-parser "~1.2.0" - send "0.15.3" - serve-static "1.12.3" - setprototypeof "1.0.3" - statuses "~1.3.1" - type-is "~1.6.15" - utils-merge "1.0.0" - vary "~1.1.1" - -extend@~3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" - -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - dependencies: - is-extglob "^1.0.0" - -extsprintf@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" - -fake-merkle-patricia-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz#4b8c3acfb520afadf9860b1f14cd8ce3402cddd3" - dependencies: - checkpoint-store "^1.1.0" - -falafel@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/falafel/-/falafel-1.2.0.tgz#c18d24ef5091174a497f318cd24b026a25cddab4" - dependencies: - acorn "^1.0.3" - foreach "^2.0.5" - isarray "0.0.1" - object-keys "^1.0.6" - -fast-future@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/fast-future/-/fast-future-1.0.2.tgz#8435a9aaa02d79248d17d704e76259301d99280a" - -filename-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - -fill-range@^2.1.0: - version "2.2.3" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^1.1.3" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - -finalhandler@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.3.tgz#ef47e77950e999780e86022a560e3217e0d0cc89" - dependencies: - debug "2.6.7" - encodeurl "~1.0.1" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.1" - statuses "~1.3.1" - unpipe "~1.0.0" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -for-each@^0.3.2, for-each@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.2.tgz#2c40450b9348e97f281322593ba96704b9abd4d4" - dependencies: - is-function "~1.0.0" - -for-in@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - -for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - dependencies: - for-in "^1.0.1" - -foreach@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - -form-data@~2.1.1: - version "2.1.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.5" - mime-types "^2.1.12" - -forwarded@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.0.tgz#19ef9874c4ae1c297bcf078fde63a09b66a84363" - -framed-hash@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/framed-hash/-/framed-hash-1.1.0.tgz#d0c2e2afaf37953837dd612df07d14c4fab71d79" - -fresh@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e" - -from2@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-1.3.0.tgz#88413baaa5f9a597cfde9221d86986cd3c061dfd" - dependencies: - inherits "~2.0.1" - readable-stream "~1.1.10" - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-extra@^0.30.0: - version "0.30.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^2.1.0" - klaw "^1.0.0" - path-is-absolute "^1.0.0" - rimraf "^2.2.8" - -fs-readdir-recursive@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz#8cd1745c8b4f8a29c8caec392476921ba195f560" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - -fsevents@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4" - dependencies: - nan "^2.3.0" - node-pre-gyp "^0.6.36" - -fstream-ignore@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" - dependencies: - fstream "^1.0.0" - inherits "2" - minimatch "^3.0.0" - -fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: - version "1.0.11" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" - -function-bind@^1.0.2, function-bind@^1.1.0, function-bind@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -generate-function@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" - -generate-object-property@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - dependencies: - is-property "^1.0.0" - -get-caller-file@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - dependencies: - assert-plus "^1.0.0" - -github-from-package@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" - -gittoken-api-middleware@0.0.24: - version "0.0.24" - resolved "https://registry.yarnpkg.com/gittoken-api-middleware/-/gittoken-api-middleware-0.0.24.tgz#bf93d5e8af6df828c1a4c73d9721e4d2b4b346ce" - dependencies: - bluebird "^3.5.0" - eth-lightwallet "^2.5.4" - ethereumjs-tx "^1.3.1" - ethereumjs-util "^5.1.2" - express "^4.15.3" - hyperlog "^4.12.1" - ip "^1.1.5" - jsonfile "^3.0.0" - level "^1.7.0" - nodemailer "^4.0.1" - pem "^1.9.7" - request-promise "^4.2.1" - smtp-server "^3.0.1" - web3 "^0.19.0" - ws "^3.0.0" - zeppelin-solidity "^1.0.7" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - dependencies: - is-glob "^2.0.0" - -glob@^7.0.0, glob@^7.0.5, glob@~7.1.2: - version "7.1.2" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -global@~4.3.0: - version "4.3.2" - resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" - dependencies: - min-document "^2.19.0" - process "~0.5.1" - -globals@^9.0.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - -graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - -har-schema@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" - -har-validator@~4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" - dependencies: - ajv "^4.9.1" - har-schema "^1.0.5" - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - dependencies: - ansi-regex "^2.0.0" - -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - -has@^1.0.0, has@^1.0.1, has@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" - dependencies: - function-bind "^1.0.2" - -hash-base@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" - dependencies: - inherits "^2.0.1" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.0" - -hawk@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" - dependencies: - boom "2.x.x" - cryptiles "2.x.x" - hoek "2.x.x" - sntp "1.x.x" - -hdkey@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/hdkey/-/hdkey-0.7.1.tgz#caee4be81aa77921e909b8d228dd0f29acaee632" - dependencies: - coinstring "^2.0.0" - secp256k1 "^3.0.1" - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hoek@2.x.x: - version "2.16.3" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -hosted-git-info@^2.1.4: - version "2.5.0" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" - -http-errors@~1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.1.tgz#5f8b8ed98aca545656bf572997387f904a722257" - dependencies: - depd "1.1.0" - inherits "2.0.3" - setprototypeof "1.0.3" - statuses ">= 1.3.1 < 2" - -http-signature@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" - dependencies: - assert-plus "^0.2.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -hyperlog@^4.12.1: - version "4.12.1" - resolved "https://registry.yarnpkg.com/hyperlog/-/hyperlog-4.12.1.tgz#6c7cdc2626f73441f2d93b9d6f45838fd17d9b5d" - dependencies: - after-all "^2.0.2" - bitfield "^1.1.2" - brfs "^1.4.0" - cuid "^1.2.5" - debug "^2.2.0" - defined "^1.0.0" - duplexify "^3.4.2" - framed-hash "^1.1.0" - from2 "^2.1.0" - length-prefixed-stream "^1.3.0" - level-enumerate "^1.0.1" - level-logs "^1.1.0" - lexicographic-integer "^1.1.0" - mutexify "^1.1.0" - protocol-buffers "^3.1.2" - pump "^1.0.0" - run-parallel "^1.1.6" - run-waterfall "^1.1.3" - stream-collector "^1.0.1" - through2 "^2.0.0" - -iconv-lite@0.4.15, iconv-lite@~0.4.13: - version "0.4.15" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" - -ieee754@^1.1.4: - version "1.1.8" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" - -immediate@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.2.3.tgz#d140fa8f614659bd6541233097ddaac25cdd991c" - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - -inherits@=2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - -ini@~1.3.0: - version "1.3.4" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" - -invariant@^2.2.0, invariant@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" - dependencies: - loose-envify "^1.0.0" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - -ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - -ipaddr.js@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.3.0.tgz#1e03a52fdad83a8bbb2b25cbf4998b4cffcd3dec" - -ipv6-normalize@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ipv6-normalize/-/ipv6-normalize-1.0.1.tgz#1b3258290d365fa83239e89907dde4592e7620a8" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - dependencies: - binary-extensions "^1.0.0" - -is-buffer@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - dependencies: - builtin-modules "^1.0.0" - -is-callable@^1.1.1, is-callable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" - -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - -is-equal-shallow@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - dependencies: - is-primitive "^2.0.0" - -is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - dependencies: - number-is-nan "^1.0.0" - -is-function@^1.0.1, is-function@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" - -is-glob@^2.0.0, is-glob@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - dependencies: - is-extglob "^1.0.0" - -is-hex-prefixed@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" - -is-number@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - dependencies: - kind-of "^3.0.2" - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - dependencies: - kind-of "^3.0.2" - -is-posix-bracket@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - -is-property@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" - -is-regex@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - dependencies: - has "^1.0.1" - -is-stream@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - -is-symbol@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - dependencies: - isarray "1.0.0" - -isomorphic-fetch@^2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" - dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - -js-sha3@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.3.1.tgz#86122802142f0828502a0d1dee1d95e253bb0243" - -js-tokens@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - -json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - dependencies: - jsonify "~0.0.0" - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - -json5@^0.5.0: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - -jsonfile@^2.1.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" - optionalDependencies: - graceful-fs "^4.1.6" - -jsonfile@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66" - optionalDependencies: - graceful-fs "^4.1.6" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - -jsprim@^1.2.2: - version "1.4.0" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.0.tgz#a3b87e40298d8c380552d8cc7628a0bb95a22918" - dependencies: - assert-plus "1.0.0" - extsprintf "1.0.2" - json-schema "0.2.3" - verror "1.3.6" - -keccak@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/keccak/-/keccak-1.2.0.tgz#b53618fc7961b642f6e73f1546eec3329f7effe0" - dependencies: - bindings "^1.2.1" - inherits "^2.0.3" - nan "^2.2.1" - prebuild-install "^2.0.0" - -keccak@^1.0.2, keccak@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/keccak/-/keccak-1.3.0.tgz#3681bd99ad3d0354ddb29b9040c1b6560cce08ac" - dependencies: - bindings "^1.2.1" - inherits "^2.0.3" - nan "^2.2.1" - prebuild-install "^2.0.0" - safe-buffer "^5.1.0" - -keccakjs@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/keccakjs/-/keccakjs-0.2.1.tgz#1d633af907ef305bbf9f2fa616d56c44561dfa4d" - dependencies: - browserify-sha3 "^0.0.1" - sha3 "^1.1.0" - -keythereum@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/keythereum/-/keythereum-1.0.1.tgz#eefec8a1e6065f27b20de0745ff88bb764769231" - dependencies: - keccak "1.2.0" - secp256k1 "3.2.5" - sjcl "1.0.6" - uuid "3.0.0" - -kind-of@^3.0.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - dependencies: - is-buffer "^1.1.5" - -klaw@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" - optionalDependencies: - graceful-fs "^4.1.9" - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - dependencies: - invert-kv "^1.0.0" - -length-prefixed-stream@^1.3.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/length-prefixed-stream/-/length-prefixed-stream-1.5.1.tgz#99eaf51672dddefbfdd8881ee7b7b7df35d1ed73" - dependencies: - readable-stream "^2.0.0" - varint "^5.0.0" - -level-codec@~6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-6.1.0.tgz#f5df0a99582f76dac43855151ab6f4e4d0d60045" - -level-enumerate@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/level-enumerate/-/level-enumerate-1.0.1.tgz#d8fdaff2ef76bd6ed4e49d729dd5d0f1216801bf" - dependencies: - mutexify "^1.0.1" - -level-errors@^1.0.3, level-errors@~1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/level-errors/-/level-errors-1.0.4.tgz#3585e623974c737a93755492a43c0267cda4425f" - dependencies: - errno "~0.1.1" - -level-iterator-stream@~1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz#e43b78b1a8143e6fa97a4f485eb8ea530352f2ed" - dependencies: - inherits "^2.0.1" - level-errors "^1.0.3" - readable-stream "^1.0.33" - xtend "^4.0.0" - -level-logs@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/level-logs/-/level-logs-1.2.0.tgz#0f9d93845bed590ad4c2d698c0d4014f70a8541c" - dependencies: - from2 "^1.3.0" - lexicographic-integer "^1.1.0" - pump "^1.0.0" - stream-collector "^1.0.1" - through2 "^0.6.3" - -level-packager@~1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-1.2.1.tgz#067fedfd072b7fe3c6bec6080c0cbd4a6b2e11f4" - dependencies: - levelup "~1.3.0" - -level-ws@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/level-ws/-/level-ws-0.0.0.tgz#372e512177924a00424b0b43aef2bb42496d228b" - dependencies: - readable-stream "~1.0.15" - xtend "~2.1.1" - -level@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/level/-/level-1.7.0.tgz#43464a3a8ba73b2f3de56a24292805146da213a1" - dependencies: - level-packager "~1.2.0" - leveldown "~1.7.0" - -leveldown@~1.7.0: - version "1.7.2" - resolved "https://registry.yarnpkg.com/leveldown/-/leveldown-1.7.2.tgz#5e3467bb27ee246a4a7b8dbd8fb2b16206a6eb8b" - dependencies: - abstract-leveldown "~2.6.1" - bindings "~1.2.1" - fast-future "~1.0.2" - nan "~2.6.1" - prebuild-install "^2.1.0" - -levelup@^1.2.1, levelup@~1.3.0: - version "1.3.8" - resolved "https://registry.yarnpkg.com/levelup/-/levelup-1.3.8.tgz#fb442c488efbea1043f7eb9929a792a74fbd1da6" - dependencies: - deferred-leveldown "~1.2.1" - level-codec "~6.1.0" - level-errors "~1.0.3" - level-iterator-stream "~1.3.0" - prr "~1.0.1" - semver "~5.1.0" - xtend "~4.0.0" - -lexicographic-integer@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/lexicographic-integer/-/lexicographic-integer-1.1.0.tgz#52ca6d998a572e6322b515f5b80e396c6043e9b8" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -lodash.assign@^4.0.3, lodash.assign@^4.0.6: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" - -lodash@=3.10.1: - version "3.10.1" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" - -lodash@^4.13.1, lodash@^4.14.0, lodash@^4.2.0: - version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - -loose-envify@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" - dependencies: - js-tokens "^3.0.0" - -ltgt@~2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.1.3.tgz#10851a06d9964b971178441c23c9e52698eece34" - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - -memdown@^1.0.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/memdown/-/memdown-1.2.4.tgz#cd9a34aaf074d53445a271108eb4b8dd4ec0f27f" - dependencies: - abstract-leveldown "2.4.1" - functional-red-black-tree "^1.0.1" - immediate "^3.2.3" - inherits "~2.0.1" - ltgt "~2.1.3" - -memorystream@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - -merkle-patricia-tree@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/merkle-patricia-tree/-/merkle-patricia-tree-2.1.2.tgz#724483d54b75631a48fedda55e114051706a7291" - dependencies: - async "^1.4.2" - ethereumjs-util "^4.0.0" - level-ws "0.0.0" - levelup "^1.2.1" - memdown "^1.0.0" - readable-stream "^2.0.0" - rlp "^2.0.0" - semaphore ">=1.0.1" - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - -micromatch@^2.1.5: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - dependencies: - arr-diff "^2.0.0" - array-unique "^0.2.1" - braces "^1.8.2" - expand-brackets "^0.1.4" - extglob "^0.3.1" - filename-regex "^2.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.1" - kind-of "^3.0.2" - normalize-path "^2.0.1" - object.omit "^2.0.0" - parse-glob "^3.0.4" - regex-cache "^0.4.2" - -mime-db@~1.27.0: - version "1.27.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.27.0.tgz#820f572296bbd20ec25ed55e5b5de869e5436eb1" - -mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.7: - version "2.1.15" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.15.tgz#a4ebf5064094569237b8cf70046776d09fc92aed" - dependencies: - mime-db "~1.27.0" - -mime@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" - -min-document@^2.19.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" - dependencies: - dom-walk "^0.1.0" - -minimalistic-assert@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - -minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - dependencies: - brace-expansion "^1.1.7" - -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - -minimist@^1.1.3, minimist@^1.2.0, minimist@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - -"mkdirp@>=0.5 0", mkdirp@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - dependencies: - minimist "0.0.8" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - -mutexify@^1.0.1, mutexify@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mutexify/-/mutexify-1.1.0.tgz#bbe017743e544227ee58034cd10f159921f1844d" - -nan@^2.0.5, nan@^2.0.8, nan@^2.2.1, nan@^2.3.0, nan@~2.6.1: - version "2.6.2" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - -node-abi@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.0.3.tgz#0ca67e5e667b8e1343549ca17153a815d0bbfdaa" - -node-fetch@^1.0.1: - version "1.7.1" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.1.tgz#899cb3d0a3c92f952c47f1b876f4c8aeabd400d5" - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - -node-fingerprint@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/node-fingerprint/-/node-fingerprint-0.0.2.tgz#31cbabeb71a67ae7dd5a7dc042e51c3c75868501" - -node-pre-gyp@^0.6.36: - version "0.6.36" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" - dependencies: - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.0.2" - rc "^1.1.7" - request "^2.81.0" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^2.2.1" - tar-pack "^3.4.0" - -nodemailer@^4.0.0, nodemailer@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-4.0.1.tgz#b95864b07facee8287e8232effd6f1d56ec75ab2" - -noop-logger@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/noop-logger/-/noop-logger-0.1.1.tgz#94a2b1633c4f1317553007d8966fd0e841b6a4c2" - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - dependencies: - abbrev "1" - osenv "^0.1.4" - -normalize-package-data@^2.3.2: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - dependencies: - remove-trailing-separator "^1.0.1" - -npmlog@^4.0.1, npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - -oauth-sign@~0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" - -object-assign@^4, object-assign@^4.0.0, object-assign@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - -object-inspect@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-0.4.0.tgz#f5157c116c1455b243b06ee97703392c5ad89fec" - -object-inspect@~1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.2.2.tgz#c82115e4fcc888aea14d64c22e4f17f6a70d5e5a" - -object-keys@^1.0.6, object-keys@^1.0.8: - version "1.0.11" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" - -object-keys@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" - -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - dependencies: - ee-first "1.1.1" - -once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - dependencies: - wrappy "1" - -once@~1.3.0: - version "1.3.3" - resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" - dependencies: - wrappy "1" - -os-homedir@^1.0.0, os-homedir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - dependencies: - lcid "^1.0.0" - -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - -osenv@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -output-file-sync@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-1.1.2.tgz#d0a33eefe61a205facb90092e826598d5245ce76" - dependencies: - graceful-fs "^4.1.4" - mkdirp "^0.5.1" - object-assign "^4.1.0" - -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - -parse-headers@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.1.tgz#6ae83a7aa25a9d9b700acc28698cd1f1ed7e9536" - dependencies: - for-each "^0.3.2" - trim "0.0.1" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - dependencies: - error-ex "^1.2.0" - -parseurl@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56" - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - dependencies: - pinkie-promise "^2.0.0" - -path-extra@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/path-extra/-/path-extra-1.0.3.tgz#7c112189a6e50d595790e7ad2037e44e410c1166" - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - -path-parse@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -pbkdf2@^3.0.3, pbkdf2@^3.0.9: - version "3.0.12" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.12.tgz#be36785c5067ea48d806ff923288c5f750b6b8a2" - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -pem@^1.9.7: - version "1.9.7" - resolved "https://registry.yarnpkg.com/pem/-/pem-1.9.7.tgz#d387f996f292c7c9dea639a535805e74cb503161" - dependencies: - os-tmpdir "^1.0.1" - which "^1.2.4" - -performance-now@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" - -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - -prebuild-install@^2.0.0, prebuild-install@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-2.2.0.tgz#55934756a32bac8747390ca44ff663cee8b99b69" - dependencies: - expand-template "^1.0.2" - github-from-package "0.0.0" - minimist "^1.2.0" - mkdirp "^0.5.1" - node-abi "^2.0.0" - noop-logger "^0.1.1" - npmlog "^4.0.1" - os-homedir "^1.0.1" - pump "^1.0.1" - rc "^1.1.6" - simple-get "^1.4.2" - tar-fs "^1.13.0" - tunnel-agent "^0.6.0" - xtend "4.0.1" - -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - -private@^0.1.6: - version "0.1.7" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" - -process-nextick-args@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" - -process@~0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" - -protocol-buffers-schema@^3.1.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/protocol-buffers-schema/-/protocol-buffers-schema-3.3.1.tgz#ad151141877c6af8828647851af66a0db69275f5" - -protocol-buffers@^3.1.2: - version "3.2.1" - resolved "https://registry.yarnpkg.com/protocol-buffers/-/protocol-buffers-3.2.1.tgz#37258e17e24a082f06ebb17731e92851d1c76889" - dependencies: - brfs "^1.4.0" - generate-function "^2.0.0" - generate-object-property "^1.2.0" - protocol-buffers-schema "^3.1.1" - signed-varint "^2.0.0" - varint "^5.0.0" - -proxy-addr@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.4.tgz#27e545f6960a44a627d9b44467e35c1b6b4ce2f3" - dependencies: - forwarded "~0.1.0" - ipaddr.js "1.3.0" - -prr@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/prr/-/prr-0.0.0.tgz#1a84b85908325501411853d0081ee3fa86e2926a" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - -pump@^1.0.0, pump@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.2.tgz#3b3ee6512f94f0e575538c17995f9f16990a5d51" - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - -qs@6.4.0, qs@~6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" - -quote-stream@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/quote-stream/-/quote-stream-1.0.2.tgz#84963f8c9c26b942e153feeb53aae74652b7e0b2" - dependencies: - buffer-equal "0.0.1" - minimist "^1.1.3" - through2 "^2.0.0" - -quote-stream@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/quote-stream/-/quote-stream-0.0.0.tgz#cde29e94c409b16e19dc7098b89b6658f9721d3b" - dependencies: - minimist "0.0.8" - through2 "~0.4.1" - -randomatic@^1.1.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -randombytes@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.5.tgz#dc009a246b8d09a177b4b7a0ae77bc570f4b1b79" - dependencies: - safe-buffer "^5.1.0" - -range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" - -raw-body@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.2.0.tgz#994976cf6a5096a41162840492f0bdc5d6e7fb96" - dependencies: - bytes "2.4.0" - iconv-lite "0.4.15" - unpipe "1.0.0" - -rc@^1.1.6, rc@^1.1.7: - version "1.2.1" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" - dependencies: - deep-extend "~0.4.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -"readable-stream@>=1.0.33-1 <1.1.0-0", readable-stream@~1.0.15, readable-stream@~1.0.17, readable-stream@~1.0.27-1: - version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@^1.0.33, readable-stream@~1.1.10, readable-stream@~1.1.9: - version "1.1.14" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - safe-buffer "~5.1.1" - string_decoder "~1.0.3" - util-deprecate "~1.0.1" - -readdirp@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" - dependencies: - graceful-fs "^4.1.2" - minimatch "^3.0.2" - readable-stream "^2.0.2" - set-immediate-shim "^1.0.1" - -regenerate@^1.2.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" - -regenerator-runtime@^0.10.0: - version "0.10.5" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" - -regenerator-transform@0.9.11: - version "0.9.11" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.11.tgz#3a7d067520cb7b7176769eb5ff868691befe1283" - dependencies: - babel-runtime "^6.18.0" - babel-types "^6.19.0" - private "^0.1.6" - -regex-cache@^0.4.2: - version "0.4.3" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145" - dependencies: - is-equal-shallow "^0.1.3" - is-primitive "^2.0.0" - -regexpu-core@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - dependencies: - jsesc "~0.5.0" - -remove-trailing-separator@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.2.tgz#69b062d978727ad14dc6b56ba4ab772fd8d70511" - -repeat-element@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" - -repeat-string@^1.5.2: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - dependencies: - is-finite "^1.0.0" - -request-promise-core@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6" - dependencies: - lodash "^4.13.1" - -request-promise@^4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/request-promise/-/request-promise-4.2.1.tgz#7eec56c89317a822cbfea99b039ce543c2e15f67" - dependencies: - bluebird "^3.5.0" - request-promise-core "1.1.1" - stealthy-require "^1.1.0" - tough-cookie ">=2.3.0" - -request@^2.67.0, request@^2.81.0: - version "2.81.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~4.2.1" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - performance-now "^0.2.0" - qs "~6.4.0" - safe-buffer "^5.0.1" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "^0.6.0" - uuid "^3.0.0" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - -require-from-string@^1.1.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418" - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - -require-resolve@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/require-resolve/-/require-resolve-0.0.2.tgz#bab410ab1aee2f3f55b79317451dd3428764e6f3" - dependencies: - x-path "^0.0.2" - -resolve@^1.1.5, resolve@~1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5" - dependencies: - path-parse "^1.0.5" - -resumer@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/resumer/-/resumer-0.0.0.tgz#f1e8f461e4064ba39e82af3cdc2a8c893d076759" - dependencies: - through "~2.3.4" - -rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" - dependencies: - glob "^7.0.5" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" - dependencies: - hash-base "^2.0.0" - inherits "^2.0.1" - -rlp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.0.0.tgz#9db384ff4b89a8f61563d92395d8625b18f3afb0" - -run-parallel@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.6.tgz#29003c9a2163e01e2d2dfc90575f2c6c1d61a039" - -run-waterfall@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/run-waterfall/-/run-waterfall-1.1.3.tgz#d96fc0f5361bcbdbd438529dc8a4b42fc6761123" - -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" - -safe-buffer@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" - -scrypt-async@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/scrypt-async/-/scrypt-async-1.3.1.tgz#a11fd6fac981b4b823ee01dee0221169500ddae9" - -scrypt.js@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/scrypt.js/-/scrypt.js-0.2.0.tgz#af8d1465b71e9990110bedfc593b9479e03a8ada" - dependencies: - scrypt "^6.0.2" - scryptsy "^1.2.1" - -scrypt@^6.0.2: - version "6.0.3" - resolved "https://registry.yarnpkg.com/scrypt/-/scrypt-6.0.3.tgz#04e014a5682b53fa50c2d5cce167d719c06d870d" - dependencies: - nan "^2.0.8" - -scryptsy@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/scryptsy/-/scryptsy-1.2.1.tgz#a3225fa4b2524f802700761e2855bdf3b2d92163" - dependencies: - pbkdf2 "^3.0.3" - -secp256k1@3.2.5, secp256k1@^3.0.1: - version "3.2.5" - resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-3.2.5.tgz#0dde5b27e5021665f6dffca7b2c3e010c6c13c93" - dependencies: - bindings "^1.2.1" - bip66 "^1.1.3" - bn.js "^4.11.3" - create-hash "^1.1.2" - drbg.js "^1.0.1" - elliptic "^6.2.3" - nan "^2.2.1" - prebuild-install "^2.0.0" - -semaphore@>=1.0.1, semaphore@^1.0.3: - version "1.0.5" - resolved "https://registry.yarnpkg.com/semaphore/-/semaphore-1.0.5.tgz#b492576e66af193db95d65e25ec53f5f19798d60" - -"semver@2 || 3 || 4 || 5", semver@^5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" - -semver@~5.1.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.1.1.tgz#a3292a373e6f3e0798da0b20641b9a9c5bc47e19" - -send@0.15.3: - version "0.15.3" - resolved "https://registry.yarnpkg.com/send/-/send-0.15.3.tgz#5013f9f99023df50d1bd9892c19e3defd1d53309" - dependencies: - debug "2.6.7" - depd "~1.1.0" - destroy "~1.0.4" - encodeurl "~1.0.1" - escape-html "~1.0.3" - etag "~1.8.0" - fresh "0.5.0" - http-errors "~1.6.1" - mime "1.3.4" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.3.1" - -serve-static@1.12.3: - version "1.12.3" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.12.3.tgz#9f4ba19e2f3030c547f8af99107838ec38d5b1e2" - dependencies: - encodeurl "~1.0.1" - escape-html "~1.0.3" - parseurl "~1.3.1" - send "0.15.3" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - -set-immediate-shim@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" - -setprototypeof@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" - -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.8" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f" - dependencies: - inherits "^2.0.1" - -sha3@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/sha3/-/sha3-1.2.0.tgz#6989f1b70a498705876a373e2c62ace96aa9399a" - dependencies: - nan "^2.0.5" - -shallow-copy@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/shallow-copy/-/shallow-copy-0.0.1.tgz#415f42702d73d810330292cc5ee86eae1a11a170" - -signal-exit@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - -signed-varint@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/signed-varint/-/signed-varint-2.0.1.tgz#50a9989da7c98c2c61dad119bc97470ef8528129" - dependencies: - varint "~5.0.0" - -simple-get@^1.4.2: - version "1.4.3" - resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-1.4.3.tgz#e9755eda407e96da40c5e5158c9ea37b33becbeb" - dependencies: - once "^1.3.1" - unzip-response "^1.0.0" - xtend "^4.0.0" - -sjcl@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/sjcl/-/sjcl-1.0.6.tgz#6415462a63cc0d4215c49baec9d3fa0c1b53520f" - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - -smtp-server@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/smtp-server/-/smtp-server-3.0.1.tgz#13180c981baf091dbae42b70801be8ec0572e564" - dependencies: - ipv6-normalize "^1.0.1" - nodemailer "^4.0.0" - -sntp@1.x.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - dependencies: - hoek "2.x.x" - -solc@^0.4.2: - version "0.4.13" - resolved "https://registry.yarnpkg.com/solc/-/solc-0.4.13.tgz#aa5cbdcce3e6ae3c190d20f5fdf8bc880702ec75" - dependencies: - fs-extra "^0.30.0" - memorystream "^0.3.1" - require-from-string "^1.1.0" - semver "^5.3.0" - yargs "^4.7.1" - -source-map-support@^0.4.2: - version "0.4.15" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.15.tgz#03202df65c06d2bd8c7ec2362a193056fef8d3b1" - dependencies: - source-map "^0.5.6" - -"source-map@>= 0.1.2", source-map@^0.5.0, source-map@^0.5.6: - version "0.5.6" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" - -source-map@~0.1.33: - version "0.1.43" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" - dependencies: - amdefine ">=0.0.4" - -spdx-correct@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" - dependencies: - spdx-license-ids "^1.0.2" - -spdx-expression-parse@~1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" - -spdx-license-ids@^1.0.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" - -sshpk@^1.7.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - dashdash "^1.12.0" - getpass "^0.1.1" - optionalDependencies: - bcrypt-pbkdf "^1.0.0" - ecc-jsbn "~0.1.1" - jsbn "~0.1.0" - tweetnacl "~0.14.0" - -static-eval@~0.2.0: - version "0.2.4" - resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-0.2.4.tgz#b7d34d838937b969f9641ca07d48f8ede263ea7b" - dependencies: - escodegen "~0.0.24" - -static-module@^1.1.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/static-module/-/static-module-1.3.2.tgz#329fb9f223a566266bda71843b7d932c767174f3" - dependencies: - concat-stream "~1.6.0" - duplexer2 "~0.0.2" - escodegen "~1.3.2" - falafel "^1.0.0" - has "^1.0.0" - object-inspect "~0.4.0" - quote-stream "~0.0.0" - readable-stream "~1.0.27-1" - shallow-copy "~0.0.1" - static-eval "~0.2.0" - through2 "~0.4.1" - -"statuses@>= 1.3.1 < 2", statuses@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" - -stealthy-require@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" - -stream-collector@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stream-collector/-/stream-collector-1.0.1.tgz#4d4e55f171356121b2c5f6559f944705ab28db15" - dependencies: - once "^1.3.1" - -stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - -string-width@^1.0.1, string-width@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -string.prototype.trim@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz#d04de2c89e137f4d7d206f086b5ed2fae6be8cea" - dependencies: - define-properties "^1.1.2" - es-abstract "^1.5.0" - function-bind "^1.0.2" - -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - -string_decoder@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" - dependencies: - safe-buffer "~5.1.0" - -stringstream@~0.0.4: - version "0.0.5" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - dependencies: - ansi-regex "^2.0.0" - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - dependencies: - is-utf8 "^0.2.0" - -strip-hex-prefix@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" - dependencies: - is-hex-prefixed "1.0.0" - -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - -tape@^4.4.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/tape/-/tape-4.7.0.tgz#f3ebb214fef3d6907e5a57dbaafe3bd8a7cbed88" - dependencies: - deep-equal "~1.0.1" - defined "~1.0.0" - for-each "~0.3.2" - function-bind "~1.1.0" - glob "~7.1.2" - has "~1.0.1" - inherits "~2.0.3" - minimist "~1.2.0" - object-inspect "~1.2.2" - resolve "~1.3.3" - resumer "~0.0.0" - string.prototype.trim "~1.1.2" - through "~2.3.8" - -tar-fs@^1.13.0: - version "1.15.3" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.15.3.tgz#eccf935e941493d8151028e636e51ce4c3ca7f20" - dependencies: - chownr "^1.0.1" - mkdirp "^0.5.1" - pump "^1.0.0" - tar-stream "^1.1.2" - -tar-pack@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" - dependencies: - debug "^2.2.0" - fstream "^1.0.10" - fstream-ignore "^1.0.5" - once "^1.3.3" - readable-stream "^2.1.4" - rimraf "^2.5.1" - tar "^2.2.1" - uid-number "^0.0.6" - -tar-stream@^1.1.2: - version "1.5.4" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.5.4.tgz#36549cf04ed1aee9b2a30c0143252238daf94016" - dependencies: - bl "^1.0.0" - end-of-stream "^1.0.0" - readable-stream "^2.0.0" - xtend "^4.0.0" - -tar@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" - dependencies: - block-stream "*" - fstream "^1.0.2" - inherits "2" - -through2@^0.6.3: - version "0.6.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" - dependencies: - readable-stream ">=1.0.33-1 <1.1.0-0" - xtend ">=4.0.0 <4.1.0-0" - -through2@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - dependencies: - readable-stream "^2.1.5" - xtend "~4.0.1" - -through2@~0.4.1: - version "0.4.2" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.4.2.tgz#dbf5866031151ec8352bb6c4db64a2292a840b9b" - dependencies: - readable-stream "~1.0.17" - xtend "~2.1.1" - -through@~2.3.4, through@~2.3.8: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - -to-fast-properties@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - -tough-cookie@>=2.3.0, tough-cookie@~2.3.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" - dependencies: - punycode "^1.4.1" - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - -trim@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" - -truffle-hdwallet-provider@0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/truffle-hdwallet-provider/-/truffle-hdwallet-provider-0.0.3.tgz#0e1de02104b73d3875e1cf7093305b4ea8a2d843" - dependencies: - bip39 "^2.2.0" - ethereumjs-wallet "^0.6.0" - web3 "^0.18.2" - web3-provider-engine "^8.4.0" - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@0.13.2: - version "0.13.2" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.13.2.tgz#453161770469d45cd266c36404e2bc99a8fa9944" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - -type-is@~1.6.15: - version "1.6.15" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" - dependencies: - media-typer "0.3.0" - mime-types "~2.1.15" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - -uid-number@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - -ultron@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.0.tgz#b07a2e6a541a815fc6a34ccd4533baec307ca864" - -unorm@^1.3.3: - version "1.4.1" - resolved "https://registry.yarnpkg.com/unorm/-/unorm-1.4.1.tgz#364200d5f13646ca8bcd44490271335614792300" - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - -unzip-response@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" - -user-home@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" - -utf8@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/utf8/-/utf8-2.1.2.tgz#1fa0d9270e9be850d9b05027f63519bf46457d96" - -util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - -utils-merge@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" - -uuid@3.0.0, uuid@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.0.tgz#6728fc0459c450d796a99c31837569bdf672d728" - -uuid@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" - -v8flags@^2.0.10: - version "2.1.1" - resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4" - dependencies: - user-home "^1.1.1" - -validate-npm-package-license@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" - dependencies: - spdx-correct "~1.0.0" - spdx-expression-parse "~1.0.0" - -varint@^5.0.0, varint@~5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.0.tgz#d826b89f7490732fabc0c0ed693ed475dcb29ebf" - -vary@^1, vary@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" - -verror@1.3.6: - version "1.3.6" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c" - dependencies: - extsprintf "1.0.2" - -web3-provider-engine@^8.4.0: - version "8.6.1" - resolved "https://registry.yarnpkg.com/web3-provider-engine/-/web3-provider-engine-8.6.1.tgz#4d86e19e30caaf97df351511ec0f60136e5b30eb" - dependencies: - async "^2.1.2" - clone "^2.0.0" - ethereumjs-block "^1.2.2" - ethereumjs-tx "^1.2.0" - ethereumjs-util "^5.0.1" - ethereumjs-vm "^2.0.2" - isomorphic-fetch "^2.2.0" - request "^2.67.0" - semaphore "^1.0.3" - solc "^0.4.2" - tape "^4.4.0" - web3 "^0.16.0" - xhr "^2.2.0" - xtend "^4.0.1" - -web3@^0.16.0: - version "0.16.0" - resolved "https://registry.yarnpkg.com/web3/-/web3-0.16.0.tgz#a4554175cd462943035b1f1d39432f741c6b6019" - dependencies: - bignumber.js "git+https://github.com/debris/bignumber.js#master" - crypto-js "^3.1.4" - utf8 "^2.1.1" - xmlhttprequest "*" - -web3@^0.18.2: - version "0.18.4" - resolved "https://registry.yarnpkg.com/web3/-/web3-0.18.4.tgz#81ec1784145491f2eaa8955b31c06049e07c5e7d" - dependencies: - bignumber.js "git+https://github.com/debris/bignumber.js.git#94d7146671b9719e00a09c29b01a691bc85048c2" - crypto-js "^3.1.4" - utf8 "^2.1.1" - xhr2 "*" - xmlhttprequest "*" - -web3@^0.19.0, web3@^0.19.1: - version "0.19.1" - resolved "https://registry.yarnpkg.com/web3/-/web3-0.19.1.tgz#e763d5b1107c4bc24abd4f8cbee1ba3659e6eb31" - dependencies: - bignumber.js "^4.0.2" - crypto-js "^3.1.4" - utf8 "^2.1.1" - xhr2 "*" - xmlhttprequest "*" - -whatwg-fetch@>=0.10.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" - -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - -which@^1.2.4: - version "1.2.14" - resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" - dependencies: - string-width "^1.0.2" - -window-size@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - -ws@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-3.0.0.tgz#98ddb00056c8390cb751e7788788497f99103b6c" - dependencies: - safe-buffer "~5.0.1" - ultron "~1.1.0" - -x-path@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/x-path/-/x-path-0.0.2.tgz#294d076bb97a7706cc070bbb2a6fd8c54df67b12" - dependencies: - path-extra "^1.0.2" - -xhr2@*: - version "0.1.4" - resolved "https://registry.yarnpkg.com/xhr2/-/xhr2-0.1.4.tgz#7f87658847716db5026323812f818cadab387a5f" - -xhr@^2.2.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/xhr/-/xhr-2.4.0.tgz#e16e66a45f869861eeefab416d5eff722dc40993" - dependencies: - global "~4.3.0" - is-function "^1.0.1" - parse-headers "^2.0.0" - xtend "^4.0.0" - -xmlhttprequest@*: - version "1.8.0" - resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc" - -xtend@4.0.1, "xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - -xtend@~2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b" - dependencies: - object-keys "~0.4.0" - -y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - -yargs-parser@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-2.4.1.tgz#85568de3cf150ff49fa51825f03a8c880ddcc5c4" - dependencies: - camelcase "^3.0.0" - lodash.assign "^4.0.6" - -yargs@^4.7.1: - version "4.8.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" - dependencies: - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - lodash.assign "^4.0.3" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.1" - which-module "^1.0.0" - window-size "^0.2.0" - y18n "^3.2.1" - yargs-parser "^2.4.1" - -zeppelin-solidity@^1.0.7: - version "1.1.0" - resolved "https://registry.yarnpkg.com/zeppelin-solidity/-/zeppelin-solidity-1.1.0.tgz#89fc596610dc273698e5580457eeb84add2213d7" - dependencies: - truffle-hdwallet-provider "0.0.3" From e0621db7bc504444337fcb1f497af2dd7b205d4f Mon Sep 17 00:00:00 2001 From: Ryan Tate Date: Wed, 29 Nov 2017 21:03:51 -0800 Subject: [PATCH 02/10] Updated contracts dependency with redeployed RewardPoints contract; able to retrieve values from contract --- dist/contracts/index.js | 23 +++++++++++++++++------ dist/utils/parseContribution.js | 15 +++++++++++---- package-lock.json | 6 +++--- package.json | 2 +- src/contracts/index.js | 12 ++++++++---- 5 files changed, 40 insertions(+), 18 deletions(-) diff --git a/dist/contracts/index.js b/dist/contracts/index.js index 7f894ba..61c05e1 100644 --- a/dist/contracts/index.js +++ b/dist/contracts/index.js @@ -34,7 +34,7 @@ var _gittokenKeystoreGenerator2 = _interopRequireDefault(_gittokenKeystoreGenera function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -/* babel-plugin-inline-import 'gittoken-contracts/build/contracts/RewardPoints.json' */var RewardPoints = '{\n "contract_name": "RewardPoints",\n "abi": [\n {\n "constant": true,\n "inputs": [\n {\n "name": "",\n "type": "address"\n }\n ],\n "name": "owner",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n },\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "name": "setRewardDetails",\n "outputs": [\n {\n "name": "success",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n }\n ],\n "name": "getRewardDetails",\n "outputs": [\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "newOwner",\n "type": "address"\n }\n ],\n "name": "transferOwnership",\n "outputs": [],\n "payable": false,\n "type": "function"\n },\n {\n "inputs": [\n {\n "name": "_decimals",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "constructor"\n }\n ],\n "unlinked_binary": "0x606060405234156200001057600080fd5b60405160208062006449833981016040528080519150505b5b600160a060020a0333166000908152602081905260409020805460ff191660011790555b600381905560fa600a82900a0260016040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e6368000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f746167000000000000000000000000000000000000000000000000000000000081526003810191909152602301604051809103902081905550600354600a0a6103e80260016040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a016040518091039020604051908152602001604051809103902081905550600354600a0a6101f4026001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60640260016040517f666f726b00000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6103e80260016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006001604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c01604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60640260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f63616e63656c6c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60fa026001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f6368616e6765640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e01604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6109c40260016040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c7400000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e766572746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60fa026001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6064026001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f7375626d6974746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6064026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6064026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6469736d6973736564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f7665640000000000000000000081526016810191909152603601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a6109c40260016040517f70696e6700000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a60fa0260016040517f7075736800000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6113880260016040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c6973686564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6103e80260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e670000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f727900000000000000000081526017810191909152603701604051809103902081905550600354600a0a6103e80260016040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f73746172746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040519081526020016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260026040517f666f726b0000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006002604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f63616e63656c6c65640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f6368616e676564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a613a980260026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a613a980260026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c740000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e76657274656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e6564000000000000000000000000000000000000000000000000815260088101919091526028016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6372656174656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f7375626d69747465640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6469736d697373656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f766564000000000000000000008152601681019190915260360160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a6113880260026040517f70696e670000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f707573680000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c697368656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e67000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f720000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f72790000000000000000008152601781019190915260370160405190819003902055600060026040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260026040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f737461727465640000000000000000000000000000000000000000000000000081526007810191909152602701604051908190039020555b505b6106458062005d646000396000f300606060405263ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663666e1b39811461005e5780638bea03961461009157806392956c1e1461013f578063f2fde38b146101ea575b600080fd5b341561006957600080fd5b61007d600160a060020a036004351661020b565b604051901515815260200160405180910390f35b341561009c57600080fd5b61007d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505084359460200135935061022092505050565b604051901515815260200160405180910390f35b341561014a57600080fd5b6101d260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496506103ee95505050505050565b60405191825260208201526040908101905180910390f35b34156101f557600080fd5b610209600160a060020a0360043516610593565b005b60006020819052908152604090205460ff1681565b600160a060020a03331660009081526020819052604081205460ff16151561024757600080fd5b826001866040518082805190602001908083835b6020831061027b57805182525b601f19909201916020918201910161025b565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106102df57805182525b601f1990920191602091820191016102bf565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405190819003902055816002866040518082805190602001908083835b6020831061034857805182525b601f199092019160209182019101610328565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106103ac57805182525b601f19909201916020918201910161038c565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051908190039020555060015b5b949350505050565b6000806001846040518082805190602001908083835b6020831061042457805182525b601f199092019160209182019101610404565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020836040518082805190602001908083835b6020831061048857805182525b601f199092019160209182019101610468565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020546002856040518082805190602001908083835b602083106104ef57805182525b601f1990920191602091820191016104cf565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020846040518082805190602001908083835b6020831061055357805182525b601f199092019160209182019101610533565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902054915091505b9250929050565b600160a060020a03331660009081526020819052604090205460ff1615156105ba57600080fd5b600160a060020a03811660009081526020819052604090205460ff16151561061457600160a060020a03808216600090815260208190526040808220805460ff199081166001179091553390931682529020805490911690555b5b5b505600a165627a7a723058208d12e75bd223f0bd37d987450a0870b0595347cc346051647a28ac82ed911ac90029696e7374616c6c6174696f6e5f7265706f7369746f72696573000000000000006465706c6f796d656e745f73746174757300000000000000000000000000000070756c6c5f726571756573745f7265766965775f636f6d6d656e74000000000070756c6c5f726571756573745f726576696577000000000000000000000000006d61726b6574706c6163655f7075726368617365000000000000000000000000",\n "networks": {\n "9": {\n "events": {},\n "links": {},\n "address": "0x9e7658e5c0fce950df41b55714ddeb73d2b72cd9",\n "updated_at": 1511985340227\n }\n },\n "schema_version": "0.0.5",\n "updated_at": 1511985340227\n}'; +/* babel-plugin-inline-import 'gittoken-contracts/build/contracts/RewardPoints.json' */var RewardPoints = '{\n "contract_name": "RewardPoints",\n "abi": [\n {\n "constant": true,\n "inputs": [\n {\n "name": "",\n "type": "address"\n }\n ],\n "name": "owner",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n },\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "name": "setRewardDetails",\n "outputs": [\n {\n "name": "success",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n }\n ],\n "name": "getRewardDetails",\n "outputs": [\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "newOwner",\n "type": "address"\n }\n ],\n "name": "transferOwnership",\n "outputs": [],\n "payable": false,\n "type": "function"\n },\n {\n "inputs": [\n {\n "name": "_decimals",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "constructor"\n }\n ],\n "unlinked_binary": "0x606060405234156200001057600080fd5b60405160208062006449833981016040528080519150505b5b600160a060020a0333166000908152602081905260409020805460ff191660011790555b600381905560fa600a82900a0260016040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e6368000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f746167000000000000000000000000000000000000000000000000000000000081526003810191909152602301604051809103902081905550600354600a0a6103e80260016040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a016040518091039020604051908152602001604051809103902081905550600354600a0a6101f4026001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60640260016040517f666f726b00000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6103e80260016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006001604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c01604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60640260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f63616e63656c6c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60fa026001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f6368616e6765640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e01604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6109c40260016040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c7400000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e766572746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60fa026001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6064026001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f7375626d6974746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6064026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6064026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6469736d6973736564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f7665640000000000000000000081526016810191909152603601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a6109c40260016040517f70696e6700000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a60fa0260016040517f7075736800000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6113880260016040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c6973686564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6103e80260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e670000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f727900000000000000000081526017810191909152603701604051809103902081905550600354600a0a6103e80260016040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f73746172746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040519081526020016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260026040517f666f726b0000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006002604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f63616e63656c6c65640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f6368616e676564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a613a980260026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a613a980260026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c740000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e76657274656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e6564000000000000000000000000000000000000000000000000815260088101919091526028016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6372656174656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f7375626d69747465640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6469736d697373656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f766564000000000000000000008152601681019190915260360160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a6113880260026040517f70696e670000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f707573680000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c697368656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e67000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f720000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f72790000000000000000008152601781019190915260370160405190819003902055600060026040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260026040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f737461727465640000000000000000000000000000000000000000000000000081526007810191909152602701604051908190039020555b505b6106458062005d646000396000f300606060405263ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663666e1b39811461005e5780638bea03961461009157806392956c1e1461013f578063f2fde38b146101ea575b600080fd5b341561006957600080fd5b61007d600160a060020a036004351661020b565b604051901515815260200160405180910390f35b341561009c57600080fd5b61007d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505084359460200135935061022092505050565b604051901515815260200160405180910390f35b341561014a57600080fd5b6101d260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496506103ee95505050505050565b60405191825260208201526040908101905180910390f35b34156101f557600080fd5b610209600160a060020a0360043516610593565b005b60006020819052908152604090205460ff1681565b600160a060020a03331660009081526020819052604081205460ff16151561024757600080fd5b826001866040518082805190602001908083835b6020831061027b57805182525b601f19909201916020918201910161025b565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106102df57805182525b601f1990920191602091820191016102bf565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405190819003902055816002866040518082805190602001908083835b6020831061034857805182525b601f199092019160209182019101610328565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106103ac57805182525b601f19909201916020918201910161038c565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051908190039020555060015b5b949350505050565b6000806001846040518082805190602001908083835b6020831061042457805182525b601f199092019160209182019101610404565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020836040518082805190602001908083835b6020831061048857805182525b601f199092019160209182019101610468565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020546002856040518082805190602001908083835b602083106104ef57805182525b601f1990920191602091820191016104cf565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020846040518082805190602001908083835b6020831061055357805182525b601f199092019160209182019101610533565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902054915091505b9250929050565b600160a060020a03331660009081526020819052604090205460ff1615156105ba57600080fd5b600160a060020a03811660009081526020819052604090205460ff16151561061457600160a060020a03808216600090815260208190526040808220805460ff199081166001179091553390931682529020805490911690555b5b5b505600a165627a7a723058208d12e75bd223f0bd37d987450a0870b0595347cc346051647a28ac82ed911ac90029696e7374616c6c6174696f6e5f7265706f7369746f72696573000000000000006465706c6f796d656e745f73746174757300000000000000000000000000000070756c6c5f726571756573745f7265766965775f636f6d6d656e74000000000070756c6c5f726571756573745f726576696577000000000000000000000000006d61726b6574706c6163655f7075726368617365000000000000000000000000",\n "networks": {\n "9": {\n "events": {},\n "links": {},\n "address": "0x6804800131020af5a6225dac0c9338a3b21a6d23",\n "updated_at": 1512015142357\n }\n },\n "schema_version": "0.0.5",\n "updated_at": 1512015142357\n}'; var GitTokenContracts = function (_GitTokenKeystoreGene) { (0, _inherits3.default)(GitTokenContracts, _GitTokenKeystoreGene); @@ -44,8 +44,18 @@ var GitTokenContracts = function (_GitTokenKeystoreGene) { var _this = (0, _possibleConstructorReturn3.default)(this, (GitTokenContracts.__proto__ || (0, _getPrototypeOf2.default)(GitTokenContracts)).call(this, options)); - _this.RewardPoints = _this.load({ contract: RewardPoints, network: '9' }); - console.log('this.RewardPoints', _this.RewardPoints); + _this.RewardPoints = _this.load({ + contract: RewardPoints, + network: '9', + address: null + }); + + _this.RewardPoints.getRewardDetails.callAsync('create', 'repository').then(function (data) { + console.log('data', data[0].toString()); + console.log('data', data[1].toString()); + }).catch(function (error) { + console.log('error', error); + }); return _this; } @@ -53,15 +63,16 @@ var GitTokenContracts = function (_GitTokenKeystoreGene) { key: 'load', value: function load(_ref) { var contract = _ref.contract, - network = _ref.network; + network = _ref.network, + address = _ref.address; var _JSON$parse = JSON.parse(contract), abi = _JSON$parse.abi, networks = _JSON$parse.networks; - var address = networks[network]['address']; + var addr = address ? address : networks[network]['address']; - var C = this.eth.contract(abi).at(address); + var C = this.eth.contract(abi).at(addr); C['abi'].filter(function (item) { if (item['type'] == 'function') { diff --git a/dist/utils/parseContribution.js b/dist/utils/parseContribution.js index bcafd83..9abe70b 100644 --- a/dist/utils/parseContribution.js +++ b/dist/utils/parseContribution.js @@ -54,8 +54,14 @@ function parseContribution(_ref) { var subEventType = getSubEventType({ eventType: eventType, payload: payload }); - _promise2.default.resolve(_this.RewardPoints.getRewardDetails.call(eventType, subEventType)).then(function (data) { - console.log('data', data); + _this.RewardPoints.getRewardDetails.callAsync(eventType, subEventType).then(function (data) { + + var rewardValue = data[0].toNumber(); + var reservedValue = data[1].toNumber(); + + console.log('reservedValue', reservedValue); + console.log('rewardValue', rewardValue); + resolve({ username: payload['sender']['login'], contributor: null, @@ -63,11 +69,12 @@ function parseContribution(_ref) { delivery_id: headers['x-github-delivery'], eventType: eventType, organization: payload['organization']['login'], - reservedValue: 0, - rewardValue: 0, + reservedValue: reservedValue, + rewardValue: rewardValue, subEventType: subEventType }); }).catch(function (error) { + console.log('error', error); reject(error); }); }); diff --git a/package-lock.json b/package-lock.json index 95201d8..fb44ff3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6046,9 +6046,9 @@ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" }, "gittoken-contracts": { - "version": "0.0.57", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.57.tgz", - "integrity": "sha512-PzQ19g6lGqnJ62zZD2X/y1yh4H9RT25eHa9fjqkb830PezVlQhopa/rZ6uyEcHzERd4vgH2QW8XyZuW8OQV6yQ==", + "version": "0.0.58", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.58.tgz", + "integrity": "sha512-ghC4Kp5S81JUqOaxjyHsfCfrK/F/nCIvgXt7pX2rGviiAO5ehlSoXC/a2P97+Ncuf/nKR0+miqurMcUS3Y/Y4Q==", "requires": { "bluebird": "3.5.1", "ethereumjs-testrpc": "4.1.3", diff --git a/package.json b/package.json index 0ee2cc0..abe8a1c 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "dotenv": "^4.0.0", "express": "^4.15.3", "express-session": "^1.15.3", - "gittoken-contracts": "0.0.57", + "gittoken-contracts": "0.0.58", "gittoken-keystore-generator": "0.0.20", "graphql": "^0.10.4", "keccak": "^1.3.0", diff --git a/src/contracts/index.js b/src/contracts/index.js index 6518658..8b8719b 100644 --- a/src/contracts/index.js +++ b/src/contracts/index.js @@ -5,14 +5,18 @@ import RewardPoints from 'gittoken-contracts/build/contracts/RewardPoints.json' export default class GitTokenContracts extends GitTokenKeystoreGenerator { constructor(options) { super(options) - this.RewardPoints = this.load({ contract: RewardPoints, network: '9' }) + this.RewardPoints = this.load({ + contract: RewardPoints, + network: '9', + address: null + }) } - load({ contract, network }) { + load({ contract, network, address }) { const { abi, networks } = JSON.parse(contract) - const address = networks[network]['address'] + const addr = address ? address : networks[network]['address'] - let C = this.eth.contract(abi).at(address) + let C = this.eth.contract(abi).at(addr) C['abi'].filter((item) => { if (item['type'] == 'function') { return true } From 2021b00238c8c617166eb775acc1a3315c9d1fe1 Mon Sep 17 00:00:00 2001 From: Ryan Tate Date: Wed, 29 Nov 2017 22:29:43 -0800 Subject: [PATCH 03/10] Fix 'push' event bug not having payload subevent --- package-lock.json | 6 +++--- package.json | 2 +- src/utils/parseContribution.js | 5 ++--- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index fb44ff3..7a52a36 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6046,9 +6046,9 @@ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" }, "gittoken-contracts": { - "version": "0.0.58", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.58.tgz", - "integrity": "sha512-ghC4Kp5S81JUqOaxjyHsfCfrK/F/nCIvgXt7pX2rGviiAO5ehlSoXC/a2P97+Ncuf/nKR0+miqurMcUS3Y/Y4Q==", + "version": "0.0.59", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.59.tgz", + "integrity": "sha512-5ovs3oLOwHpvqwwlmJhRVeL+vudpx040irmXKHQFKZ0bOOQsPFRbfKvJJuB/d8PNRDImmuSujTWyyun02ieU7A==", "requires": { "bluebird": "3.5.1", "ethereumjs-testrpc": "4.1.3", diff --git a/package.json b/package.json index abe8a1c..2225601 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "dotenv": "^4.0.0", "express": "^4.15.3", "express-session": "^1.15.3", - "gittoken-contracts": "0.0.58", + "gittoken-contracts": "0.0.59", "gittoken-keystore-generator": "0.0.20", "graphql": "^0.10.4", "keccak": "^1.3.0", diff --git a/src/utils/parseContribution.js b/src/utils/parseContribution.js index f6f9e79..59d3880 100644 --- a/src/utils/parseContribution.js +++ b/src/utils/parseContribution.js @@ -28,6 +28,8 @@ export default function parseContribution({ headers, payload }) { case 'status': return payload['state'] break; + case 'push': + return '' default: return payload['action'] } @@ -40,9 +42,6 @@ export default function parseContribution({ headers, payload }) { const rewardValue = data[0].toNumber() const reservedValue = data[1].toNumber() - console.log('reservedValue', reservedValue) - console.log('rewardValue', rewardValue) - resolve({ username: payload['sender']['login'], contributor: null, From bc41c871286ddb42b2e2d6e10ad9a2d54b922e90 Mon Sep 17 00:00:00 2001 From: Ryan Tate Date: Thu, 30 Nov 2017 18:47:55 -0800 Subject: [PATCH 04/10] WIP; TODO deploy contract on ping event --- dist/contracts/getRewardDetails.js | 28 - dist/contracts/index.js | 9 +- dist/index.js | 30 +- .../gitterLogContributionActivity.js | 41 ++ dist/integrations/gitterService.js | 23 + dist/integrations/gitterWebHook.js | 37 ++ dist/integrations/index.js | 24 + dist/middleware/WebHookMiddleware.js | 33 +- dist/mysql/getContributions.js | 29 + dist/mysql/getTokenSupply.js | 28 + dist/mysql/getUserBalances.js | 29 + dist/mysql/index.js | 17 +- dist/routers/ApiRouter.js | 62 +++ dist/routers/index.js | 9 +- dist/utils/index.js | 9 +- dist/utils/parseContribution.js | 33 +- dist/utils/validateWebHookRequest.js | 25 + gittoken.config.js | 3 + package-lock.json | 494 ++++++++++++++++++ package.json | 3 + src/index.js | 47 +- .../gitterLogContributionActivity.js | 38 ++ src/integrations/gitterService.js | 10 + src/integrations/gitterWebHook.js | 18 + src/integrations/index.js | 9 + src/middleware/WebHookMiddleware.js | 34 +- src/mysql/getContributions.js | 16 + src/mysql/getTokenSupply.js | 15 + src/mysql/getUserBalances.js | 16 + src/mysql/index.js | 6 + src/routers/ApiRouter.js | 60 +++ src/routers/index.js | 4 +- src/utils/index.js | 4 +- src/utils/parseContribution.js | 28 +- src/utils/validateWebHookRequest.js | 11 + 35 files changed, 1175 insertions(+), 107 deletions(-) delete mode 100644 dist/contracts/getRewardDetails.js create mode 100644 dist/integrations/gitterLogContributionActivity.js create mode 100644 dist/integrations/gitterService.js create mode 100644 dist/integrations/gitterWebHook.js create mode 100644 dist/integrations/index.js create mode 100644 dist/mysql/getContributions.js create mode 100644 dist/mysql/getTokenSupply.js create mode 100644 dist/mysql/getUserBalances.js create mode 100644 dist/routers/ApiRouter.js create mode 100644 dist/utils/validateWebHookRequest.js create mode 100644 src/integrations/gitterLogContributionActivity.js create mode 100644 src/integrations/gitterService.js create mode 100644 src/integrations/gitterWebHook.js create mode 100644 src/integrations/index.js create mode 100644 src/mysql/getContributions.js create mode 100644 src/mysql/getTokenSupply.js create mode 100644 src/mysql/getUserBalances.js create mode 100644 src/routers/ApiRouter.js create mode 100644 src/utils/validateWebHookRequest.js diff --git a/dist/contracts/getRewardDetails.js b/dist/contracts/getRewardDetails.js deleted file mode 100644 index a5ee233..0000000 --- a/dist/contracts/getRewardDetails.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = getRewardDetails; - -var _bluebird = require('bluebird'); - -var _bluebird2 = _interopRequireDefault(_bluebird); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -// import GitTokenRewardPoints from 'gittoken-contracts/build/contracts/GitTokenRewardPoints.json' - -function getRewardDetails(_ref) { - var eventType = _ref.eventType, - subEventType = _ref.subEventType; - - return new _bluebird2.default(function (resolve, reject) { - // TODO Write The GitTokenRewardPoints.sol Contract - // Make call to contract. - resolve({ - rewardValue: 0, - reservedValue: 0 - }); - }); -} \ No newline at end of file diff --git a/dist/contracts/index.js b/dist/contracts/index.js index 61c05e1..8325709 100644 --- a/dist/contracts/index.js +++ b/dist/contracts/index.js @@ -34,7 +34,7 @@ var _gittokenKeystoreGenerator2 = _interopRequireDefault(_gittokenKeystoreGenera function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -/* babel-plugin-inline-import 'gittoken-contracts/build/contracts/RewardPoints.json' */var RewardPoints = '{\n "contract_name": "RewardPoints",\n "abi": [\n {\n "constant": true,\n "inputs": [\n {\n "name": "",\n "type": "address"\n }\n ],\n "name": "owner",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n },\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "name": "setRewardDetails",\n "outputs": [\n {\n "name": "success",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n }\n ],\n "name": "getRewardDetails",\n "outputs": [\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "newOwner",\n "type": "address"\n }\n ],\n "name": "transferOwnership",\n "outputs": [],\n "payable": false,\n "type": "function"\n },\n {\n "inputs": [\n {\n "name": "_decimals",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "constructor"\n }\n ],\n "unlinked_binary": "0x606060405234156200001057600080fd5b60405160208062006449833981016040528080519150505b5b600160a060020a0333166000908152602081905260409020805460ff191660011790555b600381905560fa600a82900a0260016040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e6368000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f746167000000000000000000000000000000000000000000000000000000000081526003810191909152602301604051809103902081905550600354600a0a6103e80260016040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a016040518091039020604051908152602001604051809103902081905550600354600a0a6101f4026001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60640260016040517f666f726b00000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6103e80260016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006001604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c01604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60640260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f63616e63656c6c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60fa026001604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f6368616e6765640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e01604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6109c40260016040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c7400000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e766572746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60fa026001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6064026001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006001604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f7375626d6974746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6064026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6064026001604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6469736d6973736564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f7665640000000000000000000081526016810191909152603601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a6109c40260016040517f70696e6700000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a60fa0260016040517f7075736800000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6113880260016040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c6973686564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6103e80260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e670000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f727900000000000000000081526017810191909152603701604051809103902081905550600354600a0a6103e80260016040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f73746172746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040519081526020016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063c98339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260026040517f666f726b0000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006002604051600080516020620063a98339815191528152601981019190915260390160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f63616e63656c6c65640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064298339815191528152601481019190915260340160405180910390206040517f6368616e676564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a613a980260026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a613a980260026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c740000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e76657274656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e6564000000000000000000000000000000000000000000000000815260088101919091526028016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6372656174656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620063e98339815191528152601b810191909152603b0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f7375626d69747465640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620064098339815191528152601381019190915260330160405180910390206040517f6469736d697373656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f766564000000000000000000008152601681019190915260360160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a6113880260026040517f70696e670000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f707573680000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c697368656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e67000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f720000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f72790000000000000000008152601781019190915260370160405190819003902055600060026040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260026040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f737461727465640000000000000000000000000000000000000000000000000081526007810191909152602701604051908190039020555b505b6106458062005d646000396000f300606060405263ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663666e1b39811461005e5780638bea03961461009157806392956c1e1461013f578063f2fde38b146101ea575b600080fd5b341561006957600080fd5b61007d600160a060020a036004351661020b565b604051901515815260200160405180910390f35b341561009c57600080fd5b61007d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505084359460200135935061022092505050565b604051901515815260200160405180910390f35b341561014a57600080fd5b6101d260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496506103ee95505050505050565b60405191825260208201526040908101905180910390f35b34156101f557600080fd5b610209600160a060020a0360043516610593565b005b60006020819052908152604090205460ff1681565b600160a060020a03331660009081526020819052604081205460ff16151561024757600080fd5b826001866040518082805190602001908083835b6020831061027b57805182525b601f19909201916020918201910161025b565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106102df57805182525b601f1990920191602091820191016102bf565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405190819003902055816002866040518082805190602001908083835b6020831061034857805182525b601f199092019160209182019101610328565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106103ac57805182525b601f19909201916020918201910161038c565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051908190039020555060015b5b949350505050565b6000806001846040518082805190602001908083835b6020831061042457805182525b601f199092019160209182019101610404565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020836040518082805190602001908083835b6020831061048857805182525b601f199092019160209182019101610468565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020546002856040518082805190602001908083835b602083106104ef57805182525b601f1990920191602091820191016104cf565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020846040518082805190602001908083835b6020831061055357805182525b601f199092019160209182019101610533565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902054915091505b9250929050565b600160a060020a03331660009081526020819052604090205460ff1615156105ba57600080fd5b600160a060020a03811660009081526020819052604090205460ff16151561061457600160a060020a03808216600090815260208190526040808220805460ff199081166001179091553390931682529020805490911690555b5b5b505600a165627a7a723058208d12e75bd223f0bd37d987450a0870b0595347cc346051647a28ac82ed911ac90029696e7374616c6c6174696f6e5f7265706f7369746f72696573000000000000006465706c6f796d656e745f73746174757300000000000000000000000000000070756c6c5f726571756573745f7265766965775f636f6d6d656e74000000000070756c6c5f726571756573745f726576696577000000000000000000000000006d61726b6574706c6163655f7075726368617365000000000000000000000000",\n "networks": {\n "9": {\n "events": {},\n "links": {},\n "address": "0x6804800131020af5a6225dac0c9338a3b21a6d23",\n "updated_at": 1512015142357\n }\n },\n "schema_version": "0.0.5",\n "updated_at": 1512015142357\n}'; +/* babel-plugin-inline-import 'gittoken-contracts/build/contracts/RewardPoints.json' */var RewardPoints = '{\n "contract_name": "RewardPoints",\n "abi": [\n {\n "constant": true,\n "inputs": [\n {\n "name": "",\n "type": "address"\n }\n ],\n "name": "owner",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n },\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "name": "setRewardDetails",\n "outputs": [\n {\n "name": "success",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n }\n ],\n "name": "getRewardDetails",\n "outputs": [\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "newOwner",\n "type": "address"\n }\n ],\n "name": "transferOwnership",\n "outputs": [],\n "payable": false,\n "type": "function"\n },\n {\n "inputs": [\n {\n "name": "_decimals",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "constructor"\n }\n ],\n "unlinked_binary": "0x606060405234156200001057600080fd5b60405160208062006542833981016040528080519150505b5b600160a060020a0333166000908152602081905260409020805460ff191660011790555b600381905560fa600a82900a0260016040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e6368000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f746167000000000000000000000000000000000000000000000000000000000081526003810191909152602301604051809103902081905550600354600a0a6103e80260016040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a016040518091039020604051908152602001604051809103902081905550600354600a0a6101f4026001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60640260016040517f666f726b00000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6103e80260016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006001604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c01604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60640260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006001604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f63616e63656c6c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60fa026001604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f6368616e6765640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e01604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6109c40260016040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c7400000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e766572746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60fa026001604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6064026001604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006001604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa026001604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f7375626d6974746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6064026001604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6064026001604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f6469736d6973736564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f7665640000000000000000000081526016810191909152603601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60960260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f73796e6368726f6e697a650000000000000000000000000000000000000000008152600b810191909152602b01604051809103902081905550600354600a0a6109c40260016040517f70696e6700000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a60fa0260016040517f7075736800000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6113880260016040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c6973686564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6103e80260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e670000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f727900000000000000000081526017810191909152603701604051809103902081905550600354600a0a6103e80260016040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f73746172746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040519081526020016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260026040517f666f726b0000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006002604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f63616e63656c6c65640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f6368616e676564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a613a980260026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a613a980260026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c740000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e76657274656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e6564000000000000000000000000000000000000000000000000815260088101919091526028016040519081900390205560006002604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f6372656174656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f7375626d69747465640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f6469736d697373656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f766564000000000000000000008152601681019190915260360160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f73796e6368726f6e697a650000000000000000000000000000000000000000008152600b810191909152602b01604051809103902081905550600354600a0a6113880260026040517f70696e670000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f707573680000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c697368656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e67000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f720000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f72790000000000000000008152601781019190915260370160405190819003902055600060026040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260026040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f737461727465640000000000000000000000000000000000000000000000000081526007810191909152602701604051908190039020555b505b6106458062005e5d6000396000f300606060405263ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663666e1b39811461005e5780638bea03961461009157806392956c1e1461013f578063f2fde38b146101ea575b600080fd5b341561006957600080fd5b61007d600160a060020a036004351661020b565b604051901515815260200160405180910390f35b341561009c57600080fd5b61007d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505084359460200135935061022092505050565b604051901515815260200160405180910390f35b341561014a57600080fd5b6101d260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496506103ee95505050505050565b60405191825260208201526040908101905180910390f35b34156101f557600080fd5b610209600160a060020a0360043516610593565b005b60006020819052908152604090205460ff1681565b600160a060020a03331660009081526020819052604081205460ff16151561024757600080fd5b826001866040518082805190602001908083835b6020831061027b57805182525b601f19909201916020918201910161025b565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106102df57805182525b601f1990920191602091820191016102bf565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405190819003902055816002866040518082805190602001908083835b6020831061034857805182525b601f199092019160209182019101610328565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106103ac57805182525b601f19909201916020918201910161038c565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051908190039020555060015b5b949350505050565b6000806001846040518082805190602001908083835b6020831061042457805182525b601f199092019160209182019101610404565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020836040518082805190602001908083835b6020831061048857805182525b601f199092019160209182019101610468565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020546002856040518082805190602001908083835b602083106104ef57805182525b601f1990920191602091820191016104cf565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020846040518082805190602001908083835b6020831061055357805182525b601f199092019160209182019101610533565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902054915091505b9250929050565b600160a060020a03331660009081526020819052604090205460ff1615156105ba57600080fd5b600160a060020a03811660009081526020819052604090205460ff16151561061457600160a060020a03808216600090815260208190526040808220805460ff199081166001179091553390931682529020805490911690555b5b5b505600a165627a7a72305820bd73a49fe9d888ec49a994b3b0af12c7054522793d045d8749cb291335bebd0c0029696e7374616c6c6174696f6e5f7265706f7369746f72696573000000000000006465706c6f796d656e745f73746174757300000000000000000000000000000070756c6c5f726571756573745f7265766965775f636f6d6d656e74000000000070756c6c5f726571756573745f726576696577000000000000000000000000006d61726b6574706c6163655f7075726368617365000000000000000000000000",\n "networks": {\n "9": {\n "events": {},\n "links": {},\n "address": "0x3502f9b901521ebf2a23d8375266b7707a5a1b4e",\n "updated_at": 1512018540125\n }\n },\n "schema_version": "0.0.5",\n "updated_at": 1512018540125\n}'; var GitTokenContracts = function (_GitTokenKeystoreGene) { (0, _inherits3.default)(GitTokenContracts, _GitTokenKeystoreGene); @@ -49,13 +49,6 @@ var GitTokenContracts = function (_GitTokenKeystoreGene) { network: '9', address: null }); - - _this.RewardPoints.getRewardDetails.callAsync('create', 'repository').then(function (data) { - console.log('data', data[0].toString()); - console.log('data', data[1].toString()); - }).catch(function (error) { - console.log('error', error); - }); return _this; } diff --git a/dist/index.js b/dist/index.js index c3a1da7..72e67b5 100644 --- a/dist/index.js +++ b/dist/index.js @@ -36,16 +36,10 @@ var _bodyParser = require('body-parser'); var _bodyParser2 = _interopRequireDefault(_bodyParser); -var _passport = require('passport'); - -var _passport2 = _interopRequireDefault(_passport); - var _mysql = require('mysql'); var _mysql2 = _interopRequireDefault(_mysql); -var _passportGithub = require('passport-github2'); - var _index = require('./utils/index'); var _index2 = require('./contracts/index'); @@ -58,9 +52,10 @@ var _index5 = require('./routers/index'); var _index6 = require('./middleware/index'); +var _index7 = require('./integrations/index'); + function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -// import GitTokenKeystoreGenerator from 'gittoken-keystore-generator' var GitTokenServer = function (_GitTokenContracts) { (0, _inherits3.default)(GitTokenServer, _GitTokenContracts); @@ -69,7 +64,11 @@ var GitTokenServer = function (_GitTokenContracts) { _ref$api = _ref.api, port = _ref$api.port, sessionSecret = _ref$api.sessionSecret, + gittokenParams = _ref.gittokenParams, githubCredentials = _ref.githubCredentials, + gitterWebHookUrl = _ref.gitterWebHookUrl, + gitterToken = _ref.gitterToken, + gitterRoomName = _ref.gitterRoomName, dirPath = _ref.dirPath, address = _ref.address, recoveryShare = _ref.recoveryShare, @@ -80,20 +79,36 @@ var GitTokenServer = function (_GitTokenContracts) { var _this = (0, _possibleConstructorReturn3.default)(this, (GitTokenServer.__proto__ || (0, _getPrototypeOf2.default)(GitTokenServer)).call(this, { dirPath: dirPath, address: address, recoveryShare: recoveryShare, web3Provider: web3Provider })); _this.port = port; + _this.gittokenParams = gittokenParams; _this.githubCredentials = githubCredentials; + _this.gitterWebHookUrl = gitterWebHookUrl; + _this.gitterToken = gitterToken; + _this.gitterRoomName = gitterRoomName; _this.sessionSecret = sessionSecret; _this.web3Provider = web3Provider; /* Bind Methods */ _this.AuthRouter = _index5.AuthRouter.bind(_this); _this.WebHookRouter = _index5.WebHookRouter.bind(_this); + _this.ApiRouter = _index5.ApiRouter.bind(_this); _this.WebHookMiddleware = _index6.WebHookMiddleware.bind(_this); _this.parseContribution = _index.parseContribution.bind(_this); + _this.validateWebHookRequest = _index.validateWebHookRequest.bind(_this); _this.signContribution = _index.signContribution.bind(_this); _this.query = _index4.query.bind(_this); _this.saveContribution = _index4.saveContribution.bind(_this); _this.saveUserBalance = _index4.saveUserBalance.bind(_this); _this.saveTotalSupply = _index4.saveTotalSupply.bind(_this); + _this.getContributions = _index4.getContributions.bind(_this); + _this.getTokenSupply = _index4.getTokenSupply.bind(_this); + _this.getUserBalances = _index4.getUserBalances.bind(_this); + + /* Gitter WebHook Integration */ + _this.gitterService = _index7.gitterService.bind(_this); + + _this.gitterService(); + _this.gitterWebHook = _index7.gitterWebHook.bind(_this); + _this.gitterLogContributionActivity = _index7.gitterLogContributionActivity.bind(_this); /* MySql Connection */ _this.mysql = _mysql2.default.createConnection(mysqlOpts); @@ -112,6 +127,7 @@ var GitTokenServer = function (_GitTokenContracts) { _this.app.use('/auth/', _this.AuthRouter()); _this.app.use('/webhook/', _this.WebHookRouter()); + _this.app.use('/api/', _this.ApiRouter()); _this.app.use('/', function (req, res) { res.send('Hello, GitToken Server!'); diff --git a/dist/integrations/gitterLogContributionActivity.js b/dist/integrations/gitterLogContributionActivity.js new file mode 100644 index 0000000..f637852 --- /dev/null +++ b/dist/integrations/gitterLogContributionActivity.js @@ -0,0 +1,41 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = gitterLogContributionActivity; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function gitterLogContributionActivity(_ref) { + var _this = this; + + var contribution = _ref.contribution, + userBalance = _ref.userBalance, + totalSupply = _ref.totalSupply; + + return new _bluebird2.default(function (resolve, reject) { + var _gittokenParams = _this.gittokenParams, + decimals = _gittokenParams.decimals, + symbol = _gittokenParams.symbol, + organization = _gittokenParams.organization; + var username = contribution.username, + rewardValue = contribution.rewardValue, + reservedValue = contribution.reservedValue, + eventType = contribution.eventType, + subEventType = contribution.subEventType; + var balance = userBalance.balance; + var total_tokens = totalSupply.total_tokens; + + + var message = '\n ' + organization + ' Contribution Received\n\n ---\n Contributor: ' + username + '\n Event: ' + eventType + '\n Sub Event: ' + subEventType + '\n ' + symbol + ' Rewarded: ' + rewardValue / Math.pow(10, decimals) + ' ' + symbol + '\n ' + symbol + ' Reserved: ' + reservedValue / Math.pow(10, decimals) + ' ' + symbol + '\n\n ---\n ' + username + ' Balance: ' + balance / Math.pow(10, decimals) + ' ' + symbol + '\n Total ' + symbol + ' Supply: ' + total_tokens / Math.pow(10, decimals) + ' ' + symbol + '\n\n ---\n Earn ' + symbol + ' by contributing to https://github.com/' + organization + '\n\n ---\n Setup GitToken for your organization:\n\n >_ npm i git-token@alpha -g\n\n '; + + _this.gitterRoom.send(message); + + resolve(true); + }); +} \ No newline at end of file diff --git a/dist/integrations/gitterService.js b/dist/integrations/gitterService.js new file mode 100644 index 0000000..24bf07f --- /dev/null +++ b/dist/integrations/gitterService.js @@ -0,0 +1,23 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = gitterService; + +var _nodeGitter = require('node-gitter'); + +var _nodeGitter2 = _interopRequireDefault(_nodeGitter); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function gitterService() { + var _this = this; + + this.gitter = new _nodeGitter2.default(this.gitterToken); + this.gitter.rooms.join(this.gitterRoomName).then(function (room) { + _this.gitterRoom = room; + }).catch(function (error) { + console.log('Error connecting to Gitter Service'); + }); +} \ No newline at end of file diff --git a/dist/integrations/gitterWebHook.js b/dist/integrations/gitterWebHook.js new file mode 100644 index 0000000..5d1db2d --- /dev/null +++ b/dist/integrations/gitterWebHook.js @@ -0,0 +1,37 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = gitterWebHook; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +var _requestPromise = require('request-promise'); + +var _requestPromise2 = _interopRequireDefault(_requestPromise); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function gitterWebHook(_ref) { + var _this = this; + + var message = _ref.message, + level = _ref.level; + + return new _bluebird2.default(function (resolve, reject) { + (0, _requestPromise2.default)({ + method: 'POST', + uri: _this.gitterWebHookUrl, + body: { message: message, level: level }, + json: true + }).then(function (result) { + console.log('Gitter IM WebHook Result: ', result); + resolve(true); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/integrations/index.js b/dist/integrations/index.js new file mode 100644 index 0000000..4aa4e8c --- /dev/null +++ b/dist/integrations/index.js @@ -0,0 +1,24 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.gitterLogContributionActivity = exports.gitterWebHook = exports.gitterService = undefined; + +var _gitterWebHook = require('./gitterWebHook'); + +var _gitterWebHook2 = _interopRequireDefault(_gitterWebHook); + +var _gitterService = require('./gitterService'); + +var _gitterService2 = _interopRequireDefault(_gitterService); + +var _gitterLogContributionActivity = require('./gitterLogContributionActivity'); + +var _gitterLogContributionActivity2 = _interopRequireDefault(_gitterLogContributionActivity); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.gitterService = _gitterService2.default; +exports.gitterWebHook = _gitterWebHook2.default; +exports.gitterLogContributionActivity = _gitterLogContributionActivity2.default; \ No newline at end of file diff --git a/dist/middleware/WebHookMiddleware.js b/dist/middleware/WebHookMiddleware.js index ed78cd4..973c5f5 100644 --- a/dist/middleware/WebHookMiddleware.js +++ b/dist/middleware/WebHookMiddleware.js @@ -1,4 +1,4 @@ -'use strict'; +"use strict"; Object.defineProperty(exports, "__esModule", { value: true @@ -8,29 +8,46 @@ function WebHookMiddleware(req, res, next) { var _this = this; var headers = req.headers, - payload = req.body.payload; + body = req.body; - this.parseContribution({ headers: headers, payload: JSON.parse(payload) }).then(function (contribution) { + this.validateWebHookRequest({ headers: headers, body: body }).then(function () { - console.log('contribution', contribution); + return _this.parseContribution({ headers: headers, body: body }); + }).then(function (contribution) { + + // console.log('contribution', contribution) return _this.signContribution(contribution); }).then(function (signedContribution) { - console.log('signedContribution', signedContribution); + // console.log('signedContribution', signedContribution) return _this.saveContribution(signedContribution); }).then(function (savedContribution) { - console.log('savedContribution', savedContribution); + + // console.log('savedContribution', savedContribution) req.contribution = savedContribution; return _this.saveTotalSupply(req.contribution); }).then(function (totalSupply) { + req.totalSupply = totalSupply; return _this.saveUserBalance(req.contribution); }).then(function (userBalance) { + req.userBalance = userBalance; + if (!_this.gitterWebHookUrl) { + next(); + } else { + return _this.gitterLogContributionActivity({ + totalSupply: req.totalSupply, + userBalance: req.userBalance, + contribution: req.contribution + }); + } + }).then(function () { + // Middleware Complete next(); }).catch(function (error) { - console.log('error', error); - res.status(500).send(error.message); + var code = error.code ? error.code : 500; + res.status(code).send(error.message); }); } \ No newline at end of file diff --git a/dist/mysql/getContributions.js b/dist/mysql/getContributions.js new file mode 100644 index 0000000..986bdf8 --- /dev/null +++ b/dist/mysql/getContributions.js @@ -0,0 +1,29 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = getContributions; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function getContributions(_ref) { + var _this = this; + + var username = _ref.username; + + return new _bluebird2.default(function (resolve, reject) { + var queryString = username ? 'SELECT * FROM contributions WHERE username = "' + username + '";' : 'SELECT * FROM contributions;'; + + _this.query({ queryString: queryString }).then(function (contributions) { + console.log('contributions', contributions); + resolve(contributions); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/getTokenSupply.js b/dist/mysql/getTokenSupply.js new file mode 100644 index 0000000..26b1fe5 --- /dev/null +++ b/dist/mysql/getTokenSupply.js @@ -0,0 +1,28 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = getTokenSupply; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function getTokenSupply(_ref) { + var _this = this; + + var limit = _ref.limit; + + return new _bluebird2.default(function (resolve, reject) { + var queryString = limit > 0 ? 'SELECT * FROM total_supply ORDER BY date DESC LIMIT ' + limit + ';' : 'SELECT * FROM total_supply ORDER BY date DESC;'; + + _this.query({ queryString: queryString }).then(function (supply) { + resolve(supply); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/getUserBalances.js b/dist/mysql/getUserBalances.js new file mode 100644 index 0000000..3dd1c3a --- /dev/null +++ b/dist/mysql/getUserBalances.js @@ -0,0 +1,29 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = getUserBalances; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function getUserBalances(_ref) { + var _this = this; + + var username = _ref.username; + + return new _bluebird2.default(function (resolve, reject) { + var queryString = username ? 'SELECT * FROM balances WHERE username = "' + username + '";' : 'SELECT * FROM balances;'; + + _this.query({ queryString: queryString }).then(function (balances) { + console.log('balances', balances); + resolve(balances); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/index.js b/dist/mysql/index.js index a8d24fb..6de4290 100644 --- a/dist/mysql/index.js +++ b/dist/mysql/index.js @@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.query = exports.saveTotalSupply = exports.saveUserBalance = exports.saveContribution = undefined; +exports.query = exports.getUserBalances = exports.getTokenSupply = exports.getContributions = exports.saveTotalSupply = exports.saveUserBalance = exports.saveContribution = undefined; var _saveContribution = require('./saveContribution'); @@ -17,6 +17,18 @@ var _saveTotalSupply = require('./saveTotalSupply'); var _saveTotalSupply2 = _interopRequireDefault(_saveTotalSupply); +var _getContributions = require('./getContributions'); + +var _getContributions2 = _interopRequireDefault(_getContributions); + +var _getTokenSupply = require('./getTokenSupply'); + +var _getTokenSupply2 = _interopRequireDefault(_getTokenSupply); + +var _getUserBalances = require('./getUserBalances'); + +var _getUserBalances2 = _interopRequireDefault(_getUserBalances); + var _query = require('./query'); var _query2 = _interopRequireDefault(_query); @@ -26,4 +38,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de exports.saveContribution = _saveContribution2.default; exports.saveUserBalance = _saveUserBalance2.default; exports.saveTotalSupply = _saveTotalSupply2.default; +exports.getContributions = _getContributions2.default; +exports.getTokenSupply = _getTokenSupply2.default; +exports.getUserBalances = _getUserBalances2.default; exports.query = _query2.default; \ No newline at end of file diff --git a/dist/routers/ApiRouter.js b/dist/routers/ApiRouter.js new file mode 100644 index 0000000..006318d --- /dev/null +++ b/dist/routers/ApiRouter.js @@ -0,0 +1,62 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = AuthRouter; + +var _express = require('express'); + +function AuthRouter() { + var _this = this; + + var router = (0, _express.Router)(); + + router.get('/contributions/:username?', function (req, res) { + var username = req.params.username; + + _this.getContributions({ username: username }).then(function (contributions) { + res.status(200).send(contributions); + }).catch(function (error) { + res.status(500).send(JSON.parse(error, null, 2)); + }); + }); + + router.get('/token/supply/history/:limit?', function (req, res) { + var limit = req.params.limit; + + _this.getTokenSupply({ limit: parseInt(limit) }).then(function (supply) { + res.status(200).send(supply); + }).catch(function (error) { + res.status(500).send(JSON.parse(error, null, 2)); + }); + }); + + router.get('/token/supply/total', function (req, res) { + _this.getTokenSupply({ limit: 1 }).then(function (total) { + res.status(200).send(total); + }).catch(function (error) { + res.status(500).send(JSON.parse(error, null, 2)); + }); + }); + + router.get('/token/balance/:username?', function (req, res) { + var username = req.params.username; + + _this.getUserBalances({ username: username }).then(function (balances) { + res.status(200).send(balances); + }).catch(function (error) { + res.status(500).send(JSON.parse(error, null, 2)); + }); + }); + + router.get('/signer/balance', function (req, res) { + _this.eth.getBalanceAsync(_this.address).then(function (balance) { + res.status(200).send(balance.toNumber()); + }).catch(function (error) { + res.status(500).send(JSON.parse(error, null, 2)); + }); + }); + + return router; +} \ No newline at end of file diff --git a/dist/routers/index.js b/dist/routers/index.js index cb5215e..e267644 100644 --- a/dist/routers/index.js +++ b/dist/routers/index.js @@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.WebHookRouter = exports.AuthRouter = undefined; +exports.ApiRouter = exports.WebHookRouter = exports.AuthRouter = undefined; var _AuthRouter = require('./AuthRouter'); @@ -13,7 +13,12 @@ var _WebHookRouter = require('./WebHookRouter'); var _WebHookRouter2 = _interopRequireDefault(_WebHookRouter); +var _ApiRouter = require('./ApiRouter'); + +var _ApiRouter2 = _interopRequireDefault(_ApiRouter); + function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.AuthRouter = _AuthRouter2.default; -exports.WebHookRouter = _WebHookRouter2.default; \ No newline at end of file +exports.WebHookRouter = _WebHookRouter2.default; +exports.ApiRouter = _ApiRouter2.default; \ No newline at end of file diff --git a/dist/utils/index.js b/dist/utils/index.js index ceea282..68a11e7 100644 --- a/dist/utils/index.js +++ b/dist/utils/index.js @@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.parseContribution = exports.signContribution = undefined; +exports.validateWebHookRequest = exports.parseContribution = exports.signContribution = undefined; var _signContribution = require('./signContribution'); @@ -13,7 +13,12 @@ var _parseContribution = require('./parseContribution'); var _parseContribution2 = _interopRequireDefault(_parseContribution); +var _validateWebHookRequest = require('./validateWebHookRequest'); + +var _validateWebHookRequest2 = _interopRequireDefault(_validateWebHookRequest); + function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.signContribution = _signContribution2.default; -exports.parseContribution = _parseContribution2.default; \ No newline at end of file +exports.parseContribution = _parseContribution2.default; +exports.validateWebHookRequest = _validateWebHookRequest2.default; \ No newline at end of file diff --git a/dist/utils/parseContribution.js b/dist/utils/parseContribution.js index 9abe70b..7198190 100644 --- a/dist/utils/parseContribution.js +++ b/dist/utils/parseContribution.js @@ -16,59 +16,60 @@ function parseContribution(_ref) { var _this = this; var headers = _ref.headers, - payload = _ref.payload; + body = _ref.body; return new _promise2.default(function (resolve, reject) { var eventType = headers['x-github-event']; var getSubEventType = function getSubEventType(_ref2) { var eventType = _ref2.eventType, - payload = _ref2.payload; + body = _ref2.body; switch (eventType) { case 'create': - return payload['ref_type']; + return body['ref_type']; break; case 'delete': - return payload['ref_type']; + return body['ref_type']; break; case 'deployment_status': - return payload['state']; + return body['state']; break; case 'gollum': - return payload['pages'][0]['action']; // Should this be reward for each gollum (wiki page touched)? + return body['pages'][0]['action']; // Should this be reward for each gollum (wiki page touched)? break; case 'page_build': - return payload['build']['status']; + return body['build']['status']; break; case 'pull_request': - return payload['pull_request']['merged'] ? payload['pull_request']['merged'] : payload['action']; // ternary => true ? 'a' : 'b' + return body['pull_request']['merged'] ? body['pull_request']['merged'] : body['action']; // ternary => true ? 'a' : 'b' break; case 'status': - return payload['state']; + return body['state']; break; + case 'push': + return ''; + case 'ping': + return ''; default: - return payload['action']; + return body['action']; } }; - var subEventType = getSubEventType({ eventType: eventType, payload: payload }); + var subEventType = getSubEventType({ eventType: eventType, body: body }); _this.RewardPoints.getRewardDetails.callAsync(eventType, subEventType).then(function (data) { var rewardValue = data[0].toNumber(); var reservedValue = data[1].toNumber(); - console.log('reservedValue', reservedValue); - console.log('rewardValue', rewardValue); - resolve({ - username: payload['sender']['login'], + username: body['sender']['login'], contributor: null, date: new Date().getTime(), delivery_id: headers['x-github-delivery'], eventType: eventType, - organization: payload['organization']['login'], + organization: body['organization']['login'], reservedValue: reservedValue, rewardValue: rewardValue, subEventType: subEventType diff --git a/dist/utils/validateWebHookRequest.js b/dist/utils/validateWebHookRequest.js new file mode 100644 index 0000000..679199a --- /dev/null +++ b/dist/utils/validateWebHookRequest.js @@ -0,0 +1,25 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = validateWebHookRequest; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function validateWebHookRequest(_ref) { + var headers = _ref.headers, + body = _ref.body; + + return new _bluebird2.default(function (resolve, reject) { + if (!headers['user-agent'].match(RegExp('GitHub-Hookshot'))) { + reject({ code: 403, message: 'Forbidden Authorization' }); + } else { + resolve({ code: 200, message: null }); + } + }); +} \ No newline at end of file diff --git a/gittoken.config.js b/gittoken.config.js index 40d6ca5..5a79d34 100644 --- a/gittoken.config.js +++ b/gittoken.config.js @@ -27,6 +27,9 @@ const config = { symbol: process.env['GITTOKEN_CONTRACT_SYMBOL'], decimals: parseInt(process.env['GITTOKEN_CONTRACT_DECIMALS']) }, + gitterWebHookUrl: process.env['GITTER_WEBHOOK_URL'], + gitterToken: process.env['GITTER_TOKEN'], + gitterRoomName: process.env['GITTER_ROOM_NAME'], githubCredentials: { clientID: process.env['GITHUB_API_ID'], clientSecret: process.env['GITHUB_API_SECRET'], diff --git a/package-lock.json b/package-lock.json index 7a52a36..83305d9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -87,6 +87,11 @@ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" + }, "asn1.js": { "version": "4.9.2", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.2.tgz", @@ -105,6 +110,11 @@ "util": "0.10.3" } }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, "async": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", @@ -118,6 +128,21 @@ "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=" }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", + "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=" + }, "babel-cli": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.26.0.tgz", @@ -3894,6 +3919,15 @@ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", "integrity": "sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw==" }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", + "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, "big.js": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", @@ -4068,6 +4102,14 @@ } } }, + "boom": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", + "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", + "requires": { + "hoek": "4.2.0" + } + }, "brace-expansion": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", @@ -4191,6 +4233,11 @@ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, "center-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", @@ -4257,6 +4304,14 @@ "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, + "combined-stream": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", + "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "requires": { + "delayed-stream": "1.0.0" + } + }, "commander": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", @@ -4270,6 +4325,16 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, + "concat-stream": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", + "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "typedarray": "0.0.6" + } + }, "console-browserify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", @@ -4309,6 +4374,11 @@ } } }, + "cookiejar": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.1.tgz", + "integrity": "sha1-Qa1XsbVVlR7BcUEqgZQrHoIA00o=" + }, "core-js": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", @@ -4383,6 +4453,24 @@ "which": "1.3.0" } }, + "cryptiles": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", + "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", + "requires": { + "boom": "5.2.0" + }, + "dependencies": { + "boom": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", + "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", + "requires": { + "hoek": "4.2.0" + } + } + } + }, "crypto-browserify": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", @@ -4406,6 +4494,14 @@ "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.1.8.tgz", "integrity": "sha1-cV8HC/YBTyrpkqmLOSkli3E/CNU=" }, + "csprng": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/csprng/-/csprng-0.1.2.tgz", + "integrity": "sha1-S8aPEvo2jSUqWYQcusqXSxirReI=", + "requires": { + "sequin": "0.1.1" + } + }, "d": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", @@ -4414,6 +4510,14 @@ "es5-ext": "0.10.37" } }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "1.0.0" + } + }, "date-now": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", @@ -4439,6 +4543,11 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, "des.js": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", @@ -4481,6 +4590,15 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=" }, + "ecc-jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", + "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, "elliptic": { "version": "6.4.0", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", @@ -4727,6 +4845,11 @@ "es5-ext": "0.10.37" } }, + "eventemitter3": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-0.1.6.tgz", + "integrity": "sha1-jHrES4e6q1XNUMgo3Dh3jqwFLqU=" + }, "events": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", @@ -5163,6 +5286,11 @@ } } }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + }, "extglob": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", @@ -5171,6 +5299,11 @@ "is-extglob": "1.0.0" } }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, "fast-deep-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", @@ -5181,6 +5314,25 @@ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" }, + "faye": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/faye/-/faye-1.0.3.tgz", + "integrity": "sha1-5lk8H2HhkqhaOx8iHjF7hVBfXx8=", + "requires": { + "concat-stream": "1.6.0", + "cookiejar": "2.1.1", + "csprng": "0.1.2", + "faye-websocket": "0.11.1" + } + }, + "faye-websocket": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", + "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", + "requires": { + "websocket-driver": "0.7.0" + } + }, "filename-regex": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", @@ -5219,6 +5371,21 @@ "for-in": "1.0.2" } }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz", + "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=", + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.17" + } + }, "fs-extra": { "version": "0.30.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", @@ -6045,6 +6212,51 @@ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "1.0.0" + } + }, + "gitter-faye": { + "version": "1.1.0-h", + "resolved": "https://registry.npmjs.org/gitter-faye/-/gitter-faye-1.1.0-h.tgz", + "integrity": "sha1-+IA2OA1y4jiaozeh9xNo504ex3A=", + "requires": { + "csprng": "0.1.2", + "faye-websocket": "0.9.4", + "tough-cookie": "2.3.3", + "tunnel-agent": "0.6.0" + }, + "dependencies": { + "faye-websocket": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.9.4.tgz", + "integrity": "sha1-iFk0x57/sECVSeDAo4Ae0XpAza0=", + "requires": { + "websocket-driver": "0.7.0" + } + }, + "tough-cookie": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", + "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=", + "requires": { + "punycode": "1.4.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "5.1.1" + } + } + } + }, "gittoken-contracts": { "version": "0.0.59", "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.59.tgz", @@ -6155,6 +6367,20 @@ "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=" }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "requires": { + "ajv": "5.5.0", + "har-schema": "2.0.0" + } + }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", @@ -6176,11 +6402,27 @@ "inherits": "2.0.3" } }, + "hawk": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", + "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", + "requires": { + "boom": "4.3.1", + "cryptiles": "3.1.2", + "hoek": "4.2.0", + "sntp": "2.1.0" + } + }, "he": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=" }, + "hoek": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz", + "integrity": "sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ==" + }, "home-or-tmp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", @@ -6195,6 +6437,21 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==" }, + "http-parser-js": { + "version": "0.4.9", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.9.tgz", + "integrity": "sha1-6hoE+2St/wJC6ZdPKX3Uw8rSceE=" + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "1.0.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" + } + }, "https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", @@ -6343,6 +6600,11 @@ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, "is-utf8": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", @@ -6366,11 +6628,22 @@ "isarray": "1.0.0" } }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, "js-tokens": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "optional": true + }, "jsesc": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", @@ -6381,11 +6654,21 @@ "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==" }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, "json-schema-traverse": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, "json3": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", @@ -6404,6 +6687,17 @@ "graceful-fs": "4.1.11" } }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, "keccak": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/keccak/-/keccak-1.3.0.tgz", @@ -7426,6 +7720,19 @@ "brorand": "1.1.0" } }, + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" + }, + "mime-types": { + "version": "2.1.17", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", + "requires": { + "mime-db": "1.30.0" + } + }, "mimic-fn": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", @@ -7541,6 +7848,31 @@ "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=", "optional": true }, + "node-gitter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/node-gitter/-/node-gitter-2.1.0.tgz", + "integrity": "sha512-Z7roT/AEHIE64+C57v7SoPzOsuiG9Y39rS06CvwWlZ0Sqs5h4yW4BnuZgUuVR61GdPUM56wrlsyNfBgtIp63KQ==", + "requires": { + "debug": "0.8.1", + "eventemitter3": "0.1.6", + "faye": "1.0.3", + "gitter-faye": "1.1.0-h", + "q": "1.0.1", + "qs": "1.2.2" + }, + "dependencies": { + "debug": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-0.8.1.tgz", + "integrity": "sha1-IP9NJvXkIstoobrLu2EDmtjBwTA=" + }, + "qs": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-1.2.2.tgz", + "integrity": "sha1-GbV/8k3CqZzh+L32r82ln472H4g=" + } + } + }, "node-libs-browser": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", @@ -7608,6 +7940,11 @@ "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=" }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -7840,6 +8177,11 @@ "sha.js": "2.4.9" } }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", @@ -7905,6 +8247,16 @@ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" }, + "q": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.0.1.tgz", + "integrity": "sha1-EYcq7t7okmgRCxCnGESP+xARKhQ=" + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, "querystring": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", @@ -8082,6 +8434,54 @@ "is-finite": "1.0.2" } }, + "request": { + "version": "2.83.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", + "integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==", + "requires": { + "aws-sign2": "0.7.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.3.1", + "har-validator": "5.0.3", + "hawk": "6.0.2", + "http-signature": "1.2.0", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.17", + "oauth-sign": "0.8.2", + "performance-now": "2.1.0", + "qs": "6.5.1", + "safe-buffer": "5.1.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.3", + "tunnel-agent": "0.6.0", + "uuid": "3.1.0" + } + }, + "request-promise": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.2.tgz", + "integrity": "sha1-0epG1lSm7k+O5qT+oQGMIpEZBLQ=", + "requires": { + "bluebird": "3.5.1", + "request-promise-core": "1.1.1", + "stealthy-require": "1.1.1", + "tough-cookie": "2.3.3" + } + }, + "request-promise-core": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", + "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", + "requires": { + "lodash": "4.17.4" + } + }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -8657,6 +9057,11 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" }, + "sequin": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/sequin/-/sequin-0.1.1.tgz", + "integrity": "sha1-XC04nWajg3NOqvvEXt6ywcsb5wE=" + }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -8704,6 +9109,14 @@ "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" }, + "sntp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", + "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", + "requires": { + "hoek": "4.2.0" + } + }, "solc": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/solc/-/solc-0.4.18.tgz", @@ -8898,6 +9311,26 @@ "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.0.tgz", "integrity": "sha1-UluKT9Jtb3GqYegipsr5dtMa0qg=" }, + "sshpk": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", + "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + } + }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=" + }, "stream-browserify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", @@ -8956,6 +9389,11 @@ "safe-buffer": "5.1.1" } }, + "stringstream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", + "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=" + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -9010,6 +9448,14 @@ "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" }, + "tough-cookie": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", + "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=", + "requires": { + "punycode": "1.4.1" + } + }, "trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", @@ -9183,6 +9629,25 @@ "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "optional": true + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, "uglify-js": { "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", @@ -9278,6 +9743,11 @@ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, + "uuid": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", + "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==" + }, "validate-npm-package-license": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", @@ -9287,6 +9757,16 @@ "spdx-expression-parse": "1.0.4" } }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + } + }, "vm-browserify": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", @@ -9372,6 +9852,20 @@ } } }, + "websocket-driver": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", + "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", + "requires": { + "http-parser-js": "0.4.9", + "websocket-extensions": "0.1.3" + } + }, + "websocket-extensions": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", + "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==" + }, "which": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", diff --git a/package.json b/package.json index 2225601..443aabb 100644 --- a/package.json +++ b/package.json @@ -30,9 +30,12 @@ "keccak": "^1.3.0", "keythereum": "^1.0.1", "mysql": "^2.15.0", + "node-gitter": "^2.1.0", "passport": "^0.3.2", "passport-github": "^1.1.0", "passport-github2": "^0.1.11", + "request": "^2.83.0", + "request-promise": "^4.2.2", "web3": "^0.20.2" }, "devDependencies": { diff --git a/src/index.js b/src/index.js index 788ce4d..66b4f4d 100644 --- a/src/index.js +++ b/src/index.js @@ -1,14 +1,13 @@ import express from 'express' import cors from 'cors' import bodyParser from 'body-parser' -// import GitTokenKeystoreGenerator from 'gittoken-keystore-generator' -import passport from 'passport' import mysql from 'mysql' -import { Strategy } from 'passport-github2' + import { signContribution, - parseContribution + parseContribution, + validateWebHookRequest } from './utils/index' import GitTokenContracts from './contracts/index' @@ -17,26 +16,37 @@ import { query, saveContribution, saveUserBalance, - saveTotalSupply + saveTotalSupply, + getContributions, + getTokenSupply, + getUserBalances } from './mysql/index' import { AuthRouter, - WebHookRouter + WebHookRouter, + ApiRouter } from './routers/index' import { WebHookMiddleware } from './middleware/index' - - +import { + gitterWebHook, + gitterLogContributionActivity, + gitterService +} from './integrations/index' export default class GitTokenServer extends GitTokenContracts { constructor({ mysqlOpts, api: { port, sessionSecret }, + gittokenParams, githubCredentials, + gitterWebHookUrl, + gitterToken, + gitterRoomName, dirPath, address, recoveryShare, @@ -45,20 +55,38 @@ export default class GitTokenServer extends GitTokenContracts { super({ dirPath, address, recoveryShare, web3Provider }) /* Bind Options*/ this.port = port + this.gittokenParams = gittokenParams this.githubCredentials = githubCredentials + this.gitterWebHookUrl = gitterWebHookUrl + this.gitterToken = gitterToken + this.gitterRoomName = gitterRoomName this.sessionSecret = sessionSecret this.web3Provider = web3Provider /* Bind Methods */ this.AuthRouter = AuthRouter.bind(this) this.WebHookRouter = WebHookRouter.bind(this) + this.ApiRouter = ApiRouter.bind(this) this.WebHookMiddleware = WebHookMiddleware.bind(this) this.parseContribution = parseContribution.bind(this) + this.validateWebHookRequest = validateWebHookRequest.bind(this) this.signContribution = signContribution.bind(this) this.query = query.bind(this) this.saveContribution = saveContribution.bind(this) this.saveUserBalance = saveUserBalance.bind(this) this.saveTotalSupply = saveTotalSupply.bind(this) + this.getContributions = getContributions.bind(this) + this.getTokenSupply = getTokenSupply.bind(this) + this.getUserBalances = getUserBalances.bind(this) + + + /* Gitter WebHook Integration */ + this.gitterService = gitterService.bind(this) + + this.gitterService() + this.gitterWebHook = gitterWebHook.bind(this) + this.gitterLogContributionActivity = gitterLogContributionActivity.bind(this) + /* MySql Connection */ this.mysql = mysql.createConnection(mysqlOpts) @@ -77,13 +105,12 @@ export default class GitTokenServer extends GitTokenContracts { this.app.use('/auth/', this.AuthRouter()); this.app.use('/webhook/', this.WebHookRouter()); + this.app.use('/api/', this.ApiRouter()); this.app.use('/', (req, res) => { res.send(`Hello, GitToken Server!`) }) - - /* Run GitToken Server */ this.listen() } diff --git a/src/integrations/gitterLogContributionActivity.js b/src/integrations/gitterLogContributionActivity.js new file mode 100644 index 0000000..1e769d4 --- /dev/null +++ b/src/integrations/gitterLogContributionActivity.js @@ -0,0 +1,38 @@ +import Promise from 'bluebird' + +export default function gitterLogContributionActivity({ contribution, userBalance, totalSupply }) { + return new Promise((resolve, reject) => { + const { decimals, symbol, organization } = this.gittokenParams + const { username, rewardValue, reservedValue, eventType, subEventType } = contribution + const { balance } = userBalance + const { total_tokens } = totalSupply + + const message = ` + ${organization} Contribution Received + + --- + Contributor: ${username} + Event: ${eventType} + Sub Event: ${subEventType} + ${symbol} Rewarded: ${rewardValue / Math.pow(10, decimals)} ${symbol} + ${symbol} Reserved: ${reservedValue / Math.pow(10, decimals)} ${symbol} + + --- + ${username} Balance: ${balance / Math.pow(10, decimals)} ${symbol} + Total ${symbol} Supply: ${total_tokens / Math.pow(10, decimals)} ${symbol} + + --- + Earn ${symbol} by contributing to https://github.com/${organization} + + --- + Setup GitToken for your organization: + + >_ npm i git-token@alpha -g + + ` + + this.gitterRoom.send(message) + + resolve(true) + }) +} diff --git a/src/integrations/gitterService.js b/src/integrations/gitterService.js new file mode 100644 index 0000000..26689c2 --- /dev/null +++ b/src/integrations/gitterService.js @@ -0,0 +1,10 @@ +import Gitter from 'node-gitter' + +export default function gitterService() { + this.gitter = new Gitter(this.gitterToken) + this.gitter.rooms.join(this.gitterRoomName).then((room) => { + this.gitterRoom = room + }).catch((error) => { + console.log('Error connecting to Gitter Service') + }) +} diff --git a/src/integrations/gitterWebHook.js b/src/integrations/gitterWebHook.js new file mode 100644 index 0000000..0cc0a10 --- /dev/null +++ b/src/integrations/gitterWebHook.js @@ -0,0 +1,18 @@ +import Promise from 'bluebird' +import rp from 'request-promise' + +export default function gitterWebHook({ message, level }) { + return new Promise((resolve, reject) => { + rp({ + method: 'POST', + uri: this.gitterWebHookUrl, + body: { message, level }, + json: true + }).then((result) => { + console.log('Gitter IM WebHook Result: ', result) + resolve(true) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/integrations/index.js b/src/integrations/index.js new file mode 100644 index 0000000..571aa61 --- /dev/null +++ b/src/integrations/index.js @@ -0,0 +1,9 @@ +import gitterWebHook from './gitterWebHook' +import gitterService from './gitterService' +import gitterLogContributionActivity from './gitterLogContributionActivity' + +export { + gitterService, + gitterWebHook, + gitterLogContributionActivity +} diff --git a/src/middleware/WebHookMiddleware.js b/src/middleware/WebHookMiddleware.js index 02a7823..c5515b8 100644 --- a/src/middleware/WebHookMiddleware.js +++ b/src/middleware/WebHookMiddleware.js @@ -1,29 +1,43 @@ export default function WebHookMiddleware(req, res, next) { - const { headers, body: { payload } } = req + const { headers, body } = req - this.parseContribution({ headers, payload: JSON.parse(payload) }).then((contribution) => { + this.validateWebHookRequest({ headers, body }).then(() => { - console.log('contribution', contribution) - return this.signContribution(contribution) + return this.parseContribution({ headers, body }); + }).then((contribution) => { + // console.log('contribution', contribution) + return this.signContribution(contribution) }).then((signedContribution) => { - console.log('signedContribution', signedContribution) + // console.log('signedContribution', signedContribution) return this.saveContribution(signedContribution) - }).then((savedContribution) => { - console.log('savedContribution', savedContribution) + + // console.log('savedContribution', savedContribution) req.contribution = savedContribution return this.saveTotalSupply(req.contribution) }).then((totalSupply) => { + req.totalSupply = totalSupply; return this.saveUserBalance(req.contribution) }).then((userBalance) => { + req.userBalance = userBalance + if (!this.gitterWebHookUrl) { + next() + } else { + return this.gitterLogContributionActivity({ + totalSupply: req.totalSupply, + userBalance: req.userBalance, + contribution: req.contribution + }) + } + }).then(() => { + // Middleware Complete next() }).catch((error) => { - console.log('error', error) - res.status(500).send(error.message) + const code = error.code ? error.code : 500 + res.status(code).send(error.message) }) - } diff --git a/src/mysql/getContributions.js b/src/mysql/getContributions.js new file mode 100644 index 0000000..fc75a91 --- /dev/null +++ b/src/mysql/getContributions.js @@ -0,0 +1,16 @@ +import Promise from 'bluebird' + +export default function getContributions({ username }) { + return new Promise((resolve, reject) => { + const queryString = username ? + `SELECT * FROM contributions WHERE username = "${username}";` : + `SELECT * FROM contributions;` + + this.query({ queryString }).then((contributions) => { + console.log('contributions', contributions) + resolve(contributions) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/mysql/getTokenSupply.js b/src/mysql/getTokenSupply.js new file mode 100644 index 0000000..88ddd09 --- /dev/null +++ b/src/mysql/getTokenSupply.js @@ -0,0 +1,15 @@ +import Promise from 'bluebird' + +export default function getTokenSupply({ limit }) { + return new Promise((resolve, reject) => { + const queryString = limit > 0 ? + `SELECT * FROM total_supply ORDER BY date DESC LIMIT ${limit};` : + `SELECT * FROM total_supply ORDER BY date DESC;` + + this.query({ queryString }).then((supply) => { + resolve(supply) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/mysql/getUserBalances.js b/src/mysql/getUserBalances.js new file mode 100644 index 0000000..8affb1c --- /dev/null +++ b/src/mysql/getUserBalances.js @@ -0,0 +1,16 @@ +import Promise from 'bluebird' + +export default function getUserBalances({ username }) { + return new Promise((resolve, reject) => { + const queryString = username ? + `SELECT * FROM balances WHERE username = "${username}";` : + `SELECT * FROM balances;` + + this.query({ queryString }).then((balances) => { + console.log('balances', balances) + resolve(balances) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/mysql/index.js b/src/mysql/index.js index 4a1b7bb..de02213 100644 --- a/src/mysql/index.js +++ b/src/mysql/index.js @@ -1,11 +1,17 @@ import saveContribution from './saveContribution' import saveUserBalance from './saveUserBalance' import saveTotalSupply from './saveTotalSupply' +import getContributions from './getContributions' +import getTokenSupply from './getTokenSupply' +import getUserBalances from './getUserBalances' import query from './query' export { saveContribution, saveUserBalance, saveTotalSupply, + getContributions, + getTokenSupply, + getUserBalances, query } diff --git a/src/routers/ApiRouter.js b/src/routers/ApiRouter.js new file mode 100644 index 0000000..a2261d3 --- /dev/null +++ b/src/routers/ApiRouter.js @@ -0,0 +1,60 @@ +import { Router } from 'express' + +export default function AuthRouter() { + let router = Router() + + router.get('/contributions/:username?', (req, res) => { + const { username } = req.params + this.getContributions({ username }).then((contributions) => { + res.status(200).send(contributions) + }).catch((error) => { + res.status(500).send(JSON.parse(error, null, 2)) + }) + }) + + router.get('/token/supply/history/:limit?', (req, res) => { + const { limit } = req.params + this.getTokenSupply({ limit: parseInt(limit) }).then((supply) => { + res.status(200).send(supply) + }).catch((error) => { + res.status(500).send(JSON.parse(error, null, 2)) + }) + }) + + router.get('/token/supply/total', (req, res) => { + this.getTokenSupply({ limit: 1 }).then((total) => { + res.status(200).send(total) + }).catch((error) => { + res.status(500).send(JSON.parse(error, null, 2)) + }) + }) + + router.get('/token/balance/:username?', (req, res) => { + const { username } = req.params + this.getUserBalances({ username }).then((balances) => { + res.status(200).send(balances) + }).catch((error) => { + res.status(500).send(JSON.parse(error, null, 2)) + }) + }) + + router.get('/signer/address', (req, res) => { + if (!this.address) { + const error = new Error("Signer Address is undefined.") + res.status(500).send(JSON.parse(error, null, 2)) + } else { + res.status(200).send(`0x${this.address}`) + } + }) + + router.get('/signer/balance', (req, res) => { + this.eth.getBalanceAsync(this.address).then((balance) => { + console.log('balance', balance) + res.status(200).send(balance) + }).catch((error) => { + res.status(500).send(JSON.parse(error, null, 2)) + }) + }) + + return router +} diff --git a/src/routers/index.js b/src/routers/index.js index f5b4099..ca92d27 100644 --- a/src/routers/index.js +++ b/src/routers/index.js @@ -1,7 +1,9 @@ import AuthRouter from './AuthRouter' import WebHookRouter from './WebHookRouter' +import ApiRouter from './ApiRouter' export { AuthRouter, - WebHookRouter + WebHookRouter, + ApiRouter } diff --git a/src/utils/index.js b/src/utils/index.js index 24a1ffa..b2908e2 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -1,7 +1,9 @@ import signContribution from './signContribution' import parseContribution from './parseContribution' +import validateWebHookRequest from './validateWebHookRequest' export { signContribution, - parseContribution + parseContribution, + validateWebHookRequest } diff --git a/src/utils/parseContribution.js b/src/utils/parseContribution.js index 59d3880..a8ef3ac 100644 --- a/src/utils/parseContribution.js +++ b/src/utils/parseContribution.js @@ -1,41 +1,43 @@ -export default function parseContribution({ headers, payload }) { +export default function parseContribution({ headers, body }) { return new Promise((resolve, reject) => { const eventType = headers['x-github-event'] - const getSubEventType = ({ eventType, payload }) => { + const getSubEventType = ({ eventType, body }) => { switch(eventType) { case 'create': - return payload['ref_type'] + return body['ref_type'] break; case 'delete': - return payload['ref_type'] + return body['ref_type'] break; case 'deployment_status': - return payload['state'] + return body['state'] break; case 'gollum': - return payload['pages'][0]['action'] // Should this be reward for each gollum (wiki page touched)? + return body['pages'][0]['action'] // Should this be reward for each gollum (wiki page touched)? break; case 'page_build': - return payload['build']['status'] + return body['build']['status'] break; case 'pull_request': - return payload['pull_request']['merged'] ? payload['pull_request']['merged'] : payload['action'] // ternary => true ? 'a' : 'b' + return body['pull_request']['merged'] ? body['pull_request']['merged'] : body['action'] // ternary => true ? 'a' : 'b' break; case 'status': - return payload['state'] + return body['state'] break; case 'push': return '' + case 'ping': + return '' default: - return payload['action'] + return body['action'] } } - const subEventType = getSubEventType({ eventType, payload }) + const subEventType = getSubEventType({ eventType, body }) this.RewardPoints.getRewardDetails.callAsync(eventType, subEventType).then((data) => { @@ -43,12 +45,12 @@ export default function parseContribution({ headers, payload }) { const reservedValue = data[1].toNumber() resolve({ - username: payload['sender']['login'], + username: body['sender']['login'], contributor: null, date: new Date().getTime(), delivery_id: headers['x-github-delivery'], eventType, - organization: payload['organization']['login'], + organization: body['organization']['login'], reservedValue, rewardValue, subEventType diff --git a/src/utils/validateWebHookRequest.js b/src/utils/validateWebHookRequest.js new file mode 100644 index 0000000..6dc657c --- /dev/null +++ b/src/utils/validateWebHookRequest.js @@ -0,0 +1,11 @@ +import Promise from 'bluebird' + +export default function validateWebHookRequest({ headers, body }) { + return new Promise((resolve, reject) => { + if (!headers['user-agent'].match(RegExp('GitHub-Hookshot'))) { + reject({ code: 403, message: 'Forbidden Authorization' }) + } else { + resolve({ code: 200, message: null }) + } + }) +} From a1fe5cc7f18fed442223ae3aaad48c2512ef59c0 Mon Sep 17 00:00:00 2001 From: Ryan Tate Date: Tue, 5 Dec 2017 15:15:46 -0800 Subject: [PATCH 05/10] WIP; Adding handlePingEvent for deploying GitToken contracts --- dist/contracts/index.js | 48 +++++++++++++++++++++--- dist/events/handlePingEvent.js | 48 ++++++++++++++++++++++++ dist/events/index.js | 14 +++++++ dist/index.js | 56 +++++++++++++++------------- dist/middleware/WebHookMiddleware.js | 53 ++++++++++---------------- dist/mysql/saveTransactionReceipt.js | 24 ++++++++++++ dist/routers/ApiRouter.js | 15 +++++++- dist/utils/handleContribution.js | 45 ++++++++++++++++++++++ dist/utils/handleEventActions.js | 36 ++++++++++++++++++ dist/utils/index.js | 14 ++++++- gittoken.config.js | 4 +- src/contracts/index.js | 29 +++++++++++--- src/events/handlePingEvent.js | 42 +++++++++++++++++++++ src/events/index.js | 5 +++ src/index.js | 11 +++++- src/middleware/WebHookMiddleware.js | 44 +++++----------------- src/mysql/saveTransactionReceipt.js | 13 +++++++ src/routers/ApiRouter.js | 7 +++- src/utils/handleContribution.js | 29 ++++++++++++++ src/utils/handleEventActions.js | 18 +++++++++ src/utils/index.js | 6 ++- 21 files changed, 447 insertions(+), 114 deletions(-) create mode 100644 dist/events/handlePingEvent.js create mode 100644 dist/events/index.js create mode 100644 dist/mysql/saveTransactionReceipt.js create mode 100644 dist/utils/handleContribution.js create mode 100644 dist/utils/handleEventActions.js create mode 100644 src/events/handlePingEvent.js create mode 100644 src/events/index.js create mode 100644 src/mysql/saveTransactionReceipt.js create mode 100644 src/utils/handleContribution.js create mode 100644 src/utils/handleEventActions.js diff --git a/dist/contracts/index.js b/dist/contracts/index.js index 8325709..cd8b04c 100644 --- a/dist/contracts/index.js +++ b/dist/contracts/index.js @@ -4,6 +4,10 @@ Object.defineProperty(exports, "__esModule", { value: true }); +var _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray'); + +var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2); + var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); @@ -34,7 +38,11 @@ var _gittokenKeystoreGenerator2 = _interopRequireDefault(_gittokenKeystoreGenera function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -/* babel-plugin-inline-import 'gittoken-contracts/build/contracts/RewardPoints.json' */var RewardPoints = '{\n "contract_name": "RewardPoints",\n "abi": [\n {\n "constant": true,\n "inputs": [\n {\n "name": "",\n "type": "address"\n }\n ],\n "name": "owner",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n },\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "name": "setRewardDetails",\n "outputs": [\n {\n "name": "success",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n }\n ],\n "name": "getRewardDetails",\n "outputs": [\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "newOwner",\n "type": "address"\n }\n ],\n "name": "transferOwnership",\n "outputs": [],\n "payable": false,\n "type": "function"\n },\n {\n "inputs": [\n {\n "name": "_decimals",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "constructor"\n }\n ],\n "unlinked_binary": "0x606060405234156200001057600080fd5b60405160208062006542833981016040528080519150505b5b600160a060020a0333166000908152602081905260409020805460ff191660011790555b600381905560fa600a82900a0260016040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e6368000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f746167000000000000000000000000000000000000000000000000000000000081526003810191909152602301604051809103902081905550600354600a0a6103e80260016040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a016040518091039020604051908152602001604051809103902081905550600354600a0a6101f4026001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60640260016040517f666f726b00000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6103e80260016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006001604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c01604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60640260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006001604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f63616e63656c6c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60fa026001604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f6368616e6765640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e01604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6109c40260016040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c7400000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e766572746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60fa026001604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6064026001604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006001604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa026001604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f7375626d6974746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6064026001604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6064026001604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f6469736d6973736564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f7665640000000000000000000081526016810191909152603601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60960260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f73796e6368726f6e697a650000000000000000000000000000000000000000008152600b810191909152602b01604051809103902081905550600354600a0a6109c40260016040517f70696e6700000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a60fa0260016040517f7075736800000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6113880260016040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c6973686564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6103e80260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e670000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f727900000000000000000081526017810191909152603701604051809103902081905550600354600a0a6103e80260016040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f73746172746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040519081526020016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260026040517f666f726b0000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006002604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f63616e63656c6c65640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f6368616e676564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a613a980260026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a613a980260026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c740000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e76657274656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e6564000000000000000000000000000000000000000000000000815260088101919091526028016040519081900390205560006002604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f6372656174656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f7375626d69747465640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f6469736d697373656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f766564000000000000000000008152601681019190915260360160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f73796e6368726f6e697a650000000000000000000000000000000000000000008152600b810191909152602b01604051809103902081905550600354600a0a6113880260026040517f70696e670000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f707573680000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c697368656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e67000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f720000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f72790000000000000000008152601781019190915260370160405190819003902055600060026040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260026040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f737461727465640000000000000000000000000000000000000000000000000081526007810191909152602701604051908190039020555b505b6106458062005e5d6000396000f300606060405263ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663666e1b39811461005e5780638bea03961461009157806392956c1e1461013f578063f2fde38b146101ea575b600080fd5b341561006957600080fd5b61007d600160a060020a036004351661020b565b604051901515815260200160405180910390f35b341561009c57600080fd5b61007d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505084359460200135935061022092505050565b604051901515815260200160405180910390f35b341561014a57600080fd5b6101d260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496506103ee95505050505050565b60405191825260208201526040908101905180910390f35b34156101f557600080fd5b610209600160a060020a0360043516610593565b005b60006020819052908152604090205460ff1681565b600160a060020a03331660009081526020819052604081205460ff16151561024757600080fd5b826001866040518082805190602001908083835b6020831061027b57805182525b601f19909201916020918201910161025b565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106102df57805182525b601f1990920191602091820191016102bf565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405190819003902055816002866040518082805190602001908083835b6020831061034857805182525b601f199092019160209182019101610328565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106103ac57805182525b601f19909201916020918201910161038c565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051908190039020555060015b5b949350505050565b6000806001846040518082805190602001908083835b6020831061042457805182525b601f199092019160209182019101610404565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020836040518082805190602001908083835b6020831061048857805182525b601f199092019160209182019101610468565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020546002856040518082805190602001908083835b602083106104ef57805182525b601f1990920191602091820191016104cf565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020846040518082805190602001908083835b6020831061055357805182525b601f199092019160209182019101610533565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902054915091505b9250929050565b600160a060020a03331660009081526020819052604090205460ff1615156105ba57600080fd5b600160a060020a03811660009081526020819052604090205460ff16151561061457600160a060020a03808216600090815260208190526040808220805460ff199081166001179091553390931682529020805490911690555b5b5b505600a165627a7a72305820bd73a49fe9d888ec49a994b3b0af12c7054522793d045d8749cb291335bebd0c0029696e7374616c6c6174696f6e5f7265706f7369746f72696573000000000000006465706c6f796d656e745f73746174757300000000000000000000000000000070756c6c5f726571756573745f7265766965775f636f6d6d656e74000000000070756c6c5f726571756573745f726576696577000000000000000000000000006d61726b6574706c6163655f7075726368617365000000000000000000000000",\n "networks": {\n "9": {\n "events": {},\n "links": {},\n "address": "0x3502f9b901521ebf2a23d8375266b7707a5a1b4e",\n "updated_at": 1512018540125\n }\n },\n "schema_version": "0.0.5",\n "updated_at": 1512018540125\n}'; +/* babel-plugin-inline-import 'gittoken-contracts/build/contracts/RewardPoints.json' */ + +// Import Contracts +var RewardPoints = '{\n "contract_name": "RewardPoints",\n "abi": [\n {\n "constant": true,\n "inputs": [\n {\n "name": "",\n "type": "address"\n }\n ],\n "name": "owner",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n },\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "name": "setRewardDetails",\n "outputs": [\n {\n "name": "success",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [\n {\n "name": "_event",\n "type": "string"\n },\n {\n "name": "_subtype",\n "type": "string"\n }\n ],\n "name": "getRewardDetails",\n "outputs": [\n {\n "name": "_rewardValue",\n "type": "uint256"\n },\n {\n "name": "_reserveValue",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "newOwner",\n "type": "address"\n }\n ],\n "name": "transferOwnership",\n "outputs": [],\n "payable": false,\n "type": "function"\n },\n {\n "inputs": [\n {\n "name": "_decimals",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "constructor"\n }\n ],\n "unlinked_binary": "0x606060405234156200001057600080fd5b60405160208062006542833981016040528080519150505b5b600160a060020a0333166000908152602081905260409020805460ff191660011790555b600381905560fa600a82900a0260016040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e6368000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f746167000000000000000000000000000000000000000000000000000000000081526003810191909152602301604051809103902081905550600354600a0a6103e80260016040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a016040518091039020604051908152602001604051809103902081905550600354600a0a6101f4026001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006001604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60640260016040517f666f726b00000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6103e80260016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006001604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c01604051809103902081905550600354600a0a6101f40260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60960260016040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60640260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e8026001604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006001604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f63616e63656c6c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60fa026001604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f6368616e6765640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa0260016040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f7665640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060016040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e01604051809103902081905550600354600a0a6103e80260016040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6109c40260016040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c7400000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e766572746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60320260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60190260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060016040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60fa026001604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6064026001604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006001604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60fa026001604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f7375626d6974746564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6064026001604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6064026001604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f6469736d6973736564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a01604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f7665640000000000000000000081526016810191909152603601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c6564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e6564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60320260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f736564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a600f0260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e656400000000000000000000000000000000000000000000000081526008810191909152602801604051809103902081905550600354600a0a60960260016040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f73796e6368726f6e697a650000000000000000000000000000000000000000008152600b810191909152602b01604051809103902081905550600354600a0a6109c40260016040517f70696e6700000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a60fa0260016040517f7075736800000000000000000000000000000000000000000000000000000000815260048101919091526024016040518091039020604051908152602001604051809103902081905550600354600a0a6113880260016040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c6973686564000000000000000000000000000000000000000000000081526009810191909152602901604051809103902081905550600354600a0a6103e80260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e670000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a60640260016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060016040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f727900000000000000000081526017810191909152603701604051809103902081905550600354600a0a6103e80260016040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260016040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f73746172746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f636f6d6d69745f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6101f40260026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f63726561746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6272616e636800000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f64656c65746500000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f74616700000000000000000000000000000000000000000000000000000000008152600381019190915260230160405190819003902055600060026040517f6465706c6f796d656e74000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040519081526020016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f7375636365737300000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f70656e64696e6700000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6661696c75726500000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064c28339815191528152601181019190915260310160405180910390206040517f6572726f7200000000000000000000000000000000000000000000000000000081526005810191909152602501604051809103902081905550600354600a0a6103e80260026040517f666f726b0000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f676f6c6c756d00000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f696e7374616c6c6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f6164646564000000000000000000000000000000000000000000000000000000815260058101919091526025016040519081900390205560006002604051600080516020620064a28339815191528152601981019190915260390160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6973737565735f636f6d6d656e740000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6d696c6573746f6e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656d696c6573746f6e656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f69737375657300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6c6162656c0000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f7075726368617365640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f63616e63656c6c65640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620065228339815191528152601481019190915260340160405180910390206040517f6368616e676564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d656d62657200000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f61646465640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f6d656d62657273686970000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f72656d6f766564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f637265617465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a613a980260026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f6d696c6573746f6e6500000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f64656c657465000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a613a980260026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f616464656400000000000000000000000000000000000000008152600c810191909152602c0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f72656d6f7665640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f7267616e697a6174696f6e00000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d656d6265725f696e76697465640000000000000000000000000000000000008152600e810191909152602e0160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f626c6f636b6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f6f72675f626c6f636b00000000000000000000000000000000000000000000008152600981019190915260290160405180910390206040517f756e626c6f636b656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f706167655f6275696c64000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f6275696c740000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636f6e76657274656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f6361726400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f6d6f7665640000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f70726f6a6563745f636f6c756d6e0000000000000000000000000000000000008152600e810191909152602e0160405180910390206040517f64656c657465640000000000000000000000000000000000000000000000000081526007810191909152602701604051809103902081905550600354600a0a6109c40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f656469746564000000000000000000000000000000000000000000000000000081526006810191909152602601604051809103902081905550600354600a0a6101f40260026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70726f6a656374000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f72656f70656e6564000000000000000000000000000000000000000000000000815260088101919091526028016040519081900390205560006002604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f6372656174656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620064e28339815191528152601b810191909152603b0160405180910390206040517f64656c6574656400000000000000000000000000000000000000000000000000815260078101919091526027016040519081900390205560006002604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f7375626d69747465640000000000000000000000000000000000000000000000815260098101919091526029016040519081900390205560006002604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f6564697465640000000000000000000000000000000000000000000000000000815260068101919091526026016040519081900390205560006002604051600080516020620065028339815191528152601381019190915260330160405180910390206040517f6469736d697373656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f61737369676e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e61737369676e6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573746564000000000000000000000000000000008152601081019190915260300160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f7265766965775f726571756573745f72656d6f766564000000000000000000008152601681019190915260360160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6c6162656c6564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f756e6c6162656c656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f6f70656e656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f636c6f73656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f72656f70656e65640000000000000000000000000000000000000000000000008152600881019190915260280160405190819003902055600060026040517f70756c6c5f7265717565737400000000000000000000000000000000000000008152600c810191909152602c0160405180910390206040517f73796e6368726f6e697a650000000000000000000000000000000000000000008152600b810191909152602b01604051809103902081905550600354600a0a6113880260026040517f70696e670000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f707573680000000000000000000000000000000000000000000000000000000081526004810191909152602401604051809103902060405190815260200160405190819003902055600060026040517f72656c65617365000000000000000000000000000000000000000000000000008152600781019190915260270160405180910390206040517f7075626c697368656400000000000000000000000000000000000000000000008152600981019190915260290160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f7075626c6963697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f7265706f7369746f7279000000000000000000000000000000000000000000008152600a810191909152602a0160405180910390206040517f707269766174697a6564000000000000000000000000000000000000000000008152600a810191909152602a0160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f70656e64696e67000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f73756363657373000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6661696c757265000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f73746174757300000000000000000000000000000000000000000000000000008152600681019190915260260160405180910390206040517f6572726f720000000000000000000000000000000000000000000000000000008152600581019190915260250160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f63726561746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f64656c65746564000000000000000000000000000000000000000000000000008152600781019190915260270160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f65646974656400000000000000000000000000000000000000000000000000008152600681019190915260260160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f61646465645f746f5f7265706f7369746f7279000000000000000000000000008152601381019190915260330160405190819003902055600060026040517f7465616d000000000000000000000000000000000000000000000000000000008152600481019190915260240160405180910390206040517f72656d6f7665645f66726f6d5f7265706f7369746f72790000000000000000008152601781019190915260370160405190819003902055600060026040517f7465616d5f616464000000000000000000000000000000000000000000000000815260088101919091526028016040518091039020604051908152602001604051809103902081905550600354600a0a6101f40260026040517f77617463680000000000000000000000000000000000000000000000000000008152600581019190915260250160405180910390206040517f737461727465640000000000000000000000000000000000000000000000000081526007810191909152602701604051908190039020555b505b6106458062005e5d6000396000f300606060405263ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663666e1b39811461005e5780638bea03961461009157806392956c1e1461013f578063f2fde38b146101ea575b600080fd5b341561006957600080fd5b61007d600160a060020a036004351661020b565b604051901515815260200160405180910390f35b341561009c57600080fd5b61007d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505084359460200135935061022092505050565b604051901515815260200160405180910390f35b341561014a57600080fd5b6101d260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496506103ee95505050505050565b60405191825260208201526040908101905180910390f35b34156101f557600080fd5b610209600160a060020a0360043516610593565b005b60006020819052908152604090205460ff1681565b600160a060020a03331660009081526020819052604081205460ff16151561024757600080fd5b826001866040518082805190602001908083835b6020831061027b57805182525b601f19909201916020918201910161025b565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106102df57805182525b601f1990920191602091820191016102bf565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405190819003902055816002866040518082805190602001908083835b6020831061034857805182525b601f199092019160209182019101610328565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020856040518082805190602001908083835b602083106103ac57805182525b601f19909201916020918201910161038c565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051908190039020555060015b5b949350505050565b6000806001846040518082805190602001908083835b6020831061042457805182525b601f199092019160209182019101610404565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020836040518082805190602001908083835b6020831061048857805182525b601f199092019160209182019101610468565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020546002856040518082805190602001908083835b602083106104ef57805182525b601f1990920191602091820191016104cf565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020846040518082805190602001908083835b6020831061055357805182525b601f199092019160209182019101610533565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902054915091505b9250929050565b600160a060020a03331660009081526020819052604090205460ff1615156105ba57600080fd5b600160a060020a03811660009081526020819052604090205460ff16151561061457600160a060020a03808216600090815260208190526040808220805460ff199081166001179091553390931682529020805490911690555b5b5b505600a165627a7a72305820bd73a49fe9d888ec49a994b3b0af12c7054522793d045d8749cb291335bebd0c0029696e7374616c6c6174696f6e5f7265706f7369746f72696573000000000000006465706c6f796d656e745f73746174757300000000000000000000000000000070756c6c5f726571756573745f7265766965775f636f6d6d656e74000000000070756c6c5f726571756573745f726576696577000000000000000000000000006d61726b6574706c6163655f7075726368617365000000000000000000000000",\n "networks": {\n "9": {\n "events": {},\n "links": {},\n "address": "0x3502f9b901521ebf2a23d8375266b7707a5a1b4e",\n "updated_at": 1512018540125\n }\n },\n "schema_version": "0.0.5",\n "updated_at": 1512018540125\n}'; +/* babel-plugin-inline-import 'gittoken-contracts/build/contracts/GitToken.json' */var GitToken = '{\n "contract_name": "GitToken",\n "abi": [\n {\n "constant": true,\n "inputs": [],\n "name": "name",\n "outputs": [\n {\n "name": "_name",\n "type": "string"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_spender",\n "type": "address"\n },\n {\n "name": "_value",\n "type": "uint256"\n }\n ],\n "name": "approve",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [],\n "name": "totalSupply",\n "outputs": [\n {\n "name": "_supply",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_from",\n "type": "address"\n },\n {\n "name": "_to",\n "type": "address"\n },\n {\n "name": "_value",\n "type": "uint256"\n }\n ],\n "name": "transferFrom",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [],\n "name": "organization",\n "outputs": [\n {\n "name": "_organization",\n "type": "string"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [],\n "name": "decimals",\n "outputs": [\n {\n "name": "_decimals",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [\n {\n "name": "_holder",\n "type": "address"\n }\n ],\n "name": "balanceOf",\n "outputs": [\n {\n "name": "_balance",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [],\n "name": "data",\n "outputs": [\n {\n "name": "totalSupply",\n "type": "uint256"\n },\n {\n "name": "decimals",\n "type": "uint256"\n },\n {\n "name": "name",\n "type": "string"\n },\n {\n "name": "organization",\n "type": "string"\n },\n {\n "name": "symbol",\n "type": "string"\n },\n {\n "name": "registry",\n "type": "address"\n },\n {\n "name": "username",\n "type": "string"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [],\n "name": "symbol",\n "outputs": [\n {\n "name": "_symbol",\n "type": "string"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_to",\n "type": "address"\n },\n {\n "name": "_value",\n "type": "uint256"\n }\n ],\n "name": "transfer",\n "outputs": [\n {\n "name": "",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": true,\n "inputs": [\n {\n "name": "_owner",\n "type": "address"\n },\n {\n "name": "_spender",\n "type": "address"\n }\n ],\n "name": "allowance",\n "outputs": [\n {\n "name": "_allowance",\n "type": "uint256"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "constant": false,\n "inputs": [\n {\n "name": "_contributor",\n "type": "address"\n },\n {\n "name": "_value",\n "type": "uint256"\n }\n ],\n "name": "credit",\n "outputs": [\n {\n "name": "success",\n "type": "bool"\n }\n ],\n "payable": false,\n "type": "function"\n },\n {\n "inputs": [\n {\n "name": "_organization",\n "type": "string"\n },\n {\n "name": "_name",\n "type": "string"\n },\n {\n "name": "_symbol",\n "type": "string"\n },\n {\n "name": "_decimals",\n "type": "uint256"\n },\n {\n "name": "_registry",\n "type": "address"\n },\n {\n "name": "_admin",\n "type": "address"\n },\n {\n "name": "_username",\n "type": "string"\n }\n ],\n "payable": false,\n "type": "constructor"\n },\n {\n "payable": false,\n "type": "fallback"\n },\n {\n "anonymous": false,\n "inputs": [\n {\n "indexed": true,\n "name": "owner",\n "type": "address"\n },\n {\n "indexed": true,\n "name": "spender",\n "type": "address"\n },\n {\n "indexed": false,\n "name": "value",\n "type": "uint256"\n }\n ],\n "name": "Approval",\n "type": "event"\n },\n {\n "anonymous": false,\n "inputs": [\n {\n "indexed": true,\n "name": "from",\n "type": "address"\n },\n {\n "indexed": true,\n "name": "to",\n "type": "address"\n },\n {\n "indexed": false,\n "name": "value",\n "type": "uint256"\n }\n ],\n "name": "Transfer",\n "type": "event"\n },\n {\n "anonymous": false,\n "inputs": [\n {\n "indexed": true,\n "name": "contributor",\n "type": "address"\n },\n {\n "indexed": false,\n "name": "value",\n "type": "uint256"\n }\n ],\n "name": "Credited",\n "type": "event"\n }\n ],\n "unlinked_binary": "0x6060604052341561000f57600080fd5b604051610cb7380380610cb78339810160405280805182019190602001805182019190602001805182019190602001805191906020018051919060200180519190602001805190910190505b60008055600184905560028680516100779291602001906100fc565b50600387805161008b9291602001906100fc565b50600485805161009f9291602001906100fc565b5060058054600160a060020a031916600160a060020a038581169190911790915582166000908152600760205260409020805460ff1916600117905560068180516100ee9291602001906100fc565b505b5050505050505061019c565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061013d57805160ff191683800117855561016a565b8280016001018555821561016a579182015b8281111561016a57825182559160200191906001019061014f565b5b5061017792915061017b565b5090565b61019991905b808211156101775760008155600101610181565b5090565b90565b610b0c806101ab6000396000f300606060405236156100b75763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100ca578063095ea7b31461015557806318160ddd1461018b57806323b872dd146101b057806323bd4d7a146101ec578063313ce5671461027757806370a082311461029c57806373d4a13a146102cd57806395d89b41146104f9578063a9059cbb14610584578063dd62ed3e146105ba578063ef6506db146105f1575b34156100c257600080fd5b5b600080fd5b005b34156100d557600080fd5b6100dd610627565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561011a5780820151818401525b602001610101565b50505050905090810190601f1680156101475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561016057600080fd5b610177600160a060020a03600435166024356106cf565b604051901515815260200160405180910390f35b341561019657600080fd5b61019e610789565b60405190815260200160405180910390f35b34156101bb57600080fd5b610177600160a060020a0360043581169060243516604435610790565b604051901515815260200160405180910390f35b34156101f757600080fd5b6100dd6107f6565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561011a5780820151818401525b602001610101565b50505050905090810190601f1680156101475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561028257600080fd5b61019e6108a0565b60405190815260200160405180910390f35b34156102a757600080fd5b61019e600160a060020a03600435166108a7565b60405190815260200160405180910390f35b34156102d857600080fd5b6102e06108c6565b60405187815260208101879052600160a060020a03831660a082015260e060408201818152875460026001821615610100908102600019019092160492840183905290916060840191608085019160c08601918601908b9080156103855780601f1061035a57610100808354040283529160200191610385565b820191906000526020600020905b81548152906001019060200180831161036857829003601f168201915b505085810384528954600260001961010060018416150201909116048082526020909101908a9080156103f95780601f106103ce576101008083540402835291602001916103f9565b820191906000526020600020905b8154815290600101906020018083116103dc57829003601f168201915b505085810383528854600260001961010060018416150201909116048082526020909101908990801561046d5780601f106104425761010080835404028352916020019161046d565b820191906000526020600020905b81548152906001019060200180831161045057829003601f168201915b50508581038252865460026000196101006001841615020190911604808252602090910190879080156104e15780601f106104b6576101008083540402835291602001916104e1565b820191906000526020600020905b8154815290600101906020018083116104c457829003601f168201915b50509b50505050505050505050505060405180910390f35b341561050457600080fd5b6100dd6108e6565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561011a5780820151818401525b602001610101565b50505050905090810190601f1680156101475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561058f57600080fd5b610177600160a060020a0360043516602435610990565b604051901515815260200160405180910390f35b34156105c557600080fd5b61019e600160a060020a03600435811690602435166109e3565b60405190815260200160405180910390f35b34156105fc57600080fd5b610177600160a060020a0360043516602435610a10565b604051901515815260200160405180910390f35b61062f610ace565b6002805460001961010060018316150201168190046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156106c45780601f10610699576101008083540402835291602001916106c4565b820191906000526020600020905b8154815290600101906020018083116106a757829003601f168201915b505050505090505b90565b60006002366044146106e057600080fd5b821580156107115750600160a060020a03338116600090815260086020908152604080832093881683529290522054155b151561071c57600080fd5b600160a060020a03338116600081815260086020908152604080832094891680845294909152908190208690557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259086905190815260200160405180910390a3600191505b5b5092915050565b6000545b90565b60006003366064146107a157600080fd5b83600160a060020a031685600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405190815260200160405180910390a3600191505b5b509392505050565b6107fe610ace565b60038054600260001961010060018416150201909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156106c45780601f10610699576101008083540402835291602001916106c4565b820191906000526020600020905b8154815290600101906020018083116106a757829003601f168201915b505050505090505b90565b6001545b90565b600160a060020a0381166000908152600960205260409020545b919050565b600054600154600554600290600390600490600160a060020a0316600687565b6108ee610ace565b60048054600260001961010060018416150201909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156106c45780601f10610699576101008083540402835291602001916106c4565b820191906000526020600020905b8154815290600101906020018083116106a757829003601f168201915b505050505090505b90565b600082600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35060015b92915050565b600160a060020a038083166000908152600860209081526040808320938516835292905220545b92915050565b60055460009033600160a060020a03908116911614610a2e57600080fd5b600160a060020a038316600090815260096020526040902054610a57908363ffffffff610ab416565b50600054610a6b908363ffffffff610ab416565b5082600160a060020a03167f9c9e0cdb1670e88302408e5b941dc636f63a3293204694bb68910fcf3d9305f38360405190815260200160405180910390a25060015b5b92915050565b600082820183811015610ac357fe5b8091505b5092915050565b602060405190810160405260008152905600a165627a7a72305820f9b4fbbe828141a2ceb31341b81c3ea6291170d7f530e463fde11d44221441710029",\n "networks": {},\n "schema_version": "0.0.5",\n "updated_at": 1512018533467\n}'; var GitTokenContracts = function (_GitTokenKeystoreGene) { (0, _inherits3.default)(GitTokenContracts, _GitTokenKeystoreGene); @@ -42,13 +50,13 @@ var GitTokenContracts = function (_GitTokenKeystoreGene) { function GitTokenContracts(options) { (0, _classCallCheck3.default)(this, GitTokenContracts); + // Instantiate Pre-Deployed Contract Data var _this = (0, _possibleConstructorReturn3.default)(this, (GitTokenContracts.__proto__ || (0, _getPrototypeOf2.default)(GitTokenContracts)).call(this, options)); - _this.RewardPoints = _this.load({ - contract: RewardPoints, - network: '9', - address: null - }); + _this.GitToken = GitToken; + + // Instantiate Deployed Contracts + _this.RewardPoints = _this.load({ contract: RewardPoints, network: '9', address: null }); return _this; } @@ -79,6 +87,34 @@ var GitTokenContracts = function (_GitTokenKeystoreGene) { return C; } + }, { + key: 'deployContract', + value: function deployContract(_ref2) { + var _this2 = this; + + var contract = _ref2.contract, + _ref2$params = _ref2.params, + params = _ref2$params === undefined ? [] : _ref2$params; + + return new _bluebird2.default(function (resolve, reject) { + var _eth$contract$new; + + var _JSON$parse2 = JSON.parse(contract), + abi = _JSON$parse2.abi, + unlinked_binary = _JSON$parse2.unlinked_binary; + + _bluebird2.default.resolve((_eth$contract$new = _this2.eth.contract(abi).new).getData.apply(_eth$contract$new, (0, _toConsumableArray3.default)(params).concat([{ + from: _this2.address, + data: unlinked_binary + }]))).then(function (data) { + return _this2.sendTransaction({ data: data }); + }).then(function (txReceipt) { + resolve(txReceipt); + }).catch(function (error) { + reject(error); + }); + }); + } }]); return GitTokenContracts; }(_gittokenKeystoreGenerator2.default); diff --git a/dist/events/handlePingEvent.js b/dist/events/handlePingEvent.js new file mode 100644 index 0000000..0a804b9 --- /dev/null +++ b/dist/events/handlePingEvent.js @@ -0,0 +1,48 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = handlePingEvent; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +/** + * Ping Event + * + * Create GitToken instance + * Register Token with Registry + * Record Transactions in `transactions` table + * + */ + +function handlePingEvent() { + var _this = this; + + return new _bluebird2.default(function (resolve, reject) { + + // Deconstruct GitToken Contract Params + var _gittokenParams = _this.gittokenParams, + organization = _gittokenParams.organization, + name = _gittokenParams.name, + symbol = _gittokenParams.symbol, + decimals = _gittokenParams.decimals, + owner = _gittokenParams.owner, + username = _gittokenParams.username; + + // Deploy GitToken Contract + + _this.deployContract({ + contract: _this.GitToken, + params: [organization, name, symbol, decimals, owner, username] + }).then(function (txReceipt) { + resolve(txReceipt); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/events/index.js b/dist/events/index.js new file mode 100644 index 0000000..2e5e753 --- /dev/null +++ b/dist/events/index.js @@ -0,0 +1,14 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.handlePingEvent = undefined; + +var _handlePingEvent = require('./handlePingEvent'); + +var _handlePingEvent2 = _interopRequireDefault(_handlePingEvent); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.handlePingEvent = _handlePingEvent2.default; \ No newline at end of file diff --git a/dist/index.js b/dist/index.js index 72e67b5..2077841 100644 --- a/dist/index.js +++ b/dist/index.js @@ -40,19 +40,21 @@ var _mysql = require('mysql'); var _mysql2 = _interopRequireDefault(_mysql); -var _index = require('./utils/index'); +var _index = require('./events/index'); -var _index2 = require('./contracts/index'); +var _index2 = require('./utils/index'); -var _index3 = _interopRequireDefault(_index2); +var _index3 = require('./contracts/index'); -var _index4 = require('./mysql/index'); +var _index4 = _interopRequireDefault(_index3); -var _index5 = require('./routers/index'); +var _index5 = require('./mysql/index'); -var _index6 = require('./middleware/index'); +var _index6 = require('./routers/index'); -var _index7 = require('./integrations/index'); +var _index7 = require('./middleware/index'); + +var _index8 = require('./integrations/index'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } @@ -88,27 +90,31 @@ var GitTokenServer = function (_GitTokenContracts) { _this.web3Provider = web3Provider; /* Bind Methods */ - _this.AuthRouter = _index5.AuthRouter.bind(_this); - _this.WebHookRouter = _index5.WebHookRouter.bind(_this); - _this.ApiRouter = _index5.ApiRouter.bind(_this); - _this.WebHookMiddleware = _index6.WebHookMiddleware.bind(_this); - _this.parseContribution = _index.parseContribution.bind(_this); - _this.validateWebHookRequest = _index.validateWebHookRequest.bind(_this); - _this.signContribution = _index.signContribution.bind(_this); - _this.query = _index4.query.bind(_this); - _this.saveContribution = _index4.saveContribution.bind(_this); - _this.saveUserBalance = _index4.saveUserBalance.bind(_this); - _this.saveTotalSupply = _index4.saveTotalSupply.bind(_this); - _this.getContributions = _index4.getContributions.bind(_this); - _this.getTokenSupply = _index4.getTokenSupply.bind(_this); - _this.getUserBalances = _index4.getUserBalances.bind(_this); + _this.AuthRouter = _index6.AuthRouter.bind(_this); + _this.WebHookRouter = _index6.WebHookRouter.bind(_this); + _this.ApiRouter = _index6.ApiRouter.bind(_this); + _this.WebHookMiddleware = _index7.WebHookMiddleware.bind(_this); + _this.parseContribution = _index2.parseContribution.bind(_this); + _this.validateWebHookRequest = _index2.validateWebHookRequest.bind(_this); + _this.signContribution = _index2.signContribution.bind(_this); + _this.query = _index5.query.bind(_this); + _this.saveContribution = _index5.saveContribution.bind(_this); + _this.saveUserBalance = _index5.saveUserBalance.bind(_this); + _this.saveTotalSupply = _index5.saveTotalSupply.bind(_this); + _this.getContributions = _index5.getContributions.bind(_this); + _this.getTokenSupply = _index5.getTokenSupply.bind(_this); + _this.getUserBalances = _index5.getUserBalances.bind(_this); + + _this.handleContribution = _index2.handleContribution.bind(_this); + _this.handleEventActions = _index2.handleEventActions.bind(_this); + _this.handlePingEvent = _index.handlePingEvent.bind(_this); /* Gitter WebHook Integration */ - _this.gitterService = _index7.gitterService.bind(_this); + _this.gitterService = _index8.gitterService.bind(_this); _this.gitterService(); - _this.gitterWebHook = _index7.gitterWebHook.bind(_this); - _this.gitterLogContributionActivity = _index7.gitterLogContributionActivity.bind(_this); + _this.gitterWebHook = _index8.gitterWebHook.bind(_this); + _this.gitterLogContributionActivity = _index8.gitterLogContributionActivity.bind(_this); /* MySql Connection */ _this.mysql = _mysql2.default.createConnection(mysqlOpts); @@ -155,6 +161,6 @@ var GitTokenServer = function (_GitTokenContracts) { } }]); return GitTokenServer; -}(_index3.default); +}(_index4.default); exports.default = GitTokenServer; \ No newline at end of file diff --git a/dist/middleware/WebHookMiddleware.js b/dist/middleware/WebHookMiddleware.js index 973c5f5..cb263f7 100644 --- a/dist/middleware/WebHookMiddleware.js +++ b/dist/middleware/WebHookMiddleware.js @@ -3,51 +3,36 @@ Object.defineProperty(exports, "__esModule", { value: true }); + +var _stringify = require("babel-runtime/core-js/json/stringify"); + +var _stringify2 = _interopRequireDefault(_stringify); + exports.default = WebHookMiddleware; + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + function WebHookMiddleware(req, res, next) { var _this = this; var headers = req.headers, body = req.body; - this.validateWebHookRequest({ headers: headers, body: body }).then(function () { + return _this.handleContribution({ headers: headers, body: body }); + }).then(function (details) { + var contribution = details.contribution, + userBalance = details.userBalance, + totalSupply = details.totalSupply; - return _this.parseContribution({ headers: headers, body: body }); - }).then(function (contribution) { - - // console.log('contribution', contribution) - return _this.signContribution(contribution); - }).then(function (signedContribution) { - - // console.log('signedContribution', signedContribution) - return _this.saveContribution(signedContribution); - }).then(function (savedContribution) { - - // console.log('savedContribution', savedContribution) - req.contribution = savedContribution; - return _this.saveTotalSupply(req.contribution); - }).then(function (totalSupply) { - - req.totalSupply = totalSupply; - return _this.saveUserBalance(req.contribution); - }).then(function (userBalance) { - + req.contribution = contribution; req.userBalance = userBalance; - if (!_this.gitterWebHookUrl) { - next(); - } else { - return _this.gitterLogContributionActivity({ - totalSupply: req.totalSupply, - userBalance: req.userBalance, - contribution: req.contribution - }); - } - }).then(function () { - // Middleware Complete + req.totalSupply = totalSupply; + return _this.handleEventActions({ contribution: contribution }); + }).then(function (events) { + req.events = events; next(); }).catch(function (error) { - var code = error.code ? error.code : 500; - res.status(code).send(error.message); + res.status(500).send((0, _stringify2.default)(error, null, 2)); }); } \ No newline at end of file diff --git a/dist/mysql/saveTransactionReceipt.js b/dist/mysql/saveTransactionReceipt.js new file mode 100644 index 0000000..a154e4a --- /dev/null +++ b/dist/mysql/saveTransactionReceipt.js @@ -0,0 +1,24 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = saveTransactionReceipt; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function saveTransactionReceipt(txReceipt) { + var _this = this; + + return new _bluebird2.default(function (resolve, reject) { + _this.query({ + queryString: '' + }).then(function () {}).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/routers/ApiRouter.js b/dist/routers/ApiRouter.js index 006318d..8f221eb 100644 --- a/dist/routers/ApiRouter.js +++ b/dist/routers/ApiRouter.js @@ -50,9 +50,22 @@ function AuthRouter() { }); }); + router.get('/signer/address', function (req, res) { + if (!_this.address) { + var error = new Error("Signer Address is undefined."); + res.status(500).send(JSON.parse(error, null, 2)); + } else { + res.status(200).send('0x' + _this.address); + } + }); + router.get('/signer/balance', function (req, res) { _this.eth.getBalanceAsync(_this.address).then(function (balance) { - res.status(200).send(balance.toNumber()); + + res.status(200).send({ + weiBalance: balance.toNumber(), + ethBalance: balance.toNumber() / 1e18 + }); }).catch(function (error) { res.status(500).send(JSON.parse(error, null, 2)); }); diff --git a/dist/utils/handleContribution.js b/dist/utils/handleContribution.js new file mode 100644 index 0000000..3221a96 --- /dev/null +++ b/dist/utils/handleContribution.js @@ -0,0 +1,45 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = handleContribution; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function handleContribution(_ref) { + var _this = this; + + var headers = _ref.headers, + body = _ref.body; + + return new _bluebird2.default(function (resolve, reject) { + var details = new Object(); + _this.parseContribution({ headers: headers, body: body }).then(function (contribution) { + return _this.signContribution(contribution); + }).then(function (signedContribution) { + return _this.saveContribution(signedContribution); + }).then(function (savedContribution) { + details.contribution = savedContribution; + return _this.saveTotalSupply(details.contribution); + }).then(function (totalSupply) { + details.totalSupply = totalSupply; + return _this.saveUserBalance(details.contribution); + }).then(function (userBalance) { + details.userBalance = userBalance; + if (!_this.gitterWebHookUrl) { + resolve(details); + } else { + return _this.gitterLogContributionActivity(details); + } + }).then(function () { + resolve(details); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/utils/handleEventActions.js b/dist/utils/handleEventActions.js new file mode 100644 index 0000000..fb5c8b6 --- /dev/null +++ b/dist/utils/handleEventActions.js @@ -0,0 +1,36 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = handleEventActions; + +var _bluebird = require("bluebird"); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function handleEventActions(_ref) { + var _this = this; + + var contribution = _ref.contribution; + + return new _bluebird2.default(function (resolve, reject) { + var username = contribution.username, + eventType = contribution.eventType, + subEventType = contribution.subEventType; + + _bluebird2.default.resolve().then(function () { + if (eventType == "ping") { + return _this.handlePingEvent(); + } else { + return null; + } + }).then(function (events) { + resolve(events); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/utils/index.js b/dist/utils/index.js index 68a11e7..68f9e8f 100644 --- a/dist/utils/index.js +++ b/dist/utils/index.js @@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.validateWebHookRequest = exports.parseContribution = exports.signContribution = undefined; +exports.handleEventActions = exports.handleContribution = exports.validateWebHookRequest = exports.parseContribution = exports.signContribution = undefined; var _signContribution = require('./signContribution'); @@ -17,8 +17,18 @@ var _validateWebHookRequest = require('./validateWebHookRequest'); var _validateWebHookRequest2 = _interopRequireDefault(_validateWebHookRequest); +var _handleContribution = require('./handleContribution'); + +var _handleContribution2 = _interopRequireDefault(_handleContribution); + +var _handleEventActions = require('./handleEventActions'); + +var _handleEventActions2 = _interopRequireDefault(_handleEventActions); + function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.signContribution = _signContribution2.default; exports.parseContribution = _parseContribution2.default; -exports.validateWebHookRequest = _validateWebHookRequest2.default; \ No newline at end of file +exports.validateWebHookRequest = _validateWebHookRequest2.default; +exports.handleContribution = _handleContribution2.default; +exports.handleEventActions = _handleEventActions2.default; \ No newline at end of file diff --git a/gittoken.config.js b/gittoken.config.js index 5a79d34..fd3fb75 100644 --- a/gittoken.config.js +++ b/gittoken.config.js @@ -18,9 +18,9 @@ const config = { web3Provider: process.env['WEB3_PROVIDER'], dirPath: process.env['GITTOKEN_DIRECTORY_PATH'], recoveryShare: process.env['GITTOKEN_RECOVERY_SHARE'], - address: process.env['GITTOKEN_ADDRESS'], + address: process.env['GITTOKEN_SIGNER_ADDRESS'], gittokenParams: { - contributor: process.env['GITTOKEN_CONTRACT_OWNER'], + owner: process.env['GITTOKEN_CONTRACT_OWNER'], name: process.env['GITTOKEN_CONTRACT_NAME'], username: process.env['GITTOKEN_CONTRACT_OWNER_USERNAME'], organization: process.env['GITTOKEN_CONTRACT_ORGANIZATION'], diff --git a/src/contracts/index.js b/src/contracts/index.js index 8b8719b..a1eecbd 100644 --- a/src/contracts/index.js +++ b/src/contracts/index.js @@ -1,15 +1,18 @@ import Promise, { promisifyAll } from 'bluebird' import GitTokenKeystoreGenerator from 'gittoken-keystore-generator' + +// Import Contracts import RewardPoints from 'gittoken-contracts/build/contracts/RewardPoints.json' +import GitToken from 'gittoken-contracts/build/contracts/GitToken.json' export default class GitTokenContracts extends GitTokenKeystoreGenerator { constructor(options) { super(options) - this.RewardPoints = this.load({ - contract: RewardPoints, - network: '9', - address: null - }) + // Instantiate Pre-Deployed Contract Data + this.GitToken = GitToken; + + // Instantiate Deployed Contracts + this.RewardPoints = this.load({ contract: RewardPoints, network: '9', address: null }) } load({ contract, network, address }) { @@ -27,4 +30,20 @@ export default class GitTokenContracts extends GitTokenKeystoreGenerator { return C } + + deployContract({ contract, params=[] }) { + return new Promise((resolve, reject) => { + const { abi, unlinked_binary } = JSON.parse(contract) + Promise.resolve(this.eth.contract(abi).new.getData(...params, { + from: this.address, + data: unlinked_binary + })).then((data) => { + return this.sendTransaction({ data }) + }).then((txReceipt) => { + resolve(txReceipt) + }).catch((error) => { + reject(error); + }) + }) + } } diff --git a/src/events/handlePingEvent.js b/src/events/handlePingEvent.js new file mode 100644 index 0000000..45b607a --- /dev/null +++ b/src/events/handlePingEvent.js @@ -0,0 +1,42 @@ +import Promise from 'bluebird' + +/** + * Ping Event + * + * Create GitToken instance + * Register Token with Registry + * Record Transactions in `transactions` table + * + */ + +export default function handlePingEvent() { + return new Promise((resolve, reject) => { + + // Deconstruct GitToken Contract Params + const { + organization, + name, + symbol, + decimals, + owner, + username + } = this.gittokenParams + + // Deploy GitToken Contract + this.deployContract({ + contract: this.GitToken, + params: [ + organization, + name, + symbol, + decimals, + owner, + username + ] + }).then((txReceipt) => { + resolve(txReceipt) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/events/index.js b/src/events/index.js new file mode 100644 index 0000000..3aa0e79 --- /dev/null +++ b/src/events/index.js @@ -0,0 +1,5 @@ +import handlePingEvent from './handlePingEvent' + +export { + handlePingEvent +} diff --git a/src/index.js b/src/index.js index 66b4f4d..40985fb 100644 --- a/src/index.js +++ b/src/index.js @@ -3,11 +3,16 @@ import cors from 'cors' import bodyParser from 'body-parser' import mysql from 'mysql' +import { + handlePingEvent +} from './events/index' import { signContribution, parseContribution, - validateWebHookRequest + validateWebHookRequest, + handleContribution, + handleEventActions } from './utils/index' import GitTokenContracts from './contracts/index' @@ -79,6 +84,10 @@ export default class GitTokenServer extends GitTokenContracts { this.getTokenSupply = getTokenSupply.bind(this) this.getUserBalances = getUserBalances.bind(this) + this.handleContribution = handleContribution.bind(this) + this.handleEventActions = handleEventActions.bind(this) + this.handlePingEvent = handlePingEvent.bind(this) + /* Gitter WebHook Integration */ this.gitterService = gitterService.bind(this) diff --git a/src/middleware/WebHookMiddleware.js b/src/middleware/WebHookMiddleware.js index c5515b8..8c5ec56 100644 --- a/src/middleware/WebHookMiddleware.js +++ b/src/middleware/WebHookMiddleware.js @@ -1,43 +1,17 @@ export default function WebHookMiddleware(req, res, next) { const { headers, body } = req - this.validateWebHookRequest({ headers, body }).then(() => { - - return this.parseContribution({ headers, body }); - }).then((contribution) => { - - // console.log('contribution', contribution) - return this.signContribution(contribution) - }).then((signedContribution) => { - - // console.log('signedContribution', signedContribution) - return this.saveContribution(signedContribution) - }).then((savedContribution) => { - - // console.log('savedContribution', savedContribution) - req.contribution = savedContribution - return this.saveTotalSupply(req.contribution) - }).then((totalSupply) => { - + return this.handleContribution({ headers, body }) + }).then((details) => { + const { contribution, userBalance, totalSupply } = details + req.contribution = contribution; + req.userBalance = userBalance; req.totalSupply = totalSupply; - return this.saveUserBalance(req.contribution) - }).then((userBalance) => { - - req.userBalance = userBalance - if (!this.gitterWebHookUrl) { - next() - } else { - return this.gitterLogContributionActivity({ - totalSupply: req.totalSupply, - userBalance: req.userBalance, - contribution: req.contribution - }) - } - }).then(() => { - // Middleware Complete + return this.handleEventActions({ contribution }) + }).then((events) => { + req.events = events next() }).catch((error) => { - const code = error.code ? error.code : 500 - res.status(code).send(error.message) + res.status(500).send(JSON.stringify(error, null, 2)) }) } diff --git a/src/mysql/saveTransactionReceipt.js b/src/mysql/saveTransactionReceipt.js new file mode 100644 index 0000000..90c5e14 --- /dev/null +++ b/src/mysql/saveTransactionReceipt.js @@ -0,0 +1,13 @@ +import Promise from 'bluebird' + +export default function saveTransactionReceipt(txReceipt) { + return new Promise((resolve, reject) => { + this.query({ + queryString: `` + }).then(() => { + + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/routers/ApiRouter.js b/src/routers/ApiRouter.js index a2261d3..72a40f6 100644 --- a/src/routers/ApiRouter.js +++ b/src/routers/ApiRouter.js @@ -49,8 +49,11 @@ export default function AuthRouter() { router.get('/signer/balance', (req, res) => { this.eth.getBalanceAsync(this.address).then((balance) => { - console.log('balance', balance) - res.status(200).send(balance) + + res.status(200).send({ + weiBalance: balance.toNumber(), + ethBalance: balance.toNumber()/1e18, + }) }).catch((error) => { res.status(500).send(JSON.parse(error, null, 2)) }) diff --git a/src/utils/handleContribution.js b/src/utils/handleContribution.js new file mode 100644 index 0000000..89735ca --- /dev/null +++ b/src/utils/handleContribution.js @@ -0,0 +1,29 @@ +import Promise from 'bluebird' + +export default function handleContribution({ headers, body }) { + return new Promise((resolve, reject) => { + var details = new Object() + this.parseContribution({ headers, body }).then((contribution) => { + return this.signContribution(contribution) + }).then((signedContribution) => { + return this.saveContribution(signedContribution) + }).then((savedContribution) => { + details.contribution = savedContribution + return this.saveTotalSupply(details.contribution) + }).then((totalSupply) => { + details.totalSupply = totalSupply; + return this.saveUserBalance(details.contribution) + }).then((userBalance) => { + details.userBalance = userBalance + if (!this.gitterWebHookUrl) { + resolve(details) + } else { + return this.gitterLogContributionActivity(details) + } + }).then(() => { + resolve(details) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/utils/handleEventActions.js b/src/utils/handleEventActions.js new file mode 100644 index 0000000..4af168c --- /dev/null +++ b/src/utils/handleEventActions.js @@ -0,0 +1,18 @@ +import Promise from 'bluebird' + +export default function handleEventActions({ contribution }) { + return new Promise((resolve, reject) => { + const { username, eventType, subEventType } = contribution + Promise.resolve().then(() => { + if (eventType == "ping") { + return this.handlePingEvent() + } else { + return null + } + }).then((events) => { + resolve(events) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/utils/index.js b/src/utils/index.js index b2908e2..b867652 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -1,9 +1,13 @@ import signContribution from './signContribution' import parseContribution from './parseContribution' import validateWebHookRequest from './validateWebHookRequest' +import handleContribution from './handleContribution' +import handleEventActions from './handleEventActions' export { signContribution, parseContribution, - validateWebHookRequest + validateWebHookRequest, + handleContribution, + handleEventActions } From 60e03bbcd8bd2e8bd92623c8c419c359a2f8298d Mon Sep 17 00:00:00 2001 From: Ryan Tate Date: Sat, 9 Dec 2017 08:57:10 -0800 Subject: [PATCH 06/10] WIP; adding account profile routes and static pages --- .dockerignore | 2 +- .gitignore | 3 +- dist/contracts/index.js | 2 +- dist/events/handlePingEvent.js | 2 + dist/index.js | 12 +- dist/middleware/WebHookMiddleware.js | 8 +- dist/routers/WebHookRouter.js | 15 +- dist/utils/handleEventActions.js | 6 +- dist/utils/parseContribution.js | 1 - dist/utils/validateWebHookRequest.js | 2 + package-lock.json | 3103 +++++++++++++++++++++++++- package.json | 4 + src/contracts/index.js | 2 +- src/events/handlePingEvent.js | 4 +- src/index.js | 17 +- src/middleware/WebHookMiddleware.js | 4 +- src/routers/AccountRouter.js | 11 + src/routers/ApiRouter.js | 9 + src/routers/AuthRouter.js | 2 +- src/routers/WebHookRouter.js | 14 +- src/routers/index.js | 2 + src/utils/handleEventActions.js | 8 +- src/utils/parseContribution.js | 4 - src/utils/validateWebHookRequest.js | 2 + 24 files changed, 3175 insertions(+), 64 deletions(-) create mode 100644 src/routers/AccountRouter.js diff --git a/.dockerignore b/.dockerignore index 49dd65e..5c71eb6 100644 --- a/.dockerignore +++ b/.dockerignore @@ -2,4 +2,4 @@ node_modules src_old dist -keystore/* +keystore/UTC* diff --git a/.gitignore b/.gitignore index bed6a0d..8641c34 100644 --- a/.gitignore +++ b/.gitignore @@ -2,5 +2,4 @@ /parity/keys/* /keystore/* node_modules -gittoken.env -mysql.env +*.env diff --git a/dist/contracts/index.js b/dist/contracts/index.js index cd8b04c..d78ff23 100644 --- a/dist/contracts/index.js +++ b/dist/contracts/index.js @@ -50,7 +50,7 @@ var GitTokenContracts = function (_GitTokenKeystoreGene) { function GitTokenContracts(options) { (0, _classCallCheck3.default)(this, GitTokenContracts); - // Instantiate Pre-Deployed Contract Data + // Instantiate Contract Data var _this = (0, _possibleConstructorReturn3.default)(this, (GitTokenContracts.__proto__ || (0, _getPrototypeOf2.default)(GitTokenContracts)).call(this, options)); _this.GitToken = GitToken; diff --git a/dist/events/handlePingEvent.js b/dist/events/handlePingEvent.js index 0a804b9..82c9ba6 100644 --- a/dist/events/handlePingEvent.js +++ b/dist/events/handlePingEvent.js @@ -40,6 +40,8 @@ function handlePingEvent() { contract: _this.GitToken, params: [organization, name, symbol, decimals, owner, username] }).then(function (txReceipt) { + // save the receipts; + console.log('txReceipt', txReceipt); resolve(txReceipt); }).catch(function (error) { reject(error); diff --git a/dist/index.js b/dist/index.js index 2077841..d63e065 100644 --- a/dist/index.js +++ b/dist/index.js @@ -131,13 +131,17 @@ var GitTokenServer = function (_GitTokenContracts) { _this.app.use(_bodyParser2.default.json()); // handle json data _this.app.use(_bodyParser2.default.urlencoded({ extended: true })); // handle + _this.app.use('/api/', _this.ApiRouter()); _this.app.use('/auth/', _this.AuthRouter()); _this.app.use('/webhook/', _this.WebHookRouter()); - _this.app.use('/api/', _this.ApiRouter()); - _this.app.use('/', function (req, res) { - res.send('Hello, GitToken Server!'); - }); + // Serve Web Applications + _this.app.use('/registry', _express2.default.static(process.cwd() + '/node_modules/gittoken-registry-ui/')); + _this.app.use('/', _express2.default.static(process.cwd() + '/node_modules/gittoken-landing-page/')); + + // this.app.use('/', (req, res) => { + // res.send(`Hello, GitToken Server!`) + // }) /* Run GitToken Server */ _this.listen(); diff --git a/dist/middleware/WebHookMiddleware.js b/dist/middleware/WebHookMiddleware.js index cb263f7..b42851b 100644 --- a/dist/middleware/WebHookMiddleware.js +++ b/dist/middleware/WebHookMiddleware.js @@ -1,10 +1,10 @@ -"use strict"; +'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); -var _stringify = require("babel-runtime/core-js/json/stringify"); +var _stringify = require('babel-runtime/core-js/json/stringify'); var _stringify2 = _interopRequireDefault(_stringify); @@ -33,6 +33,8 @@ function WebHookMiddleware(req, res, next) { req.events = events; next(); }).catch(function (error) { - res.status(500).send((0, _stringify2.default)(error, null, 2)); + console.log('error', error); + var err = error.message ? error.message : (0, _stringify2.default)(error, null, 2); + res.status(500).send(err); }); } \ No newline at end of file diff --git a/dist/routers/WebHookRouter.js b/dist/routers/WebHookRouter.js index 30576c6..45ba155 100644 --- a/dist/routers/WebHookRouter.js +++ b/dist/routers/WebHookRouter.js @@ -20,13 +20,20 @@ function WebHookRouter() { router.post('/', this.WebHookMiddleware, function (req, res) { var contribution = req.contribution, totalSupply = req.totalSupply, - userBalance = req.userBalance; + userBalance = req.userBalance, + receipts = req.receipts; - res.status(200).send((0, _stringify2.default)({ + + var details = (0, _stringify2.default)({ contribution: contribution, userBalance: userBalance, - totalSupply: totalSupply - }, null, 2)); + totalSupply: totalSupply, + receipts: receipts + }, null, 2); + + console.log('details', details); + + res.status(200).send(details); }); return router; diff --git a/dist/utils/handleEventActions.js b/dist/utils/handleEventActions.js index fb5c8b6..c0a5fbb 100644 --- a/dist/utils/handleEventActions.js +++ b/dist/utils/handleEventActions.js @@ -23,12 +23,12 @@ function handleEventActions(_ref) { _bluebird2.default.resolve().then(function () { if (eventType == "ping") { - return _this.handlePingEvent(); + return (0, _bluebird.join)(_this.handlePingEvent()); } else { return null; } - }).then(function (events) { - resolve(events); + }).then(function (receipts) { + resolve(receipts); }).catch(function (error) { reject(error); }); diff --git a/dist/utils/parseContribution.js b/dist/utils/parseContribution.js index 7198190..ffae4f3 100644 --- a/dist/utils/parseContribution.js +++ b/dist/utils/parseContribution.js @@ -75,7 +75,6 @@ function parseContribution(_ref) { subEventType: subEventType }); }).catch(function (error) { - console.log('error', error); reject(error); }); }); diff --git a/dist/utils/validateWebHookRequest.js b/dist/utils/validateWebHookRequest.js index 679199a..879aa6f 100644 --- a/dist/utils/validateWebHookRequest.js +++ b/dist/utils/validateWebHookRequest.js @@ -11,6 +11,8 @@ var _bluebird2 = _interopRequireDefault(_bluebird); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +// TODO Better security validation +// function validateWebHookRequest(_ref) { var headers = _ref.headers, body = _ref.body; diff --git a/package-lock.json b/package-lock.json index 83305d9..5cd3a34 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,6 +4,15 @@ "lockfileVersion": 1, "requires": true, "dependencies": { + "accepts": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", + "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=", + "requires": { + "mime-types": "2.1.17", + "negotiator": "0.6.1" + } + }, "acorn": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.2.1.tgz", @@ -50,6 +59,11 @@ "repeat-string": "1.6.1" } }, + "ansi-html": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=" + }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -60,6 +74,11 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" + }, "anymatch": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", @@ -82,11 +101,48 @@ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" + }, + "array-flatten": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.1.tgz", + "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=" + }, + "array-includes": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", + "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", + "requires": { + "define-properties": "1.1.2", + "es-abstract": "1.10.0" + } + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "1.0.3" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, "array-unique": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, "asn1": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", @@ -128,6 +184,11 @@ "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=" }, + "async-limiter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", + "integrity": "sha1-ePrtjD0HSrgfIrTphdeehzj3IPg=" + }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -143,6 +204,15 @@ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=" }, + "axios": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "requires": { + "follow-redirects": "1.2.6", + "is-buffer": "1.1.6" + } + }, "babel-cli": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.26.0.tgz", @@ -2256,6 +2326,16 @@ "babel-template": "6.26.0" } }, + "babel-loader": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-7.1.2.tgz", + "integrity": "sha1-9svhInEPGqKvTYgcbVtUNYyiQSY=", + "requires": { + "find-cache-dir": "1.0.0", + "loader-utils": "1.1.0", + "mkdirp": "0.5.1" + } + }, "babel-messages": { "version": "6.23.0", "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", @@ -2545,6 +2625,16 @@ "babel-types": "6.26.0" } }, + "babel-polyfill": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", + "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "requires": { + "babel-runtime": "6.26.0", + "core-js": "2.5.1", + "regenerator-runtime": "0.10.5" + } + }, "babel-preset-env": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.6.1.tgz", @@ -3919,6 +4009,11 @@ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", "integrity": "sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw==" }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=" + }, "bcrypt-pbkdf": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", @@ -3953,6 +4048,22 @@ "unorm": "1.4.1" } }, + "bl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", + "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "block-stream": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "requires": { + "inherits": "2.0.3" + } + }, "bluebird": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", @@ -4102,6 +4213,26 @@ } } }, + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "requires": { + "array-flatten": "2.1.1", + "deep-equal": "1.0.1", + "dns-equal": "1.0.0", + "dns-txt": "2.0.2", + "multicast-dns": "6.2.1", + "multicast-dns-service-types": "1.1.0" + }, + "dependencies": { + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=" + } + } + }, "boom": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", @@ -4134,6 +4265,11 @@ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" }, + "browser-request": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/browser-request/-/browser-request-0.3.3.tgz", + "integrity": "sha1-ns5bWsqJopkyJC4Yv5M975h2zBc=" + }, "browser-stdout": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz", @@ -4181,6 +4317,14 @@ "randombytes": "2.0.5" } }, + "browserify-sha3": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/browserify-sha3/-/browserify-sha3-0.0.1.tgz", + "integrity": "sha1-P/NKMAbvFcD7NWflQbkaI0ASPRE=", + "requires": { + "js-sha3": "0.3.1" + } + }, "browserify-sign": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", @@ -4213,6 +4357,24 @@ "isarray": "1.0.0" } }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha1-Uvq8xqYG0aADAoAmSO9o9jnaJow=" + }, + "buffer-to-arraybuffer": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.2.tgz", + "integrity": "sha1-0NgFZNwxhmoZdlFUh7OrYg23yEk=", + "requires": { + "tape": "3.6.1" + } + }, "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", @@ -4228,11 +4390,32 @@ "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, "camelcase": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "requires": { + "camelcase": "2.1.1", + "map-obj": "1.0.1" + }, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" + } + } + }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -4284,6 +4467,11 @@ "safe-buffer": "5.1.1" } }, + "classnames": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.5.tgz", + "integrity": "sha1-+zgB1FNGdknvNgPH1hoCvRKb3m0=" + }, "cliui": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", @@ -4320,6 +4508,43 @@ "graceful-readlink": "1.0.1" } }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" + }, + "compressible": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.12.tgz", + "integrity": "sha1-xZpcmdt2dn6YdlAOJx72OzSTvWY=", + "requires": { + "mime-db": "1.30.0" + } + }, + "compression": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.1.tgz", + "integrity": "sha1-7/JgPvwuIs+G810uuTWJ+YdTc9s=", + "requires": { + "accepts": "1.3.4", + "bytes": "3.0.0", + "compressible": "2.0.12", + "debug": "2.6.9", + "on-headers": "1.0.1", + "safe-buffer": "5.1.1", + "vary": "1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + } + } + }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -4335,6 +4560,11 @@ "typedarray": "0.0.6" } }, + "connect-history-api-fallback": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", + "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=" + }, "console-browserify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", @@ -4410,6 +4640,11 @@ } } }, + "countdown": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/countdown/-/countdown-2.6.0.tgz", + "integrity": "sha1-Z3+446nUzE52QVkBuiU7UYrzQXc=" + }, "create-ecdh": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", @@ -4443,6 +4678,16 @@ "sha.js": "2.4.9" } }, + "create-react-class": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.2.tgz", + "integrity": "sha1-zx7RXxKq1/FO9fLf4F5sQvke8Co=", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1" + } + }, "cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", @@ -4502,6 +4747,14 @@ "sequin": "0.1.1" } }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "requires": { + "array-find-index": "1.0.2" + } + }, "d": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", @@ -4510,6 +4763,89 @@ "es5-ext": "0.10.37" } }, + "d3-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.1.tgz", + "integrity": "sha1-0coz3i9qwx76244FCgIdfiOW1dw=" + }, + "d3-collection": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.4.tgz", + "integrity": "sha1-NC39EoN8kJdPM/HMCnha6lcNzcI=" + }, + "d3-color": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.0.3.tgz", + "integrity": "sha1-vHZD/KjlOoNH4vva/6I2eWtYUJs=" + }, + "d3-ease": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.3.tgz", + "integrity": "sha1-aL+8NJM4o4DETYrMT7wzBKotjA4=" + }, + "d3-format": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.2.1.tgz", + "integrity": "sha1-Thns2wgaNB2vr19VXulWvP2/Fn8=" + }, + "d3-interpolate": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.1.6.tgz", + "integrity": "sha1-LPOVriOBgE3wiqG/dmt/l7X2j7Y=", + "requires": { + "d3-color": "1.0.3" + } + }, + "d3-path": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.5.tgz", + "integrity": "sha1-JB6xhJvZ6egCHA0KeZ+KDo5EF2Q=" + }, + "d3-scale": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-1.0.7.tgz", + "integrity": "sha1-+pAySz6op3ZCK9BHKvqwslKglF0=", + "requires": { + "d3-array": "1.2.1", + "d3-collection": "1.0.4", + "d3-color": "1.0.3", + "d3-format": "1.2.1", + "d3-interpolate": "1.1.6", + "d3-time": "1.0.8", + "d3-time-format": "2.1.1" + } + }, + "d3-shape": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.2.0.tgz", + "integrity": "sha1-RdAVOPBkuv0F6j1tLLdI/YxB93c=", + "requires": { + "d3-path": "1.0.5" + } + }, + "d3-time": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.0.8.tgz", + "integrity": "sha1-29LWAHv0Fv5np20XlHt4S//qHoQ=" + }, + "d3-time-format": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.1.tgz", + "integrity": "sha1-hbfN+8n/yhh/FNPEVv/aJoCBuzE=", + "requires": { + "d3-time": "1.0.8" + } + }, + "d3-timer": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.7.tgz", + "integrity": "sha1-35ZQylh/bJZgf/TmDMOCKejdhTE=" + }, + "d3-voronoi": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/d3-voronoi/-/d3-voronoi-1.1.2.tgz", + "integrity": "sha1-Fodmfo8TotFYyAwUgMWinLDYlzw=" + }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", @@ -4543,11 +4879,144 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, + "decompress": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.0.tgz", + "integrity": "sha1-eu3YVCflqS2s/lVnSnxQXpbQH50=", + "requires": { + "decompress-tar": "4.1.1", + "decompress-tarbz2": "4.1.1", + "decompress-targz": "4.1.1", + "decompress-unzip": "4.0.1", + "graceful-fs": "4.1.11", + "make-dir": "1.1.0", + "pify": "2.3.0", + "strip-dirs": "2.1.0" + } + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "1.0.0" + } + }, + "decompress-tar": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", + "integrity": "sha1-cYy9P8sWIJcW5womuE57pFkuWvE=", + "requires": { + "file-type": "5.2.0", + "is-stream": "1.1.0", + "tar-stream": "1.5.5" + } + }, + "decompress-tarbz2": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", + "integrity": "sha1-MIKluIDqQEOBY0nzeLVsUWvho5s=", + "requires": { + "decompress-tar": "4.1.1", + "file-type": "6.2.0", + "is-stream": "1.1.0", + "seek-bzip": "1.0.5", + "unbzip2-stream": "1.2.5" + }, + "dependencies": { + "file-type": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", + "integrity": "sha1-5QzXXTVv/tTjBtxPW89Sp5kDqRk=" + } + } + }, + "decompress-targz": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", + "integrity": "sha1-wJvDXE0R894J8tLaU+neI+fOHu4=", + "requires": { + "decompress-tar": "4.1.1", + "file-type": "5.2.0", + "is-stream": "1.1.0" + } + }, + "decompress-unzip": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", + "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", + "requires": { + "file-type": "3.9.0", + "get-stream": "2.3.1", + "pify": "2.3.0", + "yauzl": "2.9.1" + }, + "dependencies": { + "file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" + }, + "get-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", + "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", + "requires": { + "object-assign": "4.1.1", + "pinkie-promise": "2.0.1" + } + } + } + }, + "deep-equal": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-0.2.2.tgz", + "integrity": "sha1-hLdFiW80xoTpjyzg5Cq69Du6AX0=" + }, + "define-properties": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", + "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", + "requires": { + "foreach": "2.0.5", + "object-keys": "1.0.11" + } + }, + "defined": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/defined/-/defined-0.0.0.tgz", + "integrity": "sha1-817qfXBekzuvE7LwOz+D2SFAOz4=" + }, + "del": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", + "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", + "requires": { + "globby": "6.1.0", + "is-path-cwd": "1.0.0", + "is-path-in-cwd": "1.0.0", + "p-map": "1.2.0", + "pify": "3.0.0", + "rimraf": "2.6.2" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + } + } + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" + }, "des.js": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", @@ -4565,6 +5034,11 @@ "repeating": "2.0.1" } }, + "detect-node": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.3.tgz", + "integrity": "sha1-ogM8CcyOFY03dI+951B4Mr1s4Sc=" + }, "diff": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/diff/-/diff-3.2.0.tgz", @@ -4580,6 +5054,38 @@ "randombytes": "2.0.5" } }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=" + }, + "dns-packet": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.2.2.tgz", + "integrity": "sha1-qKJr7HZGQ4lj/Ibgb4+LFtbIv3o=", + "requires": { + "ip": "1.1.5", + "safe-buffer": "5.1.1" + } + }, + "dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "requires": { + "buffer-indexof": "1.1.1" + } + }, + "dom-helpers": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.2.1.tgz", + "integrity": "sha1-MgPgf+0he9H0JLAZc1WC/Deyglo=" + }, + "dom-walk": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", + "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=" + }, "domain-browser": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", @@ -4590,6 +5096,11 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=" }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, "ecc-jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", @@ -4664,6 +5175,22 @@ "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "requires": { + "iconv-lite": "0.4.19" + } + }, + "end-of-stream": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", + "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", + "requires": { + "once": "1.4.0" + } + }, "enhanced-resolve": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz", @@ -4691,6 +5218,28 @@ "is-arrayish": "0.2.1" } }, + "es-abstract": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.10.0.tgz", + "integrity": "sha1-Hss2wZeEKgDY7kwt/YZGu5fWCGQ=", + "requires": { + "es-to-primitive": "1.1.1", + "function-bind": "1.1.1", + "has": "1.0.1", + "is-callable": "1.1.3", + "is-regex": "1.0.4" + } + }, + "es-to-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", + "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", + "requires": { + "is-callable": "1.1.3", + "is-date-object": "1.0.1", + "is-symbol": "1.0.1" + } + }, "es5-ext": { "version": "0.10.37", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.37.tgz", @@ -4755,6 +5304,11 @@ "es6-symbol": "3.1.1" } }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -4790,6 +5344,20 @@ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" }, + "eth-lib": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.27.tgz", + "integrity": "sha1-8LD9FE+GXS1r+CV6QABPLnXKHdY=", + "requires": { + "bn.js": "4.11.8", + "elliptic": "6.4.0", + "keccakjs": "0.2.1", + "nano-json-stream-parser": "0.1.2", + "servify": "0.1.12", + "ws": "3.3.2", + "xhr-request-promise": "0.1.2" + } + }, "ethereum-common": { "version": "0.0.18", "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", @@ -4827,6 +5395,22 @@ "secp256k1": "3.2.5" } }, + "ethjs-unit": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", + "integrity": "sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=", + "requires": { + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, "ethjs-util": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.4.tgz", @@ -4855,6 +5439,14 @@ "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=" }, + "eventsource": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-0.1.6.tgz", + "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", + "requires": { + "original": "1.0.0" + } + }, "evp_bytestokey": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", @@ -5333,6 +5925,40 @@ "websocket-driver": "0.7.0" } }, + "fbjs": { + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", + "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", + "requires": { + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.17" + }, + "dependencies": { + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + } + } + }, + "fd-slicer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", + "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "requires": { + "pend": "1.2.0" + } + }, + "file-type": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", + "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=" + }, "filename-regex": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", @@ -5350,6 +5976,16 @@ "repeat-string": "1.6.1" } }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "requires": { + "commondir": "1.0.1", + "make-dir": "1.1.0", + "pkg-dir": "2.0.0" + } + }, "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", @@ -5358,6 +5994,22 @@ "locate-path": "2.0.0" } }, + "follow-redirects": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.2.6.tgz", + "integrity": "sha1-Tc3H5Ks91nZal/+Jw7TCWBF8eb8=", + "requires": { + "debug": "3.1.0" + } + }, + "for-each": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.2.tgz", + "integrity": "sha1-LEBFC5NI6X8oEyJZO6lnBLmr1NQ=", + "requires": { + "is-function": "1.0.1" + } + }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -5371,6 +6023,11 @@ "for-in": "1.0.2" } }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" + }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -5408,6 +6065,36 @@ } } }, + "fs-promise": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/fs-promise/-/fs-promise-2.0.3.tgz", + "integrity": "sha1-9k5PhUvPaJqovdy6JokW2z20aFQ=", + "requires": { + "any-promise": "1.3.0", + "fs-extra": "2.1.2", + "mz": "2.7.0", + "thenify-all": "1.6.0" + }, + "dependencies": { + "fs-extra": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-2.1.2.tgz", + "integrity": "sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU=", + "requires": { + "graceful-fs": "4.1.11", + "jsonfile": "2.4.0" + } + }, + "jsonfile": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "requires": { + "graceful-fs": "4.1.11" + } + } + } + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -6202,11 +6889,32 @@ } } }, + "fstream": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", + "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.2" + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=" + }, "get-caller-file": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=" }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + }, "get-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", @@ -6220,6 +6928,43 @@ "assert-plus": "1.0.0" } }, + "github-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/github-api/-/github-api-3.0.0.tgz", + "integrity": "sha1-KDL5jQ06g/FIXi2zLJJZ5LnECnU=", + "requires": { + "axios": "0.15.3", + "debug": "2.6.9", + "js-base64": "2.4.0", + "utf8": "2.1.2" + }, + "dependencies": { + "axios": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz", + "integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=", + "requires": { + "follow-redirects": "1.0.0" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + }, + "follow-redirects": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz", + "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=", + "requires": { + "debug": "2.6.9" + } + } + } + }, "gitter-faye": { "version": "1.1.0-h", "resolved": "https://registry.npmjs.org/gitter-faye/-/gitter-faye-1.1.0-h.tgz", @@ -6302,6 +7047,195 @@ "web3": "0.20.2" } }, + "gittoken-landing-page": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/gittoken-landing-page/-/gittoken-landing-page-0.0.4.tgz", + "integrity": "sha512-/wNWYeVu5vAJ6RQpj4ZdWlRqpPjuyG7cu+i4MYvovoCiqRUO2/yiukmMiTIM2HqYXukdqQXRBhkwoVXYZspkrg==", + "requires": { + "axios": "0.17.1", + "countdown": "2.6.0", + "gittoken-svg-icons": "0.0.8", + "react": "15.6.2", + "react-bootstrap": "0.31.5", + "react-dom": "15.6.2", + "react-highlight": "0.10.0", + "react-icons": "2.2.7", + "react-redux": "5.0.6", + "react-router": "4.2.0", + "react-router-bootstrap": "0.24.4", + "react-router-dom": "4.2.2", + "react-router-redux": "5.0.0-alpha.8", + "redux": "3.7.2", + "redux-thunk": "2.2.0" + }, + "dependencies": { + "react": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/react/-/react-15.6.2.tgz", + "integrity": "sha1-26BDSrQ5z+gvEI8PURZjkIF5qnI=", + "requires": { + "create-react-class": "15.6.2", + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + }, + "react-dom": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-15.6.2.tgz", + "integrity": "sha1-Qc+t9pO3V/rycIRDodH9WgK+9zA=", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + }, + "react-router-redux": { + "version": "5.0.0-alpha.8", + "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-5.0.0-alpha.8.tgz", + "integrity": "sha512-R/Cw62KtlMIifIjLF/xyiVOdHsooXK4uUW/ycX+jYfy1haKqmeY/N/bBiwRFNrMBat1Bn30ynDlgckwFcXLmIQ==", + "requires": { + "history": "4.7.2", + "prop-types": "15.6.0", + "react-router": "4.2.0" + } + } + } + }, + "gittoken-reducers": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.3.tgz", + "integrity": "sha1-FN3ue/aJ/hJC4xRaAp5U0C3H14I=" + }, + "gittoken-registry-ui": { + "version": "0.0.13", + "resolved": "https://registry.npmjs.org/gittoken-registry-ui/-/gittoken-registry-ui-0.0.13.tgz", + "integrity": "sha512-R7iPUSmcWZt1YFTyIlNjkxfsznoPouzcBKmDxhJEOArXg2ZI/qjrwjJOGBt5HjBcGKjp/O0qgw0nMIfuHp0hYw==", + "requires": { + "axios": "0.17.1", + "babel-loader": "7.1.2", + "babel-polyfill": "6.26.0", + "ethereumjs-tx": "1.3.3", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.48", + "gittoken-reducers": "0.0.3", + "gittoken-svg-icons": "0.0.8", + "gittoken-web-workers": "0.0.13", + "history": "4.7.2", + "react": "16.2.0", + "react-bootstrap": "0.31.5", + "react-dom": "16.2.0", + "react-redux": "5.0.6", + "react-router-dom": "4.2.2", + "react-router-redux": "4.0.8", + "redux": "3.7.2", + "redux-thunk": "2.2.0", + "victory": "0.24.2", + "web3": "1.0.0-beta.26", + "webpack": "3.8.1", + "webpack-dev-server": "2.9.7" + }, + "dependencies": { + "bignumber.js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", + "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + }, + "gittoken-contracts": { + "version": "0.0.48", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.48.tgz", + "integrity": "sha512-1bK4oxp30YOac8xU01x2wgQbb47fULHMwfZz4alMW8WC53RDb9dGt43wEvdHG8EbO987RyFmrQ+59hqyM9OWrw==", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.18", + "truffle": "3.4.11", + "web3": "0.19.1" + }, + "dependencies": { + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } + }, + "web3": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.0.0-beta.26.tgz", + "integrity": "sha1-u0ba9q78MT92iz3jnX9KjXvQZmM=", + "requires": { + "web3-bzz": "1.0.0-beta.26", + "web3-core": "1.0.0-beta.26", + "web3-eth": "1.0.0-beta.26", + "web3-eth-personal": "1.0.0-beta.26", + "web3-net": "1.0.0-beta.26", + "web3-shh": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + } + } + } + }, + "gittoken-svg-icons": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.8.tgz", + "integrity": "sha1-XE39WFCAcMTmKZ3mlk9Bn8CFwVU=", + "requires": { + "react": "16.2.0", + "react-dom": "16.2.0" + } + }, + "gittoken-web-workers": { + "version": "0.0.13", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.13.tgz", + "integrity": "sha1-gFgddOnrVQ9wr9t5XOwJcVH53qA=", + "requires": { + "bluebird": "3.5.1", + "browser-request": "0.3.3", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.48" + }, + "dependencies": { + "bignumber.js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", + "integrity": "sha1-228UBnwUC9RmJIFaeRbJLZtsJLE=" + }, + "gittoken-contracts": { + "version": "0.0.48", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.48.tgz", + "integrity": "sha1-gZKxMt3XvpWzhLLf39DiGqmfvrI=", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.18", + "truffle": "3.4.11", + "web3": "0.19.1" + } + }, + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } + }, "glob": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", @@ -6332,11 +7266,60 @@ "is-glob": "2.0.1" } }, + "global": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz", + "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", + "requires": { + "min-document": "2.19.0", + "process": "0.5.2" + }, + "dependencies": { + "process": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", + "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=" + } + } + }, "globals": { "version": "9.18.0", "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "requires": { + "array-union": "1.0.2", + "glob": "7.1.2", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "got": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha1-BUUP2ECU5rvqVvRRpDqcKJFmOFo=", + "requires": { + "decompress-response": "3.3.0", + "duplexer3": "0.1.4", + "get-stream": "3.0.0", + "is-plain-obj": "1.1.0", + "is-retry-allowed": "1.1.0", + "is-stream": "1.1.0", + "isurl": "1.0.0", + "lowercase-keys": "1.0.0", + "p-cancelable": "0.3.0", + "p-timeout": "1.2.1", + "safe-buffer": "5.1.1", + "timed-out": "4.0.1", + "url-parse-lax": "1.0.0", + "url-to-options": "1.0.1" + } + }, "graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", @@ -6367,6 +7350,11 @@ "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=" }, + "handle-thing": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz", + "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" + }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -6381,6 +7369,14 @@ "har-schema": "2.0.0" } }, + "has": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", + "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", + "requires": { + "function-bind": "1.1.1" + } + }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", @@ -6394,6 +7390,19 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=" }, + "has-symbol-support-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz", + "integrity": "sha1-ZuwuN34MfXzO2wejqE13UQ/xvEw=" + }, + "has-to-string-tag-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", + "integrity": "sha1-oEWrOD17SyASoAFIqwql8pAETU0=", + "requires": { + "has-symbol-support-x": "1.4.1" + } + }, "hash-base": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", @@ -6418,11 +7427,33 @@ "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=" }, + "highlight.js": { + "version": "9.12.0", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.12.0.tgz", + "integrity": "sha1-5tnb5Xy+/mB1HwKvM2GVhwyQwB4=" + }, + "history": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/history/-/history-4.7.2.tgz", + "integrity": "sha1-IrXH8xYzxbgCHH9KipVKwTnujVs=", + "requires": { + "invariant": "2.2.2", + "loose-envify": "1.3.1", + "resolve-pathname": "2.2.0", + "value-equal": "0.4.0", + "warning": "3.0.0" + } + }, "hoek": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz", "integrity": "sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ==" }, + "hoist-non-react-statics": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.3.1.tgz", + "integrity": "sha1-ND24TGAYxlB3iJgkATWhQg7iLOA=" + }, "home-or-tmp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", @@ -6437,11 +7468,90 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==" }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "requires": { + "inherits": "2.0.3", + "obuf": "1.1.1", + "readable-stream": "2.3.3", + "wbuf": "1.7.2" + } + }, + "html-entities": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", + "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=" + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" + }, + "http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "requires": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": "1.4.0" + } + }, + "http-https": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", + "integrity": "sha1-L5CN1fHbQGjAWM1ubUzjkskTOJs=" + }, "http-parser-js": { "version": "0.4.9", "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.9.tgz", "integrity": "sha1-6hoE+2St/wJC6ZdPKX3Uw8rSceE=" }, + "http-proxy": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.16.2.tgz", + "integrity": "sha1-Bt/ykpUr9k2+hHH6nfcwZtTzd0I=", + "requires": { + "eventemitter3": "1.2.0", + "requires-port": "1.0.0" + }, + "dependencies": { + "eventemitter3": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz", + "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=" + } + } + }, + "http-proxy-middleware": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz", + "integrity": "sha1-ZC6ISIUdZvCdTxJJEoRtuutBuDM=", + "requires": { + "http-proxy": "1.16.2", + "is-glob": "3.1.0", + "lodash": "4.17.4", + "micromatch": "2.3.11" + }, + "dependencies": { + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "requires": { + "is-extglob": "2.1.1" + } + } + } + }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -6457,11 +7567,33 @@ "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, "ieee754": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=" }, + "import-local": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", + "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", + "requires": { + "pkg-dir": "2.0.0", + "resolve-cwd": "2.0.0" + } + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "requires": { + "repeating": "2.0.1" + } + }, "indexof": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", @@ -6481,6 +7613,14 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, + "internal-ip": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-1.2.0.tgz", + "integrity": "sha1-rp+/k7mEh4eF1QqN4bNWlWBYz1w=", + "requires": { + "meow": "3.7.0" + } + }, "interpret": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", @@ -6499,6 +7639,11 @@ "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" + }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -6525,6 +7670,16 @@ "builtin-modules": "1.1.1" } }, + "is-callable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", + "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=" + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=" + }, "is-dotfile": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", @@ -6564,6 +7719,11 @@ "number-is-nan": "1.0.1" } }, + "is-function": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.1.tgz", + "integrity": "sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU=" + }, "is-glob": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", @@ -6577,6 +7737,11 @@ "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=" }, + "is-natural-number": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", + "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" + }, "is-number": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", @@ -6585,21 +7750,70 @@ "kind-of": "3.2.2" } }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" + "is-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", + "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=" }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=" }, - "is-stream": { + "is-path-in-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", + "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", + "requires": { + "is-path-inside": "1.0.1" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "requires": { + "path-is-inside": "1.0.2" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "requires": { + "has": "1.0.1" + } + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" + }, + "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, + "is-symbol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", + "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=" + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -6610,6 +7824,11 @@ "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" + }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", @@ -6628,11 +7847,39 @@ "isarray": "1.0.0" } }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } + }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, + "isurl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", + "integrity": "sha1-sn9PSfPNqj6kSgpbfzRi5u3DnWc=", + "requires": { + "has-to-string-tag-x": "1.4.1", + "is-object": "1.0.1" + } + }, + "js-base64": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.0.tgz", + "integrity": "sha1-nlZv7mJHUaHXIMlmzWIm0p1AJao=" + }, + "js-sha3": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.3.1.tgz", + "integrity": "sha1-hhIoAhQvCChQKg0d7h2V4lO7AkM=" + }, "js-tokens": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", @@ -7086,6 +8333,20 @@ } } }, + "keccakjs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/keccakjs/-/keccakjs-0.2.1.tgz", + "integrity": "sha1-HWM6+QfvMFu/ny+mFtVsRFYd+k0=", + "requires": { + "browserify-sha3": "0.0.1", + "sha3": "1.2.0" + } + }, + "keycode": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/keycode/-/keycode-2.1.9.tgz", + "integrity": "sha1-lkojxU5IiUBbSGGlyfBIDUUUHfo=" + }, "keythereum": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/keythereum/-/keythereum-1.0.2.tgz", @@ -7494,6 +8755,11 @@ } } }, + "killable": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.0.tgz", + "integrity": "sha1-2ouEvUfeU5WHj5XWTQLyRJ/gXms=" + }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", @@ -7563,6 +8829,11 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" }, + "lodash-es": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.4.tgz", + "integrity": "sha1-3MHXVS4VCgZABzupyzHXDwMpUOc=" + }, "lodash._baseassign": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", @@ -7627,6 +8898,11 @@ "lodash.isarray": "3.0.4" } }, + "loglevel": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.0.tgz", + "integrity": "sha1-rgyqVhERSYxboTcj1vtjHSQAOTQ=" + }, "longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", @@ -7640,6 +8916,20 @@ "js-tokens": "3.0.2" } }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "requires": { + "currently-unhandled": "0.4.1", + "signal-exit": "3.0.2" + } + }, + "lowercase-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", + "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" + }, "lru-cache": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", @@ -7649,6 +8939,26 @@ "yallist": "2.1.2" } }, + "make-dir": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.1.0.tgz", + "integrity": "sha1-GbQ2n+SMEW9Twq+VrRAsDjnoXVE=", + "requires": { + "pify": "3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + } + } + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" + }, "md5.js": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", @@ -7691,6 +9001,96 @@ "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=" }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "requires": { + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.4.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "0.2.1" + } + } + } + }, "micromatch": { "version": "2.3.11", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", @@ -7720,6 +9120,11 @@ "brorand": "1.1.0" } }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=" + }, "mime-db": { "version": "1.30.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", @@ -7738,6 +9143,19 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=" }, + "mimic-response": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz", + "integrity": "sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4=" + }, + "min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "requires": { + "dom-walk": "0.1.1" + } + }, "minimalistic-assert": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", @@ -7764,6 +9182,14 @@ "minimist": "0.0.8" } }, + "mkdirp-promise": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", + "integrity": "sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE=", + "requires": { + "mkdirp": "0.5.1" + } + }, "mocha": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.5.3.tgz", @@ -7819,11 +9245,35 @@ } } }, + "mock-fs": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.4.2.tgz", + "integrity": "sha1-Cd7FMT+XCVpFC+aqKtirZzjWPWs=" + }, + "mout": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/mout/-/mout-0.11.1.tgz", + "integrity": "sha1-ujYR318OWx/7/QEWa48C0fX6K5k=" + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "multicast-dns": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.1.tgz", + "integrity": "sha1-xQNd76khnTBkBVikkpgGc1IJgGA=", + "requires": { + "dns-packet": "1.2.2", + "thunky": "0.1.0" + } + }, + "multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" + }, "mysql": { "version": "2.15.0", "resolved": "https://registry.npmjs.org/mysql/-/mysql-2.15.0.tgz", @@ -7842,11 +9292,44 @@ } } }, + "mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha1-lQCAV6Vsr63CvGPd5/n/aVWUjjI=", + "requires": { + "any-promise": "1.3.0", + "object-assign": "4.1.1", + "thenify-all": "1.6.0" + } + }, "nan": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", - "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=", - "optional": true + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" + }, + "nano-json-stream-parser": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", + "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "requires": { + "encoding": "0.1.12", + "is-stream": "1.1.0" + } + }, + "node-forge": { + "version": "0.6.33", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.6.33.tgz", + "integrity": "sha1-RjgRh59XPUUVWtap9D3ClujoXrw=" }, "node-gitter": { "version": "2.1.0", @@ -7935,6 +9418,22 @@ "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, + "number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=", + "requires": { + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, "oauth": { "version": "0.9.15", "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", @@ -7950,6 +9449,16 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, + "object-inspect": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-0.4.0.tgz", + "integrity": "sha1-9RV8EWwUVbJDsG7pdwM5LFrYn+w=" + }, + "object-keys": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", + "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=" + }, "object.omit": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", @@ -7959,6 +9468,24 @@ "is-extendable": "0.1.1" } }, + "oboe": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.3.tgz", + "integrity": "sha1-K0hl29Rr6BIlcT9Om/5Lz09oCk8=", + "requires": { + "http-https": "1.0.0" + } + }, + "obuf": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.1.tgz", + "integrity": "sha1-EEEktsYCxnlogaBCVB0220OlJk4=" + }, + "on-headers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", + "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=" + }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -7967,6 +9494,33 @@ "wrappy": "1.0.2" } }, + "opn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.1.0.tgz", + "integrity": "sha1-cs4jBqF9vqWP8QQYUzUrSo/HdRk=", + "requires": { + "is-wsl": "1.1.0" + } + }, + "original": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.0.tgz", + "integrity": "sha1-kUf5P6FpbQS+YeAb1QuurKZWvTs=", + "requires": { + "url-parse": "1.0.5" + }, + "dependencies": { + "url-parse": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.0.5.tgz", + "integrity": "sha1-CFSGBCKv3P7+tsllxmLUgAFpkns=", + "requires": { + "querystringify": "0.0.4", + "requires-port": "1.0.0" + } + } + } + }, "original-require": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/original-require/-/original-require-1.0.1.tgz", @@ -7997,6 +9551,11 @@ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" }, + "p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha1-ueEjgAvOu3rBOkeb4ZW1B7mNMPo=" + }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", @@ -8015,6 +9574,19 @@ "p-limit": "1.1.0" } }, + "p-map": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", + "integrity": "sha1-5OlPMR6rvIYzoeeZCBZfyiYkG2s=" + }, + "p-timeout": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", + "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", + "requires": { + "p-finally": "1.0.0" + } + }, "pako": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", @@ -8043,6 +9615,15 @@ "is-glob": "2.0.1" } }, + "parse-headers": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.1.tgz", + "integrity": "sha1-aug6eqJanZtwCswoaYzR8e1+lTY=", + "requires": { + "for-each": "0.3.2", + "trim": "0.0.1" + } + }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", @@ -8051,6 +9632,11 @@ "error-ex": "1.3.1" } }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, "passport": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/passport/-/passport-0.3.2.tgz", @@ -8152,11 +9738,31 @@ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" + }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + } + } + }, "path-type": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", @@ -8177,6 +9783,11 @@ "sha.js": "2.4.9" } }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" + }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -8200,19 +9811,57 @@ "pinkie": "2.0.4" } }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "requires": { + "find-up": "2.1.0" + } }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "portfinder": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.13.tgz", + "integrity": "sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek=", + "requires": { + "async": "1.5.2", + "debug": "2.6.9", + "mkdirp": "0.5.1" + }, + "dependencies": { + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" }, "process-nextick-args": { @@ -8220,6 +9869,32 @@ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + }, + "prop-types": { + "version": "15.6.0", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz", + "integrity": "sha1-zq8IMCL8RrSjX2nhPvda7Q1jmFY=", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1" + } + }, + "prop-types-extra": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prop-types-extra/-/prop-types-extra-1.0.1.tgz", + "integrity": "sha1-pXvUgQ6C0no/9DF+zBtK0AX3moI=", + "requires": { + "warning": "3.0.0" + } + }, "prr": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz", @@ -8257,6 +9932,14 @@ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" }, + "query-string": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-2.4.2.tgz", + "integrity": "sha1-fbBmZCCAS6qSrp8miWKFWnYUPfs=", + "requires": { + "strict-uri-encode": "1.1.0" + } + }, "querystring": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", @@ -8267,6 +9950,11 @@ "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" }, + "querystringify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-0.0.4.tgz", + "integrity": "sha1-DPf4T5Rj/wrlHExLFC2VvjdyTZw=" + }, "randomatic": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", @@ -8321,6 +10009,168 @@ "safe-buffer": "5.1.1" } }, + "randomhex": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/randomhex/-/randomhex-0.1.5.tgz", + "integrity": "sha1-us7vmCMpCRQA8qKRLGzQLxCU9YU=" + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" + }, + "react": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.2.0.tgz", + "integrity": "sha512-ZmIomM7EE1DvPEnSFAHZn9Vs9zJl5A9H7el0EGTE6ZbW9FKe/14IYAlPbC8iH25YarEQxZL+E8VW7Mi7kfQrDQ==", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + }, + "react-bootstrap": { + "version": "0.31.5", + "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.5.tgz", + "integrity": "sha1-VwQPqLEnTh4HSAPCGhuJX9q+oFo=", + "requires": { + "babel-runtime": "6.26.0", + "classnames": "2.2.5", + "dom-helpers": "3.2.1", + "invariant": "2.2.2", + "keycode": "2.1.9", + "prop-types": "15.6.0", + "prop-types-extra": "1.0.1", + "react-overlays": "0.7.4", + "uncontrollable": "4.1.0", + "warning": "3.0.0" + } + }, + "react-dom": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.2.0.tgz", + "integrity": "sha512-zpGAdwHVn9K0091d+hr+R0qrjoJ84cIBFL2uU60KvWBPfZ7LPSrfqviTxGHWN0sjPZb2hxWzMexwrvJdKePvjg==", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + }, + "react-highlight": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/react-highlight/-/react-highlight-0.10.0.tgz", + "integrity": "sha1-04b53Oq4Z9wNzCNkFT+xzHZF0EY=", + "requires": { + "highlight.js": "9.12.0", + "react": "15.6.2", + "react-dom": "15.6.2" + }, + "dependencies": { + "react": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/react/-/react-15.6.2.tgz", + "integrity": "sha1-26BDSrQ5z+gvEI8PURZjkIF5qnI=", + "requires": { + "create-react-class": "15.6.2", + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + }, + "react-dom": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-15.6.2.tgz", + "integrity": "sha1-Qc+t9pO3V/rycIRDodH9WgK+9zA=", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + } + } + }, + "react-icon-base": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/react-icon-base/-/react-icon-base-2.1.0.tgz", + "integrity": "sha1-oZbjP98eeqof2jrvu2i9rZ6Cp50=" + }, + "react-icons": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-2.2.7.tgz", + "integrity": "sha512-0n4lcGqzJFcIQLoQytLdJCE0DKSA9dkwEZRYoGrIDJZFvIT6Hbajx5mv9geqhqFiNjUgtxg8kPyDfjlhymbGFg==", + "requires": { + "react-icon-base": "2.1.0" + } + }, + "react-overlays": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz", + "integrity": "sha1-7y7GUsNESriqAUJisY9mIGjlbVw=", + "requires": { + "classnames": "2.2.5", + "dom-helpers": "3.2.1", + "prop-types": "15.6.0", + "prop-types-extra": "1.0.1", + "warning": "3.0.0" + } + }, + "react-redux": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-5.0.6.tgz", + "integrity": "sha1-I+06T5hjWdaLUhLqqmgeYNZXSUY=", + "requires": { + "hoist-non-react-statics": "2.3.1", + "invariant": "2.2.2", + "lodash": "4.17.4", + "lodash-es": "4.17.4", + "loose-envify": "1.3.1", + "prop-types": "15.6.0" + } + }, + "react-router": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-4.2.0.tgz", + "integrity": "sha1-Yfez43cNrrJAYtrj7t7xsFQVWYY=", + "requires": { + "history": "4.7.2", + "hoist-non-react-statics": "2.3.1", + "invariant": "2.2.2", + "loose-envify": "1.3.1", + "path-to-regexp": "1.7.0", + "prop-types": "15.6.0", + "warning": "3.0.0" + } + }, + "react-router-bootstrap": { + "version": "0.24.4", + "resolved": "https://registry.npmjs.org/react-router-bootstrap/-/react-router-bootstrap-0.24.4.tgz", + "integrity": "sha512-kEwk3ml4wvE3IbJvRVjx0zBBBxW4JLhD0wyy0hBdlWSdfjvgoHVvlxx9gBPxvEs5VwWlbFvNRyUghLZ2AMcmzg==", + "requires": { + "prop-types": "15.6.0" + } + }, + "react-router-dom": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.2.2.tgz", + "integrity": "sha1-yKgd863Fi7qKdngulGy9Tq5km40=", + "requires": { + "history": "4.7.2", + "invariant": "2.2.2", + "loose-envify": "1.3.1", + "prop-types": "15.6.0", + "react-router": "4.2.0", + "warning": "3.0.0" + } + }, + "react-router-redux": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-4.0.8.tgz", + "integrity": "sha1-InQDWWtRUeGCN32rg1tdRfD4BU4=" + }, "read-pkg": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", @@ -8365,11 +10215,41 @@ "set-immediate-shim": "1.0.1" } }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "requires": { + "indent-string": "2.1.0", + "strip-indent": "1.0.1" + } + }, + "redux": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/redux/-/redux-3.7.2.tgz", + "integrity": "sha1-BrcxIyFZAdJdBlvjQusCa8HIU3s=", + "requires": { + "lodash": "4.17.4", + "lodash-es": "4.17.4", + "loose-envify": "1.3.1", + "symbol-observable": "1.1.0" + } + }, + "redux-thunk": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.2.0.tgz", + "integrity": "sha1-5hWhbha0ehmlFXZhM9Hj6Zt4UuU=" + }, "regenerate": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==" }, + "regenerator-runtime": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=" + }, "regenerator-transform": { "version": "0.10.1", "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", @@ -8497,6 +10377,37 @@ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "requires": { + "resolve-from": "3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" + }, + "resolve-pathname": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz", + "integrity": "sha1-fpriHtgV/WOrGJre7mTcgx7vqHk=" + }, + "resumer": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", + "integrity": "sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k=", + "requires": { + "through": "2.3.8" + } + }, "right-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", @@ -8532,6 +10443,31 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" }, + "scrypt": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/scrypt/-/scrypt-6.0.3.tgz", + "integrity": "sha1-BOAUpWgrU/pQwtXM4WfXGcBthw0=", + "requires": { + "nan": "2.8.0" + } + }, + "scrypt.js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/scrypt.js/-/scrypt.js-0.2.0.tgz", + "integrity": "sha1-r40UZbcemZARC+38WTuUeeA6ito=", + "requires": { + "scrypt": "6.0.3", + "scryptsy": "1.2.1" + } + }, + "scryptsy": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-1.2.1.tgz", + "integrity": "sha1-oyJfpLJST4AnAHYeKFW987LZIWM=", + "requires": { + "pbkdf2": "3.0.14" + } + }, "secp256k1": { "version": "3.2.5", "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.2.5.tgz", @@ -9052,6 +10988,37 @@ } } }, + "seek-bzip": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", + "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", + "requires": { + "commander": "2.8.1" + }, + "dependencies": { + "commander": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "requires": { + "graceful-readlink": "1.0.1" + } + } + } + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" + }, + "selfsigned": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.1.tgz", + "integrity": "sha1-v4y3uDJWxFUeMTR8YxF3jbme7FI=", + "requires": { + "node-forge": "0.6.33" + } + }, "semver": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", @@ -9062,6 +11029,42 @@ "resolved": "https://registry.npmjs.org/sequin/-/sequin-0.1.1.tgz", "integrity": "sha1-XC04nWajg3NOqvvEXt6ywcsb5wE=" }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "requires": { + "accepts": "1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "1.0.3", + "http-errors": "1.6.2", + "mime-types": "2.1.17", + "parseurl": "1.3.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "servify": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", + "integrity": "sha1-FCq3vuHx0DO2bQcHCGCFsXwG25U=", + "requires": { + "body-parser": "1.18.2", + "cors": "2.8.4", + "express": "4.16.2", + "request": "2.83.0", + "xhr": "2.4.0" + } + }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -9077,6 +11080,11 @@ "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, + "setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" + }, "sha.js": { "version": "2.4.9", "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.9.tgz", @@ -9086,6 +11094,14 @@ "safe-buffer": "5.1.1" } }, + "sha3": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/sha3/-/sha3-1.2.0.tgz", + "integrity": "sha1-aYnxtwpJhwWHajc+LGKs6WqpOZo=", + "requires": { + "nan": "2.8.0" + } + }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -9099,11 +11115,26 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" }, + "sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=" + }, "signal-exit": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, + "simple-get": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", + "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", + "requires": { + "once": "1.4.0", + "unzip-response": "1.0.2", + "xtend": "4.0.1" + } + }, "slash": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", @@ -9117,6 +11148,53 @@ "hoek": "4.2.0" } }, + "sockjs": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.18.tgz", + "integrity": "sha1-2bKJMWyn33dZXvKZ4HXw+TfrQgc=", + "requires": { + "faye-websocket": "0.10.0", + "uuid": "2.0.3" + }, + "dependencies": { + "faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "requires": { + "websocket-driver": "0.7.0" + } + }, + "uuid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" + } + } + }, + "sockjs-client": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.1.4.tgz", + "integrity": "sha1-W6vjhrd15M8U51IJEUUmVAFsixI=", + "requires": { + "debug": "2.6.9", + "eventsource": "0.1.6", + "faye-websocket": "0.11.1", + "inherits": "2.0.3", + "json3": "3.3.2", + "url-parse": "1.2.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + } + } + }, "solc": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/solc/-/solc-0.4.18.tgz", @@ -9306,6 +11384,53 @@ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=" }, + "spdy": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz", + "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=", + "requires": { + "debug": "2.6.9", + "handle-thing": "1.2.5", + "http-deceiver": "1.2.7", + "safe-buffer": "5.1.1", + "select-hose": "2.0.0", + "spdy-transport": "2.0.20" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "spdy-transport": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.0.20.tgz", + "integrity": "sha1-c15yBUxIayNU/onnAiVgBKOazk0=", + "requires": { + "debug": "2.6.9", + "detect-node": "2.0.3", + "hpack.js": "2.1.6", + "obuf": "1.1.1", + "readable-stream": "2.3.3", + "safe-buffer": "5.1.1", + "wbuf": "1.7.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + } + } + }, "sqlstring": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.0.tgz", @@ -9326,6 +11451,11 @@ "tweetnacl": "0.14.5" } }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic=" + }, "stealthy-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", @@ -9352,6 +11482,11 @@ "xtend": "4.0.1" } }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -9407,6 +11542,14 @@ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" }, + "strip-dirs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", + "integrity": "sha1-SYdzYmT8NEzyD2w0rKnRPR1O1sU=", + "requires": { + "is-natural-number": "4.0.1" + } + }, "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", @@ -9420,16 +11563,192 @@ "is-hex-prefixed": "1.0.0" } }, - "supports-color": { + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "requires": { + "get-stdin": "4.0.1" + } + }, + "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" }, + "swarm-js": { + "version": "0.1.37", + "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.37.tgz", + "integrity": "sha1-J9SFMXo0C77sQCkq94PMEKz6RmM=", + "requires": { + "bluebird": "3.5.1", + "buffer": "5.0.8", + "decompress": "4.2.0", + "eth-lib": "0.1.27", + "fs-extra": "2.1.2", + "fs-promise": "2.0.3", + "got": "7.1.0", + "mime-types": "2.1.17", + "mkdirp-promise": "5.0.1", + "mock-fs": "4.4.2", + "setimmediate": "1.0.5", + "tar.gz": "1.0.7", + "xhr-request-promise": "0.1.2" + }, + "dependencies": { + "buffer": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.0.8.tgz", + "integrity": "sha1-hNqlLnzy+ozkGVvFzw94CeCTCyQ=", + "requires": { + "base64-js": "1.2.1", + "ieee754": "1.1.8" + } + }, + "fs-extra": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-2.1.2.tgz", + "integrity": "sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU=", + "requires": { + "graceful-fs": "4.1.11", + "jsonfile": "2.4.0" + } + }, + "jsonfile": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "requires": { + "graceful-fs": "4.1.11" + } + } + } + }, + "symbol-observable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.1.0.tgz", + "integrity": "sha1-XGj9jVQRXZ37cqhHIFSSIujbmzI=" + }, "tapable": { "version": "0.2.8", "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.8.tgz", "integrity": "sha1-mTcqXJmb8t8WCvwNdL7U9HlIzSI=" }, + "tape": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/tape/-/tape-3.6.1.tgz", + "integrity": "sha1-SJPdU+KApfWMDOswwsDrs7zVHh8=", + "requires": { + "deep-equal": "0.2.2", + "defined": "0.0.0", + "glob": "3.2.11", + "inherits": "2.0.3", + "object-inspect": "0.4.0", + "resumer": "0.0.0", + "through": "2.3.8" + }, + "dependencies": { + "glob": { + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz", + "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=", + "requires": { + "inherits": "2.0.3", + "minimatch": "0.3.0" + } + }, + "lru-cache": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", + "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=" + }, + "minimatch": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz", + "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=", + "requires": { + "lru-cache": "2.7.3", + "sigmund": "1.0.1" + } + } + } + }, + "tar": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", + "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "requires": { + "block-stream": "0.0.9", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "tar-stream": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", + "integrity": "sha1-XK2Ed59FyDsfJQjZawnYjHIYr1U=", + "requires": { + "bl": "1.2.1", + "end-of-stream": "1.4.0", + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "tar.gz": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/tar.gz/-/tar.gz-1.0.7.tgz", + "integrity": "sha1-V37yxZX6qnNFLvBBX+1BETISJXs=", + "requires": { + "bluebird": "2.11.0", + "commander": "2.9.0", + "fstream": "1.0.11", + "mout": "0.11.1", + "tar": "2.2.1" + }, + "dependencies": { + "bluebird": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz", + "integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=" + } + } + }, + "thenify": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz", + "integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=", + "requires": { + "any-promise": "1.3.0" + } + }, + "thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", + "requires": { + "thenify": "3.3.0" + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "thunky": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-0.1.0.tgz", + "integrity": "sha1-vzAUaCTituZ7Dy16Ssi+smkIaE4=" + }, + "time-stamp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-2.0.0.tgz", + "integrity": "sha1-lcakRTDhW6jW9KPsuMOj+sRto1c=" + }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" + }, "timers-browserify": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.4.tgz", @@ -9456,6 +11775,16 @@ "punycode": "1.4.1" } }, + "trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=" + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" + }, "trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", @@ -9648,6 +11977,19 @@ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, + "typedarray-to-buffer": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.2.tgz", + "integrity": "sha1-EBezLZhP9VbroQD1AViauhrOLgQ=", + "requires": { + "is-typedarray": "1.0.0" + } + }, + "ua-parser-js": { + "version": "0.7.17", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", + "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==" + }, "uglify-js": { "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", @@ -9692,11 +12034,60 @@ "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=" }, + "ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha1-n+FTahCmZKZSZqHjzPhf02MCvJw=" + }, + "unbzip2-stream": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.2.5.tgz", + "integrity": "sha1-c6AzpWe7veWWVLGTxE1Ip+T0PEc=", + "requires": { + "buffer": "3.6.0", + "through": "2.3.8" + }, + "dependencies": { + "base64-js": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz", + "integrity": "sha1-EQHpVE9KdrG8OybUUsqW16NeeXg=" + }, + "buffer": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-3.6.0.tgz", + "integrity": "sha1-pyyTb3e5a/UvX357RnGAYoVR3vs=", + "requires": { + "base64-js": "0.0.8", + "ieee754": "1.1.8", + "isarray": "1.0.0" + } + } + } + }, + "uncontrollable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-4.1.0.tgz", + "integrity": "sha1-4DWCkSUuGGUiLZCTmxny9J+Bwak=", + "requires": { + "invariant": "2.2.2" + } + }, + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + }, "unorm": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/unorm/-/unorm-1.4.1.tgz", "integrity": "sha1-NkIA1fE2RsqLzURJAnEzVhR5IwA=" }, + "unzip-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", + "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" + }, "url": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", @@ -9713,6 +12104,40 @@ } } }, + "url-parse": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.2.0.tgz", + "integrity": "sha1-OhnoqqbQI93SfcxEy0/I9/7COYY=", + "requires": { + "querystringify": "1.0.0", + "requires-port": "1.0.0" + }, + "dependencies": { + "querystringify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-1.0.0.tgz", + "integrity": "sha1-YoYkIRLFtxL6ZU5SZlK/ahP/Bcs=" + } + } + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "requires": { + "prepend-http": "1.0.4" + } + }, + "url-set-query": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", + "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=" + }, + "url-to-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", + "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" + }, "utf8": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/utf8/-/utf8-2.1.2.tgz", @@ -9757,6 +12182,16 @@ "spdx-expression-parse": "1.0.4" } }, + "value-equal": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-0.4.0.tgz", + "integrity": "sha1-xb3S9U7gk8BIOdcc4uR1imiQq8c=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", @@ -9767,6 +12202,49 @@ "extsprintf": "1.3.0" } }, + "victory": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/victory/-/victory-0.24.2.tgz", + "integrity": "sha1-jw9Ayhks94I0SozTPKwGpTRTxcs=", + "requires": { + "victory-chart": "24.3.0", + "victory-core": "20.3.0", + "victory-pie": "13.1.0" + } + }, + "victory-chart": { + "version": "24.3.0", + "resolved": "https://registry.npmjs.org/victory-chart/-/victory-chart-24.3.0.tgz", + "integrity": "sha1-Uj/OkdQbrho2bjbLO61zdCjiYKo=", + "requires": { + "d3-voronoi": "1.1.2", + "lodash": "4.17.4", + "victory-core": "20.3.0" + } + }, + "victory-core": { + "version": "20.3.0", + "resolved": "https://registry.npmjs.org/victory-core/-/victory-core-20.3.0.tgz", + "integrity": "sha1-5R472XlPEW676rTNk54AwQbxVy8=", + "requires": { + "d3-ease": "1.0.3", + "d3-interpolate": "1.1.6", + "d3-scale": "1.0.7", + "d3-shape": "1.2.0", + "d3-timer": "1.0.7", + "lodash": "4.17.4" + } + }, + "victory-pie": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/victory-pie/-/victory-pie-13.1.0.tgz", + "integrity": "sha1-4j/lQ5OauC8F2BoyEJOZeRGrHMM=", + "requires": { + "d3-shape": "1.2.0", + "lodash": "4.17.4", + "victory-core": "20.3.0" + } + }, "vm-browserify": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", @@ -9775,6 +12253,14 @@ "indexof": "0.0.1" } }, + "warning": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", + "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", + "requires": { + "loose-envify": "1.3.1" + } + }, "watchpack": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.4.0.tgz", @@ -9785,6 +12271,14 @@ "graceful-fs": "4.1.11" } }, + "wbuf": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.2.tgz", + "integrity": "sha1-1pe5nx9ZUS3ydRvkJ2nBWAtYAf4=", + "requires": { + "minimalistic-assert": "1.0.0" + } + }, "web3": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/web3/-/web3-0.20.2.tgz", @@ -9797,6 +12291,286 @@ "xmlhttprequest": "1.8.0" } }, + "web3-bzz": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.0.0-beta.26.tgz", + "integrity": "sha1-WFihjN5XaHSAGoPR30IJX8lYWQw=", + "requires": { + "got": "7.1.0", + "swarm-js": "0.1.37", + "underscore": "1.8.3" + } + }, + "web3-core": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.0.0-beta.26.tgz", + "integrity": "sha1-hczKK2KfmK3+sOK21+K31nepeVk=", + "requires": { + "web3-core-helpers": "1.0.0-beta.26", + "web3-core-method": "1.0.0-beta.26", + "web3-core-requestmanager": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + } + }, + "web3-core-helpers": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.0.0-beta.26.tgz", + "integrity": "sha1-2G31xrMQ/FjFtv9Woz0mePu8PcM=", + "requires": { + "underscore": "1.8.3", + "web3-eth-iban": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + } + }, + "web3-core-method": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.0.0-beta.26.tgz", + "integrity": "sha1-SdhpoacvMiNXbIkmCe7kDTsiVXw=", + "requires": { + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.26", + "web3-core-promievent": "1.0.0-beta.26", + "web3-core-subscriptions": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + } + }, + "web3-core-promievent": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.0.0-beta.26.tgz", + "integrity": "sha1-BkJSUZ35t+banCD1lKAuz+nDU8E=", + "requires": { + "bluebird": "3.3.1", + "eventemitter3": "1.1.1" + }, + "dependencies": { + "bluebird": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.3.1.tgz", + "integrity": "sha1-+Xrhlw9B2FF3KDBT6aEgFg5mxh0=" + }, + "eventemitter3": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.1.1.tgz", + "integrity": "sha1-R3hr2qCHyvext15zq8XH1UAVjNA=" + } + } + }, + "web3-core-requestmanager": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.0.0-beta.26.tgz", + "integrity": "sha1-dffvfy/GpLDTRr8AVCFXuB4UsDM=", + "requires": { + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.26", + "web3-providers-http": "1.0.0-beta.26", + "web3-providers-ipc": "1.0.0-beta.26", + "web3-providers-ws": "1.0.0-beta.26" + } + }, + "web3-core-subscriptions": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.0.0-beta.26.tgz", + "integrity": "sha1-0W0dbr3GDXCL9aR7hxZt1+jBl6A=", + "requires": { + "eventemitter3": "1.1.1", + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.26" + }, + "dependencies": { + "eventemitter3": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.1.1.tgz", + "integrity": "sha1-R3hr2qCHyvext15zq8XH1UAVjNA=" + } + } + }, + "web3-eth": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.0.0-beta.26.tgz", + "integrity": "sha1-aMAkw1a4ZWrDaVyPk9e2GzgQRKU=", + "requires": { + "underscore": "1.8.3", + "web3-core": "1.0.0-beta.26", + "web3-core-helpers": "1.0.0-beta.26", + "web3-core-method": "1.0.0-beta.26", + "web3-core-subscriptions": "1.0.0-beta.26", + "web3-eth-abi": "1.0.0-beta.26", + "web3-eth-accounts": "1.0.0-beta.26", + "web3-eth-contract": "1.0.0-beta.26", + "web3-eth-iban": "1.0.0-beta.26", + "web3-eth-personal": "1.0.0-beta.26", + "web3-net": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + } + }, + "web3-eth-abi": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.0.0-beta.26.tgz", + "integrity": "sha1-Ku3ASDxna1kcccBBJXIZj3omb+I=", + "requires": { + "bn.js": "4.11.6", + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, + "web3-eth-accounts": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.0.0-beta.26.tgz", + "integrity": "sha1-N/18d3BCBGX95ZGCKYkad3OAehM=", + "requires": { + "bluebird": "3.3.1", + "eth-lib": "0.2.5", + "scrypt.js": "0.2.0", + "underscore": "1.8.3", + "uuid": "2.0.1", + "web3-core": "1.0.0-beta.26", + "web3-core-helpers": "1.0.0-beta.26", + "web3-core-method": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + }, + "dependencies": { + "bluebird": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.3.1.tgz", + "integrity": "sha1-+Xrhlw9B2FF3KDBT6aEgFg5mxh0=" + }, + "eth-lib": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.5.tgz", + "integrity": "sha512-pXs4ryU+7S8MPpkQpNqG4JlXEec87kbXowQbYzRVV+c5XUccrO6WOxVPDicxql1AXSBzfmBSFVkvvG+H4htuxg==", + "requires": { + "bn.js": "4.11.8", + "elliptic": "6.4.0", + "xhr-request-promise": "0.1.2" + } + }, + "uuid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", + "integrity": "sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w=" + } + } + }, + "web3-eth-contract": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.0.0-beta.26.tgz", + "integrity": "sha1-fny3FXqrYMUi20353p3L2G2BOwk=", + "requires": { + "underscore": "1.8.3", + "web3-core": "1.0.0-beta.26", + "web3-core-helpers": "1.0.0-beta.26", + "web3-core-method": "1.0.0-beta.26", + "web3-core-promievent": "1.0.0-beta.26", + "web3-core-subscriptions": "1.0.0-beta.26", + "web3-eth-abi": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + } + }, + "web3-eth-iban": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.0.0-beta.26.tgz", + "integrity": "sha1-6MI2GOpapmJ73pHHPqi18ZGe43Q=", + "requires": { + "bn.js": "4.11.8", + "web3-utils": "1.0.0-beta.26" + } + }, + "web3-eth-personal": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.0.0-beta.26.tgz", + "integrity": "sha1-K4gDs01HJEfPW76BziVQSxMb7QY=", + "requires": { + "web3-core": "1.0.0-beta.26", + "web3-core-helpers": "1.0.0-beta.26", + "web3-core-method": "1.0.0-beta.26", + "web3-net": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + } + }, + "web3-net": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.0.0-beta.26.tgz", + "integrity": "sha1-UY0oO1AANf7kgL9ocIljRyWrZLM=", + "requires": { + "web3-core": "1.0.0-beta.26", + "web3-core-method": "1.0.0-beta.26", + "web3-utils": "1.0.0-beta.26" + } + }, + "web3-providers-http": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.0.0-beta.26.tgz", + "integrity": "sha1-GwFUu3UY027TT5EKZl5FFSoKyKE=", + "requires": { + "web3-core-helpers": "1.0.0-beta.26", + "xhr2": "0.1.4" + } + }, + "web3-providers-ipc": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.0.0-beta.26.tgz", + "integrity": "sha1-HffepV5nE1yQRaJsUzso0bbJ2mQ=", + "requires": { + "oboe": "2.1.3", + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.26" + } + }, + "web3-providers-ws": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.0.0-beta.26.tgz", + "integrity": "sha1-z0ylFUpPsVok1GgtEJUO4Emku2E=", + "requires": { + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.26", + "websocket": "git://github.com/frozeman/WebSocket-Node.git#7004c39c42ac98875ab61126e5b4a925430f592c" + } + }, + "web3-shh": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.0.0-beta.26.tgz", + "integrity": "sha1-YMrff1V71rRRVHXd4z4uV7gKgg4=", + "requires": { + "web3-core": "1.0.0-beta.26", + "web3-core-method": "1.0.0-beta.26", + "web3-core-subscriptions": "1.0.0-beta.26", + "web3-net": "1.0.0-beta.26" + } + }, + "web3-utils": { + "version": "1.0.0-beta.26", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.0.0-beta.26.tgz", + "integrity": "sha1-8ErYwUSxeBxrIMKBjgUyy55tyhU=", + "requires": { + "bn.js": "4.11.6", + "eth-lib": "0.1.27", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randomhex": "0.1.5", + "underscore": "1.8.3", + "utf8": "2.1.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + }, + "utf8": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-2.1.1.tgz", + "integrity": "sha1-LgHbAvfY0JRPdxBPFgnrDDBM92g=" + } + } + }, "webpack": { "version": "3.8.1", "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.8.1.tgz", @@ -9836,6 +12610,194 @@ } } }, + "webpack-dev-middleware": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz", + "integrity": "sha1-+PwRIM47T8VoDO7LQ9d3lmshEF4=", + "requires": { + "memory-fs": "0.4.1", + "mime": "1.6.0", + "path-is-absolute": "1.0.1", + "range-parser": "1.2.0", + "time-stamp": "2.0.0" + } + }, + "webpack-dev-server": { + "version": "2.9.7", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-2.9.7.tgz", + "integrity": "sha1-EArWoUd1R4kk1BfKbc+51SqY+u0=", + "requires": { + "ansi-html": "0.0.7", + "array-includes": "3.0.3", + "bonjour": "3.5.0", + "chokidar": "1.7.0", + "compression": "1.7.1", + "connect-history-api-fallback": "1.5.0", + "debug": "3.1.0", + "del": "3.0.0", + "express": "4.16.2", + "html-entities": "1.2.1", + "http-proxy-middleware": "0.17.4", + "import-local": "0.1.1", + "internal-ip": "1.2.0", + "ip": "1.1.5", + "killable": "1.0.0", + "loglevel": "1.6.0", + "opn": "5.1.0", + "portfinder": "1.0.13", + "selfsigned": "1.10.1", + "serve-index": "1.9.1", + "sockjs": "0.3.18", + "sockjs-client": "1.1.4", + "spdy": "3.4.7", + "strip-ansi": "3.0.1", + "supports-color": "4.5.0", + "webpack-dev-middleware": "1.12.2", + "yargs": "6.6.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "requires": { + "lcid": "1.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "0.2.1" + } + }, + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "requires": { + "has-flag": "2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" + }, + "yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "y18n": "3.2.1", + "yargs-parser": "4.2.1" + } + }, + "yargs-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", + "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "requires": { + "camelcase": "3.0.0" + } + } + } + }, "webpack-sources": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz", @@ -9852,6 +12814,25 @@ } } }, + "websocket": { + "version": "git://github.com/frozeman/WebSocket-Node.git#7004c39c42ac98875ab61126e5b4a925430f592c", + "requires": { + "debug": "2.6.9", + "nan": "2.8.0", + "typedarray-to-buffer": "3.1.2", + "yaeti": "0.0.6" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + } + } + }, "websocket-driver": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", @@ -9866,6 +12847,11 @@ "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==" }, + "whatwg-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", + "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" + }, "which": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", @@ -9915,6 +12901,61 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, + "ws": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.2.tgz", + "integrity": "sha1-lsHQiz/v2h1cHjNwDTv6qb4tVgg=", + "requires": { + "async-limiter": "1.0.0", + "safe-buffer": "5.1.1", + "ultron": "1.1.1" + } + }, + "xhr": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.4.0.tgz", + "integrity": "sha1-4W5mpF+GmGHu76tBbV7/ci3ECZM=", + "requires": { + "global": "4.3.2", + "is-function": "1.0.1", + "parse-headers": "2.0.1", + "xtend": "4.0.1" + } + }, + "xhr-request": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.0.1.tgz", + "integrity": "sha1-g/CKSyC+7Geowcco6BAvTJ7svdo=", + "requires": { + "buffer-to-arraybuffer": "0.0.2", + "object-assign": "3.0.0", + "query-string": "2.4.2", + "simple-get": "1.4.3", + "timed-out": "2.0.0", + "url-set-query": "1.0.0", + "xhr": "2.4.0" + }, + "dependencies": { + "object-assign": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", + "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=" + }, + "timed-out": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-2.0.0.tgz", + "integrity": "sha1-84sK6B03R9YoAB9B2vxlKs5nHAo=" + } + } + }, + "xhr-request-promise": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.2.tgz", + "integrity": "sha1-NDxE0e53JrhkgGloLQ+EDIO0Jh0=", + "requires": { + "xhr-request": "1.0.1" + } + }, "xhr2": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/xhr2/-/xhr2-0.1.4.tgz", @@ -9935,6 +12976,11 @@ "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" }, + "yaeti": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", + "integrity": "sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc=" + }, "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", @@ -10003,6 +13049,15 @@ "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" } } + }, + "yauzl": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.1.tgz", + "integrity": "sha1-qBmB6nCleUYTOIPwKcWCGok1mn8=", + "requires": { + "buffer-crc32": "0.2.13", + "fd-slicer": "1.0.1" + } } } } diff --git a/package.json b/package.json index 443aabb..85b11b9 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,8 @@ "express-session": "^1.15.3", "gittoken-contracts": "0.0.59", "gittoken-keystore-generator": "0.0.20", + "gittoken-landing-page": "0.0.4", + "gittoken-registry-ui": "0.0.13", "graphql": "^0.10.4", "keccak": "^1.3.0", "keythereum": "^1.0.1", @@ -34,6 +36,8 @@ "passport": "^0.3.2", "passport-github": "^1.1.0", "passport-github2": "^0.1.11", + "react": "^16.2.0", + "react-dom": "^16.2.0", "request": "^2.83.0", "request-promise": "^4.2.2", "web3": "^0.20.2" diff --git a/src/contracts/index.js b/src/contracts/index.js index a1eecbd..aa8caed 100644 --- a/src/contracts/index.js +++ b/src/contracts/index.js @@ -8,7 +8,7 @@ import GitToken from 'gittoken-contracts/build/contracts/GitToken.json' export default class GitTokenContracts extends GitTokenKeystoreGenerator { constructor(options) { super(options) - // Instantiate Pre-Deployed Contract Data + // Instantiate Contract Data this.GitToken = GitToken; // Instantiate Deployed Contracts diff --git a/src/events/handlePingEvent.js b/src/events/handlePingEvent.js index 45b607a..8ce2680 100644 --- a/src/events/handlePingEvent.js +++ b/src/events/handlePingEvent.js @@ -27,13 +27,15 @@ export default function handlePingEvent() { contract: this.GitToken, params: [ organization, - name, + name, symbol, decimals, owner, username ] }).then((txReceipt) => { + // save the receipts; + console.log('txReceipt', txReceipt) resolve(txReceipt) }).catch((error) => { reject(error) diff --git a/src/index.js b/src/index.js index 40985fb..1c18b7d 100644 --- a/src/index.js +++ b/src/index.js @@ -30,7 +30,8 @@ import { import { AuthRouter, WebHookRouter, - ApiRouter + ApiRouter, + AccountRouter } from './routers/index' import { @@ -72,6 +73,7 @@ export default class GitTokenServer extends GitTokenContracts { this.AuthRouter = AuthRouter.bind(this) this.WebHookRouter = WebHookRouter.bind(this) this.ApiRouter = ApiRouter.bind(this) + this.AccountRouter = AccountRouter.bind(this) this.WebHookMiddleware = WebHookMiddleware.bind(this) this.parseContribution = parseContribution.bind(this) this.validateWebHookRequest = validateWebHookRequest.bind(this) @@ -112,13 +114,18 @@ export default class GitTokenServer extends GitTokenContracts { this.app.use(bodyParser.json()) // handle json data this.app.use(bodyParser.urlencoded({ extended: true })) // handle + this.app.use('/api/', this.ApiRouter()); this.app.use('/auth/', this.AuthRouter()); this.app.use('/webhook/', this.WebHookRouter()); - this.app.use('/api/', this.ApiRouter()); + this.app.use('/account', this.AccountRouter()); + + // Serve Web Applications + this.app.use('/registry', express.static(`${process.cwd()}/node_modules/gittoken-registry-ui/`)) + + + this.app.use('/', express.static(`${process.cwd()}/node_modules/gittoken-landing-page/`)) + - this.app.use('/', (req, res) => { - res.send(`Hello, GitToken Server!`) - }) /* Run GitToken Server */ this.listen() diff --git a/src/middleware/WebHookMiddleware.js b/src/middleware/WebHookMiddleware.js index 8c5ec56..a31ff36 100644 --- a/src/middleware/WebHookMiddleware.js +++ b/src/middleware/WebHookMiddleware.js @@ -12,6 +12,8 @@ export default function WebHookMiddleware(req, res, next) { req.events = events next() }).catch((error) => { - res.status(500).send(JSON.stringify(error, null, 2)) + console.log('error', error) + const err = error.message ? error.message : JSON.stringify(error, null, 2) + res.status(500).send(err) }) } diff --git a/src/routers/AccountRouter.js b/src/routers/AccountRouter.js new file mode 100644 index 0000000..bf7d2e6 --- /dev/null +++ b/src/routers/AccountRouter.js @@ -0,0 +1,11 @@ +import { Router } from 'express' + +export default function AccountRouter() { + let router = Router() + + router.get('/', (req, res) => { + res.send('Hello, World!') + }) + + return router +} diff --git a/src/routers/ApiRouter.js b/src/routers/ApiRouter.js index 72a40f6..0f57604 100644 --- a/src/routers/ApiRouter.js +++ b/src/routers/ApiRouter.js @@ -59,5 +59,14 @@ export default function AuthRouter() { }) }) + router.get('/profile', (req, res) => { + try { + const { session: { passport: { user: { profile } } } } = req + res.status(200).send(profile) + } catch (error) { + res.status(500).send(error) + } + }) + return router } diff --git a/src/routers/AuthRouter.js b/src/routers/AuthRouter.js index f7a9b49..1a888f4 100644 --- a/src/routers/AuthRouter.js +++ b/src/routers/AuthRouter.js @@ -28,7 +28,7 @@ export default function AuthRouter() { router.get('/github/callback', this.passport.authenticate('github', { failureRedirect: '/' }), (req, res) => { - res.redirect('/') + res.redirect('/account') }) router.get('/verify/:address', (req, res) => { diff --git a/src/routers/WebHookRouter.js b/src/routers/WebHookRouter.js index 733863e..7ce5833 100644 --- a/src/routers/WebHookRouter.js +++ b/src/routers/WebHookRouter.js @@ -4,12 +4,18 @@ export default function WebHookRouter() { let router = Router() router.post('/', this.WebHookMiddleware, (req, res) => { - const { contribution, totalSupply, userBalance } = req - res.status(200).send(JSON.stringify({ + const { contribution, totalSupply, userBalance, receipts } = req + + const details = JSON.stringify({ contribution, userBalance, - totalSupply - }, null, 2)) + totalSupply, + receipts + }, null, 2) + + console.log('details', details) + + res.status(200).send(details) }) diff --git a/src/routers/index.js b/src/routers/index.js index ca92d27..d81fb8e 100644 --- a/src/routers/index.js +++ b/src/routers/index.js @@ -1,9 +1,11 @@ import AuthRouter from './AuthRouter' import WebHookRouter from './WebHookRouter' import ApiRouter from './ApiRouter' +import AccountRouter from './AccountRouter' export { AuthRouter, WebHookRouter, + AccountRouter, ApiRouter } diff --git a/src/utils/handleEventActions.js b/src/utils/handleEventActions.js index 4af168c..bec6abb 100644 --- a/src/utils/handleEventActions.js +++ b/src/utils/handleEventActions.js @@ -1,16 +1,16 @@ -import Promise from 'bluebird' +import Promise, { join } from 'bluebird' export default function handleEventActions({ contribution }) { return new Promise((resolve, reject) => { const { username, eventType, subEventType } = contribution Promise.resolve().then(() => { if (eventType == "ping") { - return this.handlePingEvent() + return join(this.handlePingEvent()) } else { return null } - }).then((events) => { - resolve(events) + }).then((receipts) => { + resolve(receipts) }).catch((error) => { reject(error) }) diff --git a/src/utils/parseContribution.js b/src/utils/parseContribution.js index a8ef3ac..825d102 100644 --- a/src/utils/parseContribution.js +++ b/src/utils/parseContribution.js @@ -1,6 +1,3 @@ - - - export default function parseContribution({ headers, body }) { return new Promise((resolve, reject) => { const eventType = headers['x-github-event'] @@ -56,7 +53,6 @@ export default function parseContribution({ headers, body }) { subEventType }) }).catch((error) => { - console.log('error', error) reject(error) }) }) diff --git a/src/utils/validateWebHookRequest.js b/src/utils/validateWebHookRequest.js index 6dc657c..cd35963 100644 --- a/src/utils/validateWebHookRequest.js +++ b/src/utils/validateWebHookRequest.js @@ -1,5 +1,7 @@ import Promise from 'bluebird' +// TODO Better security validation +// export default function validateWebHookRequest({ headers, body }) { return new Promise((resolve, reject) => { if (!headers['user-agent'].match(RegExp('GitHub-Hookshot'))) { From 886b05de830cbfb7c40299b4696eb466f39d9f36 Mon Sep 17 00:00:00 2001 From: Ryan Tate Date: Sat, 16 Dec 2017 12:06:30 -0800 Subject: [PATCH 07/10] WIP; Updating landing Page and account routing --- dist/events/handlePingEvent.js | 1 - dist/github/createOrgWebHook.js | 51 + dist/github/index.js | 14 + dist/index.js | 51 +- dist/middleware/WebHookMiddleware.js | 6 +- dist/routers/AccountRouter.js | 19 + dist/routers/ApiRouter.js | 18 + dist/routers/AuthRouter.js | 2 +- dist/routers/WebHookRouter.js | 5 - dist/routers/index.js | 7 +- dist/utils/handleContribution.js | 2 + dist/utils/parseContribution.js | 1 + package-lock.json | 1965 ++++++++++++++++++++++++-- package.json | 3 +- src/events/handlePingEvent.js | 1 - src/github/createOrgWebHook.js | 36 + src/github/index.js | 5 + src/index.js | 8 +- src/middleware/WebHookMiddleware.js | 6 +- src/routers/AccountRouter.js | 3 +- src/routers/ApiRouter.js | 8 + src/routers/WebHookRouter.js | 6 - src/utils/handleContribution.js | 2 + src/utils/handleEventActions.js | 4 +- src/utils/parseContribution.js | 1 + src_old/index.js | 75 - 26 files changed, 2068 insertions(+), 232 deletions(-) create mode 100644 dist/github/createOrgWebHook.js create mode 100644 dist/github/index.js create mode 100644 dist/routers/AccountRouter.js create mode 100644 src/github/createOrgWebHook.js create mode 100644 src/github/index.js delete mode 100644 src_old/index.js diff --git a/dist/events/handlePingEvent.js b/dist/events/handlePingEvent.js index 82c9ba6..e020ca9 100644 --- a/dist/events/handlePingEvent.js +++ b/dist/events/handlePingEvent.js @@ -41,7 +41,6 @@ function handlePingEvent() { params: [organization, name, symbol, decimals, owner, username] }).then(function (txReceipt) { // save the receipts; - console.log('txReceipt', txReceipt); resolve(txReceipt); }).catch(function (error) { reject(error); diff --git a/dist/github/createOrgWebHook.js b/dist/github/createOrgWebHook.js new file mode 100644 index 0000000..18dce25 --- /dev/null +++ b/dist/github/createOrgWebHook.js @@ -0,0 +1,51 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = createOrgWebHook; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +var _githubApi = require('github-api'); + +var _githubApi2 = _interopRequireDefault(_githubApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function createOrgWebHook(_ref) { + var req = _ref.req; + + return new _bluebird2.default(function (resolve, reject) { + var organization = req.body.organization, + _req$session$passport = req.session.passport.user, + profile = _req$session$passport.profile, + accessToken = _req$session$passport.accessToken; + + + var gh = new _githubApi2.default({ + username: profile['username'], + token: accessToken + }); + + console.log('gh', gh); + + gh._request('POST', '/orgs/' + organization + '/hooks', { + name: 'GitToken', + active: true, + events: ["pull_request"], + config: { + "url": 'https://webhook.gittoken.io/' + organization, + "content_type": "json" + } + }).then(function (result) { + console.log('result', result); + resolve(result); + }).catch(function (error) { + console.log('error', error); + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/github/index.js b/dist/github/index.js new file mode 100644 index 0000000..5119ecc --- /dev/null +++ b/dist/github/index.js @@ -0,0 +1,14 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.createOrgWebHook = undefined; + +var _createOrgWebHook = require('./createOrgWebHook'); + +var _createOrgWebHook2 = _interopRequireDefault(_createOrgWebHook); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.createOrgWebHook = _createOrgWebHook2.default; \ No newline at end of file diff --git a/dist/index.js b/dist/index.js index d63e065..03a1760 100644 --- a/dist/index.js +++ b/dist/index.js @@ -44,17 +44,19 @@ var _index = require('./events/index'); var _index2 = require('./utils/index'); -var _index3 = require('./contracts/index'); +var _index3 = require('./github/index'); -var _index4 = _interopRequireDefault(_index3); +var _index4 = require('./contracts/index'); -var _index5 = require('./mysql/index'); +var _index5 = _interopRequireDefault(_index4); -var _index6 = require('./routers/index'); +var _index6 = require('./mysql/index'); -var _index7 = require('./middleware/index'); +var _index7 = require('./routers/index'); -var _index8 = require('./integrations/index'); +var _index8 = require('./middleware/index'); + +var _index9 = require('./integrations/index'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } @@ -90,31 +92,33 @@ var GitTokenServer = function (_GitTokenContracts) { _this.web3Provider = web3Provider; /* Bind Methods */ - _this.AuthRouter = _index6.AuthRouter.bind(_this); - _this.WebHookRouter = _index6.WebHookRouter.bind(_this); - _this.ApiRouter = _index6.ApiRouter.bind(_this); - _this.WebHookMiddleware = _index7.WebHookMiddleware.bind(_this); + _this.AuthRouter = _index7.AuthRouter.bind(_this); + _this.WebHookRouter = _index7.WebHookRouter.bind(_this); + _this.ApiRouter = _index7.ApiRouter.bind(_this); + _this.AccountRouter = _index7.AccountRouter.bind(_this); + _this.WebHookMiddleware = _index8.WebHookMiddleware.bind(_this); _this.parseContribution = _index2.parseContribution.bind(_this); _this.validateWebHookRequest = _index2.validateWebHookRequest.bind(_this); _this.signContribution = _index2.signContribution.bind(_this); - _this.query = _index5.query.bind(_this); - _this.saveContribution = _index5.saveContribution.bind(_this); - _this.saveUserBalance = _index5.saveUserBalance.bind(_this); - _this.saveTotalSupply = _index5.saveTotalSupply.bind(_this); - _this.getContributions = _index5.getContributions.bind(_this); - _this.getTokenSupply = _index5.getTokenSupply.bind(_this); - _this.getUserBalances = _index5.getUserBalances.bind(_this); + _this.query = _index6.query.bind(_this); + _this.saveContribution = _index6.saveContribution.bind(_this); + _this.saveUserBalance = _index6.saveUserBalance.bind(_this); + _this.saveTotalSupply = _index6.saveTotalSupply.bind(_this); + _this.getContributions = _index6.getContributions.bind(_this); + _this.getTokenSupply = _index6.getTokenSupply.bind(_this); + _this.getUserBalances = _index6.getUserBalances.bind(_this); _this.handleContribution = _index2.handleContribution.bind(_this); _this.handleEventActions = _index2.handleEventActions.bind(_this); _this.handlePingEvent = _index.handlePingEvent.bind(_this); + _this.createOrgWebHook = _index3.createOrgWebHook.bind(_this); /* Gitter WebHook Integration */ - _this.gitterService = _index8.gitterService.bind(_this); + _this.gitterService = _index9.gitterService.bind(_this); _this.gitterService(); - _this.gitterWebHook = _index8.gitterWebHook.bind(_this); - _this.gitterLogContributionActivity = _index8.gitterLogContributionActivity.bind(_this); + _this.gitterWebHook = _index9.gitterWebHook.bind(_this); + _this.gitterLogContributionActivity = _index9.gitterLogContributionActivity.bind(_this); /* MySql Connection */ _this.mysql = _mysql2.default.createConnection(mysqlOpts); @@ -134,15 +138,12 @@ var GitTokenServer = function (_GitTokenContracts) { _this.app.use('/api/', _this.ApiRouter()); _this.app.use('/auth/', _this.AuthRouter()); _this.app.use('/webhook/', _this.WebHookRouter()); + _this.app.use('/account', _this.AccountRouter()); // Serve Web Applications _this.app.use('/registry', _express2.default.static(process.cwd() + '/node_modules/gittoken-registry-ui/')); _this.app.use('/', _express2.default.static(process.cwd() + '/node_modules/gittoken-landing-page/')); - // this.app.use('/', (req, res) => { - // res.send(`Hello, GitToken Server!`) - // }) - /* Run GitToken Server */ _this.listen(); return _this; @@ -165,6 +166,6 @@ var GitTokenServer = function (_GitTokenContracts) { } }]); return GitTokenServer; -}(_index4.default); +}(_index5.default); exports.default = GitTokenServer; \ No newline at end of file diff --git a/dist/middleware/WebHookMiddleware.js b/dist/middleware/WebHookMiddleware.js index b42851b..c9be8fe 100644 --- a/dist/middleware/WebHookMiddleware.js +++ b/dist/middleware/WebHookMiddleware.js @@ -29,8 +29,10 @@ function WebHookMiddleware(req, res, next) { req.userBalance = userBalance; req.totalSupply = totalSupply; return _this.handleEventActions({ contribution: contribution }); - }).then(function (events) { - req.events = events; + }).then(function (receipts) { + // Expect receipts to be an [] of txReceipts + req.receipts = receipts; + // Save Receipts to SQL table next(); }).catch(function (error) { console.log('error', error); diff --git a/dist/routers/AccountRouter.js b/dist/routers/AccountRouter.js new file mode 100644 index 0000000..3618220 --- /dev/null +++ b/dist/routers/AccountRouter.js @@ -0,0 +1,19 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = AccountRouter; + +var _express = require('express'); + +function AccountRouter() { + var router = (0, _express.Router)(); + + // Serve static web apps + router.get('/', function (req, res) { + res.send(true); + }); + + return router; +} \ No newline at end of file diff --git a/dist/routers/ApiRouter.js b/dist/routers/ApiRouter.js index 8f221eb..b506865 100644 --- a/dist/routers/ApiRouter.js +++ b/dist/routers/ApiRouter.js @@ -71,5 +71,23 @@ function AuthRouter() { }); }); + router.get('/profile', function (req, res) { + try { + var profile = req.session.passport.user.profile; + + res.status(200).send(profile); + } catch (error) { + res.status(500).send(error); + } + }); + + router.post('/register', function (req, res) { + _this.createOrgWebHook({ req: req }).then(function (result) { + res.status(200).send(result); + }).catch(function (error) { + res.status(500).send(error); + }); + }); + return router; } \ No newline at end of file diff --git a/dist/routers/AuthRouter.js b/dist/routers/AuthRouter.js index 1dbd1fa..fc25027 100644 --- a/dist/routers/AuthRouter.js +++ b/dist/routers/AuthRouter.js @@ -37,7 +37,7 @@ function AuthRouter() { router.get('/github', this.passport.authenticate('github')); router.get('/github/callback', this.passport.authenticate('github', { failureRedirect: '/' }), function (req, res) { - res.redirect('/'); + res.redirect('/account'); }); router.get('/verify/:address', function (req, res) { diff --git a/dist/routers/WebHookRouter.js b/dist/routers/WebHookRouter.js index 45ba155..7c6b45d 100644 --- a/dist/routers/WebHookRouter.js +++ b/dist/routers/WebHookRouter.js @@ -23,18 +23,13 @@ function WebHookRouter() { userBalance = req.userBalance, receipts = req.receipts; - var details = (0, _stringify2.default)({ contribution: contribution, userBalance: userBalance, totalSupply: totalSupply, receipts: receipts }, null, 2); - - console.log('details', details); - res.status(200).send(details); }); - return router; } \ No newline at end of file diff --git a/dist/routers/index.js b/dist/routers/index.js index e267644..c1fe00c 100644 --- a/dist/routers/index.js +++ b/dist/routers/index.js @@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.ApiRouter = exports.WebHookRouter = exports.AuthRouter = undefined; +exports.ApiRouter = exports.AccountRouter = exports.WebHookRouter = exports.AuthRouter = undefined; var _AuthRouter = require('./AuthRouter'); @@ -17,8 +17,13 @@ var _ApiRouter = require('./ApiRouter'); var _ApiRouter2 = _interopRequireDefault(_ApiRouter); +var _AccountRouter = require('./AccountRouter'); + +var _AccountRouter2 = _interopRequireDefault(_AccountRouter); + function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.AuthRouter = _AuthRouter2.default; exports.WebHookRouter = _WebHookRouter2.default; +exports.AccountRouter = _AccountRouter2.default; exports.ApiRouter = _ApiRouter2.default; \ No newline at end of file diff --git a/dist/utils/handleContribution.js b/dist/utils/handleContribution.js index 3221a96..a64ebbe 100644 --- a/dist/utils/handleContribution.js +++ b/dist/utils/handleContribution.js @@ -31,6 +31,8 @@ function handleContribution(_ref) { return _this.saveUserBalance(details.contribution); }).then(function (userBalance) { details.userBalance = userBalance; + // Send to any third party integration + // (e.g. Twitter, Emails, Gitter-- any media that we want to send out from this event) if (!_this.gitterWebHookUrl) { resolve(details); } else { diff --git a/dist/utils/parseContribution.js b/dist/utils/parseContribution.js index ffae4f3..d13b809 100644 --- a/dist/utils/parseContribution.js +++ b/dist/utils/parseContribution.js @@ -58,6 +58,7 @@ function parseContribution(_ref) { var subEventType = getSubEventType({ eventType: eventType, body: body }); + // NOTE: Consider saving the reward points in memory instead of calling the contract for the reward details _this.RewardPoints.getRewardDetails.callAsync(eventType, subEventType).then(function (data) { var rewardValue = data[0].toNumber(); diff --git a/package-lock.json b/package-lock.json index 5cd3a34..00c1400 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,6 +4,26 @@ "lockfileVersion": 1, "requires": true, "dependencies": { + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "abstract-leveldown": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.4.tgz", + "integrity": "sha1-KeGOYy5g5OIh1YECR4UqY9ey5BA=", + "requires": { + "xtend": "3.0.0" + }, + "dependencies": { + "xtend": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-3.0.0.tgz", + "integrity": "sha1-XM50B7r2Qsunvs2laBEcST9ZZlo=" + } + } + }, "accepts": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", @@ -33,6 +53,11 @@ } } }, + "after": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", + "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=" + }, "ajv": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.0.tgz", @@ -59,6 +84,11 @@ "repeat-string": "1.6.1" } }, + "ansi": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/ansi/-/ansi-0.3.1.tgz", + "integrity": "sha1-DELU+xcWDVqa8eSEus4cZpIsGyE=" + }, "ansi-html": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", @@ -88,6 +118,20 @@ "normalize-path": "2.1.1" } }, + "are-we-there-yet": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", + "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.3" + } + }, + "argsarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/argsarray/-/argsarray-0.0.1.tgz", + "integrity": "sha1-bnIHtOzbObCviDA/pa4ivajfYcs=" + }, "arr-diff": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", @@ -120,6 +164,25 @@ "es-abstract": "1.10.0" } }, + "array-index": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-index/-/array-index-1.0.0.tgz", + "integrity": "sha1-7FanSe4QPk4Ix5C5w1PfFgVbl/k=", + "requires": { + "debug": "2.6.9", + "es6-symbol": "3.1.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, "array-union": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", @@ -194,6 +257,11 @@ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, + "attempt-x": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/attempt-x/-/attempt-x-1.1.1.tgz", + "integrity": "sha512-hIp37ojJRRW8ExWSxxLpkDHUufk/DFfsb7/cUC1cVbBg7JV4gJTkCTRa44dlL9e5jx1P3VNrjL7QOQfi4MyltA==" + }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", @@ -2599,6 +2667,14 @@ "regexpu-core": "2.0.0" } }, + "babel-plugin-transform-react-constant-elements": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-constant-elements/-/babel-plugin-transform-react-constant-elements-6.23.0.tgz", + "integrity": "sha1-LxGb9NLN1F65uqrldAU8YE9hR90=", + "requires": { + "babel-runtime": "6.26.0" + } + }, "babel-plugin-transform-regenerator": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", @@ -4004,6 +4080,14 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, + "base-x": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.3.tgz", + "integrity": "sha512-qKXPTB94LxXhJs8hqwTdyVTiDXMFTRUFj5F7FnWOW19ALCfANf2lHHUnEcY43g3DaVi4X8E2oDCkHIN8bjr32Q==", + "requires": { + "safe-buffer": "5.1.1" + } + }, "base64-js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", @@ -4036,6 +4120,11 @@ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=" }, + "bindings": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.2.1.tgz", + "integrity": "sha1-FK1hE4EtLTfXLme0ystLtyZQXxE=" + }, "bip39": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/bip39/-/bip39-2.4.0.tgz", @@ -4048,6 +4137,101 @@ "unorm": "1.4.1" } }, + "bitcore-lib": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/bitcore-lib/-/bitcore-lib-0.14.0.tgz", + "integrity": "sha1-IcsjWf57mXo7e3c+t9cnWuN9ZE4=", + "requires": { + "bn.js": "2.0.4", + "bs58": "2.0.0", + "buffer-compare": "1.0.0", + "elliptic": "3.0.3", + "inherits": "2.0.1", + "lodash": "3.10.1" + }, + "dependencies": { + "bn.js": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-2.0.4.tgz", + "integrity": "sha1-Igp81nf38b+pNif/QZN3b+eBlIA=" + }, + "bs58": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-2.0.0.tgz", + "integrity": "sha1-crcTvtIjoKxRi72g484/SBfznrU=" + }, + "buffer-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-compare/-/buffer-compare-1.0.0.tgz", + "integrity": "sha1-rKp6lm6Y7un64Usxw5pfFY+zxKI=" + }, + "elliptic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-3.0.3.tgz", + "integrity": "sha1-hlybQgv75VAGuflp+XoNLESWZZU=", + "requires": { + "bn.js": "2.0.4", + "brorand": "1.0.5", + "hash.js": "1.0.3", + "inherits": "2.0.1" + }, + "dependencies": { + "brorand": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.0.5.tgz", + "integrity": "sha1-B7VMowKGq9Fxig4qgwgD79yb+gQ=" + }, + "hash.js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.0.3.tgz", + "integrity": "sha1-EzL/ABVsCg/92CNgE9B7d6BFFXM=", + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + }, + "lodash": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", + "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=" + } + } + }, + "bitcore-mnemonic": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bitcore-mnemonic/-/bitcore-mnemonic-1.5.0.tgz", + "integrity": "sha512-sbeP4xwkindLMfIQhVxj6rZSDMwtiKmfc1DqvwpR6Yg+Qo4I4WHO5pvzb12Y04uDh1N3zgD45esHhfH0HHmE4g==", + "requires": { + "bitcore-lib": "0.15.0", + "unorm": "1.4.1" + }, + "dependencies": { + "bitcore-lib": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/bitcore-lib/-/bitcore-lib-0.15.0.tgz", + "integrity": "sha512-AeXLWhiivF6CDFzrABZHT4jJrflyylDWTi32o30rF92HW9msfuKpjzrHtFKYGa9w0kNVv5HABQjCB3OEav4PhQ==", + "requires": { + "bn.js": "4.11.8", + "bs58": "4.0.1", + "buffer-compare": "1.1.1", + "elliptic": "6.4.0", + "inherits": "2.0.1", + "lodash": "4.17.4" + } + }, + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + } + } + }, "bl": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", @@ -4347,6 +4531,14 @@ "pako": "1.0.6" } }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=", + "requires": { + "base-x": "3.0.3" + } + }, "buffer": { "version": "4.9.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", @@ -4357,11 +4549,24 @@ "isarray": "1.0.0" } }, + "buffer-compare": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-compare/-/buffer-compare-1.1.1.tgz", + "integrity": "sha1-W+e+hTr4kZjR9N3AkNHWakiu9ZY=" + }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" }, + "buffer-from": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-0.1.1.tgz", + "integrity": "sha1-V7GLHaChnsBvM4N6UnWiQjUb114=", + "requires": { + "is-array-buffer-x": "1.7.0" + } + }, "buffer-indexof": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", @@ -4395,6 +4600,11 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" }, + "cached-constructors-x": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cached-constructors-x/-/cached-constructors-x-1.0.0.tgz", + "integrity": "sha512-JVP0oilYlPgBTD8bkQ+of7hSIJRtydCCJiMtzdRMXVQ98gdj0NyrJTZzbu5wtlO26Ev/1HXRTtbBNsVlLJ3+3A==" + }, "camelcase": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", @@ -4458,6 +4668,11 @@ "readdirp": "2.1.0" } }, + "chownr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", + "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" + }, "cipher-base": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", @@ -4482,6 +4697,11 @@ "wordwrap": "0.0.2" } }, + "clone-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", + "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=" + }, "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -4973,6 +5193,29 @@ "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-0.2.2.tgz", "integrity": "sha1-hLdFiW80xoTpjyzg5Cq69Du6AX0=" }, + "deep-extend": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", + "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" + }, + "deferred-leveldown": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-2.0.3.tgz", + "integrity": "sha512-8c2Hv+vIwKNc7qqy4zE3t5DIsln+FQnudcyjLYstHwLFg7XnXZT/H8gQb8lj6xi8xqGM0Bz633ZWcCkonycBTA==", + "requires": { + "abstract-leveldown": "3.0.0" + }, + "dependencies": { + "abstract-leveldown": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-3.0.0.tgz", + "integrity": "sha512-KUWx9UWGQD12zsmLNj64/pndaz4iJh/Pj7nopgkfDG6RlCcbMZvT6+9l7dchK4idog2Is8VdC/PvNbFuFmalIQ==", + "requires": { + "xtend": "4.0.1" + } + } + } + }, "define-properties": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", @@ -5012,6 +5255,11 @@ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, "depd": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", @@ -5096,6 +5344,42 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=" }, + "double-ended-queue": { + "version": "2.1.0-0", + "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", + "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=" + }, + "duplexer2": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", + "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=", + "requires": { + "readable-stream": "1.1.14" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } + } + }, "duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", @@ -5191,6 +5475,14 @@ "once": "1.4.0" } }, + "end-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/end-stream/-/end-stream-0.1.0.tgz", + "integrity": "sha1-MgA/P0OKKwFDFoE3+PpumGbIHtU=", + "requires": { + "write-stream": "0.4.3" + } + }, "enhanced-resolve": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz", @@ -5358,6 +5650,64 @@ "xhr-request-promise": "0.1.2" } }, + "eth-lightwallet": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/eth-lightwallet/-/eth-lightwallet-2.5.6.tgz", + "integrity": "sha1-bxDxNMqXUx5PA6GUAI0xQyJQDBM=", + "requires": { + "bitcore-lib": "0.14.0", + "bitcore-mnemonic": "1.5.0", + "buffer": "4.9.1", + "crypto-js": "3.1.8", + "elliptic": "3.1.0", + "ethereumjs-tx": "1.3.3", + "ethereumjs-util": "5.1.2", + "rlp": "2.0.0", + "scrypt-async": "1.3.1", + "tweetnacl": "0.13.2", + "web3": "0.19.1" + }, + "dependencies": { + "bignumber.js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", + "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + }, + "bn.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-2.2.0.tgz", + "integrity": "sha1-EhYrwq5x/EClYmwzQ486h1zTdiU=" + }, + "elliptic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-3.1.0.tgz", + "integrity": "sha1-whaC73YnabVqdCAWCRBdoR1fYMw=", + "requires": { + "bn.js": "2.2.0", + "brorand": "1.1.0", + "hash.js": "1.1.3", + "inherits": "2.0.3" + } + }, + "tweetnacl": { + "version": "0.13.2", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.13.2.tgz", + "integrity": "sha1-RTFhdwRp1FzSZsNkBOK8maj6mUQ=" + }, + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } + }, "ethereum-common": { "version": "0.0.18", "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", @@ -5470,6 +5820,14 @@ "strip-eof": "1.0.0" } }, + "execspawn": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/execspawn/-/execspawn-1.0.1.tgz", + "integrity": "sha1-gob53efOzeeQX73ATiTzaPI/jaY=", + "requires": { + "util-extend": "1.0.3" + } + }, "expand-brackets": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", @@ -5486,6 +5844,11 @@ "fill-range": "2.2.3" } }, + "expand-template": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz", + "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==" + }, "express": { "version": "4.16.2", "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", @@ -5901,6 +6264,11 @@ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=" }, + "fast-future": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fast-future/-/fast-future-1.0.2.tgz", + "integrity": "sha1-hDWpqqAteSSNF9cE52JZMB2ZKAo=" + }, "fast-json-stable-stringify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", @@ -6905,6 +7273,18 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=" }, + "gauge": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.7.tgz", + "integrity": "sha1-6c7FSD09TuDvRLYKfZnkk14TbZM=", + "requires": { + "ansi": "0.3.1", + "has-unicode": "2.0.1", + "lodash.pad": "4.5.1", + "lodash.padend": "4.6.1", + "lodash.padstart": "4.6.1" + } + }, "get-caller-file": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", @@ -6928,6 +7308,36 @@ "assert-plus": "1.0.0" } }, + "ghreleases": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/ghreleases/-/ghreleases-1.0.6.tgz", + "integrity": "sha512-uySVPT5T9uP1xeWR7nl3WD8/JjJJXAph/0zdgUQJ7ovFpL3rxBT/HT0sO6w0GDWCj2gwXvzxBKrIeJAgBhs+fw==", + "requires": { + "after": "0.8.2", + "ghrepos": "2.0.0", + "ghutils": "3.2.1", + "simple-mime": "0.1.0", + "url-template": "2.0.8", + "xtend": "4.0.1" + } + }, + "ghrepos": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ghrepos/-/ghrepos-2.0.0.tgz", + "integrity": "sha1-1m6unZijtTmORg1tt+EKdCaS6Bs=", + "requires": { + "ghutils": "3.2.1" + } + }, + "ghutils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ghutils/-/ghutils-3.2.1.tgz", + "integrity": "sha1-T87f+sk1/KzgbhKhfGF04sKf/k8=", + "requires": { + "jsonist": "1.3.0", + "xtend": "4.0.1" + } + }, "github-api": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/github-api/-/github-api-3.0.0.tgz", @@ -6965,6 +7375,11 @@ } } }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" + }, "gitter-faye": { "version": "1.1.0-h", "resolved": "https://registry.npmjs.org/gitter-faye/-/gitter-faye-1.1.0-h.tgz", @@ -7048,12 +7463,14 @@ } }, "gittoken-landing-page": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/gittoken-landing-page/-/gittoken-landing-page-0.0.4.tgz", - "integrity": "sha512-/wNWYeVu5vAJ6RQpj4ZdWlRqpPjuyG7cu+i4MYvovoCiqRUO2/yiukmMiTIM2HqYXukdqQXRBhkwoVXYZspkrg==", + "version": "0.0.15", + "resolved": "https://registry.npmjs.org/gittoken-landing-page/-/gittoken-landing-page-0.0.15.tgz", + "integrity": "sha512-mFbBNmswV13lt1uTjzAOd4PBdkqS1MV8EKXFN8jrrDrN1Tfuxai6vZSqRPI7fl0ft5WAKqg7lKNamHvLb5w2xQ==", "requires": { "axios": "0.17.1", "countdown": "2.6.0", + "gittoken-react-components": "0.0.3", + "gittoken-reducers": "0.0.20", "gittoken-svg-icons": "0.0.8", "react": "15.6.2", "react-bootstrap": "0.31.5", @@ -7064,11 +7481,65 @@ "react-router": "4.2.0", "react-router-bootstrap": "0.24.4", "react-router-dom": "4.2.2", - "react-router-redux": "5.0.0-alpha.8", + "react-router-redux": "5.0.0-alpha.9", "redux": "3.7.2", "redux-thunk": "2.2.0" }, "dependencies": { + "bignumber.js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", + "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + }, + "gittoken-contracts": { + "version": "0.0.56", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", + "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.18", + "truffle": "3.4.11", + "web3": "0.19.1" + } + }, + "gittoken-reducers": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.20.tgz", + "integrity": "sha512-y7pQBLJSmD744C641KklerDpKIHnct57A8HkxZ3DVl9MnxT5C1+27aqxJFYKU5NqyjccO9oVG9IGYScO5kZeww==", + "requires": { + "gittoken-redux-actions": "0.0.16" + } + }, + "gittoken-redux-actions": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.16.tgz", + "integrity": "sha512-V/e6FYG6GFzapCGBXkYB7eiRR0F2zdAa+dEaZtoIcUm1W6VsBXB5MocpfhIHvuZyMzeK6FNlobEhjwLRBNi6vw==", + "requires": { + "bluebird": "3.5.1", + "github-api": "3.0.0", + "gittoken-web-workers": "0.0.70" + } + }, + "gittoken-web-workers": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.70.tgz", + "integrity": "sha512-er5UwfDErd7VrHfl1nCgYV9od9xMhIkm1jqiwiVjiaX+BPJ3Acu1Ad7zl1lse4K/KTuve/6IEQjs7slqNKDviA==", + "requires": { + "axios": "0.17.1", + "babel-plugin-transform-react-constant-elements": "6.23.0", + "bluebird": "3.5.1", + "browser-request": "0.3.3", + "eth-lightwallet": "2.5.6", + "ethereumjs-tx": "1.3.3", + "ethereumjs-util": "5.1.2", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.56", + "level-js": "2.2.4", + "levelup": "2.0.1", + "pouchdb": "6.3.4" + } + }, "react": { "version": "15.6.2", "resolved": "https://registry.npmjs.org/react/-/react-15.6.2.tgz", @@ -7093,21 +7564,217 @@ } }, "react-router-redux": { - "version": "5.0.0-alpha.8", - "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-5.0.0-alpha.8.tgz", - "integrity": "sha512-R/Cw62KtlMIifIjLF/xyiVOdHsooXK4uUW/ycX+jYfy1haKqmeY/N/bBiwRFNrMBat1Bn30ynDlgckwFcXLmIQ==", + "version": "5.0.0-alpha.9", + "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-5.0.0-alpha.9.tgz", + "integrity": "sha512-euSgNIANnRXr4GydIuwA7RZCefrLQzIw5WdXspS8NPYbV+FxrKSS9MKG7U9vb6vsKHONnA4VxrVNWfnMUnUQAw==", "requires": { "history": "4.7.2", "prop-types": "15.6.0", "react-router": "4.2.0" } + }, + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } } } }, - "gittoken-reducers": { + "gittoken-react-components": { "version": "0.0.3", - "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.3.tgz", - "integrity": "sha1-FN3ue/aJ/hJC4xRaAp5U0C3H14I=" + "resolved": "https://registry.npmjs.org/gittoken-react-components/-/gittoken-react-components-0.0.3.tgz", + "integrity": "sha512-Lg9kvHuV3PXrVsaIa/MERqPm1VQF/+vLR73aiH6gIvqgYXzE8vPXE5inQgorolEzOtEEWlwguFG1J+9EEexVkA==", + "requires": { + "babel-loader": "7.1.2", + "babel-polyfill": "6.26.0", + "ethereumjs-tx": "1.3.3", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.46", + "gittoken-reducers": "0.0.18", + "gittoken-registry-ui": "0.0.13", + "gittoken-svg-icons": "0.0.9", + "gittoken-web-workers": "0.0.60", + "history": "4.7.2", + "react": "16.2.0", + "react-bootstrap": "0.31.5", + "react-dom": "16.2.0", + "react-draggable": "3.0.4", + "react-icons": "2.2.7", + "react-redux": "5.0.6", + "react-router-dom": "4.2.2", + "react-router-redux": "4.0.8", + "redux": "3.7.2", + "redux-thunk": "2.2.0", + "victory": "0.24.2", + "web3": "0.20.2" + }, + "dependencies": { + "bignumber.js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", + "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + }, + "gittoken-contracts": { + "version": "0.0.46", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.46.tgz", + "integrity": "sha1-03Ei7BJJV2v7iCVRmxgqOzigRrc=", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.18", + "truffle": "3.4.11", + "web3": "0.19.1" + }, + "dependencies": { + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } + }, + "gittoken-reducers": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.18.tgz", + "integrity": "sha512-JN9xuxXqq9kKopEzGU8C21AC/nzPAThGn74OLXq7PpFLAOE5KgKLZ/UaUt8qjQvzbkthCuI3Vy/X9vzkQGyI5g==", + "requires": { + "gittoken-redux-actions": "0.0.14" + } + }, + "gittoken-svg-icons": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.9.tgz", + "integrity": "sha512-dOIn5aU8nmH2gIAmRQ65x2swk8xVqNrKiBj3WBZ3B7bXxUtfjWJuGFKAA9aJKt1SCJscGCNyACm8UXktaDzJmw==", + "requires": { + "react": "16.2.0", + "react-dom": "16.2.0" + } + }, + "gittoken-web-workers": { + "version": "0.0.60", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.60.tgz", + "integrity": "sha512-T4ArP/TdX481umkp4Aue7HfsY8XQHaAj9XW1sIb7kg35rksr57zkko5RT4gLiEtR6SEfDpp6r8rNSQerklKQ3w==", + "requires": { + "axios": "0.17.1", + "babel-plugin-transform-react-constant-elements": "6.23.0", + "bluebird": "3.5.1", + "browser-request": "0.3.3", + "eth-lightwallet": "2.5.6", + "ethereumjs-tx": "1.3.3", + "ethereumjs-util": "5.1.2", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.56", + "level-js": "2.2.4", + "levelup": "2.0.1", + "pouchdb": "6.3.4" + }, + "dependencies": { + "gittoken-contracts": { + "version": "0.0.56", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", + "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.18", + "truffle": "3.4.11", + "web3": "0.19.1" + } + }, + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } + } + } + }, + "gittoken-reducers": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.3.tgz", + "integrity": "sha1-FN3ue/aJ/hJC4xRaAp5U0C3H14I=" + }, + "gittoken-redux-actions": { + "version": "0.0.14", + "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.14.tgz", + "integrity": "sha512-XQUaWtuVCxf/7r75mkNoc5LoQYBzMYEPsAyeZEmzmb2dNmNaRGs4X12NQrbLcSpjQKBcg8AknBsNeGr4zTQ6/Q==", + "requires": { + "bluebird": "3.5.1", + "github-api": "3.0.0", + "gittoken-web-workers": "0.0.70" + }, + "dependencies": { + "bignumber.js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", + "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + }, + "gittoken-contracts": { + "version": "0.0.56", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", + "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.18", + "truffle": "3.4.11", + "web3": "0.19.1" + } + }, + "gittoken-web-workers": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.70.tgz", + "integrity": "sha512-er5UwfDErd7VrHfl1nCgYV9od9xMhIkm1jqiwiVjiaX+BPJ3Acu1Ad7zl1lse4K/KTuve/6IEQjs7slqNKDviA==", + "requires": { + "axios": "0.17.1", + "babel-plugin-transform-react-constant-elements": "6.23.0", + "bluebird": "3.5.1", + "browser-request": "0.3.3", + "eth-lightwallet": "2.5.6", + "ethereumjs-tx": "1.3.3", + "ethereumjs-util": "5.1.2", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.56", + "level-js": "2.2.4", + "levelup": "2.0.1", + "pouchdb": "6.3.4" + } + }, + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } }, "gittoken-registry-ui": { "version": "0.0.13", @@ -7390,6 +8057,16 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=" }, + "has-own-property-x": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/has-own-property-x/-/has-own-property-x-3.2.0.tgz", + "integrity": "sha512-HtRQTYpRFz/YVaQ7jh2mU5iorMAxFcML9FNOLMI1f8VNJ2K0hpOlXoi1a+nmVl6oUcGnhd6zYOFAVe7NUFStyQ==", + "requires": { + "cached-constructors-x": "1.0.0", + "to-object-x": "1.5.0", + "to-property-key-x": "2.0.2" + } + }, "has-symbol-support-x": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz", @@ -7403,6 +8080,11 @@ "has-symbol-support-x": "1.4.1" } }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, "hash-base": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", @@ -7411,6 +8093,15 @@ "inherits": "2.0.3" } }, + "hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" + } + }, "hawk": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", @@ -7567,16 +8258,67 @@ "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" }, + "hyperquest": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hyperquest/-/hyperquest-1.2.0.tgz", + "integrity": "sha1-OeH+9miI3Hzg3sbA3YFPb8iUStU=", + "requires": { + "duplexer2": "0.0.2", + "through2": "0.6.5" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + } + } + } + }, "iconv-lite": { "version": "0.4.19", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" }, + "idb-wrapper": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/idb-wrapper/-/idb-wrapper-1.7.2.tgz", + "integrity": "sha512-zfNREywMuf0NzDo9mVsL0yegjsirJxHpKHvWcyRozIqQy89g0a3U+oBPOCN4cc0oCiOuYgZHimzaW/R46G1Mpg==" + }, "ieee754": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=" }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=" + }, "import-local": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", @@ -7599,6 +8341,11 @@ "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" }, + "infinity-x": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/infinity-x/-/infinity-x-1.0.0.tgz", + "integrity": "sha512-wjy2TupBtZ+aAniKt+xs/PO0xOkuaL6wBysUKbgD7aL1PMW/qY5xXDG59zXZ7dU+gk3zwXOu4yIEWPCEFBTgHQ==" + }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -7613,6 +8360,11 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + }, "internal-ip": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-1.2.0.tgz", @@ -7644,6 +8396,18 @@ "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" }, + "is-array-buffer-x": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/is-array-buffer-x/-/is-array-buffer-x-1.7.0.tgz", + "integrity": "sha512-ufSZRMY2WZX5xyNvk0NOZAG7cgi35B/sGQDGqv8w0X7MoQ2GC9vedanJhuYTPaC4PUCqLQsda1w7NF+dPZmAJw==", + "requires": { + "attempt-x": "1.1.1", + "has-to-string-tag-x": "1.4.1", + "is-object-like-x": "1.6.0", + "object-get-own-property-descriptor-x": "3.2.0", + "to-string-tag-x": "1.4.2" + } + }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -7703,6 +8467,14 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" }, + "is-falsey-x": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-falsey-x/-/is-falsey-x-1.0.1.tgz", + "integrity": "sha512-XWNZC4A+3FX1ECoMjspuEFgSdio82IWjqY/suE0gZ10QA7nzHd/KraRq7Tc5VEHtFRgTRyTdY6W+ykPrDnyoAQ==", + "requires": { + "to-boolean-x": "1.0.1" + } + }, "is-finite": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", @@ -7711,6 +8483,15 @@ "number-is-nan": "1.0.1" } }, + "is-finite-x": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-finite-x/-/is-finite-x-3.0.2.tgz", + "integrity": "sha512-HyFrxJZsgmP5RtR1PVlVvHSP4VslZOqr4uoq4x3rDrSOFaYp4R9tfmiWtAzQxPzixXhac3cYEno3NuVn0OHk2Q==", + "requires": { + "infinity-x": "1.0.0", + "is-nan-x": "1.0.1" + } + }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", @@ -7724,6 +8505,21 @@ "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.1.tgz", "integrity": "sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU=" }, + "is-function-x": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/is-function-x/-/is-function-x-3.3.0.tgz", + "integrity": "sha512-SreSSU1dlgYaXR5c0mm4qJHKYHIiGiEY+7Cd8/aRLLoMP/VvofD2XcWgBnP833ajpU5XzXbUSpfysnfKZLJFlg==", + "requires": { + "attempt-x": "1.1.1", + "has-to-string-tag-x": "1.4.1", + "is-falsey-x": "1.0.1", + "is-primitive": "2.0.0", + "normalize-space-x": "3.0.0", + "replace-comments-x": "2.0.0", + "to-boolean-x": "1.0.1", + "to-string-tag-x": "1.4.2" + } + }, "is-glob": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", @@ -7737,11 +8533,37 @@ "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=" }, + "is-index-x": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-index-x/-/is-index-x-1.1.0.tgz", + "integrity": "sha512-qULKLMepQLGC8rSVdi8uF2vI4LiDrU9XSDg1D+Aa657GIB7GV1jHpga7uXgQvkt/cpQ5mVBHUFTpSehYSqT6+A==", + "requires": { + "math-clamp-x": "1.2.0", + "max-safe-integer": "1.0.1", + "to-integer-x": "3.0.0", + "to-number-x": "2.0.0", + "to-string-symbols-supported-x": "1.0.0" + } + }, + "is-nan-x": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-nan-x/-/is-nan-x-1.0.1.tgz", + "integrity": "sha512-VfNJgfuT8USqKCYQss8g7sFvCzDnL+OOVMQoXhVoulZAyp0ZTj3oyZaaPrn2dxepAkKSQI2BiKHbBabX1DqVtw==" + }, "is-natural-number": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" }, + "is-nil-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/is-nil-x/-/is-nil-x-1.4.1.tgz", + "integrity": "sha512-cfTKWI5iSR04SSCzzugTH5tS2rYG7kwI8yl/AqWkyuxZ7k55cbA47Y7Lezdg1N9aaELd+UxLg628bdQeNQ6BUw==", + "requires": { + "lodash.isnull": "3.0.0", + "validate.io-undefined": "1.0.3" + } + }, "is-number": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", @@ -7755,6 +8577,15 @@ "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=" }, + "is-object-like-x": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/is-object-like-x/-/is-object-like-x-1.6.0.tgz", + "integrity": "sha512-mc3dBMv1jEOdk0f1i2RkJFsZDux0MuHqGwHOoRo770ShUOf4VE6tWThAW8dAZARr9a5RN+iNX1yzMDA5ad1clQ==", + "requires": { + "is-function-x": "3.3.0", + "is-primitive": "2.0.0" + } + }, "is-path-cwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", @@ -7809,6 +8640,11 @@ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, + "is-string": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.4.tgz", + "integrity": "sha1-zDqbaYV9Yh6WNyWiTK7shzuCbmQ=" + }, "is-symbol": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", @@ -7834,6 +8670,11 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, + "isbuffer": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/isbuffer/-/isbuffer-0.0.0.tgz", + "integrity": "sha1-OMFG2d9Si4v5sHAcPUPPEt8/w5s=" + }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -7911,6 +8752,14 @@ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "requires": { + "jsonify": "0.0.0" + } + }, "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", @@ -7934,6 +8783,50 @@ "graceful-fs": "4.1.11" } }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" + }, + "jsonist": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsonist/-/jsonist-1.3.0.tgz", + "integrity": "sha1-wMdLle8clSA4YZsp76UgscyYdVY=", + "requires": { + "bl": "1.0.3", + "hyperquest": "1.2.0", + "json-stringify-safe": "5.0.1", + "xtend": "4.0.1" + }, + "dependencies": { + "bl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.0.3.tgz", + "integrity": "sha1-/FQhoo/UImA2w7OJGmaiW8ZNIm4=", + "requires": { + "readable-stream": "2.0.6" + } + }, + "readable-stream": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "0.10.31", + "util-deprecate": "1.0.2" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } + } + }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -8789,40 +9682,150 @@ "invert-kv": "1.0.0" } }, - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "strip-bom": "3.0.0" - } - }, - "loader-runner": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz", - "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=" + "level-codec": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.0.tgz", + "integrity": "sha1-x1W2jQ1E/6Cxy6BEuPgaVaFK05s=" }, - "loader-utils": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", - "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", + "level-errors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.1.2.tgz", + "integrity": "sha512-Sw/IJwWbPKF5Ai4Wz60B52yj0zYeqzObLh8k1Tk88jVmD51cJSKWSYpRyhVIvFzZdvsPqlH5wfhp/yxdsaQH4w==", "requires": { - "big.js": "3.2.0", - "emojis-list": "2.1.0", - "json5": "0.5.1" + "errno": "0.1.4" } }, - "locate-path": { + "level-iterator-stream": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-2.0.0.tgz", + "integrity": "sha512-TWOYw8HR5mhj6xwoVLo0yu26RPL6v28KgvhK1kY1CJf9LyL+rJXjx99zhORTYhN9ysOBIH+iaxAiqRteA+C1/g==", "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" - } + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "level-js": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/level-js/-/level-js-2.2.4.tgz", + "integrity": "sha1-vAVfQYBjXUSJtWHJSG+jcOjBFpc=", + "requires": { + "abstract-leveldown": "0.12.4", + "idb-wrapper": "1.7.2", + "isbuffer": "0.0.0", + "ltgt": "2.2.0", + "typedarray-to-buffer": "1.0.4", + "xtend": "2.1.2" + }, + "dependencies": { + "object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" + }, + "typedarray-to-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-1.0.4.tgz", + "integrity": "sha1-m7i6DoQfs/TPH+fCRenz+opf6Zw=" + }, + "xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "requires": { + "object-keys": "0.4.0" + } + } + } + }, + "level-write-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/level-write-stream/-/level-write-stream-1.0.0.tgz", + "integrity": "sha1-P3+7Z5pVE3wP6zA97nZuEu4Twdw=", + "requires": { + "end-stream": "0.1.0" + } + }, + "leveldown": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-1.5.0.tgz", + "integrity": "sha1-a408vqekqJqkdERgfXNYIT5vy4E=", + "requires": { + "abstract-leveldown": "2.6.3", + "bindings": "1.2.1", + "fast-future": "1.0.2", + "nan": "2.4.0", + "prebuild": "4.5.0" + }, + "dependencies": { + "abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "requires": { + "xtend": "4.0.1" + } + }, + "nan": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.4.0.tgz", + "integrity": "sha1-+zxZ1F/k7/4hXwuJD4rfbrMtIjI=" + } + } + }, + "levelup": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-2.0.1.tgz", + "integrity": "sha1-PckbPmMtN8nlRiOchkEYsATJ+GA=", + "requires": { + "deferred-leveldown": "2.0.3", + "level-errors": "1.1.2", + "level-iterator-stream": "2.0.0", + "xtend": "4.0.1" + } + }, + "lie": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", + "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", + "requires": { + "immediate": "3.0.6" + } + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } + }, + "loader-runner": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz", + "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=" + }, + "loader-utils": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", + "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", + "requires": { + "big.js": "3.2.0", + "emojis-list": "2.1.0", + "json5": "0.5.1" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "requires": { + "p-locate": "2.0.0", + "path-exists": "3.0.0" + } }, "lodash": { "version": "4.17.4", @@ -8888,6 +9891,11 @@ "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=" }, + "lodash.isnull": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash.isnull/-/lodash.isnull-3.0.0.tgz", + "integrity": "sha1-+vvlnqHcon7teGU0A53YTC4HxW4=" + }, "lodash.keys": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", @@ -8898,6 +9906,21 @@ "lodash.isarray": "3.0.4" } }, + "lodash.pad": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-4.5.1.tgz", + "integrity": "sha1-QzCUmoM6fI2iLMIPaibE1Z3runA=" + }, + "lodash.padend": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.6.1.tgz", + "integrity": "sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4=" + }, + "lodash.padstart": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.6.1.tgz", + "integrity": "sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs=" + }, "loglevel": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.0.tgz", @@ -8939,6 +9962,11 @@ "yallist": "2.1.2" } }, + "ltgt": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.0.tgz", + "integrity": "sha1-tlul/LNJopkkyOMz98alVi8uSEI=" + }, "make-dir": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.1.0.tgz", @@ -8959,6 +9987,28 @@ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" }, + "math-clamp-x": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/math-clamp-x/-/math-clamp-x-1.2.0.tgz", + "integrity": "sha512-tqpjpBcIf9UulApz3EjWXqTZpMlr2vLN9PryC9ghoyCuRmqZaf3JJhPddzgQpJnKLi2QhoFnvKBFtJekAIBSYg==", + "requires": { + "to-number-x": "2.0.0" + } + }, + "math-sign-x": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/math-sign-x/-/math-sign-x-3.0.0.tgz", + "integrity": "sha512-OzPas41Pn4d16KHnaXmGxxY3/l3zK4OIXtmIwdhgZsxz4FDDcNnbrABYPg2vGfxIkaT9ezGnzDviRH7RfF44jQ==", + "requires": { + "is-nan-x": "1.0.1", + "to-number-x": "2.0.0" + } + }, + "max-safe-integer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/max-safe-integer/-/max-safe-integer-1.0.1.tgz", + "integrity": "sha1-84BgvixWPYwC5tSK85Ei/YO29BA=" + }, "md5.js": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", @@ -9307,6 +10357,11 @@ "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" }, + "nan-x": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nan-x/-/nan-x-1.0.0.tgz", + "integrity": "sha512-yw4Fhe2/UTzanQ4f0yHWkRnfTuHZFAi4GZDjXS4G+qv5BqXTqPJBbSxpa7MyyW9v4Y4ZySZQik1vcbNkhdnIOg==" + }, "nano-json-stream-parser": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", @@ -9356,6 +10411,33 @@ } } }, + "node-gyp": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz", + "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=", + "requires": { + "fstream": "1.0.11", + "glob": "7.1.2", + "graceful-fs": "4.1.11", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "nopt": "3.0.6", + "npmlog": "2.0.4", + "osenv": "0.1.4", + "request": "2.83.0", + "rimraf": "2.6.2", + "semver": "5.3.0", + "tar": "2.2.1", + "which": "1.3.0" + }, + "dependencies": { + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" + } + } + }, "node-libs-browser": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", @@ -9386,6 +10468,40 @@ "vm-browserify": "0.0.4" } }, + "node-ninja": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/node-ninja/-/node-ninja-1.0.2.tgz", + "integrity": "sha1-IKCeV7kuLfWRmT1L8JisPnJwYrY=", + "requires": { + "fstream": "1.0.11", + "glob": "7.1.2", + "graceful-fs": "4.1.11", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "nopt": "3.0.6", + "npmlog": "2.0.4", + "osenv": "0.1.4", + "path-array": "1.0.1", + "request": "2.83.0", + "rimraf": "2.6.2", + "semver": "5.4.1", + "tar": "2.2.1", + "which": "1.3.0" + } + }, + "noop-logger": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", + "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "requires": { + "abbrev": "1.1.1" + } + }, "normalize-package-data": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", @@ -9405,6 +10521,16 @@ "remove-trailing-separator": "1.1.0" } }, + "normalize-space-x": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-space-x/-/normalize-space-x-3.0.0.tgz", + "integrity": "sha512-tbCJerqZCCHPst4rRKgsTanLf45fjOyeAU5zE3mhDxJtFJKt66q39g2XArWhXelgTFVib8mNBUm6Wrd0LxYcfQ==", + "requires": { + "cached-constructors-x": "1.0.0", + "trim-x": "3.0.0", + "white-space-x": "3.0.0" + } + }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", @@ -9413,6 +10539,16 @@ "path-key": "2.0.1" } }, + "npmlog": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz", + "integrity": "sha1-mLUlMPJRTKkNCexbIsiEZyI3VpI=", + "requires": { + "ansi": "0.3.1", + "are-we-there-yet": "1.1.4", + "gauge": "1.2.7" + } + }, "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", @@ -9449,6 +10585,23 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, + "object-get-own-property-descriptor-x": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/object-get-own-property-descriptor-x/-/object-get-own-property-descriptor-x-3.2.0.tgz", + "integrity": "sha512-Z/0fIrptD9YuzN+SNK/1kxAEaBcPQM4gSrtOSMSi9eplnL/AbyQcAyAlreAoAzmBon+DQ1Z+AdhxyQSvav5Fyg==", + "requires": { + "attempt-x": "1.1.1", + "has-own-property-x": "3.2.0", + "has-symbol-support-x": "1.4.1", + "is-falsey-x": "1.0.1", + "is-index-x": "1.1.0", + "is-primitive": "2.0.0", + "is-string": "1.0.4", + "property-is-enumerable-x": "1.1.0", + "to-object-x": "1.5.0", + "to-property-key-x": "2.0.2" + } + }, "object-inspect": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-0.4.0.tgz", @@ -9551,6 +10704,15 @@ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" }, + "osenv": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", + "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=", + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, "p-cancelable": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", @@ -9624,6 +10786,17 @@ "trim": "0.0.1" } }, + "parse-int-x": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-int-x/-/parse-int-x-2.0.0.tgz", + "integrity": "sha512-NIMm52gmd1+0qxJK8lV3OZ4zzWpRH1xcz9xCHXl+DNzddwUdS4NEtd7BmTeK7iCIXoaK5e6BoDMHgieH2eNIhg==", + "requires": { + "cached-constructors-x": "1.0.0", + "nan-x": "1.0.0", + "to-string-x": "1.4.2", + "trim-left-x": "3.0.0" + } + }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", @@ -9723,6 +10896,14 @@ "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=" }, + "path-array": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-array/-/path-array-1.0.1.tgz", + "integrity": "sha1-fi8PNfB6IBUSK4aLfqwOssT+wnE=", + "requires": { + "array-index": "1.0.0" + } + }, "path-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", @@ -9763,70 +10944,374 @@ } } }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "requires": { - "pify": "2.3.0" - } - }, - "pbkdf2": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", - "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", - "requires": { - "create-hash": "1.1.3", - "create-hmac": "1.1.6", - "ripemd160": "2.0.1", - "safe-buffer": "5.1.1", - "sha.js": "2.4.9" - } - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "requires": { - "pinkie": "2.0.4" - } - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "requires": { - "find-up": "2.1.0" - } - }, - "portfinder": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.13.tgz", - "integrity": "sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek=", + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "requires": { + "pify": "2.3.0" + } + }, + "pbkdf2": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", + "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", + "requires": { + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.9" + } + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "requires": { + "pinkie": "2.0.4" + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "requires": { + "find-up": "2.1.0" + } + }, + "portfinder": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.13.tgz", + "integrity": "sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek=", + "requires": { + "async": "1.5.2", + "debug": "2.6.9", + "mkdirp": "0.5.1" + }, + "dependencies": { + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "pouchdb": { + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/pouchdb/-/pouchdb-6.3.4.tgz", + "integrity": "sha512-+DSs6ipqj/SCIbEmIE6GZXYzem6YLkXPd2WBkoss5kM8P6VyNy8HUiQiYm6+NhLfchby941duXSWsejlqCuEYw==", + "requires": { + "argsarray": "0.0.1", + "buffer-from": "0.1.1", + "clone-buffer": "1.0.0", + "debug": "2.6.4", + "double-ended-queue": "2.1.0-0", + "immediate": "3.0.6", + "inherits": "2.0.3", + "level-codec": "7.0.0", + "level-write-stream": "1.0.0", + "leveldown": "1.5.0", + "levelup": "1.3.8", + "lie": "3.1.1", + "ltgt": "2.2.0", + "readable-stream": "1.0.33", + "request": "2.80.0", + "spark-md5": "3.0.0", + "through2": "2.0.3", + "uuid": "3.1.0", + "vuvuzela": "1.0.3" + }, + "dependencies": { + "abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "requires": { + "xtend": "4.0.1" + } + }, + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "assert-plus": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", + "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=" + }, + "aws-sign2": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", + "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=" + }, + "boom": { + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", + "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", + "requires": { + "hoek": "2.16.3" + } + }, + "cryptiles": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", + "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", + "requires": { + "boom": "2.10.1" + } + }, + "debug": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.4.tgz", + "integrity": "sha1-dYaps8OXQcAoKuM0RcTorHRzT+A=", + "requires": { + "ms": "0.7.3" + } + }, + "deferred-leveldown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", + "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", + "requires": { + "abstract-leveldown": "2.6.3" + } + }, + "form-data": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", + "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.17" + } + }, + "har-schema": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", + "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=" + }, + "har-validator": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", + "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", + "requires": { + "ajv": "4.11.8", + "har-schema": "1.0.5" + } + }, + "hawk": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", + "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", + "requires": { + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" + } + }, + "hoek": { + "version": "2.16.3", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", + "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" + }, + "http-signature": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", + "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", + "requires": { + "assert-plus": "0.2.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "level-errors": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", + "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", + "requires": { + "errno": "0.1.4" + } + }, + "level-iterator-stream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", + "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", + "requires": { + "inherits": "2.0.3", + "level-errors": "1.0.5", + "readable-stream": "1.0.33", + "xtend": "4.0.1" + } + }, + "levelup": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.8.tgz", + "integrity": "sha1-+0QsSI776hBD9+uZKaeSp0+9HaY=", + "requires": { + "deferred-leveldown": "1.2.2", + "level-codec": "6.1.0", + "level-errors": "1.0.5", + "level-iterator-stream": "1.3.1", + "prr": "1.0.1", + "semver": "5.1.1", + "xtend": "4.0.1" + }, + "dependencies": { + "level-codec": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-6.1.0.tgz", + "integrity": "sha1-9d8KmVgvdtrEOFUVGrb05NDWAEU=" + } + } + }, + "ms": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.3.tgz", + "integrity": "sha1-cIFVpeROM/X9D8U+gdDUCpG+H/8=" + }, + "performance-now": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", + "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=" + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" + }, + "qs": { + "version": "6.3.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", + "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=" + }, + "readable-stream": { + "version": "1.0.33", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33.tgz", + "integrity": "sha1-OjYN1mwbHX/UcFOJhg7aHQ9hEmw=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "request": { + "version": "2.80.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.80.0.tgz", + "integrity": "sha1-jMFi1215OBze/dNQXXa4C2BYm9A=", + "requires": { + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "4.2.1", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.17", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.3.2", + "stringstream": "0.0.5", + "tough-cookie": "2.3.3", + "tunnel-agent": "0.4.3", + "uuid": "3.1.0" + } + }, + "semver": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.1.tgz", + "integrity": "sha1-oykqNz5vPgeY2gsgZBuanFvEfhk=" + }, + "sntp": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", + "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", + "requires": { + "hoek": "2.16.3" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "tunnel-agent": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", + "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=" + } + } + }, + "prebuild": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/prebuild/-/prebuild-4.5.0.tgz", + "integrity": "sha1-KqoN8gY7/4FKgDvU3JT/m2Tl3wA=", "requires": { "async": "1.5.2", - "debug": "2.6.9", - "mkdirp": "0.5.1" + "execspawn": "1.0.1", + "expand-template": "1.1.0", + "ghreleases": "1.0.6", + "github-from-package": "0.0.0", + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "node-gyp": "3.6.2", + "node-ninja": "1.0.2", + "noop-logger": "0.1.1", + "npmlog": "2.0.4", + "os-homedir": "1.0.2", + "pump": "1.0.3", + "rc": "1.2.2", + "simple-get": "1.4.3", + "tar-fs": "1.16.0", + "tar-stream": "1.5.5", + "xtend": "4.0.1" }, "dependencies": { "async": { @@ -9834,13 +11319,10 @@ "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" } } }, @@ -9895,6 +11377,15 @@ "warning": "3.0.0" } }, + "property-is-enumerable-x": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/property-is-enumerable-x/-/property-is-enumerable-x-1.1.0.tgz", + "integrity": "sha512-22cKy3w3OpRswU6to9iKWDDlg+F9vF2REcwGlGW23jyLjHb1U/jJEWA44sWupOnkhGfDgotU6Lw+N2oyhNi+5A==", + "requires": { + "to-object-x": "1.5.0", + "to-property-key-x": "2.0.2" + } + }, "prr": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz", @@ -9917,6 +11408,15 @@ "randombytes": "2.0.5" } }, + "pump": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", + "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", + "requires": { + "end-of-stream": "1.4.0", + "once": "1.4.0" + } + }, "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", @@ -10019,6 +11519,24 @@ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" }, + "rc": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.2.tgz", + "integrity": "sha1-2M6ctX6NZNnHut2YdsfDTL48cHc=", + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + } + } + }, "react": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/react/-/react-16.2.0.tgz", @@ -10058,6 +11576,15 @@ "prop-types": "15.6.0" } }, + "react-draggable": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-draggable/-/react-draggable-3.0.4.tgz", + "integrity": "sha512-SZwi2WpMzU9A4oZUglm/T4+N4pbAQSBooBSQXeEzR171KhWmgh6333Pq72rbLj8mgpyJmrmjw9I8pfXwLm5uZw==", + "requires": { + "classnames": "2.2.5", + "prop-types": "15.6.0" + } + }, "react-highlight": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/react-highlight/-/react-highlight-0.10.0.tgz", @@ -10314,6 +11841,15 @@ "is-finite": "1.0.2" } }, + "replace-comments-x": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/replace-comments-x/-/replace-comments-x-2.0.0.tgz", + "integrity": "sha512-+vMP4jqU+8HboLWms6YMNEiaZG5hh1oR6ENCnGYDF/UQ7aYiJUK/8tcl3+KZAHRCKKa3gqzrfiarlUBHQSgRlg==", + "requires": { + "require-coercible-to-string-x": "1.0.0", + "to-string-x": "1.4.2" + } + }, "request": { "version": "2.83.0", "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", @@ -10362,6 +11898,15 @@ "lodash": "4.17.4" } }, + "require-coercible-to-string-x": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/require-coercible-to-string-x/-/require-coercible-to-string-x-1.0.0.tgz", + "integrity": "sha512-Rpfd4sMdflPAKecdKhfAtQHlZzzle4UMUgxJ01hXtTcNWMV8w9GeZnKhEyrT73kgrflBOP1zg41amUPZGcNspA==", + "requires": { + "require-object-coercible-x": "1.4.1", + "to-string-x": "1.4.2" + } + }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -10377,6 +11922,14 @@ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" }, + "require-object-coercible-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/require-object-coercible-x/-/require-object-coercible-x-1.4.1.tgz", + "integrity": "sha512-0YHa2afepsLfQvwQ1P2XvDZnGOUia5sC07ZijIRU2dnsRxnuilXWF6B2CFaKGDA9eZl39lJHrXCDsnfgroRd6Q==", + "requires": { + "is-nil-x": "1.4.1" + } + }, "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", @@ -10451,6 +12004,11 @@ "nan": "2.8.0" } }, + "scrypt-async": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/scrypt-async/-/scrypt-async-1.3.1.tgz", + "integrity": "sha1-oR/W+smBtLgj7gHe4CIRaVAN2uk=" + }, "scrypt.js": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/scrypt.js/-/scrypt.js-0.2.0.tgz", @@ -11135,6 +12693,11 @@ "xtend": "4.0.1" } }, + "simple-mime": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/simple-mime/-/simple-mime-0.1.0.tgz", + "integrity": "sha1-lfUXxPRm18/1YacfydqyWW6p7y4=" + }, "slash": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", @@ -11366,6 +12929,11 @@ "source-map": "0.5.7" } }, + "spark-md5": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.0.tgz", + "integrity": "sha1-NyIifFTi+vJLHcbZM8wUTm9xv+8=" + }, "spdx-correct": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", @@ -11571,6 +13139,11 @@ "get-stdin": "4.0.1" } }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", @@ -11683,6 +13256,17 @@ "inherits": "2.0.3" } }, + "tar-fs": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.0.tgz", + "integrity": "sha512-I9rb6v7mjWLtOfCau9eH5L7sLJyU2BnxtEZRQ5Mt+eRKmf1F0ohXmT/Jc3fr52kDvjJ/HV5MH3soQfPL5bQ0Yg==", + "requires": { + "chownr": "1.0.1", + "mkdirp": "0.5.1", + "pump": "1.0.3", + "tar-stream": "1.5.5" + } + }, "tar-stream": { "version": "1.5.5", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", @@ -11734,6 +13318,15 @@ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, "thunky": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-0.1.0.tgz", @@ -11762,11 +13355,100 @@ "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" }, + "to-boolean-x": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-boolean-x/-/to-boolean-x-1.0.1.tgz", + "integrity": "sha512-PstxY3K6hVEHnY3FITs8XBoJbt0RI1e4MLIhAL9hWa3BtVLCrb86vU5z6lEKh7uZZjiPiLqIKMmfMro1nNgtXQ==" + }, "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" }, + "to-integer-x": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/to-integer-x/-/to-integer-x-3.0.0.tgz", + "integrity": "sha512-794L2Lpwjtynm7RxahJi2YdbRY75gTxUW27TMuN26UgwPkmJb/+HPhkFEFbz+E4vNoiP0dxq5tq5fkXoXLaK/w==", + "requires": { + "is-finite-x": "3.0.2", + "is-nan-x": "1.0.1", + "math-sign-x": "3.0.0", + "to-number-x": "2.0.0" + } + }, + "to-number-x": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-number-x/-/to-number-x-2.0.0.tgz", + "integrity": "sha512-lGOnCoccUoSzjZ/9Uen8TC4+VFaQcFGhTroWTv2tYWxXgyJV1zqAZ8hEIMkez/Eo790fBMOjidTnQ/OJSCvAoQ==", + "requires": { + "cached-constructors-x": "1.0.0", + "nan-x": "1.0.0", + "parse-int-x": "2.0.0", + "to-primitive-x": "1.1.0", + "trim-x": "3.0.0" + } + }, + "to-object-x": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/to-object-x/-/to-object-x-1.5.0.tgz", + "integrity": "sha512-AKn5GQcdWky+s20vjWkt+Wa6y3dxQH3yQyMBhOfBOPldUwqwhgvlqcIg5H092ntNc+TX8/Cxzs1kMHH19pyCnA==", + "requires": { + "cached-constructors-x": "1.0.0", + "require-object-coercible-x": "1.4.1" + } + }, + "to-primitive-x": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/to-primitive-x/-/to-primitive-x-1.1.0.tgz", + "integrity": "sha512-gyMY0gi3wjK3e4MUBKqv9Zl8QGcWguIkaUr2VJmoBEsOpDcpDZSEyljR773eVG4maS48uX7muLkoQoh/BA82OQ==", + "requires": { + "has-symbol-support-x": "1.4.1", + "is-date-object": "1.0.1", + "is-function-x": "3.3.0", + "is-nil-x": "1.4.1", + "is-primitive": "2.0.0", + "is-symbol": "1.0.1", + "require-object-coercible-x": "1.4.1", + "validate.io-undefined": "1.0.3" + } + }, + "to-property-key-x": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/to-property-key-x/-/to-property-key-x-2.0.2.tgz", + "integrity": "sha512-YISLpZFYIazNm0P8hLsKEEUEZ3m8U3+eDysJZqTu3+B9tQp+2TrMpaEGT8Agh4fZ5LSoums60/glNEzk5ozqrg==", + "requires": { + "has-symbol-support-x": "1.4.1", + "to-primitive-x": "1.1.0", + "to-string-x": "1.4.2" + } + }, + "to-string-symbols-supported-x": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-string-symbols-supported-x/-/to-string-symbols-supported-x-1.0.0.tgz", + "integrity": "sha512-HbVH673pybrUmhzESGHUm17BBJvqb7BU8HciOvuEYm9ipuDyjmddhvkVqpVW6sM/C5/zhJo17n7O7I/24loJIQ==", + "requires": { + "cached-constructors-x": "1.0.0", + "has-symbol-support-x": "1.4.1", + "is-symbol": "1.0.1" + } + }, + "to-string-tag-x": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/to-string-tag-x/-/to-string-tag-x-1.4.2.tgz", + "integrity": "sha512-ytO9eLigxsQQLGuab0C1iSSTzKdJNVSlBg0Spg4J/rGAVrQJ5y774mo0SSzgGeTT4RJGGyJNfObXaTMzX0XDOQ==", + "requires": { + "lodash.isnull": "3.0.0", + "validate.io-undefined": "1.0.3" + } + }, + "to-string-x": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/to-string-x/-/to-string-x-1.4.2.tgz", + "integrity": "sha512-/WP5arlwtCpAAexCCHiQBW0eXwse84osWyP1Qtaz71nsYSuUpOkT6tBm8nQ4IIUfSh5hji0hDupUCD2xbbOL6A==", + "requires": { + "is-symbol": "1.0.1" + } + }, "tough-cookie": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", @@ -11780,6 +13462,16 @@ "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=" }, + "trim-left-x": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/trim-left-x/-/trim-left-x-3.0.0.tgz", + "integrity": "sha512-+m6cqkppI+CxQBTwWEZliOHpOBnCArGyMnS1WCLb6IRgukhTkiQu/TNEN5Lj2eM9jk8ewJsc7WxFZfmwNpRXWQ==", + "requires": { + "cached-constructors-x": "1.0.0", + "require-coercible-to-string-x": "1.0.0", + "white-space-x": "3.0.0" + } + }, "trim-newlines": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", @@ -11790,6 +13482,25 @@ "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" }, + "trim-right-x": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/trim-right-x/-/trim-right-x-3.0.0.tgz", + "integrity": "sha512-iIqEsWEbWVodqdixJHi4FoayJkUxhoL4AvSNGp4FF4FfQKRPGizt8++/RnyC9od75y7P/S6EfONoVqP+NddiKA==", + "requires": { + "cached-constructors-x": "1.0.0", + "require-coercible-to-string-x": "1.0.0", + "white-space-x": "3.0.0" + } + }, + "trim-x": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/trim-x/-/trim-x-3.0.0.tgz", + "integrity": "sha512-w8s38RAUScQ6t3XqMkS75iz5ZkIYLQpVnv2lp3IuTS36JdlVzC54oe6okOf4Wz3UH4rr3XAb2xR3kR5Xei82fw==", + "requires": { + "trim-left-x": "3.0.0", + "trim-right-x": "3.0.0" + } + }, "truffle": { "version": "3.4.11", "resolved": "https://registry.npmjs.org/truffle/-/truffle-3.4.11.tgz", @@ -12133,6 +13844,11 @@ "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=" }, + "url-template": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", + "integrity": "sha1-/FZaPMy/93MMd19WQflVV5FDnyE=" + }, "url-to-options": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", @@ -12163,6 +13879,11 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, + "util-extend": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", + "integrity": "sha1-p8IW0mdUUWljeztu3GypEZ4v+T8=" + }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -12182,6 +13903,11 @@ "spdx-expression-parse": "1.0.4" } }, + "validate.io-undefined": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/validate.io-undefined/-/validate.io-undefined-1.0.3.tgz", + "integrity": "sha1-fif8uzFbhB54JDQxiXZxkp4gt/Q=" + }, "value-equal": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-0.4.0.tgz", @@ -12253,6 +13979,11 @@ "indexof": "0.0.1" } }, + "vuvuzela": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/vuvuzela/-/vuvuzela-1.0.3.tgz", + "integrity": "sha1-O+FF5YJxxzylUnndhR8SpoIRSws=" + }, "warning": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", @@ -12865,6 +14596,11 @@ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" }, + "white-space-x": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/white-space-x/-/white-space-x-3.0.0.tgz", + "integrity": "sha512-nMPVXGMdi/jQepXKryxqzEh/vCwdOYY/u6NZy40glMHvZfEr7/+vQKnDhEq4rZ1nniOFq9GWohQYB30uW/5Olg==" + }, "window-size": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", @@ -12901,6 +14637,21 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, + "write-stream": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/write-stream/-/write-stream-0.4.3.tgz", + "integrity": "sha1-g8yMA0fQr2BXqThitOOuAd5cgcE=", + "requires": { + "readable-stream": "0.0.4" + }, + "dependencies": { + "readable-stream": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-0.0.4.tgz", + "integrity": "sha1-8y124/uGM0SlSNeZIwBxc2ZbO40=" + } + } + }, "ws": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.2.tgz", diff --git a/package.json b/package.json index 85b11b9..d07fe6d 100644 --- a/package.json +++ b/package.json @@ -24,9 +24,10 @@ "dotenv": "^4.0.0", "express": "^4.15.3", "express-session": "^1.15.3", + "github-api": "^3.0.0", "gittoken-contracts": "0.0.59", "gittoken-keystore-generator": "0.0.20", - "gittoken-landing-page": "0.0.4", + "gittoken-landing-page": "0.0.15", "gittoken-registry-ui": "0.0.13", "graphql": "^0.10.4", "keccak": "^1.3.0", diff --git a/src/events/handlePingEvent.js b/src/events/handlePingEvent.js index 8ce2680..177ab2a 100644 --- a/src/events/handlePingEvent.js +++ b/src/events/handlePingEvent.js @@ -35,7 +35,6 @@ export default function handlePingEvent() { ] }).then((txReceipt) => { // save the receipts; - console.log('txReceipt', txReceipt) resolve(txReceipt) }).catch((error) => { reject(error) diff --git a/src/github/createOrgWebHook.js b/src/github/createOrgWebHook.js new file mode 100644 index 0000000..d251e9a --- /dev/null +++ b/src/github/createOrgWebHook.js @@ -0,0 +1,36 @@ +import Promise from 'bluebird' +import GitHub from 'github-api' + +export default function createOrgWebHook({ req }) { + return new Promise((resolve, reject) => { + const { + body: { organization }, + session: { passport: { user: { profile, accessToken } } } + } = req + + const gh = new GitHub({ + username: profile['username'], + token: accessToken + }) + + console.log('gh', gh) + + gh._request('POST', `/orgs/${organization}/hooks`, { + name: 'GitToken', + active: true, + events: [ + "pull_request" + ], + config: { + "url": `https://webhook.gittoken.io/${organization}`, + "content_type": "json" + } + }).then((result) => { + console.log('result', result) + resolve(result) + }).catch((error) => { + console.log('error', error) + reject(error) + }) + }) +} diff --git a/src/github/index.js b/src/github/index.js new file mode 100644 index 0000000..ba9c1fd --- /dev/null +++ b/src/github/index.js @@ -0,0 +1,5 @@ +import createOrgWebHook from './createOrgWebHook' + +export { + createOrgWebHook +} diff --git a/src/index.js b/src/index.js index 1c18b7d..52793d6 100644 --- a/src/index.js +++ b/src/index.js @@ -15,6 +15,10 @@ import { handleEventActions } from './utils/index' +import { + createOrgWebHook +} from './github/index' + import GitTokenContracts from './contracts/index' import { @@ -89,6 +93,7 @@ export default class GitTokenServer extends GitTokenContracts { this.handleContribution = handleContribution.bind(this) this.handleEventActions = handleEventActions.bind(this) this.handlePingEvent = handlePingEvent.bind(this) + this.createOrgWebHook = createOrgWebHook.bind(this) /* Gitter WebHook Integration */ @@ -121,12 +126,9 @@ export default class GitTokenServer extends GitTokenContracts { // Serve Web Applications this.app.use('/registry', express.static(`${process.cwd()}/node_modules/gittoken-registry-ui/`)) - - this.app.use('/', express.static(`${process.cwd()}/node_modules/gittoken-landing-page/`)) - /* Run GitToken Server */ this.listen() } diff --git a/src/middleware/WebHookMiddleware.js b/src/middleware/WebHookMiddleware.js index a31ff36..2433000 100644 --- a/src/middleware/WebHookMiddleware.js +++ b/src/middleware/WebHookMiddleware.js @@ -8,8 +8,10 @@ export default function WebHookMiddleware(req, res, next) { req.userBalance = userBalance; req.totalSupply = totalSupply; return this.handleEventActions({ contribution }) - }).then((events) => { - req.events = events + }).then((receipts) => { + // Expect receipts to be an [] of txReceipts + req.receipts = receipts + // Save Receipts to SQL table next() }).catch((error) => { console.log('error', error) diff --git a/src/routers/AccountRouter.js b/src/routers/AccountRouter.js index bf7d2e6..8651c27 100644 --- a/src/routers/AccountRouter.js +++ b/src/routers/AccountRouter.js @@ -3,8 +3,9 @@ import { Router } from 'express' export default function AccountRouter() { let router = Router() + // Serve static web apps router.get('/', (req, res) => { - res.send('Hello, World!') + res.send(true) }) return router diff --git a/src/routers/ApiRouter.js b/src/routers/ApiRouter.js index 0f57604..1fe19da 100644 --- a/src/routers/ApiRouter.js +++ b/src/routers/ApiRouter.js @@ -68,5 +68,13 @@ export default function AuthRouter() { } }) + router.post('/register', (req, res) => { + this.createOrgWebHook({ req }).then((result) => { + res.status(200).send(result) + }).catch((error) => { + res.status(500).send(error) + }) + }) + return router } diff --git a/src/routers/WebHookRouter.js b/src/routers/WebHookRouter.js index 7ce5833..7d48ae1 100644 --- a/src/routers/WebHookRouter.js +++ b/src/routers/WebHookRouter.js @@ -5,19 +5,13 @@ export default function WebHookRouter() { router.post('/', this.WebHookMiddleware, (req, res) => { const { contribution, totalSupply, userBalance, receipts } = req - const details = JSON.stringify({ contribution, userBalance, totalSupply, receipts }, null, 2) - - console.log('details', details) - res.status(200).send(details) }) - - return router } diff --git a/src/utils/handleContribution.js b/src/utils/handleContribution.js index 89735ca..a526e65 100644 --- a/src/utils/handleContribution.js +++ b/src/utils/handleContribution.js @@ -15,6 +15,8 @@ export default function handleContribution({ headers, body }) { return this.saveUserBalance(details.contribution) }).then((userBalance) => { details.userBalance = userBalance + // Send to any third party integration + // (e.g. Twitter, Emails, Gitter-- any media that we want to send out from this event) if (!this.gitterWebHookUrl) { resolve(details) } else { diff --git a/src/utils/handleEventActions.js b/src/utils/handleEventActions.js index bec6abb..c3df9e8 100644 --- a/src/utils/handleEventActions.js +++ b/src/utils/handleEventActions.js @@ -5,7 +5,9 @@ export default function handleEventActions({ contribution }) { const { username, eventType, subEventType } = contribution Promise.resolve().then(() => { if (eventType == "ping") { - return join(this.handlePingEvent()) + return join( + this.handlePingEvent() + ) } else { return null } diff --git a/src/utils/parseContribution.js b/src/utils/parseContribution.js index 825d102..9c66f41 100644 --- a/src/utils/parseContribution.js +++ b/src/utils/parseContribution.js @@ -36,6 +36,7 @@ export default function parseContribution({ headers, body }) { const subEventType = getSubEventType({ eventType, body }) + // NOTE: Consider saving the reward points in memory instead of calling the contract for the reward details this.RewardPoints.getRewardDetails.callAsync(eventType, subEventType).then((data) => { const rewardValue = data[0].toNumber() diff --git a/src_old/index.js b/src_old/index.js deleted file mode 100644 index 04d96cf..0000000 --- a/src_old/index.js +++ /dev/null @@ -1,75 +0,0 @@ -import express from 'express' -import http from 'http' -import cors from 'cors' -import path from 'path' -import bodyParser from 'body-parser' -import GitTokenMiddleware from 'gittoken-api-middleware/dist/index' -import passport from 'passport' -import { Strategy } from 'passport-github' -import graphqlHTTP from 'express-graphql' -import { buildSchema } from 'graphql' -import { sequelize } from './sequelize' - -const gittokenConfig = require(process.argv[2] || `${process.cwd()}/gittoken.config.js`) -const { githubCredentials, api: { sessionSecret } } = gittokenConfig - -const app = express() -const port = 1324 - -passport.use(new Strategy(githubCredentials, - function(accessToken, refreshToken, profile, cb) { - cb(null, { accessToken, profile }); - }) -); - -passport.serializeUser((user, cb) => { - cb(null, user) -}) - -passport.deserializeUser((user, cb) => { - cb(null, user) -}) - -app.use(cors()) -app.use(require('cookie-parser')()); -app.use(bodyParser.json()) // handle json data -app.use(bodyParser.urlencoded({ extended: true })) // handle URL-encoded data - -/** - * Serve static files - */ - -// app.use('/', -// express.static(`${process.cwd()}/node_modules/gittoken-messenger-ui/`)) - -app.use('/', express.static(`${process.cwd()}/node_modules/gittoken-dashboard/`)) - -app.use(require('express-session')({ - secret: sessionSecret, - resave: true, - saveUninitialized: true -})); - - -/** - * Setup GitHub OAuth Strategy - */ -app.use(passport.initialize()); -app.use(passport.session()); - -app.get('/auth/github', passport.authenticate('github')) -app.get('/auth/github/callback', - passport.authenticate('github', { failureRedirect: '/' }), - (req, res) => { res.redirect('/') }) - - -/** - * Establish GitToken Middleware Services - */ -let gittoken = new GitTokenMiddleware(gittokenConfig) -app.use('/gittoken', gittoken.routeRequests()) - - -app.listen(port, () => { - console.log(`GitToken Server Listening on Port ${port}`) -}) From 30dfdf4c7d50ea63fa821e25d081436845dc1c3f Mon Sep 17 00:00:00 2001 From: Ryan Tate Date: Thu, 11 Jan 2018 17:24:12 -0800 Subject: [PATCH 08/10] Refactor: Consolidated all UI components under ui folder. Additionally, consolidated redux reducers, actions, and web workers under the ui folder for easier development --- dist/github/getOrganizations.js | 36 + dist/github/index.js | 9 +- dist/index.js | 22 +- dist/middleware/SaveUserMiddleware.js | 29 + dist/middleware/VerifyAccountMiddleware.js | 64 + dist/middleware/index.js | 14 +- dist/mysql/getEndUserLicenseAgreement.js | 29 + dist/mysql/getUserDetails.js | 29 + dist/mysql/index.js | 29 +- dist/mysql/saveEndUserLicenseAgreement.js | 43 + dist/mysql/saveUserDetails.js | 41 + dist/mysql/updateUserAddress.js | 35 + dist/routers/AccountRouter.js | 8 +- dist/routers/ApiRouter.js | 65 +- dist/routers/AuthRouter.js | 35 +- dist/utils/verifyAccount.js | 29 + gittoken.config.js | 3 +- package-lock.json | 11758 +-- package.json | 31 +- remove_docker_images.sh | 2 +- src/github/getOrganizations.js | 17 + src/github/index.js | 4 +- src/index.js | 36 +- src/middleware/SaveUserMiddleware.js | 19 + src/middleware/VerifyAccountMiddleware.js | 41 + src/middleware/index.js | 6 +- src/mysql/getEndUserLicenseAgreement.js | 13 + src/mysql/getUserDetails.js | 13 + src/mysql/index.js | 12 +- src/mysql/saveEndUserLicenseAgreement.js | 47 + src/mysql/saveUserDetails.js | 43 + src/mysql/updateUserAddress.js | 26 + src/routers/AccountRouter.js | 6 +- src/routers/ApiRouter.js | 57 +- src/routers/AuthRouter.js | 41 +- ui/6d42f3d573f78857f2db.worker.js | 7966 ++ ui/6d42f3d573f78857f2db.worker.js.map | 1 + ui/assets/stylesheets/bootstrap.min.css | 11 + ui/gittoken-ui.dist.js | 87613 ++++++++++++++++ ui/gittoken-ui.dist.js.map | 1 + ui/index.html | 16 + ui/src/actions/Account/getOrganizations.js | 3 + ui/src/actions/Account/getProfile.js | 4 + ui/src/actions/Account/handleError.js | 4 + ui/src/actions/Account/index.js | 23 + ui/src/actions/Account/metamask.js | 30 + ui/src/actions/Account/setupStep.js | 11 + ui/src/actions/Account/verifyAccount.js | 40 + ui/src/actions/Account/worker.js | 32 + ui/src/actions/RegistryActions.js | 0 ui/src/actions/index.js | 7 + ui/src/components/Account/Auth.js | 35 + ui/src/components/Account/Header.js | 65 + ui/src/components/Account/Main.js | 48 + ui/src/components/Account/Setup/Main.js | 224 + ui/src/components/Account/Setup/MetaMask.js | 165 + .../Account/Setup/RegisterAccount.js | 115 + .../Account/Setup/SelectProvider.js | 70 + .../Account/Setup/SetupOrganization.js | 53 + ui/src/components/Account/Setup/Welcome.js | 61 + ui/src/components/Account/Setup/index.js | 9 + ui/src/components/Account/Welcome.js | 48 + ui/src/components/Account/index.js | 9 + ui/src/components/LandingPage/Footer.js | 0 ui/src/components/LandingPage/Header.js | 52 + ui/src/components/LandingPage/Main.js | 35 + ui/src/components/LandingPage/Welcome.js | 114 + ui/src/components/LandingPage/index.js | 7 + ui/src/components/Logos/NavBarLogo.js | 73 + ui/src/components/index.js | 7 + ui/src/index.js | 31 + ui/src/reducers/Account.js | 49 + ui/src/reducers/AccountSetup.js | 158 + ui/src/reducers/Actions.js | 13 + ui/src/reducers/Admin.js | 20 + ui/src/reducers/Layout.js | 22 + ui/src/reducers/Media.js | 20 + ui/src/reducers/Register.js | 27 + ui/src/reducers/Registry.js | 30 + ui/src/reducers/index.js | 21 + ui/src/store.js | 29 + ui/src/workers/Account/Account.worker.js | 50 + ui/src/workers/Account/accountVerified.js | 3 + ui/src/workers/Account/getOrganizations.js | 27 + ui/src/workers/Account/getProfile.js | 40 + ui/src/workers/Account/verifyAccount.js | 39 + ui/src/workers/Admin.worker.js | 27 + ui/src/workers/Auction.worker.js | 36 + ui/src/workers/Registry.worker.js | 98 + ui/src/workers/Voting.worker.js | 27 + ui/src/workers/Wallet.worker.js | 93 + ui/src/workers/index.js | 13 + webpack.config.js | 58 + 93 files changed, 103467 insertions(+), 7108 deletions(-) create mode 100644 dist/github/getOrganizations.js create mode 100644 dist/middleware/SaveUserMiddleware.js create mode 100644 dist/middleware/VerifyAccountMiddleware.js create mode 100644 dist/mysql/getEndUserLicenseAgreement.js create mode 100644 dist/mysql/getUserDetails.js create mode 100644 dist/mysql/saveEndUserLicenseAgreement.js create mode 100644 dist/mysql/saveUserDetails.js create mode 100644 dist/mysql/updateUserAddress.js create mode 100644 dist/utils/verifyAccount.js create mode 100644 src/github/getOrganizations.js create mode 100644 src/middleware/SaveUserMiddleware.js create mode 100644 src/middleware/VerifyAccountMiddleware.js create mode 100644 src/mysql/getEndUserLicenseAgreement.js create mode 100644 src/mysql/getUserDetails.js create mode 100644 src/mysql/saveEndUserLicenseAgreement.js create mode 100644 src/mysql/saveUserDetails.js create mode 100644 src/mysql/updateUserAddress.js create mode 100644 ui/6d42f3d573f78857f2db.worker.js create mode 100644 ui/6d42f3d573f78857f2db.worker.js.map create mode 100644 ui/assets/stylesheets/bootstrap.min.css create mode 100644 ui/gittoken-ui.dist.js create mode 100644 ui/gittoken-ui.dist.js.map create mode 100644 ui/index.html create mode 100644 ui/src/actions/Account/getOrganizations.js create mode 100644 ui/src/actions/Account/getProfile.js create mode 100644 ui/src/actions/Account/handleError.js create mode 100644 ui/src/actions/Account/index.js create mode 100644 ui/src/actions/Account/metamask.js create mode 100644 ui/src/actions/Account/setupStep.js create mode 100644 ui/src/actions/Account/verifyAccount.js create mode 100644 ui/src/actions/Account/worker.js create mode 100644 ui/src/actions/RegistryActions.js create mode 100644 ui/src/actions/index.js create mode 100644 ui/src/components/Account/Auth.js create mode 100644 ui/src/components/Account/Header.js create mode 100644 ui/src/components/Account/Main.js create mode 100644 ui/src/components/Account/Setup/Main.js create mode 100644 ui/src/components/Account/Setup/MetaMask.js create mode 100644 ui/src/components/Account/Setup/RegisterAccount.js create mode 100644 ui/src/components/Account/Setup/SelectProvider.js create mode 100644 ui/src/components/Account/Setup/SetupOrganization.js create mode 100644 ui/src/components/Account/Setup/Welcome.js create mode 100644 ui/src/components/Account/Setup/index.js create mode 100644 ui/src/components/Account/Welcome.js create mode 100644 ui/src/components/Account/index.js create mode 100644 ui/src/components/LandingPage/Footer.js create mode 100644 ui/src/components/LandingPage/Header.js create mode 100644 ui/src/components/LandingPage/Main.js create mode 100644 ui/src/components/LandingPage/Welcome.js create mode 100644 ui/src/components/LandingPage/index.js create mode 100644 ui/src/components/Logos/NavBarLogo.js create mode 100644 ui/src/components/index.js create mode 100644 ui/src/index.js create mode 100644 ui/src/reducers/Account.js create mode 100644 ui/src/reducers/AccountSetup.js create mode 100644 ui/src/reducers/Actions.js create mode 100644 ui/src/reducers/Admin.js create mode 100644 ui/src/reducers/Layout.js create mode 100644 ui/src/reducers/Media.js create mode 100644 ui/src/reducers/Register.js create mode 100644 ui/src/reducers/Registry.js create mode 100644 ui/src/reducers/index.js create mode 100644 ui/src/store.js create mode 100644 ui/src/workers/Account/Account.worker.js create mode 100644 ui/src/workers/Account/accountVerified.js create mode 100644 ui/src/workers/Account/getOrganizations.js create mode 100644 ui/src/workers/Account/getProfile.js create mode 100644 ui/src/workers/Account/verifyAccount.js create mode 100644 ui/src/workers/Admin.worker.js create mode 100644 ui/src/workers/Auction.worker.js create mode 100644 ui/src/workers/Registry.worker.js create mode 100644 ui/src/workers/Voting.worker.js create mode 100644 ui/src/workers/Wallet.worker.js create mode 100644 ui/src/workers/index.js create mode 100644 webpack.config.js diff --git a/dist/github/getOrganizations.js b/dist/github/getOrganizations.js new file mode 100644 index 0000000..f91aaf2 --- /dev/null +++ b/dist/github/getOrganizations.js @@ -0,0 +1,36 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = getOrganizations; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +var _githubApi = require('github-api'); + +var _githubApi2 = _interopRequireDefault(_githubApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function getOrganizations(_ref) { + var accessToken = _ref.accessToken, + username = _ref.username; + + return new _bluebird2.default(function (resolve, reject) { + + var gh = new _githubApi2.default({ username: username, token: accessToken }); + var user = gh.getUser(); + + user.listOrgs().then(function (_ref2) { + var data = _ref2.data; + + resolve(data); + }).catch(function (error) { + console.log('error', error); + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/github/index.js b/dist/github/index.js index 5119ecc..fec0ed8 100644 --- a/dist/github/index.js +++ b/dist/github/index.js @@ -3,12 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.createOrgWebHook = undefined; +exports.getOrganizations = exports.createOrgWebHook = undefined; var _createOrgWebHook = require('./createOrgWebHook'); var _createOrgWebHook2 = _interopRequireDefault(_createOrgWebHook); +var _getOrganizations = require('./getOrganizations'); + +var _getOrganizations2 = _interopRequireDefault(_getOrganizations); + function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -exports.createOrgWebHook = _createOrgWebHook2.default; \ No newline at end of file +exports.createOrgWebHook = _createOrgWebHook2.default; +exports.getOrganizations = _getOrganizations2.default; \ No newline at end of file diff --git a/dist/index.js b/dist/index.js index 03a1760..ca18cfb 100644 --- a/dist/index.js +++ b/dist/index.js @@ -92,26 +92,34 @@ var GitTokenServer = function (_GitTokenContracts) { _this.web3Provider = web3Provider; /* Bind Methods */ + _this.query = _index6.query.bind(_this); _this.AuthRouter = _index7.AuthRouter.bind(_this); _this.WebHookRouter = _index7.WebHookRouter.bind(_this); _this.ApiRouter = _index7.ApiRouter.bind(_this); _this.AccountRouter = _index7.AccountRouter.bind(_this); _this.WebHookMiddleware = _index8.WebHookMiddleware.bind(_this); + _this.SaveUserMiddleware = _index8.SaveUserMiddleware.bind(_this); + _this.VerifyAccountMiddleware = _index8.VerifyAccountMiddleware.bind(_this); _this.parseContribution = _index2.parseContribution.bind(_this); _this.validateWebHookRequest = _index2.validateWebHookRequest.bind(_this); _this.signContribution = _index2.signContribution.bind(_this); - _this.query = _index6.query.bind(_this); _this.saveContribution = _index6.saveContribution.bind(_this); _this.saveUserBalance = _index6.saveUserBalance.bind(_this); _this.saveTotalSupply = _index6.saveTotalSupply.bind(_this); _this.getContributions = _index6.getContributions.bind(_this); _this.getTokenSupply = _index6.getTokenSupply.bind(_this); _this.getUserBalances = _index6.getUserBalances.bind(_this); + _this.saveUserDetails = _index6.saveUserDetails.bind(_this); + _this.getUserDetails = _index6.getUserDetails.bind(_this); + _this.saveEndUserLicenseAgreement = _index6.saveEndUserLicenseAgreement.bind(_this); + _this.getEndUserLicenseAgreement = _index6.getEndUserLicenseAgreement.bind(_this); + _this.updateUserAddress = _index6.updateUserAddress.bind(_this); _this.handleContribution = _index2.handleContribution.bind(_this); _this.handleEventActions = _index2.handleEventActions.bind(_this); _this.handlePingEvent = _index.handlePingEvent.bind(_this); _this.createOrgWebHook = _index3.createOrgWebHook.bind(_this); + _this.getOrganizations = _index3.getOrganizations.bind(_this); /* Gitter WebHook Integration */ _this.gitterService = _index9.gitterService.bind(_this); @@ -135,14 +143,18 @@ var GitTokenServer = function (_GitTokenContracts) { _this.app.use(_bodyParser2.default.json()); // handle json data _this.app.use(_bodyParser2.default.urlencoded({ extended: true })); // handle + _this.app.use('/api/', _this.ApiRouter()); _this.app.use('/auth/', _this.AuthRouter()); _this.app.use('/webhook/', _this.WebHookRouter()); - _this.app.use('/account', _this.AccountRouter()); + // this.app.use('/account', this.AccountRouter()); + + // Serve Web Application UI + _this.app.use('/', _express2.default.static(process.cwd() + '/ui/')); - // Serve Web Applications - _this.app.use('/registry', _express2.default.static(process.cwd() + '/node_modules/gittoken-registry-ui/')); - _this.app.use('/', _express2.default.static(process.cwd() + '/node_modules/gittoken-landing-page/')); + _this.app.use(function (req, res) { + res.redirect('/'); + }); /* Run GitToken Server */ _this.listen(); diff --git a/dist/middleware/SaveUserMiddleware.js b/dist/middleware/SaveUserMiddleware.js new file mode 100644 index 0000000..cbd6e4f --- /dev/null +++ b/dist/middleware/SaveUserMiddleware.js @@ -0,0 +1,29 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = SaveUserMiddleware; +function SaveUserMiddleware(req, res, next) { + var passport = req.session.passport; + var _passport$user$profil = passport.user.profile, + username = _passport$user$profil.username, + emails = _passport$user$profil.emails; + + + this.saveUserDetails({ + username: username, + email: emails[0]['value'] + }).then(function (user) { + next(); + }).catch(function (error) { + switch (error.errno) { + case 1062: + // sql duplicate entry error + return next(); + break; + default: + res.status(500).send(error); + } + }); +} \ No newline at end of file diff --git a/dist/middleware/VerifyAccountMiddleware.js b/dist/middleware/VerifyAccountMiddleware.js new file mode 100644 index 0000000..9d9ed11 --- /dev/null +++ b/dist/middleware/VerifyAccountMiddleware.js @@ -0,0 +1,64 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = VerifyAccountMiddleware; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +var _ethSigUtil = require('eth-sig-util'); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function VerifyAccountMiddleware(req, res, next) { + var _this = this; + + var _req$body = req.body, + msgParams = _req$body.msgParams, + sig = _req$body.sig, + username = _req$body.username, + address = _req$body.address, + passport = req.session.passport; + + + if (passport && passport['user']) { + var _passport$user$profil = passport.user.profile, + _username = _passport$user$profil.username, + emails = _passport$user$profil.emails; + + var signer = (0, _ethSigUtil.recoverTypedSignature)({ data: msgParams, sig: sig }); + var user = msgParams[1].value; + if (address != signer || _username != user) { + res.status(401).send(false); + } else { + var eula_hash = (0, _ethSigUtil.typedSignatureHash)(msgParams); + this.saveEndUserLicenseAgreement({ + eula_hash: eula_hash, + signature: sig, + username: _username, + address: address + }).then(function (result) { + console.log('result', result); + return _this.updateUserAddress({ + address: address, + username: _username + }); + }).then(function (result) { + console.log('result', result); + next(); + }).catch(function (error) { + if (error.errno == 1062) { + next(); + } else { + console.log('VerifyAccountMiddleware::error', error); + res.status(500).send(error); + } + }); + } + } else { + res.status(401).send(false); + } +} \ No newline at end of file diff --git a/dist/middleware/index.js b/dist/middleware/index.js index b0880b2..106c1ac 100644 --- a/dist/middleware/index.js +++ b/dist/middleware/index.js @@ -3,12 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.WebHookMiddleware = undefined; +exports.VerifyAccountMiddleware = exports.SaveUserMiddleware = exports.WebHookMiddleware = undefined; var _WebHookMiddleware = require('./WebHookMiddleware'); var _WebHookMiddleware2 = _interopRequireDefault(_WebHookMiddleware); +var _SaveUserMiddleware = require('./SaveUserMiddleware'); + +var _SaveUserMiddleware2 = _interopRequireDefault(_SaveUserMiddleware); + +var _VerifyAccountMiddleware = require('./VerifyAccountMiddleware'); + +var _VerifyAccountMiddleware2 = _interopRequireDefault(_VerifyAccountMiddleware); + function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -exports.WebHookMiddleware = _WebHookMiddleware2.default; \ No newline at end of file +exports.WebHookMiddleware = _WebHookMiddleware2.default; +exports.SaveUserMiddleware = _SaveUserMiddleware2.default; +exports.VerifyAccountMiddleware = _VerifyAccountMiddleware2.default; \ No newline at end of file diff --git a/dist/mysql/getEndUserLicenseAgreement.js b/dist/mysql/getEndUserLicenseAgreement.js new file mode 100644 index 0000000..5063826 --- /dev/null +++ b/dist/mysql/getEndUserLicenseAgreement.js @@ -0,0 +1,29 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _promise = require("babel-runtime/core-js/promise"); + +var _promise2 = _interopRequireDefault(_promise); + +exports.default = getEndUserLicenseAgreement; + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function getEndUserLicenseAgreement(_ref) { + var _this = this; + + var username = _ref.username; + + return new _promise2.default(function (resolve, reject) { + _this.query({ + queryString: "\n SELECT * FROM eula WHERE username = \"" + username + "\";\n " + }).then(function (eula) { + resolve(eula[0]); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/getUserDetails.js b/dist/mysql/getUserDetails.js new file mode 100644 index 0000000..eb646ab --- /dev/null +++ b/dist/mysql/getUserDetails.js @@ -0,0 +1,29 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _promise = require("babel-runtime/core-js/promise"); + +var _promise2 = _interopRequireDefault(_promise); + +exports.default = getUserDetails; + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function getUserDetails(_ref) { + var _this = this; + + var username = _ref.username; + + return new _promise2.default(function (resolve, reject) { + _this.query({ + queryString: "\n SELECT * FROM user_details WHERE username = \"" + username + "\";\n " + }).then(function (user) { + resolve(user[0]); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/index.js b/dist/mysql/index.js index 6de4290..42c7cb3 100644 --- a/dist/mysql/index.js +++ b/dist/mysql/index.js @@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.query = exports.getUserBalances = exports.getTokenSupply = exports.getContributions = exports.saveTotalSupply = exports.saveUserBalance = exports.saveContribution = undefined; +exports.updateUserAddress = exports.getEndUserLicenseAgreement = exports.saveEndUserLicenseAgreement = exports.getUserDetails = exports.saveUserDetails = exports.query = exports.getUserBalances = exports.getTokenSupply = exports.getContributions = exports.saveTotalSupply = exports.saveUserBalance = exports.saveContribution = undefined; var _saveContribution = require('./saveContribution'); @@ -29,6 +29,26 @@ var _getUserBalances = require('./getUserBalances'); var _getUserBalances2 = _interopRequireDefault(_getUserBalances); +var _saveUserDetails = require('./saveUserDetails'); + +var _saveUserDetails2 = _interopRequireDefault(_saveUserDetails); + +var _getUserDetails = require('./getUserDetails'); + +var _getUserDetails2 = _interopRequireDefault(_getUserDetails); + +var _saveEndUserLicenseAgreement = require('./saveEndUserLicenseAgreement'); + +var _saveEndUserLicenseAgreement2 = _interopRequireDefault(_saveEndUserLicenseAgreement); + +var _getEndUserLicenseAgreement = require('./getEndUserLicenseAgreement'); + +var _getEndUserLicenseAgreement2 = _interopRequireDefault(_getEndUserLicenseAgreement); + +var _updateUserAddress = require('./updateUserAddress'); + +var _updateUserAddress2 = _interopRequireDefault(_updateUserAddress); + var _query = require('./query'); var _query2 = _interopRequireDefault(_query); @@ -41,4 +61,9 @@ exports.saveTotalSupply = _saveTotalSupply2.default; exports.getContributions = _getContributions2.default; exports.getTokenSupply = _getTokenSupply2.default; exports.getUserBalances = _getUserBalances2.default; -exports.query = _query2.default; \ No newline at end of file +exports.query = _query2.default; +exports.saveUserDetails = _saveUserDetails2.default; +exports.getUserDetails = _getUserDetails2.default; +exports.saveEndUserLicenseAgreement = _saveEndUserLicenseAgreement2.default; +exports.getEndUserLicenseAgreement = _getEndUserLicenseAgreement2.default; +exports.updateUserAddress = _updateUserAddress2.default; \ No newline at end of file diff --git a/dist/mysql/saveEndUserLicenseAgreement.js b/dist/mysql/saveEndUserLicenseAgreement.js new file mode 100644 index 0000000..4967c4e --- /dev/null +++ b/dist/mysql/saveEndUserLicenseAgreement.js @@ -0,0 +1,43 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = saveEndUserLicenseAgreement; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function saveEndUserLicenseAgreement(_ref) { + var _this = this; + + var _ref$username = _ref.username, + username = _ref$username === undefined ? '' : _ref$username, + _ref$eula_hash = _ref.eula_hash, + eula_hash = _ref$eula_hash === undefined ? '' : _ref$eula_hash, + _ref$signature = _ref.signature, + signature = _ref$signature === undefined ? '' : _ref$signature, + _ref$address = _ref.address, + address = _ref$address === undefined ? '' : _ref$address; + + return new _bluebird2.default(function (resolve, reject) { + _this.query({ + queryString: '\n CREATE TABLE IF NOT EXISTS eula (\n username CHARACTER(39) PRIMARY KEY,\n eula_hash CHARACTER(66),\n signature CHARACTER(132),\n address CHARACTER(66)\n );\n ' + }).then(function () { + return _this.query({ + queryString: '\n INSERT INTO eula (\n username,\n eula_hash,\n signature,\n address\n ) VALUES (\n "' + username + '",\n "' + eula_hash + '",\n "' + signature + '",\n "' + address + '"\n );\n ' + }); + }).then(function () { + return _this.query({ + queryString: '\n SELECT * FROM eula WHERE username = "' + username + '";\n ' + }); + }).then(function (eula) { + resolve(eula[0]); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/saveUserDetails.js b/dist/mysql/saveUserDetails.js new file mode 100644 index 0000000..1163121 --- /dev/null +++ b/dist/mysql/saveUserDetails.js @@ -0,0 +1,41 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = saveUserDetails; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function saveUserDetails(_ref) { + var _this = this; + + var _ref$username = _ref.username, + username = _ref$username === undefined ? '' : _ref$username, + _ref$email = _ref.email, + email = _ref$email === undefined ? '' : _ref$email, + _ref$address = _ref.address, + address = _ref$address === undefined ? '0x0' : _ref$address; + + return new _bluebird2.default(function (resolve, reject) { + _this.query({ + queryString: '\n CREATE TABLE IF NOT EXISTS user_details (\n email TEXT,\n username CHARACTER(39) PRIMARY KEY,\n address CHARACTER(42) NOT NULL DEFAULT "0x0"\n );\n ' + }).then(function () { + return _this.query({ + queryString: '\n INSERT INTO user_details (\n email,\n username,\n address\n ) VALUES (\n "' + email + '",\n "' + username + '",\n "' + address + '"\n );\n ' + }); + }).then(function () { + return _this.query({ + queryString: '\n SELECT * FROM user_details WHERE username = "' + username + '";\n ' + }); + }).then(function (details) { + resolve(details[0]); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/mysql/updateUserAddress.js b/dist/mysql/updateUserAddress.js new file mode 100644 index 0000000..eae8584 --- /dev/null +++ b/dist/mysql/updateUserAddress.js @@ -0,0 +1,35 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = updateUserAddress; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function updateUserAddress(_ref) { + var _this = this; + + var _ref$address = _ref.address, + address = _ref$address === undefined ? '0x0' : _ref$address, + _ref$username = _ref.username, + username = _ref$username === undefined ? '' : _ref$username; + + return new _bluebird2.default(function (resolve, reject) { + _this.query({ + queryString: '\n UPDATE user_details\n SET address = "' + address + '"\n WHERE username = "' + username + '"\n ' + }).then(function () { + return _this.query({ + queryString: '\n SELECT * FROM user_details WHERE username = "' + username + '";\n ' + }); + }).then(function (details) { + resolve(details[0]); + }).catch(function (error) { + reject(error); + }); + }); +} \ No newline at end of file diff --git a/dist/routers/AccountRouter.js b/dist/routers/AccountRouter.js index 3618220..7453939 100644 --- a/dist/routers/AccountRouter.js +++ b/dist/routers/AccountRouter.js @@ -7,13 +7,15 @@ exports.default = AccountRouter; var _express = require('express'); +var _express2 = _interopRequireDefault(_express); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + function AccountRouter() { var router = (0, _express.Router)(); // Serve static web apps - router.get('/', function (req, res) { - res.send(true); - }); + router.use('/', _express2.default.static(process.cwd() + '/node_modules/gittoken-account-ui/')); return router; } \ No newline at end of file diff --git a/dist/routers/ApiRouter.js b/dist/routers/ApiRouter.js index b506865..bab4778 100644 --- a/dist/routers/ApiRouter.js +++ b/dist/routers/ApiRouter.js @@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.default = AuthRouter; +exports.default = ApiRouter; var _express = require('express'); -function AuthRouter() { +function ApiRouter() { var _this = this; var router = (0, _express.Router)(); @@ -71,16 +71,65 @@ function AuthRouter() { }); }); - router.get('/profile', function (req, res) { - try { - var profile = req.session.passport.user.profile; + router.get('/account/profile', function (req, res) { + var passport = req.session.passport; - res.status(200).send(profile); - } catch (error) { - res.status(500).send(error); + + if (passport && passport['user']) { + try { + var profile = passport.user.profile; + + res.status(200).send(profile); + } catch (error) { + res.status(500).send(error); + } + } else { + res.status(401).send(false); + } + }); + + router.get('/account/verified', function (req, res) { + var passport = req.session.passport; + + + if (passport && passport['user']) { + var username = passport.user.profile.username; + + _this.getEndUserLicenseAgreement({ username: username }).then(function (eula) { + var verified = !eula ? false : true; + res.status(200).send(verified); + }).catch(function (error) { + res.status(500).send(error); + }); + } else { + res.status(401).send(false); } }); + router.get('/account/organizations', function (req, res) { + var passport = req.session.passport; + + + if (passport && passport['user']) { + var _passport$user = passport.user, + accessToken = _passport$user.accessToken, + username = _passport$user.profile.username; + + _this.getOrganizations({ accessToken: accessToken, username: username }).then(function (organizations) { + res.status(200).send(organizations); + }).catch(function (error) { + console.log('error', error); + res.status(500).send(error); + }); + } else { + res.status(401).send(false); + } + }); + + router.post('/account/verify', this.VerifyAccountMiddleware, function (req, res) { + res.status(200).send(true); + }); + router.post('/register', function (req, res) { _this.createOrgWebHook({ req: req }).then(function (result) { res.status(200).send(result); diff --git a/dist/routers/AuthRouter.js b/dist/routers/AuthRouter.js index fc25027..d6bd8c6 100644 --- a/dist/routers/AuthRouter.js +++ b/dist/routers/AuthRouter.js @@ -36,24 +36,27 @@ function AuthRouter() { router.use(this.passport.session()); router.get('/github', this.passport.authenticate('github')); - router.get('/github/callback', this.passport.authenticate('github', { failureRedirect: '/' }), function (req, res) { - res.redirect('/account'); + router.get('/github/callback', this.passport.authenticate('github', { failureRedirect: '/' }), this.SaveUserMiddleware, function (req, res) { + res.redirect('/'); }); - router.get('/verify/:address', function (req, res) { - var passport = req.session.passport, - address = req.params.address; - - - if (!passport || !passport['user']) { - res.redirect('/auth/github'); - } else { - var username = req.user.profile.username; - - - res.send('\n Authenticating GitToken Contributor Address, ' + address + ',\n with GitHub User, ' + username + '\n '); - } - }); + // router.get('/verify/:address', (req, res) => { + // const { + // session: { passport }, + // params: { address } + // } = req + // + // if (!passport || !passport['user']) { + // res.redirect('/auth/github') + // } else { + // const { user: { profile: { username } } } = req + // + // res.send(` + // Authenticating GitToken Contributor Address, ${address}, + // with GitHub User, ${username} + // `) + // } + // }) return router; } \ No newline at end of file diff --git a/dist/utils/verifyAccount.js b/dist/utils/verifyAccount.js new file mode 100644 index 0000000..e6f13a1 --- /dev/null +++ b/dist/utils/verifyAccount.js @@ -0,0 +1,29 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = verifyAccount; + +var _bluebird = require('bluebird'); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +var _ethSigUtil = require('eth-sig-util'); + +var _ethSigUtil2 = _interopRequireDefault(_ethSigUtil); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function verifyAccount(_ref) { + var req = _ref.req; + + return new _bluebird2.default(function (resolve, reject) { + var _req$body = req.body, + msgParams = _req$body.msgParams, + sig = _req$body.sig, + _req$session$passport = req.session.passport.user, + profile = _req$session$passport.profile, + accessToken = _req$session$passport.accessToken; + }); +} \ No newline at end of file diff --git a/gittoken.config.js b/gittoken.config.js index fd3fb75..779cd66 100644 --- a/gittoken.config.js +++ b/gittoken.config.js @@ -33,7 +33,8 @@ const config = { githubCredentials: { clientID: process.env['GITHUB_API_ID'], clientSecret: process.env['GITHUB_API_SECRET'], - callbackURL: process.env['GITHUB_API_CALLBACK_URL'] + callbackURL: process.env['GITHUB_API_CALLBACK_URL'], + scope: process.env['GITHUB_API_SCOPE'] }, api: { sessionSecret: process.env['GITTOKEN_API_SESSION_SECRET'], diff --git a/package-lock.json b/package-lock.json index 00c1400..24f1b4d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,14 +1,9 @@ { "name": "gittoken-server", - "version": "0.1.0", + "version": "0.0.1", "lockfileVersion": 1, "requires": true, "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, "abstract-leveldown": { "version": "0.12.4", "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.4.tgz", @@ -34,9 +29,9 @@ } }, "acorn": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.2.1.tgz", - "integrity": "sha512-jG0u7c4Ly+3QkkW18V+NRDN+4bWHdln30NL1ZL2AvFZZmQe/BfopYCtghCKKVBUSetZ4QKcyA0pY6/4Gw8Pv8w==" + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.3.0.tgz", + "integrity": "sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug==" }, "acorn-dynamic-import": { "version": "2.0.2", @@ -53,15 +48,18 @@ } } }, - "after": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=" + "aes-decrypter": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/aes-decrypter/-/aes-decrypter-1.0.3.tgz", + "integrity": "sha1-nAa4pUNaWtCduTP4oBSvzxhMw04=", + "requires": { + "pkcs7": "0.2.3" + } }, "ajv": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.0.tgz", - "integrity": "sha1-6yhAdG6dxIvV4GOjbj/UAMXqtak=", + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "requires": { "co": "4.6.0", "fast-deep-equal": "1.0.0", @@ -84,11 +82,6 @@ "repeat-string": "1.6.1" } }, - "ansi": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/ansi/-/ansi-0.3.1.tgz", - "integrity": "sha1-DELU+xcWDVqa8eSEus4cZpIsGyE=" - }, "ansi-html": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", @@ -102,7 +95,8 @@ "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true }, "any-promise": { "version": "1.3.0", @@ -118,6 +112,11 @@ "normalize-path": "2.1.1" } }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, "are-we-there-yet": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", @@ -145,15 +144,20 @@ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" }, "array-flatten": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.1.tgz", - "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" }, "array-includes": { "version": "3.0.3", @@ -164,25 +168,6 @@ "es-abstract": "1.10.0" } }, - "array-index": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-index/-/array-index-1.0.0.tgz", - "integrity": "sha1-7FanSe4QPk4Ix5C5w1PfFgVbl/k=", - "requires": { - "debug": "2.6.9", - "es6-symbol": "3.1.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - } - } - }, "array-union": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", @@ -230,9 +215,14 @@ } }, "assert-plus": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", + "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=" + }, + "assign-symbols": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" }, "async": { "version": "2.6.0", @@ -250,22 +240,27 @@ "async-limiter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", - "integrity": "sha1-ePrtjD0HSrgfIrTphdeehzj3IPg=" + "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==" }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, + "atob": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.0.3.tgz", + "integrity": "sha1-GcenYEc3dEaPILLS0DNyrX1Mv10=" + }, "attempt-x": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/attempt-x/-/attempt-x-1.1.1.tgz", "integrity": "sha512-hIp37ojJRRW8ExWSxxLpkDHUufk/DFfsb7/cUC1cVbBg7JV4gJTkCTRa44dlL9e5jx1P3VNrjL7QOQfi4MyltA==" }, "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", + "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=" }, "aws4": { "version": "1.6.0", @@ -273,12 +268,11 @@ "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=" }, "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz", + "integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=", "requires": { - "follow-redirects": "1.2.6", - "is-buffer": "1.1.6" + "follow-redirects": "1.0.0" } }, "babel-cli": { @@ -292,7 +286,7 @@ "babel-register": "6.26.0", "babel-runtime": "6.26.0", "chokidar": "1.7.0", - "commander": "2.12.1", + "commander": "2.12.2", "convert-source-map": "1.5.1", "fs-readdir-recursive": "1.1.0", "glob": "7.1.2", @@ -304,304 +298,52 @@ "v8flags": "2.1.1" }, "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true, - "optional": true, - "requires": { - "micromatch": "2.3.11", - "normalize-path": "2.1.1" - } - }, - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "optional": true, - "requires": { - "arr-flatten": "1.1.0" - } - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true, - "optional": true - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true, - "optional": true - }, - "async-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", - "dev": true, - "optional": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" - } - }, - "babel-core": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", - "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", - "dev": true, - "requires": { - "babel-code-frame": "6.26.0", - "babel-generator": "6.26.0", - "babel-helpers": "6.24.1", - "babel-messages": "6.23.0", - "babel-register": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "convert-source-map": "1.5.1", - "debug": "2.6.9", - "json5": "0.5.1", - "lodash": "4.17.4", - "minimatch": "3.0.4", - "path-is-absolute": "1.0.1", - "private": "0.1.8", - "slash": "1.0.0", - "source-map": "0.5.7" - } - }, - "babel-generator": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", - "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", - "dev": true, - "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.4", - "source-map": "0.5.7", - "trim-right": "1.0.1" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-polyfill": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "core-js": "2.5.1", - "regenerator-runtime": "0.10.5" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "6.26.0", - "babel-runtime": "6.26.0", - "core-js": "2.5.1", - "home-or-tmp": "2.0.0", - "lodash": "4.17.4", - "mkdirp": "0.5.1", - "source-map-support": "0.4.18" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.9", - "globals": "9.18.0", - "invariant": "2.2.2", - "lodash": "4.17.4" - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.4", - "to-fast-properties": "1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", - "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", - "dev": true, - "requires": { - "balanced-match": "1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "optional": true, - "requires": { - "expand-range": "1.8.2", - "preserve": "0.2.0", - "repeat-element": "1.1.2" - } - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" - } - }, - "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "optional": true, - "requires": { - "anymatch": "1.3.2", - "async-each": "1.0.1", - "fsevents": "1.1.3", - "glob-parent": "2.0.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "2.0.1", - "path-is-absolute": "1.0.1", - "readdirp": "2.1.0" - } - }, "commander": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.12.1.tgz", - "integrity": "sha512-PCNLExLlI5HiPdaJs4pMXwOTHkSCpNQ1QJH9ykZLKtKEyKu3p9HgmH5l97vM8c0IUz6d54l+xEu2GG9yuYrFzA==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "convert-source-map": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", - "dev": true - }, - "core-js": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", - "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=", + "version": "2.12.2", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.12.2.tgz", + "integrity": "sha512-BFnaq5ZOGcDN7FlrtBT4xxkgIToalIIxwjxLWVJ8bGTpe1LroqMiqQXdA7ygc7CRvaYS+9zfPGFnJqFSayx+AA==", "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true, - "optional": true - }, + } + } + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" + } + }, + "babel-core": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", + "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-generator": "6.26.0", + "babel-helpers": "6.24.1", + "babel-messages": "6.23.0", + "babel-register": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "convert-source-map": "1.5.1", + "debug": "2.6.9", + "json5": "0.5.1", + "lodash": "4.17.4", + "minimatch": "3.0.4", + "path-is-absolute": "1.0.1", + "private": "0.1.8", + "slash": "1.0.0", + "source-map": "0.5.7" + }, + "dependencies": { "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -610,2851 +352,772 @@ "requires": { "ms": "2.0.0" } - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "2.0.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "optional": true, - "requires": { - "is-posix-bracket": "0.1.1" - } - }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "dev": true, - "optional": true, - "requires": { - "fill-range": "2.2.3" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "optional": true, - "requires": { - "is-extglob": "1.0.0" - } - }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", - "dev": true, - "optional": true - }, - "fill-range": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", - "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", - "dev": true, - "optional": true, - "requires": { - "is-number": "2.1.0", - "isobject": "2.1.0", - "randomatic": "1.1.7", - "repeat-element": "1.1.2", - "repeat-string": "1.6.1" - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true, - "optional": true - }, - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true, - "optional": true, - "requires": { - "for-in": "1.0.2" - } - }, - "fs-readdir-recursive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", - "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", - "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", - "dev": true, - "optional": true, - "requires": { - "nan": "2.8.0", - "node-pre-gyp": "0.6.39" - }, - "dependencies": { - "abbrev": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "ajv": { - "version": "4.11.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "aproba": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "1.0.0", - "readable-stream": "2.2.9" - } - }, - "asn1": { - "version": "0.2.3", - "bundled": true, - "dev": true, - "optional": true - }, - "assert-plus": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "asynckit": { - "version": "0.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws-sign2": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws4": { - "version": "1.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "balanced-match": { - "version": "0.4.2", - "bundled": true, - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "tweetnacl": "0.14.5" - } - }, - "block-stream": { - "version": "0.0.9", - "bundled": true, - "dev": true, - "requires": { - "inherits": "2.0.3" - } - }, - "boom": { - "version": "2.10.1", - "bundled": true, - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "brace-expansion": { - "version": "1.1.7", - "bundled": true, - "dev": true, - "requires": { - "balanced-match": "0.4.2", - "concat-map": "0.0.1" - } - }, - "buffer-shims": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true - }, - "co": { - "version": "4.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "combined-stream": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "requires": { - "delayed-stream": "1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "cryptiles": { - "version": "2.0.5", - "bundled": true, - "dev": true, - "requires": { - "boom": "2.10.1" - } - }, - "dashdash": { - "version": "1.14.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "debug": { - "version": "2.6.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.4.2", - "bundled": true, - "dev": true, - "optional": true - }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "ecc-jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "extend": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "extsprintf": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "bundled": true, - "dev": true, - "optional": true - }, - "form-data": { - "version": "2.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.15" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "fstream": { - "version": "1.0.11", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.1" - } - }, - "fstream-ignore": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fstream": "1.0.11", - "inherits": "2.0.3", - "minimatch": "3.0.4" - } - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "1.1.1", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "dev": true, - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true, - "dev": true - }, - "har-schema": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "har-validator": { - "version": "4.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "hawk": { - "version": "3.1.3", - "bundled": true, - "dev": true, - "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" - } - }, - "hoek": { - "version": "2.16.3", - "bundled": true, - "dev": true - }, - "http-signature": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.0", - "sshpk": "1.13.0" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "ini": { - "version": "1.3.4", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "isstream": { - "version": "0.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "jodid25519": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "json-schema": { - "version": "0.2.3", - "bundled": true, - "dev": true, - "optional": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsonify": "0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "jsonify": { - "version": "0.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "jsprim": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.0.2", - "json-schema": "0.2.3", - "verror": "1.3.6" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "mime-db": { - "version": "1.27.0", - "bundled": true, - "dev": true - }, - "mime-types": { - "version": "2.1.15", - "bundled": true, - "dev": true, - "requires": { - "mime-db": "1.27.0" - } - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "brace-expansion": "1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "node-pre-gyp": { - "version": "0.6.39", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "1.0.2", - "hawk": "3.1.3", - "mkdirp": "0.5.1", - "nopt": "4.0.1", - "npmlog": "4.1.0", - "rc": "1.2.1", - "request": "2.81.0", - "rimraf": "2.6.1", - "semver": "5.3.0", - "tar": "2.2.1", - "tar-pack": "3.4.0" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1.1.0", - "osenv": "0.1.4" - } - }, - "npmlog": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "oauth-sign": { - "version": "0.8.2", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "wrappy": "1.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "performance-now": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "1.0.7", - "bundled": true, - "dev": true - }, - "punycode": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true - }, - "qs": { - "version": "6.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.4", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.2.9", - "bundled": true, - "dev": true, - "requires": { - "buffer-shims": "1.0.0", - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "1.0.1", - "util-deprecate": "1.0.2" - } - }, - "request": { - "version": "2.81.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.15", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.4.0", - "safe-buffer": "5.0.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.2", - "tunnel-agent": "0.6.0", - "uuid": "3.0.1" - } - }, - "rimraf": { - "version": "2.6.1", - "bundled": true, - "dev": true, - "requires": { - "glob": "7.1.2" - } - }, - "safe-buffer": { - "version": "5.0.1", - "bundled": true, - "dev": true - }, - "semver": { - "version": "5.3.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sntp": { - "version": "1.0.9", - "bundled": true, - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "sshpk": { - "version": "1.13.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jodid25519": "1.0.2", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "string_decoder": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "stringstream": { - "version": "0.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "2.2.1", - "bundled": true, - "dev": true, - "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" - } - }, - "tar-pack": { - "version": "3.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "2.6.8", - "fstream": "1.0.11", - "fstream-ignore": "1.0.5", - "once": "1.4.0", - "readable-stream": "2.2.9", - "rimraf": "2.6.1", - "tar": "2.2.1", - "uid-number": "0.0.6" - } - }, - "tough-cookie": { - "version": "2.3.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "punycode": "1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true, - "dev": true, - "optional": true - }, - "uid-number": { - "version": "0.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "uuid": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "verror": { - "version": "1.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "extsprintf": "1.0.2" - } - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - } - } - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "optional": true, - "requires": { - "glob-parent": "2.0.0", - "is-glob": "2.0.1" - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "2.0.1" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", - "dev": true - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "invariant": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", - "dev": true, - "requires": { - "loose-envify": "1.3.1" - } - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "optional": true, - "requires": { - "binary-extensions": "1.11.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true, - "optional": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true, - "optional": true, - "requires": { - "is-primitive": "2.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true, - "optional": true - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "1.0.0" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, - "optional": true, - "requires": { - "kind-of": "3.2.2" - } - }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", - "dev": true, - "optional": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true, - "optional": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "optional": true, - "requires": { - "isarray": "1.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - }, - "lodash": { - "version": "4.17.4", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", - "dev": true - }, - "loose-envify": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", - "dev": true, - "requires": { - "js-tokens": "3.0.2" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "optional": true, - "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "1.1.8" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "nan": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", - "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=", - "dev": true, - "optional": true - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "1.1.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true, - "optional": true, - "requires": { - "for-own": "0.1.5", - "is-extendable": "0.1.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "output-file-sync": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", - "integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "mkdirp": "0.5.1", - "object-assign": "4.1.1" - } - }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true, - "optional": true, - "requires": { - "glob-base": "0.3.0", - "is-dotfile": "1.0.3", - "is-extglob": "1.0.0", - "is-glob": "2.0.1" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true, - "optional": true - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", - "dev": true, - "optional": true - }, - "randomatic": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", - "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", - "dev": true, - "optional": true, - "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "optional": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "optional": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "optional": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "readable-stream": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "safe-buffer": "5.1.1", - "string_decoder": "1.0.3", - "util-deprecate": "1.0.2" - } - }, - "readdirp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", - "dev": true, - "optional": true, - "requires": { - "graceful-fs": "4.1.11", - "minimatch": "3.0.4", - "readable-stream": "2.3.3", - "set-immediate-shim": "1.0.1" - } - }, - "regenerator-runtime": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", - "dev": true - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "optional": true, - "requires": { - "is-equal-shallow": "0.1.3" - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "repeat-element": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true, - "optional": true - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "1.0.2" - } - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true - }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true, - "optional": true - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "0.5.7" - } - }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "5.1.1" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "user-home": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", - "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=", - "dev": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true, - "optional": true - }, - "v8flags": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", - "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=", - "dev": true, - "requires": { - "user-home": "1.1.1" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - } - } - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" - } - }, - "babel-core": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", - "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", - "requires": { - "babel-code-frame": "6.26.0", - "babel-generator": "6.26.0", - "babel-helpers": "6.24.1", - "babel-messages": "6.23.0", - "babel-register": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "convert-source-map": "1.5.1", - "debug": "2.6.9", - "json5": "0.5.1", - "lodash": "4.17.4", - "minimatch": "3.0.4", - "path-is-absolute": "1.0.1", - "private": "0.1.8", - "slash": "1.0.0", - "source-map": "0.5.7" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - } - } - }, - "babel-generator": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", - "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", - "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.4", - "source-map": "0.5.7", - "trim-right": "1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" - } - } - }, - "babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-define-map": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", - "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "requires": { - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-optimise-call-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", - "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "babel-helper-replace-supers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", - "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", - "requires": { - "babel-helper-optimise-call-expression": "6.24.1", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-loader": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-7.1.2.tgz", - "integrity": "sha1-9svhInEPGqKvTYgcbVtUNYyiQSY=", - "requires": { - "find-cache-dir": "1.0.0", - "loader-utils": "1.1.0", - "mkdirp": "0.5.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-inline-import": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/babel-plugin-inline-import/-/babel-plugin-inline-import-2.0.6.tgz", - "integrity": "sha1-ijwXlWG1A79K8xnzytQ15reyhjw=", - "dev": true, - "requires": { - "require-resolve": "0.0.2" - }, - "dependencies": { - "path-extra": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/path-extra/-/path-extra-1.0.3.tgz", - "integrity": "sha1-fBEhiablDVlXkOetIDfkTkEMEWY=", - "dev": true - }, - "require-resolve": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/require-resolve/-/require-resolve-0.0.2.tgz", - "integrity": "sha1-urQQqxruLz9Vt5MXRR3TQodk5vM=", - "dev": true, - "requires": { - "x-path": "0.0.2" - } - }, - "x-path": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/x-path/-/x-path-0.0.2.tgz", - "integrity": "sha1-KU0Ha7l6dwbMBwu7Km/YxU32exI=", - "dev": true, - "requires": { - "path-extra": "1.0.3" - } - } - } - }, - "babel-plugin-transform-es2015-arrow-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", - "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-block-scoped-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", - "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-block-scoping": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", - "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "babel-plugin-transform-es2015-classes": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", - "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", - "requires": { - "babel-helper-define-map": "6.26.0", - "babel-helper-function-name": "6.24.1", - "babel-helper-optimise-call-expression": "6.24.1", - "babel-helper-replace-supers": "6.24.1", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-computed-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", - "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-duplicate-keys": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", - "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-for-of": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", - "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", - "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-amd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", - "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", - "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", - "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", - "requires": { - "babel-plugin-transform-strict-mode": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-systemjs": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", - "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", - "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-umd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", - "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", - "requires": { - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-es2015-object-super": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", - "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", - "requires": { - "babel-helper-replace-supers": "6.24.1", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "requires": { - "babel-helper-call-delegate": "6.24.1", - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-shorthand-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", - "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-template-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", - "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-typeof-symbol": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", - "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "regexpu-core": "2.0.0" - } - }, - "babel-plugin-transform-react-constant-elements": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-constant-elements/-/babel-plugin-transform-react-constant-elements-6.23.0.tgz", - "integrity": "sha1-LxGb9NLN1F65uqrldAU8YE9hR90=", - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-regenerator": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", - "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", - "requires": { - "regenerator-transform": "0.10.1" - } - }, - "babel-plugin-transform-runtime": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz", - "integrity": "sha1-iEkNRGUC6puOfvsP4J7E2ZR5se4=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-polyfill": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", - "requires": { - "babel-runtime": "6.26.0", - "core-js": "2.5.1", - "regenerator-runtime": "0.10.5" - } - }, - "babel-preset-env": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.6.1.tgz", - "integrity": "sha512-W6VIyA6Ch9ePMI7VptNn2wBM6dbG0eSz25HEiL40nQXCsXGTGZSTZu1Iap+cj3Q0S5a7T9+529l/5Bkvd+afNA==", - "dev": true, - "requires": { - "babel-plugin-check-es2015-constants": "6.22.0", - "babel-plugin-syntax-trailing-function-commas": "6.22.0", - "babel-plugin-transform-async-to-generator": "6.24.1", - "babel-plugin-transform-es2015-arrow-functions": "6.22.0", - "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", - "babel-plugin-transform-es2015-block-scoping": "6.26.0", - "babel-plugin-transform-es2015-classes": "6.24.1", - "babel-plugin-transform-es2015-computed-properties": "6.24.1", - "babel-plugin-transform-es2015-destructuring": "6.23.0", - "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", - "babel-plugin-transform-es2015-for-of": "6.23.0", - "babel-plugin-transform-es2015-function-name": "6.24.1", - "babel-plugin-transform-es2015-literals": "6.22.0", - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", - "babel-plugin-transform-es2015-modules-umd": "6.24.1", - "babel-plugin-transform-es2015-object-super": "6.24.1", - "babel-plugin-transform-es2015-parameters": "6.24.1", - "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", - "babel-plugin-transform-es2015-spread": "6.22.0", - "babel-plugin-transform-es2015-sticky-regex": "6.24.1", - "babel-plugin-transform-es2015-template-literals": "6.22.0", - "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", - "babel-plugin-transform-es2015-unicode-regex": "6.24.1", - "babel-plugin-transform-exponentiation-operator": "6.24.1", - "babel-plugin-transform-regenerator": "6.26.0", - "browserslist": "2.9.1", - "invariant": "2.2.2", - "semver": "5.4.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-define-map": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", - "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", - "dev": true, - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-optimise-call-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", - "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-replace-supers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", - "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", - "dev": true, - "requires": { - "babel-helper-optimise-call-expression": "6.24.1", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", - "dev": true - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "6.24.1", - "babel-plugin-syntax-async-functions": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-arrow-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", - "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-block-scoped-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", - "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-block-scoping": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", - "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.4" - } - }, - "babel-plugin-transform-es2015-classes": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", - "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", - "dev": true, - "requires": { - "babel-helper-define-map": "6.26.0", - "babel-helper-function-name": "6.24.1", - "babel-helper-optimise-call-expression": "6.24.1", - "babel-helper-replace-supers": "6.24.1", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-computed-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", - "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-duplicate-keys": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", - "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-for-of": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", - "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "dev": true, - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", - "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-amd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", - "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", - "dev": true, - "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", - "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", - "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-systemjs": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", - "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-umd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", - "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", - "dev": true, - "requires": { - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-es2015-object-super": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", - "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", - "dev": true, - "requires": { - "babel-helper-replace-supers": "6.24.1", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "dev": true, - "requires": { - "babel-helper-call-delegate": "6.24.1", - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-shorthand-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", - "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "dev": true, - "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-es2015-template-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", - "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-typeof-symbol": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", - "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "dev": true, - "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "regexpu-core": "2.0.0" - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", - "babel-plugin-syntax-exponentiation-operator": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-regenerator": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", - "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", - "dev": true, - "requires": { - "regenerator-transform": "0.10.1" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.9", - "globals": "9.18.0", - "invariant": "2.2.2", - "lodash": "4.17.4" - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.4", - "to-fast-properties": "1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "browserslist": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.9.1.tgz", - "integrity": "sha512-3n3nPdbUqn3nWmsy4PeSQthz2ja1ndpoXta+dwFFNhveGjMg6FXpWYe12vsTpNoXJbzx3j7GZXdtoVIdvh3JbA==", - "dev": true, - "requires": { - "caniuse-lite": "1.0.30000770", - "electron-to-chromium": "1.3.27" - } - }, - "caniuse-lite": { - "version": "1.0.30000770", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000770.tgz", - "integrity": "sha1-vI5/ULBzJzOQ22qzVzeJCaFOm9s=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "electron-to-chromium": { - "version": "1.3.27", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.27.tgz", - "integrity": "sha1-eOy4o5kGYYe7N07t412ccFZagD0=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "invariant": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", - "dev": true, - "requires": { - "loose-envify": "1.3.1" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "lodash": { - "version": "4.17.4", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", - "dev": true - }, - "loose-envify": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", - "dev": true, - "requires": { - "js-tokens": "3.0.2" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "regenerate": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", - "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==", - "dev": true - }, - "regenerator-transform": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", - "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "private": "0.1.8" - } - }, - "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "dev": true, - "requires": { - "regenerate": "1.3.3", - "regjsgen": "0.2.0", - "regjsparser": "0.1.5" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "0.5.0" - } - }, - "semver": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true } } }, - "babel-preset-es2015": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz", - "integrity": "sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk=", + "babel-generator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", + "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", + "dev": true, + "requires": { + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.4", + "source-map": "0.5.7", + "trim-right": "1.0.1" + } + }, + "babel-helper-bindify-decorators": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz", + "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-builder-react-jsx": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz", + "integrity": "sha1-Of+DE7dci2Xc7/HzHTg+D/KkCKA=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "esutils": "2.0.2" + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-define-map": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", + "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-explode-class": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz", + "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=", + "dev": true, + "requires": { + "babel-helper-bindify-decorators": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-optimise-call-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", + "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-replace-supers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", + "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", + "dev": true, + "requires": { + "babel-helper-optimise-call-expression": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-loader": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-7.1.2.tgz", + "integrity": "sha512-jRwlFbINAeyDStqK6Dd5YuY0k5YuzQUvlz2ZamuXrXmxav3pNqe9vfJ402+2G+OmlJSXxCOpB6Uz0INM7RQe2A==", + "requires": { + "find-cache-dir": "1.0.0", + "loader-utils": "1.1.0", + "mkdirp": "0.5.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-inline-import": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/babel-plugin-inline-import/-/babel-plugin-inline-import-2.0.6.tgz", + "integrity": "sha1-ijwXlWG1A79K8xnzytQ15reyhjw=", + "dev": true, + "requires": { + "require-resolve": "0.0.2" + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-async-generators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", + "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=", + "dev": true + }, + "babel-plugin-syntax-class-constructor-call": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz", + "integrity": "sha1-nLnTn+Q8hgC+yBRkVt3L1OGnZBY=", + "dev": true + }, + "babel-plugin-syntax-class-properties": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", + "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=", + "dev": true + }, + "babel-plugin-syntax-decorators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", + "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=", + "dev": true + }, + "babel-plugin-syntax-do-expressions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz", + "integrity": "sha1-V0d1YTmqJtOQ0JQQsDdEugfkeW0=", + "dev": true + }, + "babel-plugin-syntax-dynamic-import": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", + "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-export-extensions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz", + "integrity": "sha1-cKFITw+QiaToStRLrDU8lbmxJyE=", + "dev": true + }, + "babel-plugin-syntax-flow": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz", + "integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=", + "dev": true + }, + "babel-plugin-syntax-function-bind": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz", + "integrity": "sha1-SMSV8Xe98xqYHnMvVa3AvdJgH0Y=", + "dev": true + }, + "babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=", + "dev": true + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-generator-functions": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz", + "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-generators": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-functions": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-class-constructor-call": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz", + "integrity": "sha1-gNwoVQWsBn3LjWxl4vbxGrd2Xvk=", + "dev": true, + "requires": { + "babel-plugin-syntax-class-constructor-call": "6.18.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-class-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", + "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-plugin-syntax-class-properties": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-decorators": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz", + "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=", + "dev": true, + "requires": { + "babel-helper-explode-class": "6.24.1", + "babel-plugin-syntax-decorators": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-do-expressions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz", + "integrity": "sha1-KMyvkoEtlJws0SgfaQyP3EaK6bs=", + "dev": true, + "requires": { + "babel-plugin-syntax-do-expressions": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-arrow-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", + "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-block-scoped-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", + "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-block-scoping": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", + "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" + } + }, + "babel-plugin-transform-es2015-classes": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", + "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", + "dev": true, + "requires": { + "babel-helper-define-map": "6.26.0", + "babel-helper-function-name": "6.24.1", + "babel-helper-optimise-call-expression": "6.24.1", + "babel-helper-replace-supers": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-computed-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", + "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-duplicate-keys": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", + "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-for-of": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", + "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", + "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-amd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", + "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", + "dev": true, + "requires": { + "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", + "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", + "dev": true, + "requires": { + "babel-plugin-transform-strict-mode": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-systemjs": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", + "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-umd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", + "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", + "dev": true, + "requires": { + "babel-plugin-transform-es2015-modules-amd": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-object-super": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", + "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", + "dev": true, + "requires": { + "babel-helper-replace-supers": "6.24.1", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true, + "requires": { + "babel-helper-call-delegate": "6.24.1", + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-shorthand-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", + "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-template-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", + "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-typeof-symbol": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", + "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "regexpu-core": "2.0.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", + "babel-plugin-syntax-exponentiation-operator": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-export-extensions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz", + "integrity": "sha1-U3OLR+deghhYnuqUbLvTkQm75lM=", + "dev": true, + "requires": { + "babel-plugin-syntax-export-extensions": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-flow-strip-types": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz", + "integrity": "sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988=", + "dev": true, + "requires": { + "babel-plugin-syntax-flow": "6.18.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-function-bind": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz", + "integrity": "sha1-xvuOlqwpajELjPjqQBRiQH3fapc=", + "dev": true, + "requires": { + "babel-plugin-syntax-function-bind": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-object-rest-spread": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", + "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", + "dev": true, + "requires": { + "babel-plugin-syntax-object-rest-spread": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-react-constant-elements": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-constant-elements/-/babel-plugin-transform-react-constant-elements-6.23.0.tgz", + "integrity": "sha1-LxGb9NLN1F65uqrldAU8YE9hR90=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-react-display-name": { + "version": "6.25.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz", + "integrity": "sha1-Z+K/Hx6ck6sI25Z5LgU5K/LMKNE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-react-jsx": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz", + "integrity": "sha1-hAoCjn30YN/DotKfDA2R9jduZqM=", + "dev": true, + "requires": { + "babel-helper-builder-react-jsx": "6.26.0", + "babel-plugin-syntax-jsx": "6.18.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-react-jsx-self": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz", + "integrity": "sha1-322AqdomEqEh5t3XVYvL7PBuY24=", + "dev": true, + "requires": { + "babel-plugin-syntax-jsx": "6.18.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-react-jsx-source": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz", + "integrity": "sha1-ZqwSFT9c0tF7PBkmj0vwGX9E7NY=", + "dev": true, + "requires": { + "babel-plugin-syntax-jsx": "6.18.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-regenerator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", + "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", + "dev": true, + "requires": { + "regenerator-transform": "0.10.1" + } + }, + "babel-plugin-transform-runtime": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz", + "integrity": "sha1-iEkNRGUC6puOfvsP4J7E2ZR5se4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-polyfill": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", + "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "requires": { + "babel-runtime": "6.26.0", + "core-js": "2.5.3", + "regenerator-runtime": "0.10.5" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=" + } + } + }, + "babel-preset-env": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.6.1.tgz", + "integrity": "sha512-W6VIyA6Ch9ePMI7VptNn2wBM6dbG0eSz25HEiL40nQXCsXGTGZSTZu1Iap+cj3Q0S5a7T9+529l/5Bkvd+afNA==", + "dev": true, "requires": { "babel-plugin-check-es2015-constants": "6.22.0", + "babel-plugin-syntax-trailing-function-commas": "6.22.0", + "babel-plugin-transform-async-to-generator": "6.24.1", "babel-plugin-transform-es2015-arrow-functions": "6.22.0", "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", "babel-plugin-transform-es2015-block-scoping": "6.26.0", @@ -3475,516 +1138,94 @@ "babel-plugin-transform-es2015-spread": "6.22.0", "babel-plugin-transform-es2015-sticky-regex": "6.24.1", "babel-plugin-transform-es2015-template-literals": "6.22.0", - "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", - "babel-plugin-transform-es2015-unicode-regex": "6.24.1", - "babel-plugin-transform-regenerator": "6.26.0" - } - }, - "babel-preset-stage-0": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz", - "integrity": "sha1-VkLRUEL5E4TX5a+LyIsduVsDnmo=", - "dev": true, - "requires": { - "babel-plugin-transform-do-expressions": "6.22.0", - "babel-plugin-transform-function-bind": "6.22.0", - "babel-preset-stage-1": "6.24.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" - } - }, - "babel-helper-bindify-decorators": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz", - "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-explode-class": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz", - "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=", - "dev": true, - "requires": { - "babel-helper-bindify-decorators": "6.24.1", - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "babel-plugin-syntax-async-generators": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", - "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=", - "dev": true - }, - "babel-plugin-syntax-class-constructor-call": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz", - "integrity": "sha1-nLnTn+Q8hgC+yBRkVt3L1OGnZBY=", - "dev": true - }, - "babel-plugin-syntax-class-properties": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", - "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=", - "dev": true - }, - "babel-plugin-syntax-decorators": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", - "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=", - "dev": true - }, - "babel-plugin-syntax-do-expressions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz", - "integrity": "sha1-V0d1YTmqJtOQ0JQQsDdEugfkeW0=", - "dev": true - }, - "babel-plugin-syntax-dynamic-import": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", - "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=", - "dev": true - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "babel-plugin-syntax-export-extensions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz", - "integrity": "sha1-cKFITw+QiaToStRLrDU8lbmxJyE=", - "dev": true - }, - "babel-plugin-syntax-function-bind": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz", - "integrity": "sha1-SMSV8Xe98xqYHnMvVa3AvdJgH0Y=", - "dev": true - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", - "dev": true - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", - "dev": true - }, - "babel-plugin-transform-async-generator-functions": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz", - "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "6.24.1", - "babel-plugin-syntax-async-generators": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "6.24.1", - "babel-plugin-syntax-async-functions": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-class-constructor-call": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz", - "integrity": "sha1-gNwoVQWsBn3LjWxl4vbxGrd2Xvk=", - "dev": true, - "requires": { - "babel-plugin-syntax-class-constructor-call": "6.18.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-class-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", - "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", - "dev": true, - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-plugin-syntax-class-properties": "6.13.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-decorators": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz", - "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=", - "dev": true, - "requires": { - "babel-helper-explode-class": "6.24.1", - "babel-plugin-syntax-decorators": "6.13.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-plugin-transform-do-expressions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz", - "integrity": "sha1-KMyvkoEtlJws0SgfaQyP3EaK6bs=", - "dev": true, - "requires": { - "babel-plugin-syntax-do-expressions": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", - "babel-plugin-syntax-exponentiation-operator": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-export-extensions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz", - "integrity": "sha1-U3OLR+deghhYnuqUbLvTkQm75lM=", - "dev": true, - "requires": { - "babel-plugin-syntax-export-extensions": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-function-bind": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz", - "integrity": "sha1-xvuOlqwpajELjPjqQBRiQH3fapc=", - "dev": true, - "requires": { - "babel-plugin-syntax-function-bind": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-object-rest-spread": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", - "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", - "dev": true, - "requires": { - "babel-plugin-syntax-object-rest-spread": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-preset-stage-1": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz", - "integrity": "sha1-dpLNfc1oSZB+auSgqFWJz7niv7A=", - "dev": true, - "requires": { - "babel-plugin-transform-class-constructor-call": "6.24.1", - "babel-plugin-transform-export-extensions": "6.22.0", - "babel-preset-stage-2": "6.24.1" - } - }, - "babel-preset-stage-2": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz", - "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=", - "dev": true, - "requires": { - "babel-plugin-syntax-dynamic-import": "6.18.0", - "babel-plugin-transform-class-properties": "6.24.1", - "babel-plugin-transform-decorators": "6.24.1", - "babel-preset-stage-3": "6.24.1" - } - }, - "babel-preset-stage-3": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz", - "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=", - "dev": true, - "requires": { - "babel-plugin-syntax-trailing-function-commas": "6.22.0", - "babel-plugin-transform-async-generator-functions": "6.24.1", - "babel-plugin-transform-async-to-generator": "6.24.1", - "babel-plugin-transform-exponentiation-operator": "6.24.1", - "babel-plugin-transform-object-rest-spread": "6.26.0" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.9", - "globals": "9.18.0", - "invariant": "2.2.2", - "lodash": "4.17.4" - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.4", - "to-fast-properties": "1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "invariant": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", - "dev": true, - "requires": { - "loose-envify": "1.3.1" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "lodash": { - "version": "4.17.4", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", - "dev": true - }, - "loose-envify": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", - "dev": true, - "requires": { - "js-tokens": "3.0.2" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - } + "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", + "babel-plugin-transform-es2015-unicode-regex": "6.24.1", + "babel-plugin-transform-exponentiation-operator": "6.24.1", + "babel-plugin-transform-regenerator": "6.26.0", + "browserslist": "2.11.0", + "invariant": "2.2.2", + "semver": "5.4.1" + } + }, + "babel-preset-flow": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz", + "integrity": "sha1-5xIYiHCFrpoktb5Baa/7WZgWxJ0=", + "dev": true, + "requires": { + "babel-plugin-transform-flow-strip-types": "6.22.0" + } + }, + "babel-preset-react": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.24.1.tgz", + "integrity": "sha1-umnfrqRfw+xjm2pOzqbhdwLJE4A=", + "dev": true, + "requires": { + "babel-plugin-syntax-jsx": "6.18.0", + "babel-plugin-transform-react-display-name": "6.25.0", + "babel-plugin-transform-react-jsx": "6.24.1", + "babel-plugin-transform-react-jsx-self": "6.22.0", + "babel-plugin-transform-react-jsx-source": "6.22.0", + "babel-preset-flow": "6.23.0" + } + }, + "babel-preset-stage-0": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz", + "integrity": "sha1-VkLRUEL5E4TX5a+LyIsduVsDnmo=", + "dev": true, + "requires": { + "babel-plugin-transform-do-expressions": "6.22.0", + "babel-plugin-transform-function-bind": "6.22.0", + "babel-preset-stage-1": "6.24.1" + } + }, + "babel-preset-stage-1": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz", + "integrity": "sha1-dpLNfc1oSZB+auSgqFWJz7niv7A=", + "dev": true, + "requires": { + "babel-plugin-transform-class-constructor-call": "6.24.1", + "babel-plugin-transform-export-extensions": "6.22.0", + "babel-preset-stage-2": "6.24.1" + } + }, + "babel-preset-stage-2": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz", + "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=", + "dev": true, + "requires": { + "babel-plugin-syntax-dynamic-import": "6.18.0", + "babel-plugin-transform-class-properties": "6.24.1", + "babel-plugin-transform-decorators": "6.24.1", + "babel-preset-stage-3": "6.24.1" + } + }, + "babel-preset-stage-3": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz", + "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=", + "dev": true, + "requires": { + "babel-plugin-syntax-trailing-function-commas": "6.22.0", + "babel-plugin-transform-async-generator-functions": "6.24.1", + "babel-plugin-transform-async-to-generator": "6.24.1", + "babel-plugin-transform-exponentiation-operator": "6.24.1", + "babel-plugin-transform-object-rest-spread": "6.26.0" } }, "babel-register": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, "requires": { "babel-core": "6.26.0", "babel-runtime": "6.26.0", - "core-js": "2.5.1", + "core-js": "2.5.3", "home-or-tmp": "2.0.0", "lodash": "4.17.4", "mkdirp": "0.5.1", @@ -3996,26 +1237,15 @@ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "requires": { - "core-js": "2.5.1", - "regenerator-runtime": "0.11.0" - }, - "dependencies": { - "core-js": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", - "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=" - }, - "regenerator-runtime": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz", - "integrity": "sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A==" - } + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" } }, "babel-template": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, "requires": { "babel-runtime": "6.26.0", "babel-traverse": "6.26.0", @@ -4028,6 +1258,7 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, "requires": { "babel-code-frame": "6.26.0", "babel-messages": "6.23.0", @@ -4044,6 +1275,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -4054,6 +1286,7 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, "requires": { "babel-runtime": "6.26.0", "esutils": "2.0.2", @@ -4061,29 +1294,42 @@ "to-fast-properties": "1.0.3" } }, - "babelify": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/babelify/-/babelify-7.3.0.tgz", - "integrity": "sha1-qlau3nBn/XvVSWZu4W3ChQh+iOU=", - "requires": { - "babel-core": "6.26.0", - "object-assign": "4.1.1" - } - }, "babylon": { "version": "6.18.0", "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "1.0.1", + "class-utils": "0.3.5", + "component-emitter": "1.2.1", + "define-property": "1.0.0", + "isobject": "3.0.1", + "mixin-deep": "1.3.0", + "pascalcase": "0.1.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } + } + }, "base-x": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.3.tgz", - "integrity": "sha512-qKXPTB94LxXhJs8hqwTdyVTiDXMFTRUFj5F7FnWOW19ALCfANf2lHHUnEcY43g3DaVi4X8E2oDCkHIN8bjr32Q==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.4.tgz", + "integrity": "sha512-UYOadoSIkEI/VrRGSG6qp93rp2WdokiAiNYDfGW5qURAY8GiAQkvMbwNNSDYiVJopqv4gCna7xqf4rrNGp+5AA==", "requires": { "safe-buffer": "5.1.1" } @@ -4105,6 +1351,14 @@ "optional": true, "requires": { "tweetnacl": "0.14.5" + }, + "dependencies": { + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "optional": true + } } }, "big.js": { @@ -4113,7 +1367,9 @@ "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==" }, "bignumber.js": { - "version": "git+https://github.com/frozeman/bignumber.js-nolookahead.git#57692b3ecfc98bbdd6b3a516cb2353652ea49934" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", + "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" }, "binary-extensions": { "version": "1.11.0", @@ -4121,14 +1377,14 @@ "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=" }, "bindings": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.2.1.tgz", - "integrity": "sha1-FK1hE4EtLTfXLme0ystLtyZQXxE=" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", + "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" }, "bip39": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/bip39/-/bip39-2.4.0.tgz", - "integrity": "sha512-1++HywqIyPtWDo7gm4v0ylYbwkLvHkuwVSKbBlZBbTCP/mnkyrlARBny906VLAwxJbC5xw9EvuJasHFIZaIFMQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/bip39/-/bip39-2.5.0.tgz", + "integrity": "sha512-xwIx/8JKoT2+IPJpFEfXoWdYwP7UVAoUxxLNfGCfVowaJE7yg1Y5B1BVPqlUNsBq5/nGwmFkwRJ8xDW4sX8OdA==", "requires": { "create-hash": "1.1.3", "pbkdf2": "3.0.14", @@ -4137,6 +1393,14 @@ "unorm": "1.4.1" } }, + "bip66": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz", + "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", + "requires": { + "safe-buffer": "5.1.1" + } + }, "bitcore-lib": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/bitcore-lib/-/bitcore-lib-0.14.0.tgz", @@ -4275,16 +1539,6 @@ "type-is": "1.6.15" }, "dependencies": { - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -4292,108 +1546,6 @@ "requires": { "ms": "2.0.0" } - }, - "depd": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "http-errors": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", - "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "requires": { - "depd": "1.1.1", - "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": "1.4.0" - } - }, - "iconv-lite": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "mime-db": { - "version": "1.30.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", - "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" - }, - "mime-types": { - "version": "2.1.17", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", - "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", - "requires": { - "mime-db": "1.30.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" - }, - "raw-body": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", - "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", - "unpipe": "1.0.0" - } - }, - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" - }, - "statuses": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" - }, - "type-is": { - "version": "1.6.15", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", - "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", - "requires": { - "media-typer": "0.3.0", - "mime-types": "2.1.17" - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" } } }, @@ -4410,6 +1562,11 @@ "multicast-dns-service-types": "1.1.0" }, "dependencies": { + "array-flatten": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.1.tgz", + "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=" + }, "deep-equal": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", @@ -4418,11 +1575,11 @@ } }, "boom": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", - "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", + "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", "requires": { - "hoek": "4.2.0" + "hoek": "2.16.3" } }, "brace-expansion": { @@ -4531,12 +1688,22 @@ "pako": "1.0.6" } }, + "browserslist": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.11.0.tgz", + "integrity": "sha512-mNYp0RNeu1xueGuJFSXkU+K0nH+dBE/gcjtyhtNKfU8hwdrVIfoA7i5iFSjOmzkGdL2QaO7YX9ExiVPE7AY9JA==", + "dev": true, + "requires": { + "caniuse-lite": "1.0.30000789", + "electron-to-chromium": "1.3.30" + } + }, "bs58": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=", "requires": { - "base-x": "3.0.3" + "base-x": "3.0.4" } }, "buffer": { @@ -4570,7 +1737,7 @@ "buffer-indexof": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha1-Uvq8xqYG0aADAoAmSO9o9jnaJow=" + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==" }, "buffer-to-arraybuffer": { "version": "0.0.2", @@ -4600,6 +1767,29 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "1.0.0", + "component-emitter": "1.2.1", + "get-value": "2.0.6", + "has-value": "1.0.0", + "isobject": "3.0.1", + "set-value": "2.0.0", + "to-object-path": "0.3.0", + "union-value": "1.0.0", + "unset-value": "1.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } + } + }, "cached-constructors-x": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/cached-constructors-x/-/cached-constructors-x-1.0.0.tgz", @@ -4626,6 +1816,12 @@ } } }, + "caniuse-lite": { + "version": "1.0.30000789", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000789.tgz", + "integrity": "sha1-Lj2TeyZxM/Y2Ne9/RB+sZjYPyIk=", + "dev": true + }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -4640,16 +1836,30 @@ "lazy-cache": "1.0.4" } }, + "chain-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/chain-function/-/chain-function-1.0.0.tgz", + "integrity": "sha1-DUqzfn4Y6tC9xHuSB2QRjOWHM9w=" + }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, "requires": { "ansi-styles": "2.2.1", "escape-string-regexp": "1.0.5", "has-ansi": "2.0.0", "strip-ansi": "3.0.1", "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } } }, "chokidar": { @@ -4682,6 +1892,92 @@ "safe-buffer": "5.1.1" } }, + "class-utils": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.5.tgz", + "integrity": "sha1-F+eTEDdQ+WJ7IXbqNM/RtWWQPIA=", + "requires": { + "arr-union": "3.1.0", + "define-property": "0.2.5", + "isobject": "3.0.1", + "lazy-cache": "2.0.2", + "static-extend": "0.1.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + }, + "lazy-cache": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", + "integrity": "sha1-uRkKT5EzVGlIQIWfio9whNiCImQ=", + "requires": { + "set-getter": "0.1.0" + } + } + } + }, "classnames": { "version": "2.2.5", "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.5.tgz", @@ -4712,6 +2008,15 @@ "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "1.0.0", + "object-visit": "1.0.1" + } + }, "combined-stream": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", @@ -4733,6 +2038,11 @@ "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" + }, "compressible": { "version": "2.0.12", "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.12.tgz", @@ -4758,7 +2068,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { "ms": "2.0.0" } @@ -4793,15 +2103,36 @@ "date-now": "0.1.4" } }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, "constants-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, "convert-source-map": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=" + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", + "dev": true + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" }, "cookie-parser": { "version": "1.4.3", @@ -4810,29 +2141,27 @@ "requires": { "cookie": "0.3.1", "cookie-signature": "1.0.6" - }, - "dependencies": { - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - } } }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, "cookiejar": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.1.tgz", "integrity": "sha1-Qa1XsbVVlR7BcUEqgZQrHoIA00o=" }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, "core-js": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", - "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=" + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" }, "core-util-is": { "version": "1.0.2", @@ -4846,18 +2175,6 @@ "requires": { "object-assign": "4.1.1", "vary": "1.1.2" - }, - "dependencies": { - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" - } } }, "countdown": { @@ -4865,6 +2182,11 @@ "resolved": "https://registry.npmjs.org/countdown/-/countdown-2.6.0.tgz", "integrity": "sha1-Z3+446nUzE52QVkBuiU7UYrzQXc=" }, + "crc": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz", + "integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms=" + }, "create-ecdh": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", @@ -4919,21 +2241,11 @@ } }, "cryptiles": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", - "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", + "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", "requires": { - "boom": "5.2.0" - }, - "dependencies": { - "boom": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", - "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", - "requires": { - "hoek": "4.2.0" - } - } + "boom": "2.10.1" } }, "crypto-browserify": { @@ -4986,7 +2298,7 @@ "d3-array": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.1.tgz", - "integrity": "sha1-0coz3i9qwx76244FCgIdfiOW1dw=" + "integrity": "sha512-CyINJQ0SOUHojDdFDH4JEM0552vCR1utGyLHegJHyYH0JyCpSeTPxi4OBqHMA2jJZq4NH782LtaJWBImqI/HBw==" }, "d3-collection": { "version": "1.0.4", @@ -5006,12 +2318,12 @@ "d3-format": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.2.1.tgz", - "integrity": "sha1-Thns2wgaNB2vr19VXulWvP2/Fn8=" + "integrity": "sha512-U4zRVLDXW61bmqoo+OJ/V687e1T5nVd3TAKAJKgtpZ/P1JsMgyod0y9br+mlQOryTAACdiXI3wCjuERHFNp91w==" }, "d3-interpolate": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.1.6.tgz", - "integrity": "sha1-LPOVriOBgE3wiqG/dmt/l7X2j7Y=", + "integrity": "sha512-mOnv5a+pZzkNIHtw/V6I+w9Lqm9L5bG3OTXPM5A+QO0yyVMQ4W1uZhR+VOJmazaOZXri2ppbiZ5BUNWT0pFM9A==", "requires": { "d3-color": "1.0.3" } @@ -5024,7 +2336,7 @@ "d3-scale": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-1.0.7.tgz", - "integrity": "sha1-+pAySz6op3ZCK9BHKvqwslKglF0=", + "integrity": "sha512-KvU92czp2/qse5tUfGms6Kjig0AhHOwkzXG0+PqIJB3ke0WUv088AHMZI0OssO9NCkXt4RP8yju9rpH8aGB7Lw==", "requires": { "d3-array": "1.2.1", "d3-collection": "1.0.4", @@ -5046,12 +2358,12 @@ "d3-time": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.0.8.tgz", - "integrity": "sha1-29LWAHv0Fv5np20XlHt4S//qHoQ=" + "integrity": "sha512-YRZkNhphZh3KcnBfitvF3c6E0JOFGikHZ4YqD+Lzv83ZHn1/u6yGenRU1m+KAk9J1GnZMnKcrtfvSktlA1DXNQ==" }, "d3-time-format": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.1.tgz", - "integrity": "sha1-hbfN+8n/yhh/FNPEVv/aJoCBuzE=", + "integrity": "sha512-8kAkymq2WMfzW7e+s/IUNAtN/y3gZXGRrdGfo6R8NKPAA85UBTxZg5E61bR6nLwjPjj4d3zywSQe1CkYLPFyrw==", "requires": { "d3-time": "1.0.8" } @@ -5059,7 +2371,7 @@ "d3-timer": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.7.tgz", - "integrity": "sha1-35ZQylh/bJZgf/TmDMOCKejdhTE=" + "integrity": "sha512-vMZXR88XujmG/L5oB96NNKH5lCWwiLM/S2HyyAQLcjWJCloK5shxta4CwOFYLZoY3AWX73v8Lgv4cCAdWtRmOA==" }, "d3-voronoi": { "version": "1.1.2", @@ -5072,6 +2384,13 @@ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "requires": { "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + } } }, "date-now": { @@ -5085,13 +2404,6 @@ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "requires": { "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } } }, "decamelize": { @@ -5099,6 +2411,11 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, "decompress": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.0.tgz", @@ -5112,6 +2429,13 @@ "make-dir": "1.1.0", "pify": "2.3.0", "strip-dirs": "2.1.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } } }, "decompress-response": { @@ -5125,7 +2449,7 @@ "decompress-tar": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", - "integrity": "sha1-cYy9P8sWIJcW5womuE57pFkuWvE=", + "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", "requires": { "file-type": "5.2.0", "is-stream": "1.1.0", @@ -5135,7 +2459,7 @@ "decompress-tarbz2": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", - "integrity": "sha1-MIKluIDqQEOBY0nzeLVsUWvho5s=", + "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", "requires": { "decompress-tar": "4.1.1", "file-type": "6.2.0", @@ -5147,14 +2471,14 @@ "file-type": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", - "integrity": "sha1-5QzXXTVv/tTjBtxPW89Sp5kDqRk=" + "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==" } } }, "decompress-targz": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", - "integrity": "sha1-wJvDXE0R894J8tLaU+neI+fOHu4=", + "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", "requires": { "decompress-tar": "4.1.1", "file-type": "5.2.0", @@ -5185,6 +2509,11 @@ "object-assign": "4.1.1", "pinkie-promise": "2.0.1" } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" } } }, @@ -5223,6 +2552,21 @@ "requires": { "foreach": "2.0.5", "object-keys": "1.0.11" + }, + "dependencies": { + "object-keys": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", + "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=" + } + } + }, + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "1.0.2" } }, "defined": { @@ -5241,13 +2585,6 @@ "p-map": "1.2.0", "pify": "3.0.0", "rimraf": "2.6.2" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } } }, "delayed-stream": { @@ -5274,10 +2611,16 @@ "minimalistic-assert": "1.0.0" } }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, "detect-indent": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, "requires": { "repeating": "2.0.1" } @@ -5310,7 +2653,7 @@ "dns-packet": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.2.2.tgz", - "integrity": "sha1-qKJr7HZGQ4lj/Ibgb4+LFtbIv3o=", + "integrity": "sha512-kN+DjfGF7dJGUL7nWRktL9Z18t1rWP3aQlyZdY8XlpvU3Nc6GeFTQApftcjtWKxAZfiggZSGrCEoszNgvnpwDg==", "requires": { "ip": "1.1.5", "safe-buffer": "5.1.1" @@ -5325,9 +2668,9 @@ } }, "dom-helpers": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.2.1.tgz", - "integrity": "sha1-MgPgf+0he9H0JLAZc1WC/Deyglo=" + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.3.1.tgz", + "integrity": "sha512-2Sm+JaYn74OiTM2wHvxJOo3roiq/h25Yi69Fqk269cNUwIXsCvATB6CRSFC9Am/20G2b28hGv/+7NiWydIrPvg==" }, "dom-walk": { "version": "0.1.1", @@ -5349,35 +2692,14 @@ "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=" }, - "duplexer2": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", - "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=", + "drbg.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", + "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", "requires": { - "readable-stream": "1.1.14" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "0.0.1", - "string_decoder": "0.10.31" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - } + "browserify-aes": "1.1.1", + "create-hash": "1.1.3", + "create-hmac": "1.1.6" } }, "duplexer3": { @@ -5394,6 +2716,26 @@ "jsbn": "0.1.1" } }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "electron-releases": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/electron-releases/-/electron-releases-2.1.0.tgz", + "integrity": "sha512-cyKFD1bTE/UgULXfaueIN1k5EPFzs+FRc/rvCY5tIynefAPqopQEgjr0EzY+U3Dqrk/G4m9tXSPuZ77v6dL/Rw==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.30", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.30.tgz", + "integrity": "sha512-zx1Prv7kYLfc4OA60FhxGbSo4qrEjgSzpo1/37i7l9ltXPYOoQBtjQxY9KmsgfHnBxHlBGXwLlsbt/gub1w5lw==", + "dev": true, + "requires": { + "electron-releases": "2.1.0" + } + }, "elliptic": { "version": "6.4.0", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", @@ -5406,52 +2748,6 @@ "inherits": "2.0.3", "minimalistic-assert": "1.0.0", "minimalistic-crypto-utils": "1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "hash.js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", - "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", - "requires": { - "inherits": "2.0.3", - "minimalistic-assert": "1.0.0" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "1.1.3", - "minimalistic-assert": "1.0.0", - "minimalistic-crypto-utils": "1.0.1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "minimalistic-assert": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", - "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - } } }, "emojis-list": { @@ -5459,6 +2755,11 @@ "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" }, + "encodeurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.1.tgz", + "integrity": "sha1-eePVhlU0aQn+bw9Fpd5oEDspTSA=" + }, "encoding": { "version": "0.1.12", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", @@ -5467,6 +2768,31 @@ "iconv-lite": "0.4.19" } }, + "encoding-down": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/encoding-down/-/encoding-down-3.0.1.tgz", + "integrity": "sha512-uvx+39YNqiPLqhXAvOSGBVy/oYBh4p2ShwG9YFCipwgfOhnVIOxuOPE3R9dEGM44bn0VHIrC3ojXq6lNf2ulwg==", + "requires": { + "abstract-leveldown": "3.0.0", + "level-codec": "8.0.0", + "level-errors": "1.1.2" + }, + "dependencies": { + "abstract-leveldown": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-3.0.0.tgz", + "integrity": "sha512-KUWx9UWGQD12zsmLNj64/pndaz4iJh/Pj7nopgkfDG6RlCcbMZvT6+9l7dchK4idog2Is8VdC/PvNbFuFmalIQ==", + "requires": { + "xtend": "4.0.1" + } + }, + "level-codec": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-8.0.0.tgz", + "integrity": "sha512-gNZlo1HRHz0BWxzGCyNf7xntAs2HKOPvvRBWtXsoDvEX4vMYnSTBS6ZnxoaiX7nhxSBPpegRa8CQ/hnfGBKk3Q==" + } + } + }, "end-of-stream": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", @@ -5495,11 +2821,11 @@ } }, "errno": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz", - "integrity": "sha1-uJbiOp5ei6M4cfyZar02NfyaHH0=", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.6.tgz", + "integrity": "sha512-IsORQDpaaSwcDP4ZZnHxgE85werpo34VYn1Ud3mq+eUsF593faR8oCZNXrROVkpFu2TsbrNhHin0aUrTsQ9vNw==", "requires": { - "prr": "0.0.0" + "prr": "1.0.1" } }, "error-ex": { @@ -5513,7 +2839,7 @@ "es-abstract": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.10.0.tgz", - "integrity": "sha1-Hss2wZeEKgDY7kwt/YZGu5fWCGQ=", + "integrity": "sha512-/uh/DhdqIOSkAWifU+8nG78vlQxdLckUdI/sPgy0VhuXi2qJ7T8czBmqIYtLQVpCIFYafChnsRsB5pyb1JdmCQ==", "requires": { "es-to-primitive": "1.1.1", "function-bind": "1.1.1", @@ -5541,6 +2867,11 @@ "es6-symbol": "3.1.1" } }, + "es5-shim": { + "version": "4.5.10", + "resolved": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.5.10.tgz", + "integrity": "sha512-vmryBdqKRO8Ei9LJ4yyEk/EOmAOGIagcHDYPpTAi6pot4IMHS1AC2q5cTKPmydpijg2iX8DVmCuqgrNxIWj8Yg==" + }, "es6-iterator": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", @@ -5634,19 +2965,25 @@ "esutils": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, "eth-lib": { "version": "0.1.27", "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.27.tgz", - "integrity": "sha1-8LD9FE+GXS1r+CV6QABPLnXKHdY=", + "integrity": "sha512-B8czsfkJYzn2UIEMwjc7Mbj+Cy72V+/OXH/tb44LV8jhrjizQJJ325xMOMyk3+ETa6r6oi0jsUY14+om8mQMWA==", "requires": { "bn.js": "4.11.8", "elliptic": "6.4.0", "keccakjs": "0.2.1", "nano-json-stream-parser": "0.1.2", "servify": "0.1.12", - "ws": "3.3.2", + "ws": "3.3.3", "xhr-request-promise": "0.1.2" } }, @@ -5661,18 +2998,13 @@ "crypto-js": "3.1.8", "elliptic": "3.1.0", "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.2", + "ethereumjs-util": "5.1.3", "rlp": "2.0.0", "scrypt-async": "1.3.1", "tweetnacl": "0.13.2", "web3": "0.19.1" }, "dependencies": { - "bignumber.js": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", - "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" - }, "bn.js": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-2.2.0.tgz", @@ -5689,11 +3021,6 @@ "inherits": "2.0.3" } }, - "tweetnacl": { - "version": "0.13.2", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.13.2.tgz", - "integrity": "sha1-RTFhdwRp1FzSZsNkBOK8maj6mUQ=" - }, "web3": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", @@ -5708,17 +3035,47 @@ } } }, + "eth-sig-util": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/eth-sig-util/-/eth-sig-util-1.4.1.tgz", + "integrity": "sha1-383jy9A8ONQprYaVk4omeOxW8a4=", + "requires": { + "ethereumjs-abi": "git+https://github.com/ethereumjs/ethereumjs-abi.git#71f123b676f2b2d81bc20f343670d90045a3d3d8", + "ethereumjs-util": "5.1.3" + } + }, "ethereum-common": { "version": "0.0.18", "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=" }, + "ethereumjs-abi": { + "version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#71f123b676f2b2d81bc20f343670d90045a3d3d8", + "requires": { + "bn.js": "4.11.8", + "ethereumjs-util": "4.5.0" + }, + "dependencies": { + "ethereumjs-util": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-4.5.0.tgz", + "integrity": "sha1-PpQosxfuvaPXJg2FT93alUsfG8Y=", + "requires": { + "bn.js": "4.11.8", + "create-hash": "1.1.3", + "keccakjs": "0.2.1", + "rlp": "2.0.0", + "secp256k1": "3.4.0" + } + } + } + }, "ethereumjs-testrpc": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/ethereumjs-testrpc/-/ethereumjs-testrpc-4.1.3.tgz", "integrity": "sha512-zVipEeZQcBnOzpGQk4ngFbd+VUYJDWASnGpquHthSPta3Kcy33qOwAIx3hXRmDdp4d2zbm8licximJWbpEG1hA==", "requires": { - "webpack": "3.8.1" + "webpack": "3.10.0" } }, "ethereumjs-tx": { @@ -5727,22 +3084,21 @@ "integrity": "sha1-7OBR0+/b53GtKlGNYWMsoqt17Ls=", "requires": { "ethereum-common": "0.0.18", - "ethereumjs-util": "5.1.2" + "ethereumjs-util": "5.1.3" } }, "ethereumjs-util": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.1.2.tgz", - "integrity": "sha1-JboCFcu0wvCxCKb5avKi5i5Fkh8=", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.1.3.tgz", + "integrity": "sha512-U/wmHagElZVxnpo3bFsvk5beFADegUcEzqtA/NfQbitAPOs6JoYq8M4SY9NfH4HD8236i63UOkkXafd7bqBL9A==", "requires": { - "babel-preset-es2015": "6.24.1", - "babelify": "7.3.0", "bn.js": "4.11.8", "create-hash": "1.1.3", "ethjs-util": "0.1.4", - "keccak": "1.3.0", + "keccak": "1.4.0", "rlp": "2.0.0", - "secp256k1": "3.2.5" + "safe-buffer": "5.1.1", + "secp256k1": "3.4.0" } }, "ethjs-unit": { @@ -5780,9 +3136,9 @@ } }, "eventemitter3": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-0.1.6.tgz", - "integrity": "sha1-jHrES4e6q1XNUMgo3Dh3jqwFLqU=" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.1.1.tgz", + "integrity": "sha1-R3hr2qCHyvext15zq8XH1UAVjNA=" }, "events": { "version": "1.1.1", @@ -5820,14 +3176,6 @@ "strip-eof": "1.0.0" } }, - "execspawn": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/execspawn/-/execspawn-1.0.1.tgz", - "integrity": "sha1-gob53efOzeeQX73ATiTzaPI/jaY=", - "requires": { - "util-extend": "1.0.3" - } - }, "expand-brackets": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", @@ -5886,40 +3234,6 @@ "vary": "1.1.2" }, "dependencies": { - "accepts": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", - "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=", - "requires": { - "mime-types": "2.1.17", - "negotiator": "0.6.1" - } - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -5928,204 +3242,6 @@ "ms": "2.0.0" } }, - "depd": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "encodeurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.1.tgz", - "integrity": "sha1-eePVhlU0aQn+bw9Fpd5oEDspTSA=" - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" - }, - "finalhandler": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", - "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", - "requires": { - "debug": "2.6.9", - "encodeurl": "1.0.1", - "escape-html": "1.0.3", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "statuses": "1.3.1", - "unpipe": "1.0.0" - } - }, - "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" - }, - "http-errors": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", - "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "requires": { - "depd": "1.1.1", - "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": "1.3.1" - }, - "dependencies": { - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" - } - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ipaddr.js": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.5.2.tgz", - "integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A=" - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" - }, - "mime-db": { - "version": "1.30.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", - "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" - }, - "mime-types": { - "version": "2.1.17", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", - "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", - "requires": { - "mime-db": "1.30.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "proxy-addr": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz", - "integrity": "sha1-ZXFQT0e7mI7IGAJT+F3X4UlSvew=", - "requires": { - "forwarded": "0.1.2", - "ipaddr.js": "1.5.2" - } - }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" - }, - "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" - }, - "send": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", - "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", - "requires": { - "debug": "2.6.9", - "depd": "1.1.1", - "destroy": "1.0.4", - "encodeurl": "1.0.1", - "escape-html": "1.0.3", - "etag": "1.8.1", - "fresh": "0.5.2", - "http-errors": "1.6.2", - "mime": "1.4.1", - "ms": "2.0.0", - "on-finished": "2.3.0", - "range-parser": "1.2.0", - "statuses": "1.3.1" - } - }, - "serve-static": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", - "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", - "requires": { - "encodeurl": "1.0.1", - "escape-html": "1.0.3", - "parseurl": "1.3.2", - "send": "0.16.1" - } - }, "setprototypeof": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", @@ -6135,30 +3251,6 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" - }, - "type-is": { - "version": "1.6.15", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", - "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", - "requires": { - "media-typer": "0.3.0", - "mime-types": "2.1.17" - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" } } }, @@ -6178,21 +3270,6 @@ "utils-merge": "1.0.1" }, "dependencies": { - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "crc": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz", - "integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms=" - }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -6200,44 +3277,6 @@ "requires": { "ms": "2.0.0" } - }, - "depd": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "on-headers": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", - "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=" - }, - "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" - }, - "random-bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", - "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=" - }, - "uid-safe": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", - "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", - "requires": { - "random-bytes": "1.0.0" - } - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" } } }, @@ -6246,6 +3285,14 @@ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, "extglob": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", @@ -6282,13 +3329,13 @@ "concat-stream": "1.6.0", "cookiejar": "2.1.1", "csprng": "0.1.2", - "faye-websocket": "0.11.1" + "faye-websocket": "0.10.0" } }, "faye-websocket": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", - "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", "requires": { "websocket-driver": "0.7.0" } @@ -6344,6 +3391,35 @@ "repeat-string": "1.6.1" } }, + "finalhandler": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.1", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.3.1", + "unpipe": "1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" + } + } + }, "find-cache-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", @@ -6363,11 +3439,21 @@ } }, "follow-redirects": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.2.6.tgz", - "integrity": "sha1-Tc3H5Ks91nZal/+Jw7TCWBF8eb8=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz", + "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=", "requires": { - "debug": "3.1.0" + "debug": "2.6.9" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } } }, "for-each": { @@ -6402,15 +3488,33 @@ "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" }, "form-data": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz", - "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", + "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", "requires": { "asynckit": "0.4.0", "combined-stream": "1.0.5", "mime-types": "2.1.17" } }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "requires": { + "map-cache": "0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, "fs-extra": { "version": "0.30.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", @@ -6421,16 +3525,6 @@ "klaw": "1.3.1", "path-is-absolute": "1.0.1", "rimraf": "2.6.2" - }, - "dependencies": { - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", - "requires": { - "graceful-fs": "4.1.11" - } - } } }, "fs-promise": { @@ -6452,17 +3546,15 @@ "graceful-fs": "4.1.11", "jsonfile": "2.4.0" } - }, - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", - "requires": { - "graceful-fs": "4.1.11" - } } } }, + "fs-readdir-recursive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", + "dev": true + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -7271,18 +4363,33 @@ "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=" + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "gauge": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.7.tgz", - "integrity": "sha1-6c7FSD09TuDvRLYKfZnkk14TbZM=", + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "requires": { - "ansi": "0.3.1", + "aproba": "1.2.0", + "console-control-strings": "1.1.0", "has-unicode": "2.0.1", - "lodash.pad": "4.5.1", - "lodash.padend": "4.6.1", - "lodash.padstart": "4.6.1" + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } } }, "get-caller-file": { @@ -7300,42 +4407,24 @@ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "requires": { "assert-plus": "1.0.0" - } - }, - "ghreleases": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/ghreleases/-/ghreleases-1.0.6.tgz", - "integrity": "sha512-uySVPT5T9uP1xeWR7nl3WD8/JjJJXAph/0zdgUQJ7ovFpL3rxBT/HT0sO6w0GDWCj2gwXvzxBKrIeJAgBhs+fw==", - "requires": { - "after": "0.8.2", - "ghrepos": "2.0.0", - "ghutils": "3.2.1", - "simple-mime": "0.1.0", - "url-template": "2.0.8", - "xtend": "4.0.1" - } - }, - "ghrepos": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ghrepos/-/ghrepos-2.0.0.tgz", - "integrity": "sha1-1m6unZijtTmORg1tt+EKdCaS6Bs=", - "requires": { - "ghutils": "3.2.1" - } - }, - "ghutils": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ghutils/-/ghutils-3.2.1.tgz", - "integrity": "sha1-T87f+sk1/KzgbhKhfGF04sKf/k8=", - "requires": { - "jsonist": "1.3.0", - "xtend": "4.0.1" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + } } }, "github-api": { @@ -7349,29 +4438,13 @@ "utf8": "2.1.2" }, "dependencies": { - "axios": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz", - "integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=", - "requires": { - "follow-redirects": "1.0.0" - } - }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { "ms": "2.0.0" } - }, - "follow-redirects": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz", - "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=", - "requires": { - "debug": "2.6.9" - } } } }, @@ -7417,6 +4490,63 @@ } } }, + "gittoken-account-ui": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/gittoken-account-ui/-/gittoken-account-ui-0.0.7.tgz", + "integrity": "sha512-DG1VKMRK7vvb6a7/Jc7HNZ+nQCE/TWtYNv9dC6Krw2WLUF/PCBkocQICzbiEwKygvGWaYCjm2qVL6D3Dg7u+hw==", + "requires": { + "gittoken-react-components": "0.0.16", + "gittoken-reducers": "0.0.57", + "history": "4.7.2", + "react": "16.2.0", + "react-dom": "16.2.0", + "react-icons": "2.2.7", + "react-redux": "5.0.6", + "react-router-dom": "4.2.2", + "react-router-redux": "4.0.8", + "redux": "3.7.2", + "redux-thunk": "2.2.0", + "worker-loader": "1.1.0" + }, + "dependencies": { + "axios": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "requires": { + "follow-redirects": "1.3.0", + "is-buffer": "1.1.6" + } + }, + "follow-redirects": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", + "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", + "requires": { + "debug": "3.1.0" + } + }, + "gittoken-reducers": { + "version": "0.0.57", + "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.57.tgz", + "integrity": "sha512-99iGDT+eflbk7yFECxKChUZT6VvLhyGunIGkWiF2YX7mxJJBl8xEMbqvMU/dtsVDfI21G1vPidnfKHGHo6iRmA==", + "requires": { + "gittoken-redux-actions": "0.0.40" + } + }, + "gittoken-redux-actions": { + "version": "0.0.40", + "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.40.tgz", + "integrity": "sha512-8Ui18X5aAKn7OToPmkieA/gN+szoAmeoQ320dixQrQhFU7PVqiYrA+WdA4m4i/SXb3Y3N6HzNW6svAc+7jeP4w==", + "requires": { + "axios": "0.17.1", + "bluebird": "3.5.1", + "github-api": "3.0.0", + "gittoken-web-workers": "0.0.71" + } + } + } + }, "gittoken-contracts": { "version": "0.0.59", "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.59.tgz", @@ -7424,16 +4554,11 @@ "requires": { "bluebird": "3.5.1", "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.18", + "solc": "0.4.19", "truffle": "3.4.11", "web3": "0.19.1" }, "dependencies": { - "bignumber.js": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", - "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" - }, "web3": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", @@ -7453,25 +4578,36 @@ "resolved": "https://registry.npmjs.org/gittoken-keystore-generator/-/gittoken-keystore-generator-0.0.20.tgz", "integrity": "sha512-JYdHfF+pJizvg+dEBnS+x8MzuTwzPlX9oa7HR6fa7xdd42RERk2msXFyULun4bx/ta6HObXGttKNvO3XA7vnag==", "requires": { - "bip39": "2.4.0", + "bip39": "2.5.0", "bluebird": "3.5.1", "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.2", + "ethereumjs-util": "5.1.3", "jsonfile": "3.0.1", "keythereum": "1.0.2", - "web3": "0.20.2" + "web3": "0.20.3" + }, + "dependencies": { + "jsonfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", + "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", + "requires": { + "graceful-fs": "4.1.11" + } + } } }, "gittoken-landing-page": { - "version": "0.0.15", - "resolved": "https://registry.npmjs.org/gittoken-landing-page/-/gittoken-landing-page-0.0.15.tgz", - "integrity": "sha512-mFbBNmswV13lt1uTjzAOd4PBdkqS1MV8EKXFN8jrrDrN1Tfuxai6vZSqRPI7fl0ft5WAKqg7lKNamHvLb5w2xQ==", + "version": "0.0.19", + "resolved": "https://registry.npmjs.org/gittoken-landing-page/-/gittoken-landing-page-0.0.19.tgz", + "integrity": "sha512-aS8r0u/r6rJxRcdQxtNSr4mNaU7+bQI2AcRsAFDCPAYN1fYbjVmlH9eycJc1Q3Y+2M55nAp+K7ezHN7E/EnNSA==", "requires": { "axios": "0.17.1", "countdown": "2.6.0", - "gittoken-react-components": "0.0.3", - "gittoken-reducers": "0.0.20", + "gittoken-react-components": "0.0.15", + "gittoken-reducers": "0.0.28", "gittoken-svg-icons": "0.0.8", + "hls.js": "0.8.9", "react": "15.6.2", "react-bootstrap": "0.31.5", "react-dom": "15.6.2", @@ -7486,27 +4622,170 @@ "redux-thunk": "2.2.0" }, "dependencies": { - "bignumber.js": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", - "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + "axios": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "requires": { + "follow-redirects": "1.3.0", + "is-buffer": "1.1.6" + } + }, + "follow-redirects": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", + "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", + "requires": { + "debug": "3.1.0" + } }, "gittoken-contracts": { - "version": "0.0.56", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", - "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", + "version": "0.0.46", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.46.tgz", + "integrity": "sha1-03Ei7BJJV2v7iCVRmxgqOzigRrc=", "requires": { "bluebird": "3.5.1", "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.18", + "solc": "0.4.19", "truffle": "3.4.11", "web3": "0.19.1" + }, + "dependencies": { + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } + }, + "gittoken-react-components": { + "version": "0.0.15", + "resolved": "https://registry.npmjs.org/gittoken-react-components/-/gittoken-react-components-0.0.15.tgz", + "integrity": "sha512-L9Fj+fsB+5ns3e8WJpTPIeECQOF3qoo74qCwq/mPFbhoUjQ6FFB5ZBHxID2PKNN1HpZAD7Ti30NLj6nzLUgLoA==", + "requires": { + "babel-loader": "7.1.2", + "babel-polyfill": "6.26.0", + "ethereumjs-tx": "1.3.3", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.46", + "gittoken-reducers": "0.0.28", + "gittoken-registry-ui": "0.0.13", + "gittoken-svg-icons": "0.0.9", + "gittoken-web-workers": "0.0.60", + "history": "4.7.2", + "hls.js": "0.8.9", + "react": "16.2.0", + "react-bootstrap": "0.31.5", + "react-dom": "16.2.0", + "react-draggable": "3.0.4", + "react-hls": "0.0.7", + "react-icons": "2.2.7", + "react-redux": "5.0.6", + "react-router-dom": "4.2.2", + "react-router-redux": "4.0.8", + "redux": "3.7.2", + "redux-thunk": "2.2.0", + "victory": "0.24.3", + "video.js": "6.6.0", + "videojs-contrib-hls": "5.12.2", + "videojs-hlsjs": "1.4.8", + "web3": "0.20.3" + }, + "dependencies": { + "gittoken-svg-icons": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.9.tgz", + "integrity": "sha512-dOIn5aU8nmH2gIAmRQ65x2swk8xVqNrKiBj3WBZ3B7bXxUtfjWJuGFKAA9aJKt1SCJscGCNyACm8UXktaDzJmw==", + "requires": { + "react": "16.2.0", + "react-dom": "16.2.0" + } + }, + "gittoken-web-workers": { + "version": "0.0.60", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.60.tgz", + "integrity": "sha512-T4ArP/TdX481umkp4Aue7HfsY8XQHaAj9XW1sIb7kg35rksr57zkko5RT4gLiEtR6SEfDpp6r8rNSQerklKQ3w==", + "requires": { + "axios": "0.17.1", + "babel-plugin-transform-react-constant-elements": "6.23.0", + "bluebird": "3.5.1", + "browser-request": "0.3.3", + "eth-lightwallet": "2.5.6", + "ethereumjs-tx": "1.3.3", + "ethereumjs-util": "5.1.3", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.56", + "level-js": "2.2.4", + "levelup": "2.0.1", + "pouchdb": "6.4.1" + }, + "dependencies": { + "gittoken-contracts": { + "version": "0.0.56", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", + "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.19", + "truffle": "3.4.11", + "web3": "0.19.1" + } + }, + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } + }, + "react": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.2.0.tgz", + "integrity": "sha512-ZmIomM7EE1DvPEnSFAHZn9Vs9zJl5A9H7el0EGTE6ZbW9FKe/14IYAlPbC8iH25YarEQxZL+E8VW7Mi7kfQrDQ==", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + }, + "react-dom": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.2.0.tgz", + "integrity": "sha512-zpGAdwHVn9K0091d+hr+R0qrjoJ84cIBFL2uU60KvWBPfZ7LPSrfqviTxGHWN0sjPZb2hxWzMexwrvJdKePvjg==", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + }, + "react-router-redux": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-4.0.8.tgz", + "integrity": "sha1-InQDWWtRUeGCN32rg1tdRfD4BU4=" + } } }, "gittoken-reducers": { - "version": "0.0.20", - "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.20.tgz", - "integrity": "sha512-y7pQBLJSmD744C641KklerDpKIHnct57A8HkxZ3DVl9MnxT5C1+27aqxJFYKU5NqyjccO9oVG9IGYScO5kZeww==", + "version": "0.0.28", + "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.28.tgz", + "integrity": "sha512-R5HY35f6MMMRtmC/xGKgSHWCQaybZHrVNkBhTtBCvuA5LlcqVSydeozJqPOfu3jxAwK6FCD0HA3JitxTg0LZzQ==", "requires": { "gittoken-redux-actions": "0.0.16" } @@ -7519,25 +4798,84 @@ "bluebird": "3.5.1", "github-api": "3.0.0", "gittoken-web-workers": "0.0.70" + }, + "dependencies": { + "gittoken-contracts": { + "version": "0.0.56", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", + "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.19", + "truffle": "3.4.11", + "web3": "0.19.1" + } + }, + "gittoken-web-workers": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.70.tgz", + "integrity": "sha512-er5UwfDErd7VrHfl1nCgYV9od9xMhIkm1jqiwiVjiaX+BPJ3Acu1Ad7zl1lse4K/KTuve/6IEQjs7slqNKDviA==", + "requires": { + "axios": "0.17.1", + "babel-plugin-transform-react-constant-elements": "6.23.0", + "bluebird": "3.5.1", + "browser-request": "0.3.3", + "eth-lightwallet": "2.5.6", + "ethereumjs-tx": "1.3.3", + "ethereumjs-util": "5.1.3", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.56", + "level-js": "2.2.4", + "levelup": "2.0.1", + "pouchdb": "6.4.1" + } + }, + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } } }, - "gittoken-web-workers": { - "version": "0.0.70", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.70.tgz", - "integrity": "sha512-er5UwfDErd7VrHfl1nCgYV9od9xMhIkm1jqiwiVjiaX+BPJ3Acu1Ad7zl1lse4K/KTuve/6IEQjs7slqNKDviA==", + "gittoken-svg-icons": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.8.tgz", + "integrity": "sha512-+gqOhmDcmeuhSFu5Y1wGDoeO+pOzcNLuFzEsozaU9hIxrSGInGJUPOePZzRR0MIKu/bC5BhyIN2oHNAB6NhJSA==", "requires": { - "axios": "0.17.1", - "babel-plugin-transform-react-constant-elements": "6.23.0", - "bluebird": "3.5.1", - "browser-request": "0.3.3", - "eth-lightwallet": "2.5.6", - "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.2", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.56", - "level-js": "2.2.4", - "levelup": "2.0.1", - "pouchdb": "6.3.4" + "react": "16.2.0", + "react-dom": "16.2.0" + }, + "dependencies": { + "react": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.2.0.tgz", + "integrity": "sha512-ZmIomM7EE1DvPEnSFAHZn9Vs9zJl5A9H7el0EGTE6ZbW9FKe/14IYAlPbC8iH25YarEQxZL+E8VW7Mi7kfQrDQ==", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + }, + "react-dom": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.2.0.tgz", + "integrity": "sha512-zpGAdwHVn9K0091d+hr+R0qrjoJ84cIBFL2uU60KvWBPfZ7LPSrfqviTxGHWN0sjPZb2hxWzMexwrvJdKePvjg==", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + } } }, "react": { @@ -7552,6 +4890,23 @@ "prop-types": "15.6.0" } }, + "react-bootstrap": { + "version": "0.31.5", + "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.5.tgz", + "integrity": "sha512-xgDihgX4QvYHmHzL87faDBMDnGfYyqcrqV0TEbWY+JizePOG1vfb8M3xJN+6MJ3kUYqDtQSZ7v/Q6Y5YDrkMdA==", + "requires": { + "babel-runtime": "6.26.0", + "classnames": "2.2.5", + "dom-helpers": "3.3.1", + "invariant": "2.2.2", + "keycode": "2.1.9", + "prop-types": "15.6.0", + "prop-types-extra": "1.0.1", + "react-overlays": "0.7.4", + "uncontrollable": "4.1.0", + "warning": "3.0.0" + } + }, "react-dom": { "version": "15.6.2", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-15.6.2.tgz", @@ -7563,6 +4918,18 @@ "prop-types": "15.6.0" } }, + "react-overlays": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz", + "integrity": "sha512-7vsooMx3siLAuEfTs8FYeP/lAORWWFXTO8PON3KgX0Htq1Oa+po6ioSjGyO0/GO5CVSMNhpWt6V2opeexHgBuQ==", + "requires": { + "classnames": "2.2.5", + "dom-helpers": "3.3.1", + "prop-types": "15.6.0", + "prop-types-extra": "1.0.1", + "warning": "3.0.0" + } + }, "react-router-redux": { "version": "5.0.0-alpha.9", "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-5.0.0-alpha.9.tgz", @@ -7572,54 +4939,60 @@ "prop-types": "15.6.0", "react-router": "4.2.0" } - }, - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } } } }, "gittoken-react-components": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/gittoken-react-components/-/gittoken-react-components-0.0.3.tgz", - "integrity": "sha512-Lg9kvHuV3PXrVsaIa/MERqPm1VQF/+vLR73aiH6gIvqgYXzE8vPXE5inQgorolEzOtEEWlwguFG1J+9EEexVkA==", + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/gittoken-react-components/-/gittoken-react-components-0.0.16.tgz", + "integrity": "sha512-wPh8dRa9WlNG9u6W64ic8ewT4SQd0p7g7zkS+fNWORwopk28hUaRLgOC4+j+uyPRU+HgfJMUeYtCqhI6p25FZw==", "requires": { "babel-loader": "7.1.2", "babel-polyfill": "6.26.0", "ethereumjs-tx": "1.3.3", "github-api": "3.0.0", "gittoken-contracts": "0.0.46", - "gittoken-reducers": "0.0.18", + "gittoken-reducers": "0.0.53", "gittoken-registry-ui": "0.0.13", "gittoken-svg-icons": "0.0.9", "gittoken-web-workers": "0.0.60", "history": "4.7.2", + "hls.js": "0.8.9", + "metamask-logo": "2.1.3", "react": "16.2.0", "react-bootstrap": "0.31.5", "react-dom": "16.2.0", "react-draggable": "3.0.4", + "react-hls": "0.0.7", "react-icons": "2.2.7", "react-redux": "5.0.6", "react-router-dom": "4.2.2", "react-router-redux": "4.0.8", "redux": "3.7.2", "redux-thunk": "2.2.0", - "victory": "0.24.2", - "web3": "0.20.2" + "victory": "0.24.3", + "video.js": "6.6.0", + "videojs-contrib-hls": "5.12.2", + "videojs-hlsjs": "1.4.8", + "web3": "0.20.3" }, "dependencies": { - "bignumber.js": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", - "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + "axios": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "requires": { + "follow-redirects": "1.3.0", + "is-buffer": "1.1.6" + } + }, + "follow-redirects": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", + "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", + "requires": { + "debug": "3.1.0" + } }, "gittoken-contracts": { "version": "0.0.46", @@ -7628,7 +5001,7 @@ "requires": { "bluebird": "3.5.1", "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.18", + "solc": "0.4.19", "truffle": "3.4.11", "web3": "0.19.1" }, @@ -7648,20 +5021,11 @@ } }, "gittoken-reducers": { - "version": "0.0.18", - "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.18.tgz", - "integrity": "sha512-JN9xuxXqq9kKopEzGU8C21AC/nzPAThGn74OLXq7PpFLAOE5KgKLZ/UaUt8qjQvzbkthCuI3Vy/X9vzkQGyI5g==", - "requires": { - "gittoken-redux-actions": "0.0.14" - } - }, - "gittoken-svg-icons": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.9.tgz", - "integrity": "sha512-dOIn5aU8nmH2gIAmRQ65x2swk8xVqNrKiBj3WBZ3B7bXxUtfjWJuGFKAA9aJKt1SCJscGCNyACm8UXktaDzJmw==", + "version": "0.0.53", + "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.53.tgz", + "integrity": "sha512-aM6lSbOaCRIq3r8Go3XR62cASAztVxA8OHbt7YkuErb2b4XcSMlhGRadLbZsEiSF5UCrzGJ5l+ByoUStx2iw1A==", "requires": { - "react": "16.2.0", - "react-dom": "16.2.0" + "gittoken-redux-actions": "0.0.38" } }, "gittoken-web-workers": { @@ -7675,12 +5039,12 @@ "browser-request": "0.3.3", "eth-lightwallet": "2.5.6", "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.2", + "ethereumjs-util": "5.1.3", "github-api": "3.0.0", "gittoken-contracts": "0.0.56", "level-js": "2.2.4", "levelup": "2.0.1", - "pouchdb": "6.3.4" + "pouchdb": "6.4.1" }, "dependencies": { "gittoken-contracts": { @@ -7690,7 +5054,7 @@ "requires": { "bluebird": "3.5.1", "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.18", + "solc": "0.4.19", "truffle": "3.4.11", "web3": "0.19.1" } @@ -7708,28 +5072,146 @@ } } } + }, + "react-bootstrap": { + "version": "0.31.5", + "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.5.tgz", + "integrity": "sha512-xgDihgX4QvYHmHzL87faDBMDnGfYyqcrqV0TEbWY+JizePOG1vfb8M3xJN+6MJ3kUYqDtQSZ7v/Q6Y5YDrkMdA==", + "requires": { + "babel-runtime": "6.26.0", + "classnames": "2.2.5", + "dom-helpers": "3.3.1", + "invariant": "2.2.2", + "keycode": "2.1.9", + "prop-types": "15.6.0", + "prop-types-extra": "1.0.1", + "react-overlays": "0.7.4", + "uncontrollable": "4.1.0", + "warning": "3.0.0" + } + }, + "react-overlays": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz", + "integrity": "sha512-7vsooMx3siLAuEfTs8FYeP/lAORWWFXTO8PON3KgX0Htq1Oa+po6ioSjGyO0/GO5CVSMNhpWt6V2opeexHgBuQ==", + "requires": { + "classnames": "2.2.5", + "dom-helpers": "3.3.1", + "prop-types": "15.6.0", + "prop-types-extra": "1.0.1", + "warning": "3.0.0" + } } } }, "gittoken-reducers": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.3.tgz", - "integrity": "sha1-FN3ue/aJ/hJC4xRaAp5U0C3H14I=" + "version": "0.0.59", + "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.59.tgz", + "integrity": "sha512-8+sJqOZJIuW7Cw5ZDeitaLW4282DZ2Yn26SMcVIBqYwPXM3RHZhw2tTDxynEHIbDYjPERyIHlJm4vL/2iLyvaw==", + "requires": { + "gittoken-redux-actions": "0.0.42" + }, + "dependencies": { + "axios": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "requires": { + "follow-redirects": "1.3.0", + "is-buffer": "1.1.6" + } + }, + "follow-redirects": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", + "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", + "requires": { + "debug": "3.1.0" + } + }, + "gittoken-contracts": { + "version": "0.0.56", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", + "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", + "requires": { + "bluebird": "3.5.1", + "ethereumjs-testrpc": "4.1.3", + "solc": "0.4.19", + "truffle": "3.4.11", + "web3": "0.19.1" + } + }, + "gittoken-redux-actions": { + "version": "0.0.42", + "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.42.tgz", + "integrity": "sha512-PRvC/sLx2Tr72k6KTV0tYb0eHJ6KOp8Qg8ivI+M12EhmjESBGCfu2ivUEnHCvopTlied2u3H4bmIWZCYdtJHow==", + "requires": { + "axios": "0.17.1", + "bluebird": "3.5.1", + "github-api": "3.0.0", + "gittoken-web-workers": "0.0.72" + } + }, + "gittoken-web-workers": { + "version": "0.0.72", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.72.tgz", + "integrity": "sha512-yn78jOfZfU0eW+D9/W+Q3BbNvzgiwoCGTFKHR07pirFowTGv0A1cQax2ehibFO4BvKRevdApiMEPMF2JQp+26g==", + "requires": { + "axios": "0.17.1", + "babel-plugin-transform-react-constant-elements": "6.23.0", + "bluebird": "3.5.1", + "browser-request": "0.3.3", + "eth-lightwallet": "2.5.6", + "ethereumjs-tx": "1.3.3", + "ethereumjs-util": "5.1.3", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.56", + "level-js": "2.2.4", + "levelup": "2.0.1", + "pouchdb": "6.4.1" + } + }, + "web3": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", + "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", + "requires": { + "bignumber.js": "4.1.0", + "crypto-js": "3.1.8", + "utf8": "2.1.2", + "xhr2": "0.1.4", + "xmlhttprequest": "1.8.0" + } + } + } }, "gittoken-redux-actions": { - "version": "0.0.14", - "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.14.tgz", - "integrity": "sha512-XQUaWtuVCxf/7r75mkNoc5LoQYBzMYEPsAyeZEmzmb2dNmNaRGs4X12NQrbLcSpjQKBcg8AknBsNeGr4zTQ6/Q==", + "version": "0.0.38", + "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.38.tgz", + "integrity": "sha512-bvE2xrf2Nu4XWQimMy5dtv8no94zdNndvUpl/odiY7CI5u/HO+5G4DYE9Qj1mZV7BUy6+QwDEE0nnoKInDNeiA==", "requires": { + "axios": "0.17.1", "bluebird": "3.5.1", "github-api": "3.0.0", - "gittoken-web-workers": "0.0.70" + "gittoken-web-workers": "0.0.71" }, "dependencies": { - "bignumber.js": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", - "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + "axios": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "requires": { + "follow-redirects": "1.3.0", + "is-buffer": "1.1.6" + } + }, + "follow-redirects": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", + "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", + "requires": { + "debug": "3.1.0" + } }, "gittoken-contracts": { "version": "0.0.56", @@ -7738,15 +5220,15 @@ "requires": { "bluebird": "3.5.1", "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.18", + "solc": "0.4.19", "truffle": "3.4.11", "web3": "0.19.1" } }, "gittoken-web-workers": { - "version": "0.0.70", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.70.tgz", - "integrity": "sha512-er5UwfDErd7VrHfl1nCgYV9od9xMhIkm1jqiwiVjiaX+BPJ3Acu1Ad7zl1lse4K/KTuve/6IEQjs7slqNKDviA==", + "version": "0.0.71", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.71.tgz", + "integrity": "sha512-ehFSssZVyOGgzFrUUDXqxdh+7tYeyFbHsMkBkqO9BoZ4jnqkVsfwZqk+cg8j0EbEtphxWGpmeDDSFS4DnqlhIw==", "requires": { "axios": "0.17.1", "babel-plugin-transform-react-constant-elements": "6.23.0", @@ -7754,12 +5236,12 @@ "browser-request": "0.3.3", "eth-lightwallet": "2.5.6", "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.2", + "ethereumjs-util": "5.1.3", "github-api": "3.0.0", "gittoken-contracts": "0.0.56", "level-js": "2.2.4", "levelup": "2.0.1", - "pouchdb": "6.3.4" + "pouchdb": "6.4.1" } }, "web3": { @@ -7799,16 +5281,28 @@ "react-router-redux": "4.0.8", "redux": "3.7.2", "redux-thunk": "2.2.0", - "victory": "0.24.2", - "web3": "1.0.0-beta.26", - "webpack": "3.8.1", - "webpack-dev-server": "2.9.7" + "victory": "0.24.3", + "web3": "1.0.0-beta.27", + "webpack": "3.10.0", + "webpack-dev-server": "2.10.0" }, "dependencies": { - "bignumber.js": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", - "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" + "axios": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "requires": { + "follow-redirects": "1.3.0", + "is-buffer": "1.1.6" + } + }, + "follow-redirects": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", + "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", + "requires": { + "debug": "3.1.0" + } }, "gittoken-contracts": { "version": "0.0.48", @@ -7817,7 +5311,7 @@ "requires": { "bluebird": "3.5.1", "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.18", + "solc": "0.4.19", "truffle": "3.4.11", "web3": "0.19.1" }, @@ -7836,55 +5330,129 @@ } } }, - "web3": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3/-/web3-1.0.0-beta.26.tgz", - "integrity": "sha1-u0ba9q78MT92iz3jnX9KjXvQZmM=", + "gittoken-reducers": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.3.tgz", + "integrity": "sha512-tKDrz8/rJRXoFSCYVCa1suLfBaBLbs1LR4eov2SpSBrz/Nu+y6EbBXJKRjpbPPt7dpn7OvU14nPF2amN9HWzHA==" + }, + "gittoken-svg-icons": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.8.tgz", + "integrity": "sha512-+gqOhmDcmeuhSFu5Y1wGDoeO+pOzcNLuFzEsozaU9hIxrSGInGJUPOePZzRR0MIKu/bC5BhyIN2oHNAB6NhJSA==", + "requires": { + "react": "16.2.0", + "react-dom": "16.2.0" + } + }, + "gittoken-web-workers": { + "version": "0.0.13", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.13.tgz", + "integrity": "sha512-nPj6hrw10vWjctcus1xMEs/rDelPbHnsC2rPlqlE3uDPFy5D8iX+MLncBWlPsq7ZqCFV6njYUkfo52o6vP/ZdA==", + "requires": { + "bluebird": "3.5.1", + "browser-request": "0.3.3", + "github-api": "3.0.0", + "gittoken-contracts": "0.0.48" + } + }, + "react-bootstrap": { + "version": "0.31.5", + "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.5.tgz", + "integrity": "sha512-xgDihgX4QvYHmHzL87faDBMDnGfYyqcrqV0TEbWY+JizePOG1vfb8M3xJN+6MJ3kUYqDtQSZ7v/Q6Y5YDrkMdA==", + "requires": { + "babel-runtime": "6.26.0", + "classnames": "2.2.5", + "dom-helpers": "3.3.1", + "invariant": "2.2.2", + "keycode": "2.1.9", + "prop-types": "15.6.0", + "prop-types-extra": "1.0.1", + "react-overlays": "0.7.4", + "uncontrollable": "4.1.0", + "warning": "3.0.0" + } + }, + "react-overlays": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz", + "integrity": "sha512-7vsooMx3siLAuEfTs8FYeP/lAORWWFXTO8PON3KgX0Htq1Oa+po6ioSjGyO0/GO5CVSMNhpWt6V2opeexHgBuQ==", "requires": { - "web3-bzz": "1.0.0-beta.26", - "web3-core": "1.0.0-beta.26", - "web3-eth": "1.0.0-beta.26", - "web3-eth-personal": "1.0.0-beta.26", - "web3-net": "1.0.0-beta.26", - "web3-shh": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "classnames": "2.2.5", + "dom-helpers": "3.3.1", + "prop-types": "15.6.0", + "prop-types-extra": "1.0.1", + "warning": "3.0.0" + } + }, + "web3": { + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.0.0-beta.27.tgz", + "integrity": "sha1-2afJVr7JgbC6knvbkd0PEnXrNHk=", + "requires": { + "web3-bzz": "1.0.0-beta.27", + "web3-core": "1.0.0-beta.27", + "web3-eth": "1.0.0-beta.27", + "web3-eth-personal": "1.0.0-beta.27", + "web3-net": "1.0.0-beta.27", + "web3-shh": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" } } } }, "gittoken-svg-icons": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.8.tgz", - "integrity": "sha1-XE39WFCAcMTmKZ3mlk9Bn8CFwVU=", + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.9.tgz", + "integrity": "sha512-dOIn5aU8nmH2gIAmRQ65x2swk8xVqNrKiBj3WBZ3B7bXxUtfjWJuGFKAA9aJKt1SCJscGCNyACm8UXktaDzJmw==", "requires": { "react": "16.2.0", "react-dom": "16.2.0" } }, "gittoken-web-workers": { - "version": "0.0.13", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.13.tgz", - "integrity": "sha1-gFgddOnrVQ9wr9t5XOwJcVH53qA=", + "version": "0.0.71", + "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.71.tgz", + "integrity": "sha512-ehFSssZVyOGgzFrUUDXqxdh+7tYeyFbHsMkBkqO9BoZ4jnqkVsfwZqk+cg8j0EbEtphxWGpmeDDSFS4DnqlhIw==", "requires": { + "axios": "0.17.1", + "babel-plugin-transform-react-constant-elements": "6.23.0", "bluebird": "3.5.1", "browser-request": "0.3.3", + "eth-lightwallet": "2.5.6", + "ethereumjs-tx": "1.3.3", + "ethereumjs-util": "5.1.3", "github-api": "3.0.0", - "gittoken-contracts": "0.0.48" + "gittoken-contracts": "0.0.56", + "level-js": "2.2.4", + "levelup": "2.0.1", + "pouchdb": "6.4.1" }, "dependencies": { - "bignumber.js": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz", - "integrity": "sha1-228UBnwUC9RmJIFaeRbJLZtsJLE=" + "axios": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "requires": { + "follow-redirects": "1.3.0", + "is-buffer": "1.1.6" + } + }, + "follow-redirects": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", + "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", + "requires": { + "debug": "3.1.0" + } }, "gittoken-contracts": { - "version": "0.0.48", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.48.tgz", - "integrity": "sha1-gZKxMt3XvpWzhLLf39DiGqmfvrI=", + "version": "0.0.56", + "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", + "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", "requires": { "bluebird": "3.5.1", "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.18", + "solc": "0.4.19", "truffle": "3.4.11", "web3": "0.19.1" } @@ -7903,6 +5471,16 @@ } } }, + "gl-mat4": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/gl-mat4/-/gl-mat4-1.1.4.tgz", + "integrity": "sha1-HolbVYkuVqiWhnq9g30483oXgIY=" + }, + "gl-vec3": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/gl-vec3/-/gl-vec3-1.0.3.tgz", + "integrity": "sha1-EQ/Yl9Byn2OYMHOBVn0JRJQb8is=" + }, "glob": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", @@ -7952,7 +5530,8 @@ "globals": { "version": "9.18.0", "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true }, "globby": { "version": "6.1.0", @@ -7964,12 +5543,19 @@ "object-assign": "4.1.1", "pify": "2.3.0", "pinkie-promise": "2.0.1" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } } }, "got": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha1-BUUP2ECU5rvqVvRRpDqcKJFmOFo=", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", "requires": { "decompress-response": "3.3.0", "duplexer3": "0.1.4", @@ -8003,13 +5589,6 @@ "integrity": "sha512-Q7cx22DiLhwHsEfUnUip1Ww/Vfx7FS0w6+iHItNuN61+XpegHSa3k5U0+6M5BcpavQImBwFiy0z3uYwY7cXMLQ==", "requires": { "iterall": "1.1.3" - }, - "dependencies": { - "iterall": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.1.3.tgz", - "integrity": "sha512-Cu/kb+4HiNSejAPhSaN1VukdNTTi/r4/e+yykqjlG/IW+1gZH5b4+Bq3whDX4tvbYugta3r8KTMUiqT3fIGxuQ==" - } } }, "growl": { @@ -8023,17 +5602,28 @@ "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" }, "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", + "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=" }, "har-validator": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", + "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", "requires": { - "ajv": "5.5.0", - "har-schema": "2.0.0" + "ajv": "4.11.8", + "har-schema": "1.0.5" + }, + "dependencies": { + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + } } }, "has": { @@ -8048,6 +5638,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, "requires": { "ansi-regex": "2.1.1" } @@ -8070,21 +5661,75 @@ "has-symbol-support-x": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz", - "integrity": "sha1-ZuwuN34MfXzO2wejqE13UQ/xvEw=" + "integrity": "sha512-JkaetveU7hFbqnAC1EV1sF4rlojU2D4Usc5CmS69l6NfmPDnpnFUegzFg33eDkkpNCxZ0mQp65HwUDrNFS/8MA==" }, "has-to-string-tag-x": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "integrity": "sha1-oEWrOD17SyASoAFIqwql8pAETU0=", + "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", "requires": { "has-symbol-support-x": "1.4.1" } }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "requires": { + "get-value": "2.0.6", + "has-values": "1.0.0", + "isobject": "3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, "hash-base": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", @@ -8103,14 +5748,14 @@ } }, "hawk": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", - "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", + "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", "requires": { - "boom": "4.3.1", - "cryptiles": "3.1.2", - "hoek": "4.2.0", - "sntp": "2.1.0" + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" } }, "he": { @@ -8126,7 +5771,7 @@ "history": { "version": "4.7.2", "resolved": "https://registry.npmjs.org/history/-/history-4.7.2.tgz", - "integrity": "sha1-IrXH8xYzxbgCHH9KipVKwTnujVs=", + "integrity": "sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA==", "requires": { "invariant": "2.2.2", "loose-envify": "1.3.1", @@ -8135,10 +5780,28 @@ "warning": "3.0.0" } }, + "hls.js": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-0.8.9.tgz", + "integrity": "sha1-2zZ8yZzlsJduo+BZodBE17B5Bpc=", + "requires": { + "url-toolkit": "2.1.2" + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "requires": { + "hash.js": "1.1.3", + "minimalistic-assert": "1.0.0", + "minimalistic-crypto-utils": "1.0.1" + } + }, "hoek": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz", - "integrity": "sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ==" + "version": "2.16.3", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", + "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" }, "hoist-non-react-statics": { "version": "2.3.1", @@ -8149,6 +5812,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, "requires": { "os-homedir": "1.0.2", "os-tmpdir": "1.0.2" @@ -8206,15 +5870,8 @@ "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.16.2.tgz", "integrity": "sha1-Bt/ykpUr9k2+hHH6nfcwZtTzd0I=", "requires": { - "eventemitter3": "1.2.0", + "eventemitter3": "1.1.1", "requires-port": "1.0.0" - }, - "dependencies": { - "eventemitter3": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz", - "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=" - } } }, "http-proxy-middleware": { @@ -8244,11 +5901,11 @@ } }, "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", + "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", "requires": { - "assert-plus": "1.0.0", + "assert-plus": "0.2.0", "jsprim": "1.4.1", "sshpk": "1.13.1" } @@ -8258,47 +5915,6 @@ "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" }, - "hyperquest": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/hyperquest/-/hyperquest-1.2.0.tgz", - "integrity": "sha1-OeH+9miI3Hzg3sbA3YFPb8iUStU=", - "requires": { - "duplexer2": "0.0.2", - "through2": "0.6.5" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "0.0.1", - "string_decoder": "0.10.31" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, - "through2": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", - "requires": { - "readable-stream": "1.0.34", - "xtend": "4.0.1" - } - } - } - }, "iconv-lite": { "version": "0.4.19", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", @@ -8320,9 +5936,9 @@ "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=" }, "import-local": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", - "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz", + "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==", "requires": { "pkg-dir": "2.0.0", "resolve-cwd": "2.0.0" @@ -8341,6 +5957,11 @@ "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" }, + "individual": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/individual/-/individual-2.0.0.tgz", + "integrity": "sha1-gzsJfa0jKU52EXqY+zjg2a1hu5c=" + }, "infinity-x": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/infinity-x/-/infinity-x-1.0.0.tgz", @@ -8396,6 +6017,26 @@ "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" }, + "ipaddr.js": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.5.2.tgz", + "integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A=" + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, "is-array-buffer-x": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/is-array-buffer-x/-/is-array-buffer-x-1.7.0.tgz", @@ -8439,11 +6080,43 @@ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=" }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, "is-date-object": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=" }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, "is-dotfile": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", @@ -8586,6 +6259,24 @@ "is-primitive": "2.0.0" } }, + "is-odd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-1.0.0.tgz", + "integrity": "sha1-O4qTLrAos3dcObsJ6RdnrM22kIg=", + "requires": { + "is-number": "3.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + } + } + } + }, "is-path-cwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", @@ -8612,6 +6303,21 @@ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } + } + }, "is-posix-bracket": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", @@ -8680,552 +6386,149 @@ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } - }, - "isomorphic-fetch": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", - "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", - "requires": { - "node-fetch": "1.7.3", - "whatwg-fetch": "2.0.3" - } - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "isurl": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "integrity": "sha1-sn9PSfPNqj6kSgpbfzRi5u3DnWc=", - "requires": { - "has-to-string-tag-x": "1.4.1", - "is-object": "1.0.1" - } - }, - "js-base64": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.0.tgz", - "integrity": "sha1-nlZv7mJHUaHXIMlmzWIm0p1AJao=" - }, - "js-sha3": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.3.1.tgz", - "integrity": "sha1-hhIoAhQvCChQKg0d7h2V4lO7AkM=" - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "optional": true - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" - }, - "json-loader": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", - "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "requires": { - "jsonify": "0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "json3": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", - "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=" - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" - }, - "jsonfile": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", - "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", - "requires": { - "graceful-fs": "4.1.11" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" - }, - "jsonist": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsonist/-/jsonist-1.3.0.tgz", - "integrity": "sha1-wMdLle8clSA4YZsp76UgscyYdVY=", - "requires": { - "bl": "1.0.3", - "hyperquest": "1.2.0", - "json-stringify-safe": "5.0.1", - "xtend": "4.0.1" - }, - "dependencies": { - "bl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.0.3.tgz", - "integrity": "sha1-/FQhoo/UImA2w7OJGmaiW8ZNIm4=", - "requires": { - "readable-stream": "2.0.6" - } - }, - "readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "0.10.31", - "util-deprecate": "1.0.2" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - } - } - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" + "isarray": "1.0.0" } }, - "keccak": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-1.3.0.tgz", - "integrity": "sha512-JgsKPxYhcJxKrV+TrCyg/GwZbOjhpRPrz2kG8xbAsUaIDelUlKjm08YcwBO9Fm8sqf/Kg8ZWkk6nWujhLykfvw==", + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", "requires": { - "bindings": "1.3.0", - "inherits": "2.0.3", - "nan": "2.8.0", - "prebuild-install": "2.3.0", - "safe-buffer": "5.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", - "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", - "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.3" - } - }, - "bindings": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", - "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" - }, - "bl": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", - "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", - "requires": { - "readable-stream": "2.3.3" - } - }, - "chownr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", - "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "deep-extend": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", - "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "end-of-stream": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", - "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", - "requires": { - "once": "1.4.0" - } - }, - "expand-template": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz", - "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==" - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "1.0.1" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - } - } - }, - "nan": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", - "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" - }, - "node-abi": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.1.2.tgz", - "integrity": "sha512-hmUtb8m75RSi7N+zZLYqe75XDvZB+6LyTBPkj2DConvNgQet2e3BIqEwe1LLvqMrfyjabuT5ZOrTioLCH1HTdA==", - "requires": { - "semver": "5.4.1" - } - }, - "noop-logger": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", - "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "prebuild-install": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.3.0.tgz", - "integrity": "sha512-gzjq2oHB8oMbzJSsSh9MQ64zrXZGt092/uT4TLZlz2qnrPxpWqp4vYB7LZrDxnlxf5RfbCjkgDI/z0EIVuYzAw==", - "requires": { - "expand-template": "1.1.0", - "github-from-package": "0.0.0", - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "node-abi": "2.1.2", - "noop-logger": "0.1.1", - "npmlog": "4.1.2", - "os-homedir": "1.0.2", - "pump": "1.0.3", - "rc": "1.2.2", - "simple-get": "1.4.3", - "tar-fs": "1.16.0", - "tunnel-agent": "0.6.0", - "xtend": "4.0.1" - } - }, - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" - }, - "pump": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", - "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", - "requires": { - "end-of-stream": "1.4.0", - "once": "1.4.0" - } - }, - "rc": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.2.tgz", - "integrity": "sha1-2M6ctX6NZNnHut2YdsfDTL48cHc=", - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - } - }, - "readable-stream": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "safe-buffer": "5.1.1", - "string_decoder": "1.0.3", - "util-deprecate": "1.0.2" - } - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" - }, - "semver": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "simple-get": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", - "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", - "requires": { - "once": "1.4.0", - "unzip-response": "1.0.2", - "xtend": "4.0.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "requires": { - "safe-buffer": "5.1.1" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "2.1.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "tar-fs": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.0.tgz", - "integrity": "sha512-I9rb6v7mjWLtOfCau9eH5L7sLJyU2BnxtEZRQ5Mt+eRKmf1F0ohXmT/Jc3fr52kDvjJ/HV5MH3soQfPL5bQ0Yg==", - "requires": { - "chownr": "1.0.1", - "mkdirp": "0.5.1", - "pump": "1.0.3", - "tar-stream": "1.5.5" - } - }, - "tar-stream": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", - "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", - "requires": { - "bl": "1.2.1", - "end-of-stream": "1.4.0", - "readable-stream": "2.3.3", - "xtend": "4.0.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "5.1.1" - } - }, - "unzip-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", - "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "wide-align": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", - "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", - "requires": { - "string-width": "1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "isurl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", + "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "requires": { + "has-to-string-tag-x": "1.4.1", + "is-object": "1.0.1" + } + }, + "iterall": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.1.3.tgz", + "integrity": "sha512-Cu/kb+4HiNSejAPhSaN1VukdNTTi/r4/e+yykqjlG/IW+1gZH5b4+Bq3whDX4tvbYugta3r8KTMUiqT3fIGxuQ==" + }, + "js-base64": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.0.tgz", + "integrity": "sha512-Wehd+7Pf9tFvGb+ydPm9TjYjV8X1YHOVyG8QyELZxEMqOhemVwGRmoG8iQ/soqI3n8v4xn59zaLxiCJiaaRzKA==" + }, + "js-sha3": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.3.1.tgz", + "integrity": "sha1-hhIoAhQvCChQKg0d7h2V4lO7AkM=" + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "optional": true + }, + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + }, + "json-loader": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", + "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==" + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "requires": { + "jsonify": "0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "json3": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", + "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=" + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + }, + "jsonfile": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "requires": { + "graceful-fs": "4.1.11" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" } } }, + "keccak": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-1.4.0.tgz", + "integrity": "sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw==", + "requires": { + "bindings": "1.3.0", + "inherits": "2.0.3", + "nan": "2.8.0", + "safe-buffer": "5.1.1" + } + }, "keccakjs": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/keccakjs/-/keccakjs-0.2.1.tgz", @@ -9250,401 +6553,37 @@ "sjcl": "1.0.6", "uuid": "3.0.0" }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", - "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", - "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.3" - } - }, - "bindings": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", - "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" - }, - "bl": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", - "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", - "requires": { - "readable-stream": "2.3.3" - } - }, - "chownr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", - "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "deep-extend": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", - "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "end-of-stream": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", - "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", - "requires": { - "once": "1.4.0" - } - }, - "expand-template": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz", - "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==" - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "1.0.1" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "keccak": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-1.2.0.tgz", - "integrity": "sha1-tTYY/HlhtkL25z8VRu7DMp9+/+A=", - "requires": { - "bindings": "1.3.0", - "inherits": "2.0.3", - "nan": "2.8.0", - "prebuild-install": "2.3.0" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - } - } - }, - "nan": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", - "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" - }, - "node-abi": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.1.2.tgz", - "integrity": "sha512-hmUtb8m75RSi7N+zZLYqe75XDvZB+6LyTBPkj2DConvNgQet2e3BIqEwe1LLvqMrfyjabuT5ZOrTioLCH1HTdA==", - "requires": { - "semver": "5.4.1" - } - }, - "noop-logger": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", - "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "prebuild-install": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.3.0.tgz", - "integrity": "sha512-gzjq2oHB8oMbzJSsSh9MQ64zrXZGt092/uT4TLZlz2qnrPxpWqp4vYB7LZrDxnlxf5RfbCjkgDI/z0EIVuYzAw==", - "requires": { - "expand-template": "1.1.0", - "github-from-package": "0.0.0", - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "node-abi": "2.1.2", - "noop-logger": "0.1.1", - "npmlog": "4.1.2", - "os-homedir": "1.0.2", - "pump": "1.0.3", - "rc": "1.2.2", - "simple-get": "1.4.3", - "tar-fs": "1.16.0", - "tunnel-agent": "0.6.0", - "xtend": "4.0.1" - } - }, - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" - }, - "pump": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", - "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", - "requires": { - "end-of-stream": "1.4.0", - "once": "1.4.0" - } - }, - "rc": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.2.tgz", - "integrity": "sha1-2M6ctX6NZNnHut2YdsfDTL48cHc=", - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - } - }, - "readable-stream": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "dependencies": { + "keccak": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-1.2.0.tgz", + "integrity": "sha1-tTYY/HlhtkL25z8VRu7DMp9+/+A=", "requires": { - "core-util-is": "1.0.2", + "bindings": "1.3.0", "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "safe-buffer": "5.1.1", - "string_decoder": "1.0.3", - "util-deprecate": "1.0.2" - } - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" - }, - "semver": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "simple-get": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", - "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", - "requires": { - "once": "1.4.0", - "unzip-response": "1.0.2", - "xtend": "4.0.1" - } - }, - "sjcl": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/sjcl/-/sjcl-1.0.6.tgz", - "integrity": "sha1-ZBVGKmPMDUIVxJuuydP6DBtTUg8=" - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "requires": { - "safe-buffer": "5.1.1" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "2.1.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "tar-fs": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.0.tgz", - "integrity": "sha512-I9rb6v7mjWLtOfCau9eH5L7sLJyU2BnxtEZRQ5Mt+eRKmf1F0ohXmT/Jc3fr52kDvjJ/HV5MH3soQfPL5bQ0Yg==", - "requires": { - "chownr": "1.0.1", - "mkdirp": "0.5.1", - "pump": "1.0.3", - "tar-stream": "1.5.5" - } - }, - "tar-stream": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", - "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", - "requires": { - "bl": "1.2.1", - "end-of-stream": "1.4.0", - "readable-stream": "2.3.3", - "xtend": "4.0.1" + "nan": "2.8.0", + "prebuild-install": "2.4.1" } }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "secp256k1": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.2.5.tgz", + "integrity": "sha1-Dd5bJ+UCFmX23/ynssPgEMbBPJM=", "requires": { - "safe-buffer": "5.1.1" + "bindings": "1.3.0", + "bip66": "1.1.5", + "bn.js": "4.11.8", + "create-hash": "1.1.3", + "drbg.js": "1.0.1", + "elliptic": "6.4.0", + "nan": "2.8.0", + "prebuild-install": "2.4.1" } }, - "unzip-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", - "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, "uuid": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.0.0.tgz", "integrity": "sha1-Zyj8BFnEUNeWqZwxg3VpvfZy1yg=" - }, - "wide-align": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", - "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", - "requires": { - "string-width": "1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" } } }, @@ -9682,17 +6621,26 @@ "invert-kv": "1.0.0" } }, + "level": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/level/-/level-2.1.1.tgz", + "integrity": "sha512-jhsItEs/L5bf5ctKsvIPcMzeh4nwXxnL3Tsxm4E9My07jcFfqEYwKP57Y9AZu7tmtECdyK6bvCqoClwuOBuY9w==", + "requires": { + "level-packager": "2.1.0", + "leveldown": "2.1.1" + } + }, "level-codec": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.0.tgz", - "integrity": "sha1-x1W2jQ1E/6Cxy6BEuPgaVaFK05s=" + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", + "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==" }, "level-errors": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.1.2.tgz", "integrity": "sha512-Sw/IJwWbPKF5Ai4Wz60B52yj0zYeqzObLh8k1Tk88jVmD51cJSKWSYpRyhVIvFzZdvsPqlH5wfhp/yxdsaQH4w==", "requires": { - "errno": "0.1.4" + "errno": "0.1.6" } }, "level-iterator-stream": { @@ -9718,16 +6666,6 @@ "xtend": "2.1.2" }, "dependencies": { - "object-keys": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", - "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" - }, - "typedarray-to-buffer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-1.0.4.tgz", - "integrity": "sha1-m7i6DoQfs/TPH+fCRenz+opf6Zw=" - }, "xtend": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", @@ -9738,6 +6676,15 @@ } } }, + "level-packager": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/level-packager/-/level-packager-2.1.0.tgz", + "integrity": "sha512-I97zvGOZ6fJ9OFfYv+QmgBpDWbC+UaP5ERJ3oraTyk1v+ABAL4tazris5ym5qL2iLe+qNjXNM/iP8LQcoZMEWw==", + "requires": { + "encoding-down": "3.0.1", + "levelup": "2.0.1" + } + }, "level-write-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/level-write-stream/-/level-write-stream-1.0.0.tgz", @@ -9747,29 +6694,24 @@ } }, "leveldown": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-1.5.0.tgz", - "integrity": "sha1-a408vqekqJqkdERgfXNYIT5vy4E=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-2.1.1.tgz", + "integrity": "sha512-JNMCTSchq1YtQLMGePmT07UE7hIIYR4GHpZI7+nUXbM9XgNtRAwcBGhnyJyITwpTILTkUcNPBKZ9lZmTUj2E3g==", "requires": { - "abstract-leveldown": "2.6.3", - "bindings": "1.2.1", + "abstract-leveldown": "3.0.0", + "bindings": "1.3.0", "fast-future": "1.0.2", - "nan": "2.4.0", - "prebuild": "4.5.0" + "nan": "2.8.0", + "prebuild-install": "2.4.1" }, "dependencies": { "abstract-leveldown": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", - "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-3.0.0.tgz", + "integrity": "sha512-KUWx9UWGQD12zsmLNj64/pndaz4iJh/Pj7nopgkfDG6RlCcbMZvT6+9l7dchK4idog2Is8VdC/PvNbFuFmalIQ==", "requires": { "xtend": "4.0.1" } - }, - "nan": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.4.0.tgz", - "integrity": "sha1-+zxZ1F/k7/4hXwuJD4rfbrMtIjI=" } } }, @@ -9801,6 +6743,13 @@ "parse-json": "2.2.0", "pify": "2.3.0", "strip-bom": "3.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } } }, "loader-runner": { @@ -9906,21 +6855,6 @@ "lodash.isarray": "3.0.4" } }, - "lodash.pad": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-4.5.1.tgz", - "integrity": "sha1-QzCUmoM6fI2iLMIPaibE1Z3runA=" - }, - "lodash.padend": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.6.1.tgz", - "integrity": "sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4=" - }, - "lodash.padstart": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.6.1.tgz", - "integrity": "sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs=" - }, "loglevel": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.0.tgz", @@ -9967,26 +6901,37 @@ "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.0.tgz", "integrity": "sha1-tlul/LNJopkkyOMz98alVi8uSEI=" }, + "m3u8-parser": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/m3u8-parser/-/m3u8-parser-2.1.0.tgz", + "integrity": "sha1-yBcDKewc1RXQ1Yu4t2LamJbLA2g=" + }, "make-dir": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.1.0.tgz", - "integrity": "sha1-GbQ2n+SMEW9Twq+VrRAsDjnoXVE=", + "integrity": "sha512-0Pkui4wLJ7rxvmfUvs87skoEaxmu0hCUApF8nonzpl7q//FWp9zu8W61Scz4sd/kUiqDxvUhtoam2efDyiBzcA==", "requires": { "pify": "3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } } }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, "map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "1.0.1" + } + }, "math-clamp-x": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/math-clamp-x/-/math-clamp-x-1.2.0.tgz", @@ -10029,6 +6974,11 @@ } } }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, "mem": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", @@ -10042,7 +6992,7 @@ "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", "requires": { - "errno": "0.1.4", + "errno": "0.1.6", "readable-stream": "2.3.3" } }, @@ -10112,6 +7062,11 @@ "pinkie-promise": "2.0.1" } }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, "read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", @@ -10141,6 +7096,25 @@ } } }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "metamask-logo": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/metamask-logo/-/metamask-logo-2.1.3.tgz", + "integrity": "sha1-F1zleuUMc0Szsdwy0v0LCOOXj9A=", + "requires": { + "gl-mat4": "1.1.4", + "gl-vec3": "1.0.3" + } + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, "micromatch": { "version": "2.3.11", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", @@ -10171,9 +7145,9 @@ } }, "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" }, "mime-db": { "version": "1.30.0", @@ -10211,6 +7185,11 @@ "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -10224,6 +7203,25 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" }, + "mixin-deep": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.0.tgz", + "integrity": "sha512-dgaCvoh6i1nosAUBKb0l0pfJ78K8+S9fluyIR2YvAeUD/QuMahnFnF3xYty5eYXMjhGSsB0DsW6A0uAZyetoAg==", + "requires": { + "for-in": "1.0.2", + "is-extendable": "1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "2.0.4" + } + } + } + }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", @@ -10298,7 +7296,7 @@ "mock-fs": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.4.2.tgz", - "integrity": "sha1-Cd7FMT+XCVpFC+aqKtirZzjWPWs=" + "integrity": "sha512-dF+yxZSojSiI8AXGoxj5qdFWpucndc54Ug+TwlpHFaV7j22MGG+OML2+FVa6xAZtjb/OFFQhOC37Jegx2GbEwA==" }, "mout": { "version": "0.11.1", @@ -10313,7 +7311,7 @@ "multicast-dns": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.1.tgz", - "integrity": "sha1-xQNd76khnTBkBVikkpgGc1IJgGA=", + "integrity": "sha512-uV3/ckdsffHx9IrGQrx613mturMdMqQ06WTq+C09NsStJ9iNG6RcUWgPKs1Rfjy+idZT6tfQoXEusGNnEZhT3w==", "requires": { "dns-packet": "1.2.2", "thunky": "0.1.0" @@ -10324,6 +7322,11 @@ "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" }, + "mux.js": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/mux.js/-/mux.js-4.3.2.tgz", + "integrity": "sha512-g0q6DPdvb3yYcoK7ElBGobdSSrhY/RjPt19U7uUc733aqvc5bCS/aCvL9z+448y+IoCZnYDwyZfQBBXMSmGOaQ==" + }, "mysql": { "version": "2.15.0", "resolved": "https://registry.npmjs.org/mysql/-/mysql-2.15.0.tgz", @@ -10345,7 +7348,7 @@ "mz": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha1-lQCAV6Vsr63CvGPd5/n/aVWUjjI=", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", "requires": { "any-promise": "1.3.0", "object-assign": "4.1.1", @@ -10367,11 +7370,54 @@ "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" }, + "nanomatch": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.7.tgz", + "integrity": "sha512-/5ldsnyurvEw7wNpxLFgjVvBLMta43niEYOy0CJ4ntcYSbx6bugRUTQeFb4BR/WanEL1o3aQgHuVLHQaB6tOqg==", + "requires": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "define-property": "1.0.0", + "extend-shallow": "2.0.1", + "fragment-cache": "0.2.1", + "is-odd": "1.0.0", + "kind-of": "5.1.0", + "object.pick": "1.3.0", + "regex-not": "1.0.0", + "snapdragon": "0.8.1", + "to-regex": "3.0.1" + }, + "dependencies": { + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, "negotiator": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" }, + "node-abi": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.1.2.tgz", + "integrity": "sha512-hmUtb8m75RSi7N+zZLYqe75XDvZB+6LyTBPkj2DConvNgQet2e3BIqEwe1LLvqMrfyjabuT5ZOrTioLCH1HTdA==", + "requires": { + "semver": "5.4.1" + } + }, "node-fetch": { "version": "1.7.3", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", @@ -10404,6 +7450,11 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-0.8.1.tgz", "integrity": "sha1-IP9NJvXkIstoobrLu2EDmtjBwTA=" }, + "eventemitter3": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-0.1.6.tgz", + "integrity": "sha1-jHrES4e6q1XNUMgo3Dh3jqwFLqU=" + }, "qs": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/qs/-/qs-1.2.2.tgz", @@ -10411,33 +7462,6 @@ } } }, - "node-gyp": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz", - "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=", - "requires": { - "fstream": "1.0.11", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "nopt": "3.0.6", - "npmlog": "2.0.4", - "osenv": "0.1.4", - "request": "2.83.0", - "rimraf": "2.6.2", - "semver": "5.3.0", - "tar": "2.2.1", - "which": "1.3.0" - }, - "dependencies": { - "semver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" - } - } - }, "node-libs-browser": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", @@ -10468,40 +7492,11 @@ "vm-browserify": "0.0.4" } }, - "node-ninja": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/node-ninja/-/node-ninja-1.0.2.tgz", - "integrity": "sha1-IKCeV7kuLfWRmT1L8JisPnJwYrY=", - "requires": { - "fstream": "1.0.11", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "nopt": "3.0.6", - "npmlog": "2.0.4", - "osenv": "0.1.4", - "path-array": "1.0.1", - "request": "2.83.0", - "rimraf": "2.6.2", - "semver": "5.4.1", - "tar": "2.2.1", - "which": "1.3.0" - } - }, "noop-logger": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "requires": { - "abbrev": "1.1.1" - } - }, "normalize-package-data": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", @@ -10540,13 +7535,14 @@ } }, "npmlog": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz", - "integrity": "sha1-mLUlMPJRTKkNCexbIsiEZyI3VpI=", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "requires": { - "ansi": "0.3.1", "are-we-there-yet": "1.1.4", - "gauge": "1.2.7" + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" } }, "number-is-nan": { @@ -10585,6 +7581,59 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "0.1.1", + "define-property": "0.2.5", + "kind-of": "3.2.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + } + } + }, "object-get-own-property-descriptor-x": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/object-get-own-property-descriptor-x/-/object-get-own-property-descriptor-x-3.2.0.tgz", @@ -10608,9 +7657,24 @@ "integrity": "sha1-9RV8EWwUVbJDsG7pdwM5LFrYn+w=" }, "object-keys": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", - "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=" + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } + } }, "object.omit": { "version": "2.0.1", @@ -10621,6 +7685,21 @@ "is-extendable": "0.1.1" } }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "requires": { + "isobject": "3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } + } + }, "oboe": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.3.tgz", @@ -10634,6 +7713,14 @@ "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.1.tgz", "integrity": "sha1-EEEktsYCxnlogaBCVB0220OlJk4=" }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, "on-headers": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", @@ -10650,7 +7737,7 @@ "opn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.1.0.tgz", - "integrity": "sha1-cs4jBqF9vqWP8QQYUzUrSo/HdRk=", + "integrity": "sha512-iPNl7SyM8L30Rm1sjGdLLheyHVw5YXVfi3SKWJzBI7efxRwHojfRFjwE/OLM6qp9xJYMgab8WicTU1cPoY+Hpg==", "requires": { "is-wsl": "1.1.0" } @@ -10702,21 +7789,24 @@ "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true }, - "osenv": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", - "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=", + "output-file-sync": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", + "integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=", + "dev": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "graceful-fs": "4.1.11", + "mkdirp": "0.5.1", + "object-assign": "4.1.1" } }, "p-cancelable": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "integrity": "sha1-ueEjgAvOu3rBOkeb4ZW1B7mNMPo=" + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==" }, "p-finally": { "version": "1.0.0", @@ -10724,22 +7814,25 @@ "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" }, "p-limit": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz", - "integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", + "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "requires": { + "p-try": "1.0.0" + } }, "p-locate": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "requires": { - "p-limit": "1.1.0" + "p-limit": "1.2.0" } }, "p-map": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", - "integrity": "sha1-5OlPMR6rvIYzoeeZCBZfyiYkG2s=" + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==" }, "p-timeout": { "version": "1.2.1", @@ -10749,6 +7842,11 @@ "p-finally": "1.0.0" } }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" + }, "pako": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", @@ -10810,6 +7908,11 @@ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + }, "passport": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/passport/-/passport-0.3.2.tgz", @@ -10817,18 +7920,6 @@ "requires": { "passport-strategy": "1.0.0", "pause": "0.0.1" - }, - "dependencies": { - "passport-strategy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", - "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=" - }, - "pause": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", - "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10=" - } } }, "passport-github": { @@ -10837,39 +7928,6 @@ "integrity": "sha1-jOHj/NYa11eOsd9ZWDnkrqEjVdQ=", "requires": { "passport-oauth2": "1.4.0" - }, - "dependencies": { - "oauth": { - "version": "0.9.15", - "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", - "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=" - }, - "passport-oauth2": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.4.0.tgz", - "integrity": "sha1-9i+BWDy+EmCb585vFguTlaJ7hq0=", - "requires": { - "oauth": "0.9.15", - "passport-strategy": "1.0.0", - "uid2": "0.0.3", - "utils-merge": "1.0.1" - } - }, - "passport-strategy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", - "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=" - }, - "uid2": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", - "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" - } } }, "passport-github2": { @@ -10896,24 +7954,27 @@ "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=" }, - "path-array": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-array/-/path-array-1.0.1.tgz", - "integrity": "sha1-fi8PNfB6IBUSK4aLfqwOssT+wnE=", - "requires": { - "array-index": "1.0.0" - } - }, "path-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + }, "path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" }, + "path-extra": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/path-extra/-/path-extra-1.0.3.tgz", + "integrity": "sha1-fBEhiablDVlXkOetIDfkTkEMEWY=", + "dev": true + }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -10930,19 +7991,9 @@ "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" }, "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - } - } + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" }, "path-type": { "version": "2.0.0", @@ -10950,8 +8001,20 @@ "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", "requires": { "pify": "2.3.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } } }, + "pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10=" + }, "pbkdf2": { "version": "3.0.14", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", @@ -10970,14 +8033,14 @@ "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" }, "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", + "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=" }, "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" }, "pinkie": { "version": "2.0.4", @@ -10992,6 +8055,11 @@ "pinkie": "2.0.4" } }, + "pkcs7": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/pkcs7/-/pkcs7-0.2.3.tgz", + "integrity": "sha1-ItYGZtAQZcXyRDkJjkpIMEUic74=" + }, "pkg-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", @@ -11018,29 +8086,35 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { "ms": "2.0.0" } } } }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + }, "pouchdb": { - "version": "6.3.4", - "resolved": "https://registry.npmjs.org/pouchdb/-/pouchdb-6.3.4.tgz", - "integrity": "sha512-+DSs6ipqj/SCIbEmIE6GZXYzem6YLkXPd2WBkoss5kM8P6VyNy8HUiQiYm6+NhLfchby941duXSWsejlqCuEYw==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/pouchdb/-/pouchdb-6.4.1.tgz", + "integrity": "sha512-7YrhsBXbQh/iPA8O5Nzixi9QigaQJjqbbCFr+D7Kc258oeXNW9a0t/tOME1Lh84TJiFRuN9982FGVnrBrUhLiA==", "requires": { "argsarray": "0.0.1", "buffer-from": "0.1.1", "clone-buffer": "1.0.0", - "debug": "2.6.4", + "debug": "3.0.1", "double-ended-queue": "2.1.0-0", "immediate": "3.0.6", "inherits": "2.0.3", - "level-codec": "7.0.0", + "level": "2.1.1", + "level-codec": "7.0.1", "level-write-stream": "1.0.0", - "leveldown": "1.5.0", - "levelup": "1.3.8", + "leveldown": "2.1.1", + "levelup": "2.0.1", "lie": "3.1.1", "ltgt": "2.2.0", "readable-stream": "1.0.33", @@ -11051,113 +8125,12 @@ "vuvuzela": "1.0.3" }, "dependencies": { - "abstract-leveldown": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", - "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", - "requires": { - "xtend": "4.0.1" - } - }, - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=" - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=" - }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "requires": { - "hoek": "2.16.3" - } - }, - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "requires": { - "boom": "2.10.1" - } - }, "debug": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.4.tgz", - "integrity": "sha1-dYaps8OXQcAoKuM0RcTorHRzT+A=", - "requires": { - "ms": "0.7.3" - } - }, - "deferred-leveldown": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", - "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", - "requires": { - "abstract-leveldown": "2.6.3" - } - }, - "form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.17" - } - }, - "har-schema": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", - "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=" - }, - "har-validator": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", - "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", - "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" - } - }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" - } - }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" - }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.0.1.tgz", + "integrity": "sha512-6nVc6S36qbt/mutyt+UGMnawAMrPDZUPQjRZI3FS9tCtDRhvxJbK79unYBLPi+z5SLXQ3ftoVBFCblQtNSls8w==", "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.1", - "sshpk": "1.13.1" + "ms": "2.0.0" } }, "isarray": { @@ -11165,61 +8138,6 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" }, - "level-errors": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", - "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", - "requires": { - "errno": "0.1.4" - } - }, - "level-iterator-stream": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", - "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", - "requires": { - "inherits": "2.0.3", - "level-errors": "1.0.5", - "readable-stream": "1.0.33", - "xtend": "4.0.1" - } - }, - "levelup": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.8.tgz", - "integrity": "sha1-+0QsSI776hBD9+uZKaeSp0+9HaY=", - "requires": { - "deferred-leveldown": "1.2.2", - "level-codec": "6.1.0", - "level-errors": "1.0.5", - "level-iterator-stream": "1.3.1", - "prr": "1.0.1", - "semver": "5.1.1", - "xtend": "4.0.1" - }, - "dependencies": { - "level-codec": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-6.1.0.tgz", - "integrity": "sha1-9d8KmVgvdtrEOFUVGrb05NDWAEU=" - } - } - }, - "ms": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.3.tgz", - "integrity": "sha1-cIFVpeROM/X9D8U+gdDUCpG+H/8=" - }, - "performance-now": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", - "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=" - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" - }, "qs": { "version": "6.3.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", @@ -11264,19 +8182,6 @@ "uuid": "3.1.0" } }, - "semver": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.1.tgz", - "integrity": "sha1-oykqNz5vPgeY2gsgZBuanFvEfhk=" - }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "requires": { - "hoek": "2.16.3" - } - }, "string_decoder": { "version": "0.10.31", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", @@ -11289,36 +8194,27 @@ } } }, - "prebuild": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/prebuild/-/prebuild-4.5.0.tgz", - "integrity": "sha1-KqoN8gY7/4FKgDvU3JT/m2Tl3wA=", + "prebuild-install": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.4.1.tgz", + "integrity": "sha512-99TyEFYTTkBWANT+mwSptmLb9ZCLQ6qKIUE36fXSIOtShB0JNprL2hzBD8F1yIuT9btjFrFEwbRHXhqDi1HmRA==", "requires": { - "async": "1.5.2", - "execspawn": "1.0.1", "expand-template": "1.1.0", - "ghreleases": "1.0.6", "github-from-package": "0.0.0", "minimist": "1.2.0", "mkdirp": "0.5.1", - "node-gyp": "3.6.2", - "node-ninja": "1.0.2", + "node-abi": "2.1.2", "noop-logger": "0.1.1", - "npmlog": "2.0.4", + "npmlog": "4.1.2", "os-homedir": "1.0.2", "pump": "1.0.3", - "rc": "1.2.2", + "rc": "1.2.3", "simple-get": "1.4.3", "tar-fs": "1.16.0", - "tar-stream": "1.5.5", + "tunnel-agent": "0.6.0", "xtend": "4.0.1" }, "dependencies": { - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" - }, "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", @@ -11339,7 +8235,8 @@ "private": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true }, "process": { "version": "0.11.10", @@ -11386,10 +8283,19 @@ "to-property-key-x": "2.0.2" } }, + "proxy-addr": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz", + "integrity": "sha1-ZXFQT0e7mI7IGAJT+F3X4UlSvew=", + "requires": { + "forwarded": "0.1.2", + "ipaddr.js": "1.5.2" + } + }, "prr": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz", - "integrity": "sha1-GoS4WQgyVQFBGFPQCB7j+obikmo=" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" }, "pseudomap": { "version": "1.0.2", @@ -11455,6 +8361,11 @@ "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-0.0.4.tgz", "integrity": "sha1-DPf4T5Rj/wrlHExLFC2VvjdyTZw=" }, + "random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=" + }, "randomatic": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", @@ -11519,10 +8430,21 @@ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" }, + "raw-body": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", + "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "unpipe": "1.0.0" + } + }, "rc": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.2.tgz", - "integrity": "sha1-2M6ctX6NZNnHut2YdsfDTL48cHc=", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.3.tgz", + "integrity": "sha1-UVdakA+N1oOBxxC0cSwhVMPiA1s=", "requires": { "deep-extend": "0.4.2", "ini": "1.3.5", @@ -11549,18 +8471,20 @@ } }, "react-bootstrap": { - "version": "0.31.5", - "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.5.tgz", - "integrity": "sha1-VwQPqLEnTh4HSAPCGhuJX9q+oFo=", + "version": "0.32.0", + "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.32.0.tgz", + "integrity": "sha512-AbWq1qjDpuYZzXSF0N6oXwwlWa1MWNEhqH/d5I51Q4AN/zn8oTBqx7HgIICR0Jk6xGy76LzJQGr+31VP3ehfVw==", "requires": { "babel-runtime": "6.26.0", "classnames": "2.2.5", - "dom-helpers": "3.2.1", + "dom-helpers": "3.3.1", "invariant": "2.2.2", "keycode": "2.1.9", "prop-types": "15.6.0", "prop-types-extra": "1.0.1", - "react-overlays": "0.7.4", + "react-overlays": "0.8.3", + "react-prop-types": "0.4.0", + "react-transition-group": "2.2.1", "uncontrollable": "4.1.0", "warning": "3.0.0" } @@ -11620,6 +8544,47 @@ } } }, + "react-hls": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/react-hls/-/react-hls-0.0.7.tgz", + "integrity": "sha1-nq6PaU2T2lII/NO7rJ9lqSdIrbA=", + "requires": { + "hls.js": "0.6.21", + "prop-types": "15.6.0", + "react": "15.6.2", + "react-dom": "15.6.2" + }, + "dependencies": { + "hls.js": { + "version": "0.6.21", + "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-0.6.21.tgz", + "integrity": "sha1-nZEAgCmXTEc34IoVGj9PDdQIupM=" + }, + "react": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/react/-/react-15.6.2.tgz", + "integrity": "sha1-26BDSrQ5z+gvEI8PURZjkIF5qnI=", + "requires": { + "create-react-class": "15.6.2", + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + }, + "react-dom": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-15.6.2.tgz", + "integrity": "sha1-Qc+t9pO3V/rycIRDodH9WgK+9zA=", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + } + } + } + }, "react-icon-base": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/react-icon-base/-/react-icon-base-2.1.0.tgz", @@ -11634,21 +8599,30 @@ } }, "react-overlays": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz", - "integrity": "sha1-7y7GUsNESriqAUJisY9mIGjlbVw=", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.8.3.tgz", + "integrity": "sha512-h6GT3jgy90PgctleP39Yu3eK1v9vaJAW73GOA/UbN9dJ7aAN4BTZD6793eI1D5U+ukMk17qiqN/wl3diK1Z5LA==", "requires": { "classnames": "2.2.5", - "dom-helpers": "3.2.1", + "dom-helpers": "3.3.1", "prop-types": "15.6.0", "prop-types-extra": "1.0.1", + "react-transition-group": "2.2.1", + "warning": "3.0.0" + } + }, + "react-prop-types": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/react-prop-types/-/react-prop-types-0.4.0.tgz", + "integrity": "sha1-+ZsL+0AGkpya8gUefBQUpcdbk9A=", + "requires": { "warning": "3.0.0" } }, "react-redux": { "version": "5.0.6", "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-5.0.6.tgz", - "integrity": "sha1-I+06T5hjWdaLUhLqqmgeYNZXSUY=", + "integrity": "sha512-8taaaGu+J7PMJQDJrk/xiWEYQmdo3mkXw6wPr3K3LxvXis3Fymiq7c13S+Tpls/AyNUAsoONkU81AP0RA6y6Vw==", "requires": { "hoist-non-react-statics": "2.3.1", "invariant": "2.2.2", @@ -11661,7 +8635,7 @@ "react-router": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/react-router/-/react-router-4.2.0.tgz", - "integrity": "sha1-Yfez43cNrrJAYtrj7t7xsFQVWYY=", + "integrity": "sha512-DY6pjwRhdARE4TDw7XjxjZsbx9lKmIcyZoZ+SDO7SBJ1KUeWNxT22Kara2AC7u6/c2SYEHlEDLnzBCcNhLE8Vg==", "requires": { "history": "4.7.2", "hoist-non-react-statics": "2.3.1", @@ -11670,6 +8644,21 @@ "path-to-regexp": "1.7.0", "prop-types": "15.6.0", "warning": "3.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "requires": { + "isarray": "0.0.1" + } + } } }, "react-router-bootstrap": { @@ -11683,7 +8672,7 @@ "react-router-dom": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.2.2.tgz", - "integrity": "sha1-yKgd863Fi7qKdngulGy9Tq5km40=", + "integrity": "sha512-cHMFC1ZoLDfEaMFoKTjN7fry/oczMgRt5BKfMAkTu5zEuJvUiPp1J8d0eXSVTnBh6pxlbdqDhozunOOLtmKfPA==", "requires": { "history": "4.7.2", "invariant": "2.2.2", @@ -11698,6 +8687,19 @@ "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-4.0.8.tgz", "integrity": "sha1-InQDWWtRUeGCN32rg1tdRfD4BU4=" }, + "react-transition-group": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-2.2.1.tgz", + "integrity": "sha512-q54UBM22bs/CekG8r3+vi9TugSqh0t7qcEVycaRc9M0p0aCEu+h6rp/RFiW7fHfgd1IKpd9oILFTl5QK+FpiPA==", + "requires": { + "chain-function": "1.0.0", + "classnames": "2.2.5", + "dom-helpers": "3.3.1", + "loose-envify": "1.3.1", + "prop-types": "15.6.0", + "warning": "3.0.0" + } + }, "read-pkg": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", @@ -11754,7 +8756,7 @@ "redux": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/redux/-/redux-3.7.2.tgz", - "integrity": "sha1-BrcxIyFZAdJdBlvjQusCa8HIU3s=", + "integrity": "sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A==", "requires": { "lodash": "4.17.4", "lodash-es": "4.17.4", @@ -11770,17 +8772,19 @@ "regenerate": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", - "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==" + "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==", + "dev": true }, "regenerator-runtime": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=" + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" }, "regenerator-transform": { "version": "0.10.1", "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", + "dev": true, "requires": { "babel-runtime": "6.26.0", "babel-types": "6.26.0", @@ -11795,10 +8799,19 @@ "is-equal-shallow": "0.1.3" } }, + "regex-not": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.0.tgz", + "integrity": "sha1-Qvg+OXcWIt+CawKvF2Ul1qXxV/k=", + "requires": { + "extend-shallow": "2.0.1" + } + }, "regexpu-core": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true, "requires": { "regenerate": "1.3.3", "regjsgen": "0.2.0", @@ -11808,14 +8821,24 @@ "regjsgen": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=" + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true }, "regjsparser": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, "requires": { "jsesc": "0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } } }, "remove-trailing-separator": { @@ -11870,682 +8893,316 @@ "json-stringify-safe": "5.0.1", "mime-types": "2.1.17", "oauth-sign": "0.8.2", - "performance-now": "2.1.0", - "qs": "6.5.1", - "safe-buffer": "5.1.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.3", - "tunnel-agent": "0.6.0", - "uuid": "3.1.0" - } - }, - "request-promise": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.2.tgz", - "integrity": "sha1-0epG1lSm7k+O5qT+oQGMIpEZBLQ=", - "requires": { - "bluebird": "3.5.1", - "request-promise-core": "1.1.1", - "stealthy-require": "1.1.1", - "tough-cookie": "2.3.3" - } - }, - "request-promise-core": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", - "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", - "requires": { - "lodash": "4.17.4" - } - }, - "require-coercible-to-string-x": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/require-coercible-to-string-x/-/require-coercible-to-string-x-1.0.0.tgz", - "integrity": "sha512-Rpfd4sMdflPAKecdKhfAtQHlZzzle4UMUgxJ01hXtTcNWMV8w9GeZnKhEyrT73kgrflBOP1zg41amUPZGcNspA==", - "requires": { - "require-object-coercible-x": "1.4.1", - "to-string-x": "1.4.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "require-from-string": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", - "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=" - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" - }, - "require-object-coercible-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/require-object-coercible-x/-/require-object-coercible-x-1.4.1.tgz", - "integrity": "sha512-0YHa2afepsLfQvwQ1P2XvDZnGOUia5sC07ZijIRU2dnsRxnuilXWF6B2CFaKGDA9eZl39lJHrXCDsnfgroRd6Q==", - "requires": { - "is-nil-x": "1.4.1" - } - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "requires": { - "resolve-from": "3.0.0" - } - }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" - }, - "resolve-pathname": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz", - "integrity": "sha1-fpriHtgV/WOrGJre7mTcgx7vqHk=" - }, - "resumer": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", - "integrity": "sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k=", - "requires": { - "through": "2.3.8" - } - }, - "right-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "requires": { - "align-text": "0.1.4" - } - }, - "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "requires": { - "glob": "7.1.2" - } - }, - "ripemd160": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", - "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", - "requires": { - "hash-base": "2.0.2", - "inherits": "2.0.3" - } - }, - "rlp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.0.0.tgz", - "integrity": "sha1-nbOE/0uJqPYVY9kjldhiWxjzr7A=" - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" - }, - "scrypt": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/scrypt/-/scrypt-6.0.3.tgz", - "integrity": "sha1-BOAUpWgrU/pQwtXM4WfXGcBthw0=", - "requires": { - "nan": "2.8.0" - } - }, - "scrypt-async": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/scrypt-async/-/scrypt-async-1.3.1.tgz", - "integrity": "sha1-oR/W+smBtLgj7gHe4CIRaVAN2uk=" - }, - "scrypt.js": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/scrypt.js/-/scrypt.js-0.2.0.tgz", - "integrity": "sha1-r40UZbcemZARC+38WTuUeeA6ito=", - "requires": { - "scrypt": "6.0.3", - "scryptsy": "1.2.1" - } - }, - "scryptsy": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-1.2.1.tgz", - "integrity": "sha1-oyJfpLJST4AnAHYeKFW987LZIWM=", - "requires": { - "pbkdf2": "3.0.14" - } - }, - "secp256k1": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.2.5.tgz", - "integrity": "sha1-Dd5bJ+UCFmX23/ynssPgEMbBPJM=", - "requires": { - "bindings": "1.3.0", - "bip66": "1.1.5", - "bn.js": "4.11.8", - "create-hash": "1.1.3", - "drbg.js": "1.0.1", - "elliptic": "6.4.0", - "nan": "2.8.0", - "prebuild-install": "2.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", - "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", - "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.3" - } - }, - "bindings": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", - "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" - }, - "bip66": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz", - "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", - "requires": { - "safe-buffer": "5.1.1" - } - }, - "bl": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", - "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", - "requires": { - "readable-stream": "2.3.3" - } - }, - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" - }, - "browserify-aes": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.1.tgz", - "integrity": "sha512-UGnTYAnB2a3YuYKIRy1/4FB2HdM866E0qC46JXvVTYKlBlZlnvfpSfY6OKfXZAkv70eJ2a1SqzpAo5CRhZGDFg==", - "requires": { - "buffer-xor": "1.0.3", - "cipher-base": "1.0.4", - "create-hash": "1.1.3", - "evp_bytestokey": "1.0.3", - "inherits": "2.0.3", - "safe-buffer": "5.1.1" - } - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" - }, - "chownr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", - "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "create-hash": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=", - "requires": { - "cipher-base": "1.0.4", - "inherits": "2.0.3", - "ripemd160": "2.0.1", - "sha.js": "2.4.9" - } - }, - "create-hmac": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", - "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=", - "requires": { - "cipher-base": "1.0.4", - "create-hash": "1.1.3", - "inherits": "2.0.3", - "ripemd160": "2.0.1", - "safe-buffer": "5.1.1", - "sha.js": "2.4.9" - } - }, - "deep-extend": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", - "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" - }, - "delegates": { + "performance-now": "2.1.0", + "qs": "6.5.1", + "safe-buffer": "5.1.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.3", + "tunnel-agent": "0.6.0", + "uuid": "3.1.0" + }, + "dependencies": { + "assert-plus": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "drbg.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", - "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", - "requires": { - "browserify-aes": "1.1.1", - "create-hash": "1.1.3", - "create-hmac": "1.1.6" - } - }, - "end-of-stream": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", - "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", - "requires": { - "once": "1.4.0" - } - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "requires": { - "md5.js": "1.3.4", - "safe-buffer": "5.1.1" - } - }, - "expand-template": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz", - "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==" - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "hash-base": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", - "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=", - "requires": { - "inherits": "2.0.3" - } + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "boom": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", + "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", "requires": { - "number-is-nan": "1.0.1" + "hoek": "4.2.0" } }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "md5.js": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", - "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "cryptiles": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", + "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", "requires": { - "hash-base": "3.0.4", - "inherits": "2.0.3" + "boom": "5.2.0" }, "dependencies": { - "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "boom": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", + "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "hoek": "4.2.0" } } } }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - } - } - }, - "nan": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", - "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" - }, - "node-abi": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.1.2.tgz", - "integrity": "sha512-hmUtb8m75RSi7N+zZLYqe75XDvZB+6LyTBPkj2DConvNgQet2e3BIqEwe1LLvqMrfyjabuT5ZOrTioLCH1HTdA==", - "requires": { - "semver": "5.4.1" - } - }, - "noop-logger": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", - "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "prebuild-install": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.3.0.tgz", - "integrity": "sha512-gzjq2oHB8oMbzJSsSh9MQ64zrXZGt092/uT4TLZlz2qnrPxpWqp4vYB7LZrDxnlxf5RfbCjkgDI/z0EIVuYzAw==", - "requires": { - "expand-template": "1.1.0", - "github-from-package": "0.0.0", - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "node-abi": "2.1.2", - "noop-logger": "0.1.1", - "npmlog": "4.1.2", - "os-homedir": "1.0.2", - "pump": "1.0.3", - "rc": "1.2.2", - "simple-get": "1.4.3", - "tar-fs": "1.16.0", - "tunnel-agent": "0.6.0", - "xtend": "4.0.1" - } - }, - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" - }, - "pump": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", - "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", - "requires": { - "end-of-stream": "1.4.0", - "once": "1.4.0" - } - }, - "rc": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.2.tgz", - "integrity": "sha1-2M6ctX6NZNnHut2YdsfDTL48cHc=", - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - } - }, - "readable-stream": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "safe-buffer": "5.1.1", - "string_decoder": "1.0.3", - "util-deprecate": "1.0.2" - } - }, - "ripemd160": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", - "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", + "form-data": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz", + "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=", "requires": { - "hash-base": "2.0.2", - "inherits": "2.0.3" + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.17" } }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" - }, - "semver": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" - }, - "set-blocking": { + "har-schema": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "sha.js": { - "version": "2.4.9", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.9.tgz", - "integrity": "sha512-G8zektVqbiPHrylgew9Zg1VRB1L/DtXNUVAM6q4QLy8NE3qtHlFXTf8VLL4k1Yl6c7NMjtZUTdXV+X44nFaT6A==", - "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" - } - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "simple-get": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", - "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", - "requires": { - "once": "1.4.0", - "unzip-response": "1.0.2", - "xtend": "4.0.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "requires": { - "safe-buffer": "5.1.1" - } + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", "requires": { - "ansi-regex": "2.1.1" + "ajv": "5.5.2", + "har-schema": "2.0.0" } }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "tar-fs": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.0.tgz", - "integrity": "sha512-I9rb6v7mjWLtOfCau9eH5L7sLJyU2BnxtEZRQ5Mt+eRKmf1F0ohXmT/Jc3fr52kDvjJ/HV5MH3soQfPL5bQ0Yg==", + "hawk": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", + "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", "requires": { - "chownr": "1.0.1", - "mkdirp": "0.5.1", - "pump": "1.0.3", - "tar-stream": "1.5.5" + "boom": "4.3.1", + "cryptiles": "3.1.2", + "hoek": "4.2.0", + "sntp": "2.1.0" } }, - "tar-stream": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", - "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", - "requires": { - "bl": "1.2.1", - "end-of-stream": "1.4.0", - "readable-stream": "2.3.3", - "xtend": "4.0.1" - } + "hoek": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz", + "integrity": "sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ==" }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", "requires": { - "safe-buffer": "5.1.1" + "assert-plus": "1.0.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" } }, - "unzip-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", - "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, - "wide-align": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", - "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "sntp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", + "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", "requires": { - "string-width": "1.0.2" + "hoek": "4.2.0" } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" } } }, + "request-promise": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.2.tgz", + "integrity": "sha1-0epG1lSm7k+O5qT+oQGMIpEZBLQ=", + "requires": { + "bluebird": "3.5.1", + "request-promise-core": "1.1.1", + "stealthy-require": "1.1.1", + "tough-cookie": "2.3.3" + } + }, + "request-promise-core": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", + "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", + "requires": { + "lodash": "4.17.4" + } + }, + "require-coercible-to-string-x": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/require-coercible-to-string-x/-/require-coercible-to-string-x-1.0.0.tgz", + "integrity": "sha512-Rpfd4sMdflPAKecdKhfAtQHlZzzle4UMUgxJ01hXtTcNWMV8w9GeZnKhEyrT73kgrflBOP1zg41amUPZGcNspA==", + "requires": { + "require-object-coercible-x": "1.4.1", + "to-string-x": "1.4.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "require-from-string": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", + "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=" + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + }, + "require-object-coercible-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/require-object-coercible-x/-/require-object-coercible-x-1.4.1.tgz", + "integrity": "sha512-0YHa2afepsLfQvwQ1P2XvDZnGOUia5sC07ZijIRU2dnsRxnuilXWF6B2CFaKGDA9eZl39lJHrXCDsnfgroRd6Q==", + "requires": { + "is-nil-x": "1.4.1" + } + }, + "require-resolve": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/require-resolve/-/require-resolve-0.0.2.tgz", + "integrity": "sha1-urQQqxruLz9Vt5MXRR3TQodk5vM=", + "dev": true, + "requires": { + "x-path": "0.0.2" + } + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "requires": { + "resolve-from": "3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" + }, + "resolve-pathname": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz", + "integrity": "sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg==" + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "resumer": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", + "integrity": "sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k=", + "requires": { + "through": "2.3.8" + } + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "requires": { + "align-text": "0.1.4" + } + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "requires": { + "glob": "7.1.2" + } + }, + "ripemd160": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", + "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", + "requires": { + "hash-base": "2.0.2", + "inherits": "2.0.3" + } + }, + "rlp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.0.0.tgz", + "integrity": "sha1-nbOE/0uJqPYVY9kjldhiWxjzr7A=" + }, + "rust-result": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rust-result/-/rust-result-1.0.0.tgz", + "integrity": "sha1-NMdbLm3Dn+WHXlveyFteD5FTb3I=", + "requires": { + "individual": "2.0.0" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "safe-json-parse": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-4.0.0.tgz", + "integrity": "sha1-fA9XjPzNEtM6ccDgVBPi7KFx6qw=", + "requires": { + "rust-result": "1.0.0" + } + }, + "schema-utils": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", + "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", + "requires": { + "ajv": "5.5.2" + } + }, + "scrypt": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/scrypt/-/scrypt-6.0.3.tgz", + "integrity": "sha1-BOAUpWgrU/pQwtXM4WfXGcBthw0=", + "requires": { + "nan": "2.8.0" + } + }, + "scrypt-async": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/scrypt-async/-/scrypt-async-1.3.1.tgz", + "integrity": "sha1-oR/W+smBtLgj7gHe4CIRaVAN2uk=" + }, + "scrypt.js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/scrypt.js/-/scrypt.js-0.2.0.tgz", + "integrity": "sha1-r40UZbcemZARC+38WTuUeeA6ito=", + "requires": { + "scrypt": "6.0.3", + "scryptsy": "1.2.1" + } + }, + "scryptsy": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-1.2.1.tgz", + "integrity": "sha1-oyJfpLJST4AnAHYeKFW987LZIWM=", + "requires": { + "pbkdf2": "3.0.14" + } + }, + "secp256k1": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.4.0.tgz", + "integrity": "sha512-eC120ESQ6MB3gMkxj0PVcSjv/9VtSUmm9uPGNc58yTs93iMCUQZ1xeGPidQMY1z1O4psbCtOxRu3vNqpbuck6Q==", + "requires": { + "bindings": "1.3.0", + "bip66": "1.1.5", + "bn.js": "4.11.8", + "create-hash": "1.1.3", + "drbg.js": "1.0.1", + "elliptic": "6.4.0", + "nan": "2.8.0", + "safe-buffer": "5.1.1" + } + }, "seek-bzip": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", @@ -12582,6 +9239,41 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" }, + "send": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", + "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", + "requires": { + "debug": "2.6.9", + "depd": "1.1.1", + "destroy": "1.0.4", + "encodeurl": "1.0.1", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.3.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" + } + } + }, "sequin": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/sequin/-/sequin-0.1.1.tgz", @@ -12604,23 +9296,34 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { "ms": "2.0.0" } } } }, + "serve-static": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", + "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", + "requires": { + "encodeurl": "1.0.1", + "escape-html": "1.0.3", + "parseurl": "1.3.2", + "send": "0.16.1" + } + }, "servify": { "version": "0.1.12", "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", - "integrity": "sha1-FCq3vuHx0DO2bQcHCGCFsXwG25U=", + "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", "requires": { "body-parser": "1.18.2", "cors": "2.8.4", "express": "4.16.2", "request": "2.83.0", - "xhr": "2.4.0" + "xhr": "2.4.1" } }, "set-blocking": { @@ -12628,11 +9331,30 @@ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, + "set-getter": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/set-getter/-/set-getter-0.1.0.tgz", + "integrity": "sha1-12nBgsnVpR9AkUXy+6guXoboA3Y=", + "requires": { + "to-object-path": "0.3.0" + } + }, "set-immediate-shim": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" }, + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "requires": { + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "split-string": "3.1.0" + } + }, "setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", @@ -12660,79 +9382,174 @@ "nan": "2.8.0" } }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + }, + "sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=" + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "simple-get": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", + "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", + "requires": { + "once": "1.4.0", + "unzip-response": "1.0.2", + "xtend": "4.0.1" + } + }, + "sjcl": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/sjcl/-/sjcl-1.0.6.tgz", + "integrity": "sha1-ZBVGKmPMDUIVxJuuydP6DBtTUg8=" + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "snapdragon": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.1.tgz", + "integrity": "sha1-4StUh/re0+PeoKyR6UAL91tAE3A=", + "requires": { + "base": "0.11.2", + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "map-cache": "0.2.2", + "source-map": "0.5.7", + "source-map-resolve": "0.5.1", + "use": "2.0.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "requires": { - "shebang-regex": "1.0.0" + "define-property": "1.0.0", + "isobject": "3.0.1", + "snapdragon-util": "3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } } }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" - }, - "sigmund": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=" - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "simple-get": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", - "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "requires": { - "once": "1.4.0", - "unzip-response": "1.0.2", - "xtend": "4.0.1" + "kind-of": "3.2.2" } }, - "simple-mime": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/simple-mime/-/simple-mime-0.1.0.tgz", - "integrity": "sha1-lfUXxPRm18/1YacfydqyWW6p7y4=" - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" - }, "sntp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", - "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", + "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", "requires": { - "hoek": "4.2.0" + "hoek": "2.16.3" } }, "sockjs": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.18.tgz", - "integrity": "sha1-2bKJMWyn33dZXvKZ4HXw+TfrQgc=", + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", + "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", "requires": { "faye-websocket": "0.10.0", - "uuid": "2.0.3" - }, - "dependencies": { - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", - "requires": { - "websocket-driver": "0.7.0" - } - }, - "uuid": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", - "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" - } + "uuid": "3.1.0" } }, "sockjs-client": { @@ -12751,17 +9568,25 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { "ms": "2.0.0" } + }, + "faye-websocket": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", + "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", + "requires": { + "websocket-driver": "0.7.0" + } } } }, "solc": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.4.18.tgz", - "integrity": "sha512-Kq+O3PNF9Pfq7fB+lDYAuoqRdghLmZyfngsg0h1Hj38NKAeVHeGPOGeZasn5KqdPeCzbMFvaGyTySxzGv6aXCg==", + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/solc/-/solc-0.4.19.tgz", + "integrity": "sha512-hvi/vi9rQcB73poRLoLRfQIYKwmdhrNbZlOOFCGd5v58gEsYEUr3+oHPSXhyk4CFNchWC2ojpMYrHDJNm0h4jQ==", "requires": { "fs-extra": "0.30.0", "memorystream": "0.3.1", @@ -12832,6 +9657,11 @@ "pinkie-promise": "2.0.1" } }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, "read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", @@ -12921,14 +9751,63 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" }, + "source-map-loader": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.3.tgz", + "integrity": "sha512-MYbFX9DYxmTQFfy2v8FC1XZwpwHKYxg3SK8Wb7VPBKuhDjz8gi9re2819MsG4p49HDyiOSUKlmZ+nQBArW5CGw==", + "dev": true, + "requires": { + "async": "2.6.0", + "loader-utils": "0.2.17", + "source-map": "0.6.1" + }, + "dependencies": { + "loader-utils": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", + "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", + "dev": true, + "requires": { + "big.js": "3.2.0", + "emojis-list": "2.1.0", + "json5": "0.5.1", + "object-assign": "4.1.1" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-resolve": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.1.tgz", + "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==", + "requires": { + "atob": "2.0.3", + "decode-uri-component": "0.2.0", + "resolve-url": "0.2.1", + "source-map-url": "0.4.0", + "urix": "0.1.0" + } + }, "source-map-support": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, "requires": { "source-map": "0.5.7" } }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, "spark-md5": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.0.tgz", @@ -12968,7 +9847,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { "ms": "2.0.0" } @@ -12992,13 +9871,40 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { "ms": "2.0.0" } } } }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "requires": { + "extend-shallow": "3.0.2" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "1.0.0", + "is-extendable": "1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "2.0.4" + } + } + } + }, "sqlstring": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.0.tgz", @@ -13017,12 +9923,95 @@ "getpass": "0.1.7", "jsbn": "0.1.1", "tweetnacl": "0.14.5" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "optional": true + } + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "0.2.5", + "object-copy": "0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } } }, "statuses": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic=" + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" }, "stealthy-require": { "version": "1.1.1", @@ -13113,7 +10102,7 @@ "strip-dirs": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", - "integrity": "sha1-SYdzYmT8NEzyD2w0rKnRPR1O1sU=", + "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", "requires": { "is-natural-number": "4.0.1" } @@ -13145,14 +10134,17 @@ "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" }, "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "requires": { + "has-flag": "2.0.0" + } }, "swarm-js": { "version": "0.1.37", "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.37.tgz", - "integrity": "sha1-J9SFMXo0C77sQCkq94PMEKz6RmM=", + "integrity": "sha512-G8gi5fcXP/2upwiuOShJ258sIufBVztekgobr3cVgYXObZwJ5AXLqZn52AI+/ffft29pJexF9WNdUxjlkVehoQ==", "requires": { "bluebird": "3.5.1", "buffer": "5.0.8", @@ -13172,7 +10164,7 @@ "buffer": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.0.8.tgz", - "integrity": "sha1-hNqlLnzy+ozkGVvFzw94CeCTCyQ=", + "integrity": "sha512-xXvjQhVNz50v2nPeoOsNqWCLGfiv4ji/gXZM28jnVwdLJxH4mFyqgqCKfaK9zf1KUbG6zTkjLOy7ou+jSMarGA==", "requires": { "base64-js": "1.2.1", "ieee754": "1.1.8" @@ -13186,21 +10178,13 @@ "graceful-fs": "4.1.11", "jsonfile": "2.4.0" } - }, - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", - "requires": { - "graceful-fs": "4.1.11" - } } } }, "symbol-observable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.1.0.tgz", - "integrity": "sha1-XGj9jVQRXZ37cqhHIFSSIujbmzI=" + "integrity": "sha512-dQoid9tqQ+uotGhuTKEY11X4xhyYePVnqGSoSm3OGKh2E8LZ6RPULp1uXTctk33IeERlrRJYoVSBglsL05F5Uw==" }, "tapable": { "version": "0.2.8", @@ -13270,7 +10254,7 @@ "tar-stream": { "version": "1.5.5", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", - "integrity": "sha1-XK2Ed59FyDsfJQjZawnYjHIYr1U=", + "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", "requires": { "bl": "1.2.1", "end-of-stream": "1.4.0", @@ -13281,7 +10265,7 @@ "tar.gz": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/tar.gz/-/tar.gz-1.0.7.tgz", - "integrity": "sha1-V37yxZX6qnNFLvBBX+1BETISJXs=", + "integrity": "sha512-uhGatJvds/3diZrETqMj4RxBR779LKlIE74SsMcn5JProZsfs9j0QBwWO1RW+IWNJxS2x8Zzra1+AW6OQHWphg==", "requires": { "bluebird": "2.11.0", "commander": "2.9.0", @@ -13363,7 +10347,8 @@ "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true }, "to-integer-x": { "version": "3.0.0", @@ -13388,6 +10373,14 @@ "trim-x": "3.0.0" } }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "3.2.2" + } + }, "to-object-x": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/to-object-x/-/to-object-x-1.5.0.tgz", @@ -13412,14 +10405,104 @@ "validate.io-undefined": "1.0.3" } }, - "to-property-key-x": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/to-property-key-x/-/to-property-key-x-2.0.2.tgz", - "integrity": "sha512-YISLpZFYIazNm0P8hLsKEEUEZ3m8U3+eDysJZqTu3+B9tQp+2TrMpaEGT8Agh4fZ5LSoums60/glNEzk5ozqrg==", + "to-property-key-x": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/to-property-key-x/-/to-property-key-x-2.0.2.tgz", + "integrity": "sha512-YISLpZFYIazNm0P8hLsKEEUEZ3m8U3+eDysJZqTu3+B9tQp+2TrMpaEGT8Agh4fZ5LSoums60/glNEzk5ozqrg==", + "requires": { + "has-symbol-support-x": "1.4.1", + "to-primitive-x": "1.1.0", + "to-string-x": "1.4.2" + } + }, + "to-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.1.tgz", + "integrity": "sha1-FTWL7kosg712N3uh3ASdDxiDeq4=", + "requires": { + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "regex-not": "1.0.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "requires": { - "has-symbol-support-x": "1.4.1", - "to-primitive-x": "1.1.0", - "to-string-x": "1.4.2" + "is-number": "3.0.0", + "repeat-string": "1.6.1" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + } + } } }, "to-string-symbols-supported-x": { @@ -13480,7 +10563,8 @@ "trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true }, "trim-right-x": { "version": "3.0.0", @@ -13573,6 +10657,11 @@ "pinkie-promise": "2.0.1" } }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, "read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", @@ -13664,6 +10753,11 @@ } } }, + "tsml": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tsml/-/tsml-1.0.1.tgz", + "integrity": "sha1-ifghi52eJX9H1/a1bQHFpNLGj8M=" + }, "tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", @@ -13678,10 +10772,18 @@ } }, "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "optional": true + "version": "0.13.2", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.13.2.tgz", + "integrity": "sha1-RTFhdwRp1FzSZsNkBOK8maj6mUQ=" + }, + "type-is": { + "version": "1.6.15", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", + "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.17" + } }, "typedarray": { "version": "0.0.6", @@ -13689,12 +10791,9 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, "typedarray-to-buffer": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.2.tgz", - "integrity": "sha1-EBezLZhP9VbroQD1AViauhrOLgQ=", - "requires": { - "is-typedarray": "1.0.0" - } + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-1.0.4.tgz", + "integrity": "sha1-m7i6DoQfs/TPH+fCRenz+opf6Zw=" }, "ua-parser-js": { "version": "0.7.17", @@ -13740,6 +10839,14 @@ "webpack-sources": "1.1.0" } }, + "uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "requires": { + "random-bytes": "1.0.0" + } + }, "uid2": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", @@ -13748,12 +10855,12 @@ "ultron": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha1-n+FTahCmZKZSZqHjzPhf02MCvJw=" + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" }, "unbzip2-stream": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.2.5.tgz", - "integrity": "sha1-c6AzpWe7veWWVLGTxE1Ip+T0PEc=", + "integrity": "sha512-izD3jxT8xkzwtXRUZjtmRwKnZoeECrfZ8ra/ketwOcusbZEp4mjULMnJOCfTDZBgGQAAY1AJ/IgxcwkavcX9Og==", "requires": { "buffer": "3.6.0", "through": "2.3.8" @@ -13789,16 +10896,91 @@ "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "requires": { + "arr-union": "3.1.0", + "get-value": "2.0.6", + "is-extendable": "0.1.1", + "set-value": "0.4.3" + }, + "dependencies": { + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "requires": { + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "to-object-path": "0.3.0" + } + } + } + }, "unorm": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/unorm/-/unorm-1.4.1.tgz", "integrity": "sha1-NkIA1fE2RsqLzURJAnEzVhR5IwA=" }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "requires": { + "has-value": "0.3.1", + "isobject": "3.0.1" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "requires": { + "get-value": "2.0.6", + "has-values": "0.1.4", + "isobject": "2.1.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } + } + }, "unzip-response": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, "url": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", @@ -13818,7 +11000,7 @@ "url-parse": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.2.0.tgz", - "integrity": "sha1-OhnoqqbQI93SfcxEy0/I9/7COYY=", + "integrity": "sha512-DT1XbYAfmQP65M/mE6OALxmXzZ/z1+e5zk2TcSKe/KiYbNGZxgtttzC0mR/sjopbpOXcbniq7eIKmocJnUWlEw==", "requires": { "querystringify": "1.0.0", "requires-port": "1.0.0" @@ -13844,16 +11026,106 @@ "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=" }, - "url-template": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", - "integrity": "sha1-/FZaPMy/93MMd19WQflVV5FDnyE=" - }, "url-to-options": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" }, + "url-toolkit": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/url-toolkit/-/url-toolkit-2.1.2.tgz", + "integrity": "sha512-CO1kimvdn+t8FtlVconJnp8LqxyXdThbWGuLKs/mfz3ipA8ZbOWaHQB8SPWf3WFIStDHPxKKlauwkXFLq1VK/g==" + }, + "use": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/use/-/use-2.0.2.tgz", + "integrity": "sha1-riig1y+TvyJCKhii43mZMRLeyOg=", + "requires": { + "define-property": "0.2.5", + "isobject": "3.0.1", + "lazy-cache": "2.0.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + }, + "lazy-cache": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", + "integrity": "sha1-uRkKT5EzVGlIQIWfio9whNiCImQ=", + "requires": { + "set-getter": "0.1.0" + } + } + } + }, + "user-home": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", + "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=", + "dev": true + }, "utf8": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/utf8/-/utf8-2.1.2.tgz", @@ -13879,11 +11151,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, - "util-extend": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", - "integrity": "sha1-p8IW0mdUUWljeztu3GypEZ4v+T8=" - }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -13894,6 +11161,15 @@ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==" }, + "v8flags": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", + "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=", + "dev": true, + "requires": { + "user-home": "1.1.1" + } + }, "validate-npm-package-license": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", @@ -13911,7 +11187,7 @@ "value-equal": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-0.4.0.tgz", - "integrity": "sha1-xb3S9U7gk8BIOdcc4uR1imiQq8c=" + "integrity": "sha512-x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw==" }, "vary": { "version": "1.1.2", @@ -13926,32 +11202,39 @@ "assert-plus": "1.0.0", "core-util-is": "1.0.2", "extsprintf": "1.3.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + } } }, "victory": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/victory/-/victory-0.24.2.tgz", - "integrity": "sha1-jw9Ayhks94I0SozTPKwGpTRTxcs=", + "version": "0.24.3", + "resolved": "https://registry.npmjs.org/victory/-/victory-0.24.3.tgz", + "integrity": "sha512-wD4Mlx86nm+YFL7KQ4tMcRrU9ha3OEZjBA8lebNS45ACgM8ZeFFbauSNcK4Vu5Zbn3NMULbHu5TQUFEhJbQBAw==", "requires": { - "victory-chart": "24.3.0", - "victory-core": "20.3.0", - "victory-pie": "13.1.0" + "victory-chart": "24.6.0", + "victory-core": "20.6.0", + "victory-pie": "13.3.1" } }, "victory-chart": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/victory-chart/-/victory-chart-24.3.0.tgz", - "integrity": "sha1-Uj/OkdQbrho2bjbLO61zdCjiYKo=", + "version": "24.6.0", + "resolved": "https://registry.npmjs.org/victory-chart/-/victory-chart-24.6.0.tgz", + "integrity": "sha512-FgHuWWXVOKgFf4HvemDtQnSxVx2/tEKiGpEplIFK7BNC7L5r50I4B6UCAIWazrwqwOv0fuKpCAY2t8IYywmy9g==", "requires": { "d3-voronoi": "1.1.2", "lodash": "4.17.4", - "victory-core": "20.3.0" + "victory-core": "20.6.0" } }, "victory-core": { - "version": "20.3.0", - "resolved": "https://registry.npmjs.org/victory-core/-/victory-core-20.3.0.tgz", - "integrity": "sha1-5R472XlPEW676rTNk54AwQbxVy8=", + "version": "20.6.0", + "resolved": "https://registry.npmjs.org/victory-core/-/victory-core-20.6.0.tgz", + "integrity": "sha512-ucE3AWR3HaQIWLfAl/vQI+QfYbwgIFSgai2VnfxPZFoeyZ1QjR7qJC3AyhrHaE1r1K8Wcl3XeWtDT42Bu6yYEw==", "requires": { "d3-ease": "1.0.3", "d3-interpolate": "1.1.6", @@ -13962,13 +11245,212 @@ } }, "victory-pie": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/victory-pie/-/victory-pie-13.1.0.tgz", - "integrity": "sha1-4j/lQ5OauC8F2BoyEJOZeRGrHMM=", + "version": "13.3.1", + "resolved": "https://registry.npmjs.org/victory-pie/-/victory-pie-13.3.1.tgz", + "integrity": "sha512-17M9Y5o+OqfdS8Ok4rFKyb9CsTln5ids77SwombqwLvHCCb73rXodiAOk1N7MR8XFFyviZVmTBPq47OE6fVCYw==", "requires": { "d3-shape": "1.2.0", "lodash": "4.17.4", - "victory-core": "20.3.0" + "victory-core": "20.6.0" + } + }, + "video.js": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/video.js/-/video.js-6.6.0.tgz", + "integrity": "sha512-jtMn0PqQSGGes5Lcb5Ste0fG4HrcOIr51LYX57wrQbbrUhj/56U8c9LGhVeGAgpi1XBebw/R16xyENxh5yPllw==", + "requires": { + "babel-runtime": "6.26.0", + "global": "4.3.2", + "safe-json-parse": "4.0.0", + "tsml": "1.0.1", + "videojs-font": "2.1.0", + "videojs-ie8": "1.1.2", + "videojs-vtt.js": "0.12.4", + "xhr": "2.4.0" + }, + "dependencies": { + "xhr": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.4.0.tgz", + "integrity": "sha1-4W5mpF+GmGHu76tBbV7/ci3ECZM=", + "requires": { + "global": "4.3.2", + "is-function": "1.0.1", + "parse-headers": "2.0.1", + "xtend": "4.0.1" + } + } + } + }, + "videojs-contrib-hls": { + "version": "5.12.2", + "resolved": "https://registry.npmjs.org/videojs-contrib-hls/-/videojs-contrib-hls-5.12.2.tgz", + "integrity": "sha512-rUz+NXfYumNwyNtSvmba0tibZCpddfRrkgkuxv8jLu0tKjWUudClBfXrqB+rEr0WX9Wu1LOstEandE3fXVZ5jw==", + "requires": { + "aes-decrypter": "1.0.3", + "global": "4.3.2", + "m3u8-parser": "2.1.0", + "mux.js": "4.3.2", + "url-toolkit": "1.0.9", + "video.js": "6.6.0", + "videojs-contrib-media-sources": "4.6.2", + "webworkify": "1.0.2" + }, + "dependencies": { + "url-toolkit": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/url-toolkit/-/url-toolkit-1.0.9.tgz", + "integrity": "sha1-ZkfIT5McVOHmH6OzPhCtNBYe1Nk=" + } + } + }, + "videojs-contrib-media-sources": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/videojs-contrib-media-sources/-/videojs-contrib-media-sources-4.6.2.tgz", + "integrity": "sha512-DSfAK0s4wB+lYD6w59bwalchdWzlUm7fbn+tGuzfZ4YZtTjIIkEnymyjhsLoeEnjNjAuG/p7Ri/6xeoaMhme9Q==", + "requires": { + "global": "4.3.2", + "mux.js": "4.3.2", + "video.js": "5.20.4", + "webworkify": "1.0.2" + }, + "dependencies": { + "process": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", + "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=" + }, + "video.js": { + "version": "5.20.4", + "resolved": "https://registry.npmjs.org/video.js/-/video.js-5.20.4.tgz", + "integrity": "sha512-DkwZcYDN5+qNp3c1y+9N6cQ3XSoFin1dEsEstIRGmALtmh71M8JIPage0S/AC5HzCc7QdUBeeTYHLKZectB2TA==", + "requires": { + "babel-runtime": "6.26.0", + "global": "4.3.0", + "safe-json-parse": "4.0.0", + "tsml": "1.0.1", + "videojs-font": "2.0.0", + "videojs-ie8": "1.1.2", + "videojs-swf": "5.4.1", + "videojs-vtt.js": "0.12.4", + "xhr": "2.2.2" + }, + "dependencies": { + "global": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/global/-/global-4.3.0.tgz", + "integrity": "sha1-737EvurVebRU9evV5/MD21T0Kis=", + "requires": { + "min-document": "2.19.0", + "process": "0.5.2" + } + } + } + }, + "videojs-font": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/videojs-font/-/videojs-font-2.0.0.tgz", + "integrity": "sha1-r3Rh751LleAzS/+3iy8v8DZKkDQ=" + }, + "xhr": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.2.2.tgz", + "integrity": "sha1-LuclcYafhobUFVmp6ihsGJcUNf8=", + "requires": { + "global": "4.3.2", + "is-function": "1.0.1", + "parse-headers": "2.0.1", + "xtend": "4.0.1" + } + } + } + }, + "videojs-font": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/videojs-font/-/videojs-font-2.1.0.tgz", + "integrity": "sha1-olkwpn9snPvyu4jay4xrRR8JM3k=" + }, + "videojs-hlsjs": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/videojs-hlsjs/-/videojs-hlsjs-1.4.8.tgz", + "integrity": "sha1-PpxsuitfEaihrbC4KTOPREJKenk=", + "requires": { + "hls.js": "0.7.11", + "video.js": "5.20.4" + }, + "dependencies": { + "global": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/global/-/global-4.3.0.tgz", + "integrity": "sha1-737EvurVebRU9evV5/MD21T0Kis=", + "requires": { + "min-document": "2.19.0", + "process": "0.5.2" + } + }, + "hls.js": { + "version": "0.7.11", + "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-0.7.11.tgz", + "integrity": "sha1-6ESL41okNbrSS4uT2ef5wFZZuyg=" + }, + "process": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", + "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=" + }, + "video.js": { + "version": "5.20.4", + "resolved": "https://registry.npmjs.org/video.js/-/video.js-5.20.4.tgz", + "integrity": "sha512-DkwZcYDN5+qNp3c1y+9N6cQ3XSoFin1dEsEstIRGmALtmh71M8JIPage0S/AC5HzCc7QdUBeeTYHLKZectB2TA==", + "requires": { + "babel-runtime": "6.26.0", + "global": "4.3.0", + "safe-json-parse": "4.0.0", + "tsml": "1.0.1", + "videojs-font": "2.0.0", + "videojs-ie8": "1.1.2", + "videojs-swf": "5.4.1", + "videojs-vtt.js": "0.12.4", + "xhr": "2.2.2" + } + }, + "videojs-font": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/videojs-font/-/videojs-font-2.0.0.tgz", + "integrity": "sha1-r3Rh751LleAzS/+3iy8v8DZKkDQ=" + }, + "xhr": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.2.2.tgz", + "integrity": "sha1-LuclcYafhobUFVmp6ihsGJcUNf8=", + "requires": { + "global": "4.3.0", + "is-function": "1.0.1", + "parse-headers": "2.0.1", + "xtend": "4.0.1" + } + } + } + }, + "videojs-ie8": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/videojs-ie8/-/videojs-ie8-1.1.2.tgz", + "integrity": "sha1-oj09hgitcZK2nGB3/E64SJmNNdk=", + "requires": { + "es5-shim": "4.5.10" + } + }, + "videojs-swf": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/videojs-swf/-/videojs-swf-5.4.1.tgz", + "integrity": "sha1-IHfvccdJ8seCPvSbq65N0qywj4c=" + }, + "videojs-vtt.js": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.12.4.tgz", + "integrity": "sha1-OPJJnjHvs/qTWQ3a1MtmMnWksWE=", + "requires": { + "global": "4.3.2" } }, "vm-browserify": { @@ -14011,21 +11493,26 @@ } }, "web3": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.20.2.tgz", - "integrity": "sha1-xU2sX8DjdzmcBMGm7LsS5FEyeNY=", + "version": "0.20.3", + "resolved": "https://registry.npmjs.org/web3/-/web3-0.20.3.tgz", + "integrity": "sha1-yqRDc9yIFayHZ73ba6cwc5ZMqos=", "requires": { "bignumber.js": "git+https://github.com/frozeman/bignumber.js-nolookahead.git#57692b3ecfc98bbdd6b3a516cb2353652ea49934", "crypto-js": "3.1.8", "utf8": "2.1.2", "xhr2": "0.1.4", "xmlhttprequest": "1.8.0" + }, + "dependencies": { + "bignumber.js": { + "version": "git+https://github.com/frozeman/bignumber.js-nolookahead.git#57692b3ecfc98bbdd6b3a516cb2353652ea49934" + } } }, "web3-bzz": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.0.0-beta.26.tgz", - "integrity": "sha1-WFihjN5XaHSAGoPR30IJX8lYWQw=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.0.0-beta.27.tgz", + "integrity": "sha1-Tmggpc/nOqsG2CV59FBFD76YIqM=", "requires": { "got": "7.1.0", "swarm-js": "0.1.37", @@ -14033,42 +11520,42 @@ } }, "web3-core": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.0.0-beta.26.tgz", - "integrity": "sha1-hczKK2KfmK3+sOK21+K31nepeVk=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.0.0-beta.27.tgz", + "integrity": "sha1-TQCb9x5Yt5F2E0EpF+/5ERO0N8M=", "requires": { - "web3-core-helpers": "1.0.0-beta.26", - "web3-core-method": "1.0.0-beta.26", - "web3-core-requestmanager": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "web3-core-helpers": "1.0.0-beta.27", + "web3-core-method": "1.0.0-beta.27", + "web3-core-requestmanager": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" } }, "web3-core-helpers": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.0.0-beta.26.tgz", - "integrity": "sha1-2G31xrMQ/FjFtv9Woz0mePu8PcM=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.0.0-beta.27.tgz", + "integrity": "sha1-6wlPrTfJ3B1wZt11Zimi1u+6B6I=", "requires": { "underscore": "1.8.3", - "web3-eth-iban": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "web3-eth-iban": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" } }, "web3-core-method": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.0.0-beta.26.tgz", - "integrity": "sha1-SdhpoacvMiNXbIkmCe7kDTsiVXw=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.0.0-beta.27.tgz", + "integrity": "sha1-3hTlQL1qdTfXBGcLSeY/BSYgG6o=", "requires": { "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.26", - "web3-core-promievent": "1.0.0-beta.26", - "web3-core-subscriptions": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "web3-core-helpers": "1.0.0-beta.27", + "web3-core-promievent": "1.0.0-beta.27", + "web3-core-subscriptions": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" } }, "web3-core-promievent": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.0.0-beta.26.tgz", - "integrity": "sha1-BkJSUZ35t+banCD1lKAuz+nDU8E=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.0.0-beta.27.tgz", + "integrity": "sha1-0lx9e75NU9+/3KBJ+e1LCmlUvrw=", "requires": { "bluebird": "3.3.1", "eventemitter3": "1.1.1" @@ -14078,71 +11565,59 @@ "version": "3.3.1", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.3.1.tgz", "integrity": "sha1-+Xrhlw9B2FF3KDBT6aEgFg5mxh0=" - }, - "eventemitter3": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.1.1.tgz", - "integrity": "sha1-R3hr2qCHyvext15zq8XH1UAVjNA=" } } }, "web3-core-requestmanager": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.0.0-beta.26.tgz", - "integrity": "sha1-dffvfy/GpLDTRr8AVCFXuB4UsDM=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.0.0-beta.27.tgz", + "integrity": "sha1-Vk7uJEoxCq5abGgyzeLA49wwHpg=", "requires": { "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.26", - "web3-providers-http": "1.0.0-beta.26", - "web3-providers-ipc": "1.0.0-beta.26", - "web3-providers-ws": "1.0.0-beta.26" + "web3-core-helpers": "1.0.0-beta.27", + "web3-providers-http": "1.0.0-beta.27", + "web3-providers-ipc": "1.0.0-beta.27", + "web3-providers-ws": "1.0.0-beta.27" } }, "web3-core-subscriptions": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.0.0-beta.26.tgz", - "integrity": "sha1-0W0dbr3GDXCL9aR7hxZt1+jBl6A=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.0.0-beta.27.tgz", + "integrity": "sha1-VvKRy1Sn7PgNRzTXL1Sky8uJdzc=", "requires": { "eventemitter3": "1.1.1", "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.26" - }, - "dependencies": { - "eventemitter3": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.1.1.tgz", - "integrity": "sha1-R3hr2qCHyvext15zq8XH1UAVjNA=" - } + "web3-core-helpers": "1.0.0-beta.27" } }, "web3-eth": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.0.0-beta.26.tgz", - "integrity": "sha1-aMAkw1a4ZWrDaVyPk9e2GzgQRKU=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.0.0-beta.27.tgz", + "integrity": "sha1-hV3Q4BqU1Xhx/9j0n22eyqMXIas=", "requires": { "underscore": "1.8.3", - "web3-core": "1.0.0-beta.26", - "web3-core-helpers": "1.0.0-beta.26", - "web3-core-method": "1.0.0-beta.26", - "web3-core-subscriptions": "1.0.0-beta.26", - "web3-eth-abi": "1.0.0-beta.26", - "web3-eth-accounts": "1.0.0-beta.26", - "web3-eth-contract": "1.0.0-beta.26", - "web3-eth-iban": "1.0.0-beta.26", - "web3-eth-personal": "1.0.0-beta.26", - "web3-net": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "web3-core": "1.0.0-beta.27", + "web3-core-helpers": "1.0.0-beta.27", + "web3-core-method": "1.0.0-beta.27", + "web3-core-subscriptions": "1.0.0-beta.27", + "web3-eth-abi": "1.0.0-beta.27", + "web3-eth-accounts": "1.0.0-beta.27", + "web3-eth-contract": "1.0.0-beta.27", + "web3-eth-iban": "1.0.0-beta.27", + "web3-eth-personal": "1.0.0-beta.27", + "web3-net": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" } }, "web3-eth-abi": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.0.0-beta.26.tgz", - "integrity": "sha1-Ku3ASDxna1kcccBBJXIZj3omb+I=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.0.0-beta.27.tgz", + "integrity": "sha1-RS6dk3YVYL4yNE7juJddD7JLvb4=", "requires": { "bn.js": "4.11.6", "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "web3-core-helpers": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" }, "dependencies": { "bn.js": { @@ -14153,19 +11628,20 @@ } }, "web3-eth-accounts": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.0.0-beta.26.tgz", - "integrity": "sha1-N/18d3BCBGX95ZGCKYkad3OAehM=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.0.0-beta.27.tgz", + "integrity": "sha1-mUDCjl48kg1nz2iH6pxS8c3Re3k=", "requires": { "bluebird": "3.3.1", + "crypto-browserify": "3.12.0", "eth-lib": "0.2.5", "scrypt.js": "0.2.0", "underscore": "1.8.3", "uuid": "2.0.1", - "web3-core": "1.0.0-beta.26", - "web3-core-helpers": "1.0.0-beta.26", - "web3-core-method": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "web3-core": "1.0.0-beta.27", + "web3-core-helpers": "1.0.0-beta.27", + "web3-core-method": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" }, "dependencies": { "bluebird": { @@ -14191,95 +11667,95 @@ } }, "web3-eth-contract": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.0.0-beta.26.tgz", - "integrity": "sha1-fny3FXqrYMUi20353p3L2G2BOwk=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.0.0-beta.27.tgz", + "integrity": "sha1-AS96XVnaZ+KWxzWo8pcK7N0gfn0=", "requires": { "underscore": "1.8.3", - "web3-core": "1.0.0-beta.26", - "web3-core-helpers": "1.0.0-beta.26", - "web3-core-method": "1.0.0-beta.26", - "web3-core-promievent": "1.0.0-beta.26", - "web3-core-subscriptions": "1.0.0-beta.26", - "web3-eth-abi": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "web3-core": "1.0.0-beta.27", + "web3-core-helpers": "1.0.0-beta.27", + "web3-core-method": "1.0.0-beta.27", + "web3-core-promievent": "1.0.0-beta.27", + "web3-core-subscriptions": "1.0.0-beta.27", + "web3-eth-abi": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" } }, "web3-eth-iban": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.0.0-beta.26.tgz", - "integrity": "sha1-6MI2GOpapmJ73pHHPqi18ZGe43Q=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.0.0-beta.27.tgz", + "integrity": "sha1-RDPCj0F8Oa+WMzoGpK+h/NSqaEI=", "requires": { "bn.js": "4.11.8", - "web3-utils": "1.0.0-beta.26" + "web3-utils": "1.0.0-beta.27" } }, "web3-eth-personal": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.0.0-beta.26.tgz", - "integrity": "sha1-K4gDs01HJEfPW76BziVQSxMb7QY=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.0.0-beta.27.tgz", + "integrity": "sha1-ukiaNIdkpKswOItcwcblm9bq7Ks=", "requires": { - "web3-core": "1.0.0-beta.26", - "web3-core-helpers": "1.0.0-beta.26", - "web3-core-method": "1.0.0-beta.26", - "web3-net": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "web3-core": "1.0.0-beta.27", + "web3-core-helpers": "1.0.0-beta.27", + "web3-core-method": "1.0.0-beta.27", + "web3-net": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" } }, "web3-net": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.0.0-beta.26.tgz", - "integrity": "sha1-UY0oO1AANf7kgL9ocIljRyWrZLM=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.0.0-beta.27.tgz", + "integrity": "sha1-eulTbsOf7Rou6zjALm48jt/oq30=", "requires": { - "web3-core": "1.0.0-beta.26", - "web3-core-method": "1.0.0-beta.26", - "web3-utils": "1.0.0-beta.26" + "web3-core": "1.0.0-beta.27", + "web3-core-method": "1.0.0-beta.27", + "web3-utils": "1.0.0-beta.27" } }, "web3-providers-http": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.0.0-beta.26.tgz", - "integrity": "sha1-GwFUu3UY027TT5EKZl5FFSoKyKE=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.0.0-beta.27.tgz", + "integrity": "sha1-LwrhYJvF5KNb4lgYzX/HfeBitqY=", "requires": { - "web3-core-helpers": "1.0.0-beta.26", + "web3-core-helpers": "1.0.0-beta.27", "xhr2": "0.1.4" } }, "web3-providers-ipc": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.0.0-beta.26.tgz", - "integrity": "sha1-HffepV5nE1yQRaJsUzso0bbJ2mQ=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.0.0-beta.27.tgz", + "integrity": "sha1-oFwkIe/+TEfxX0efeSUTWtCUJ2I=", "requires": { "oboe": "2.1.3", "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.26" + "web3-core-helpers": "1.0.0-beta.27" } }, "web3-providers-ws": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.0.0-beta.26.tgz", - "integrity": "sha1-z0ylFUpPsVok1GgtEJUO4Emku2E=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.0.0-beta.27.tgz", + "integrity": "sha1-bUZ4Geoi3foba6FJjTHZVU4rBt0=", "requires": { "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.26", + "web3-core-helpers": "1.0.0-beta.27", "websocket": "git://github.com/frozeman/WebSocket-Node.git#7004c39c42ac98875ab61126e5b4a925430f592c" } }, "web3-shh": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.0.0-beta.26.tgz", - "integrity": "sha1-YMrff1V71rRRVHXd4z4uV7gKgg4=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.0.0-beta.27.tgz", + "integrity": "sha1-b3bW6yoma769zwqjDFo62J82e38=", "requires": { - "web3-core": "1.0.0-beta.26", - "web3-core-method": "1.0.0-beta.26", - "web3-core-subscriptions": "1.0.0-beta.26", - "web3-net": "1.0.0-beta.26" + "web3-core": "1.0.0-beta.27", + "web3-core-method": "1.0.0-beta.27", + "web3-core-subscriptions": "1.0.0-beta.27", + "web3-net": "1.0.0-beta.27" } }, "web3-utils": { - "version": "1.0.0-beta.26", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.0.0-beta.26.tgz", - "integrity": "sha1-8ErYwUSxeBxrIMKBjgUyy55tyhU=", + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.0.0-beta.27.tgz", + "integrity": "sha1-0JfVwzaha59sqbYK9o3RXAZDIUs=", "requires": { "bn.js": "4.11.6", "eth-lib": "0.1.27", @@ -14303,13 +11779,13 @@ } }, "webpack": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.8.1.tgz", - "integrity": "sha512-5ZXLWWsMqHKFr5y0N3Eo5IIisxeEeRAajNq4mELb/WELOR7srdbQk2N5XiyNy2A/AgvlR3AmeBCZJW8lHrolbw==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.10.0.tgz", + "integrity": "sha512-fxxKXoicjdXNUMY7LIdY89tkJJJ0m1Oo8PQutZ5rLgWbV5QVKI15Cn7+/IHnRTd3vfKfiwBx6SBqlorAuNA8LA==", "requires": { - "acorn": "5.2.1", + "acorn": "5.3.0", "acorn-dynamic-import": "2.0.2", - "ajv": "5.5.0", + "ajv": "5.5.2", "ajv-keywords": "2.1.1", "async": "2.6.0", "enhanced-resolve": "3.4.1", @@ -14329,39 +11805,36 @@ "watchpack": "1.4.0", "webpack-sources": "1.1.0", "yargs": "8.0.2" - }, - "dependencies": { - "supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", - "requires": { - "has-flag": "2.0.0" - } - } } }, "webpack-dev-middleware": { "version": "1.12.2", "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz", - "integrity": "sha1-+PwRIM47T8VoDO7LQ9d3lmshEF4=", + "integrity": "sha512-FCrqPy1yy/sN6U/SaEZcHKRXGlqU0DUaEBL45jkUYoB8foVb6wCnbIJ1HKIx+qUFTW+3JpVcCJCxZ8VATL4e+A==", "requires": { "memory-fs": "0.4.1", "mime": "1.6.0", "path-is-absolute": "1.0.1", "range-parser": "1.2.0", "time-stamp": "2.0.0" + }, + "dependencies": { + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + } } }, "webpack-dev-server": { - "version": "2.9.7", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-2.9.7.tgz", - "integrity": "sha1-EArWoUd1R4kk1BfKbc+51SqY+u0=", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-2.10.0.tgz", + "integrity": "sha512-mFq5S5Sg6nbiGXry+nRlaUoaCcl0IH/LVP60kwwJKBT/8IcwK/ZKduOSBK8bsLwRBh1yFoUYJMKfCo6oeP07+g==", "requires": { "ansi-html": "0.0.7", "array-includes": "3.0.3", "bonjour": "3.5.0", - "chokidar": "1.7.0", + "chokidar": "2.0.0", "compression": "1.7.1", "connect-history-api-fallback": "1.5.0", "debug": "3.1.0", @@ -14369,7 +11842,7 @@ "express": "4.16.2", "html-entities": "1.2.1", "http-proxy-middleware": "0.17.4", - "import-local": "0.1.1", + "import-local": "1.0.0", "internal-ip": "1.2.0", "ip": "1.1.5", "killable": "1.0.0", @@ -14378,19 +11851,79 @@ "portfinder": "1.0.13", "selfsigned": "1.10.1", "serve-index": "1.9.1", - "sockjs": "0.3.18", + "sockjs": "0.3.19", "sockjs-client": "1.1.4", "spdy": "3.4.7", - "strip-ansi": "3.0.1", - "supports-color": "4.5.0", + "strip-ansi": "4.0.0", + "supports-color": "5.1.0", "webpack-dev-middleware": "1.12.2", - "yargs": "6.6.0" + "yargs": "10.0.3" }, "dependencies": { - "camelcase": { + "ansi-regex": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "requires": { + "micromatch": "3.1.5", + "normalize-path": "2.1.1" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "braces": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.0.tgz", + "integrity": "sha512-P4O8UQRdGiMLWSizsApmXVQDBS6KCt7dSexgLKBmH5Hr1CZq7vsnscFh8oR1sP1ab1Zj0uCHCEzZeV6SfUf3rA==", + "requires": { + "arr-flatten": "1.1.0", + "array-unique": "0.3.2", + "define-property": "1.0.0", + "extend-shallow": "2.0.1", + "fill-range": "4.0.0", + "isobject": "3.0.1", + "repeat-element": "1.1.2", + "snapdragon": "0.8.1", + "snapdragon-node": "2.1.1", + "split-string": "3.1.0", + "to-regex": "3.0.1" + } + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" + }, + "chokidar": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.0.tgz", + "integrity": "sha512-OgXCNv2U6TnG04D3tth0gsvdbV4zdbxFG3sYUqcoQMoEFVd1j1pZR6TZ8iknC45o9IJ6PeQI/J6wT/+cHcniAw==", + "requires": { + "anymatch": "2.0.0", + "async-each": "1.0.1", + "braces": "2.3.0", + "fsevents": "1.1.3", + "glob-parent": "3.1.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "4.0.0", + "normalize-path": "2.1.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.1.0" + } }, "cliui": { "version": "3.2.0", @@ -14400,131 +11933,265 @@ "string-width": "1.0.2", "strip-ansi": "3.0.1", "wrap-ansi": "2.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + } } }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "posix-character-classes": "0.1.1", + "regex-not": "1.0.0", + "snapdragon": "0.8.1", + "to-regex": "3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + } } }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "extglob": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.3.tgz", + "integrity": "sha512-AyptZexgu7qppEPq59DtN/XJGZDrLcVxSHai+4hdgMMS9EpF4GBvygcWWApno8lL9qSjVpYt7Raao28qzJX1ww==", "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "array-unique": "0.3.2", + "define-property": "1.0.0", + "expand-brackets": "2.1.4", + "extend-shallow": "2.0.1", + "fragment-cache": "0.2.1", + "regex-not": "1.0.0", + "snapdragon": "0.8.1", + "to-regex": "3.0.1" } }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "requires": { - "lcid": "1.0.0" + "extend-shallow": "2.0.1", + "is-number": "3.0.0", + "repeat-string": "1.6.1", + "to-regex-range": "2.1.1" } }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "requires": { - "pinkie-promise": "2.0.1" + "is-glob": "3.1.0", + "path-dirname": "1.0.2" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "requires": { + "is-extglob": "2.1.1" + } + } } }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } } }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } } }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-glob": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", + "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "is-extglob": "2.1.1" } }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "requires": { - "is-utf8": "0.2.1" + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "micromatch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.5.tgz", + "integrity": "sha512-ykttrLPQrz1PUJcXjwsTUjGoPJ64StIGNE2lGVD1c9CuguJ+L7/navsE8IcDNndOoCMvYV0qc/exfVbMHkUhvA==", + "requires": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "braces": "2.3.0", + "define-property": "1.0.0", + "extend-shallow": "2.0.1", + "extglob": "2.0.3", + "fragment-cache": "0.2.1", + "kind-of": "6.0.2", + "nanomatch": "1.2.7", + "object.pick": "1.3.0", + "regex-not": "1.0.0", + "snapdragon": "0.8.1", + "to-regex": "3.0.1" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "3.0.0" } }, "supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", "requires": { "has-flag": "2.0.0" } }, - "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" - }, "yargs": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", - "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-10.0.3.tgz", + "integrity": "sha512-DqBpQ8NAUX4GyPP/ijDGHsJya4tYqLQrjPr95HNsr1YwL3+daCfvBwg7+gIC6IdJhR2kATh3hb61vjzMWEtjdw==", "requires": { - "camelcase": "3.0.0", "cliui": "3.2.0", "decamelize": "1.2.0", + "find-up": "2.1.0", "get-caller-file": "1.0.2", - "os-locale": "1.4.0", - "read-pkg-up": "1.0.1", + "os-locale": "2.1.0", "require-directory": "2.1.1", "require-main-filename": "1.0.1", "set-blocking": "2.0.0", - "string-width": "1.0.2", - "which-module": "1.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", "y18n": "3.2.1", - "yargs-parser": "4.2.1" + "yargs-parser": "8.1.0" } }, "yargs-parser": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", - "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-8.1.0.tgz", + "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", "requires": { - "camelcase": "3.0.0" + "camelcase": "4.1.0" } } } @@ -14557,10 +12224,18 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { "ms": "2.0.0" } + }, + "typedarray-to-buffer": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.2.tgz", + "integrity": "sha1-EBezLZhP9VbroQD1AViauhrOLgQ=", + "requires": { + "is-typedarray": "1.0.0" + } } } }, @@ -14578,6 +12253,11 @@ "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==" }, + "webworkify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.0.2.tgz", + "integrity": "sha1-thapWmIlJJvyWpHpbglCxmUVWZU=" + }, "whatwg-fetch": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", @@ -14601,6 +12281,26 @@ "resolved": "https://registry.npmjs.org/white-space-x/-/white-space-x-3.0.0.tgz", "integrity": "sha512-nMPVXGMdi/jQepXKryxqzEh/vCwdOYY/u6NZy40glMHvZfEr7/+vQKnDhEq4rZ1nniOFq9GWohQYB30uW/5Olg==" }, + "wide-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", + "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "requires": { + "string-width": "1.0.2" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } + } + }, "window-size": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", @@ -14611,6 +12311,15 @@ "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" }, + "worker-loader": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/worker-loader/-/worker-loader-1.1.0.tgz", + "integrity": "sha512-W91q8Wi1JxbzFQZuLJlFK4x8UuWjKgeOX9IMMyng007K0UkP6I8lOejckoCWY61QmnJq2x9qZ/Viru+uF8g6nA==", + "requires": { + "loader-utils": "1.1.0", + "schema-utils": "0.3.0" + } + }, "wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", @@ -14653,19 +12362,28 @@ } }, "ws": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.2.tgz", - "integrity": "sha1-lsHQiz/v2h1cHjNwDTv6qb4tVgg=", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", "requires": { "async-limiter": "1.0.0", "safe-buffer": "5.1.1", "ultron": "1.1.1" } }, + "x-path": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/x-path/-/x-path-0.0.2.tgz", + "integrity": "sha1-KU0Ha7l6dwbMBwu7Km/YxU32exI=", + "dev": true, + "requires": { + "path-extra": "1.0.3" + } + }, "xhr": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.4.0.tgz", - "integrity": "sha1-4W5mpF+GmGHu76tBbV7/ci3ECZM=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.4.1.tgz", + "integrity": "sha512-pAIU5vBr9Hiy5cpFIbPnwf0C18ZF86DBsZKrlsf87N5De/JbA6RJ83UP/cv+aljl4S40iRVMqP4pr4sF9Dnj0A==", "requires": { "global": "4.3.2", "is-function": "1.0.1", @@ -14684,7 +12402,7 @@ "simple-get": "1.4.3", "timed-out": "2.0.0", "url-set-query": "1.0.0", - "xhr": "2.4.0" + "xhr": "2.4.1" }, "dependencies": { "object-assign": { diff --git a/package.json b/package.json index d07fe6d..70d4054 100644 --- a/package.json +++ b/package.json @@ -1,12 +1,14 @@ { "name": "gittoken-server", - "version": "0.1.0", + "version": "0.0.1", "description": "Configurable GitToken Server", "main": "./src/index.js", "scripts": { "test": "mocha", - "build": "npx babel ./src/ --out-dir ./dist/ --plugins transform-runtime", - "start": "node ./bin/app.js" + "build:server": "npx babel ./src/ --out-dir ./dist/ --plugins transform-runtime", + "build:ui": "npx webpack --config ./webpack.config.js", + "dev:ui": "npx webpack --watch --config ./webpack.config.js", + "server": "node ./bin/app.js" }, "contributors": [ { @@ -22,14 +24,19 @@ "cors": "^2.8.3", "debug": "^3.0.0", "dotenv": "^4.0.0", + "eth-sig-util": "^1.4.1", "express": "^4.15.3", "express-session": "^1.15.3", "github-api": "^3.0.0", + "gittoken-account-ui": "0.0.7", "gittoken-contracts": "0.0.59", "gittoken-keystore-generator": "0.0.20", - "gittoken-landing-page": "0.0.15", + "gittoken-landing-page": "0.0.19", + "gittoken-reducers": "0.0.59", "gittoken-registry-ui": "0.0.13", + "gittoken-web-workers": "0.0.71", "graphql": "^0.10.4", + "history": "^4.7.2", "keccak": "^1.3.0", "keythereum": "^1.0.1", "mysql": "^2.15.0", @@ -38,17 +45,31 @@ "passport-github": "^1.1.0", "passport-github2": "^0.1.11", "react": "^16.2.0", + "react-bootstrap": "^0.32.0", "react-dom": "^16.2.0", + "react-icons": "^2.2.7", + "react-redux": "^5.0.6", + "react-router-dom": "^4.2.2", + "react-router-redux": "^4.0.8", + "redux": "^3.7.2", + "redux-thunk": "^2.2.0", "request": "^2.83.0", "request-promise": "^4.2.2", "web3": "^0.20.2" }, "devDependencies": { "babel-cli": "^6.24.1", + "babel-loader": "^7.0.0", "babel-plugin-inline-import": "^2.0.5", "babel-plugin-transform-runtime": "^6.23.0", "babel-preset-env": "^1.5.1", + "babel-preset-react": "^6.24.1", "babel-preset-stage-0": "^6.24.1", - "babel-runtime": "^6.23.0" + "babel-runtime": "^6.23.0", + "json-loader": "^0.5.7", + "source-map-loader": "^0.2.1", + "webpack": "^3.0.0", + "webpack-dev-server": "^2.5.0", + "worker-loader": "^1.1.0" } } diff --git a/remove_docker_images.sh b/remove_docker_images.sh index cfda47c..26c9bc3 100644 --- a/remove_docker_images.sh +++ b/remove_docker_images.sh @@ -5,6 +5,6 @@ do then echo "Deleting Docker Image tagged as 'none'" echo ${var} - docker rmi ${var} + docker rmi -f ${var} fi; done diff --git a/src/github/getOrganizations.js b/src/github/getOrganizations.js new file mode 100644 index 0000000..e03fb39 --- /dev/null +++ b/src/github/getOrganizations.js @@ -0,0 +1,17 @@ +import Promise from 'bluebird' +import GitHub from 'github-api' + +export default function getOrganizations({ accessToken, username }) { + return new Promise((resolve, reject) => { + + const gh = new GitHub({ username, token: accessToken }) + const user = gh.getUser() + + user.listOrgs().then(({ data }) => { + resolve(data) + }).catch((error) => { + console.log('error', error) + reject(error) + }) + }) +} diff --git a/src/github/index.js b/src/github/index.js index ba9c1fd..bb36d12 100644 --- a/src/github/index.js +++ b/src/github/index.js @@ -1,5 +1,7 @@ import createOrgWebHook from './createOrgWebHook' +import getOrganizations from './getOrganizations' export { - createOrgWebHook + createOrgWebHook, + getOrganizations } diff --git a/src/index.js b/src/index.js index 52793d6..3dea588 100644 --- a/src/index.js +++ b/src/index.js @@ -16,7 +16,8 @@ import { } from './utils/index' import { - createOrgWebHook + createOrgWebHook, + getOrganizations } from './github/index' import GitTokenContracts from './contracts/index' @@ -28,7 +29,12 @@ import { saveTotalSupply, getContributions, getTokenSupply, - getUserBalances + getUserBalances, + saveUserDetails, + getUserDetails, + saveEndUserLicenseAgreement, + getEndUserLicenseAgreement, + updateUserAddress } from './mysql/index' import { @@ -39,7 +45,9 @@ import { } from './routers/index' import { - WebHookMiddleware + WebHookMiddleware, + SaveUserMiddleware, + VerifyAccountMiddleware } from './middleware/index' import { @@ -74,26 +82,34 @@ export default class GitTokenServer extends GitTokenContracts { this.web3Provider = web3Provider /* Bind Methods */ + this.query = query.bind(this) this.AuthRouter = AuthRouter.bind(this) this.WebHookRouter = WebHookRouter.bind(this) this.ApiRouter = ApiRouter.bind(this) this.AccountRouter = AccountRouter.bind(this) this.WebHookMiddleware = WebHookMiddleware.bind(this) + this.SaveUserMiddleware = SaveUserMiddleware.bind(this) + this.VerifyAccountMiddleware = VerifyAccountMiddleware.bind(this) this.parseContribution = parseContribution.bind(this) this.validateWebHookRequest = validateWebHookRequest.bind(this) this.signContribution = signContribution.bind(this) - this.query = query.bind(this) this.saveContribution = saveContribution.bind(this) this.saveUserBalance = saveUserBalance.bind(this) this.saveTotalSupply = saveTotalSupply.bind(this) this.getContributions = getContributions.bind(this) this.getTokenSupply = getTokenSupply.bind(this) this.getUserBalances = getUserBalances.bind(this) + this.saveUserDetails = saveUserDetails.bind(this) + this.getUserDetails = getUserDetails.bind(this) + this.saveEndUserLicenseAgreement = saveEndUserLicenseAgreement.bind(this) + this.getEndUserLicenseAgreement = getEndUserLicenseAgreement.bind(this) + this.updateUserAddress = updateUserAddress.bind(this) this.handleContribution = handleContribution.bind(this) this.handleEventActions = handleEventActions.bind(this) this.handlePingEvent = handlePingEvent.bind(this) this.createOrgWebHook = createOrgWebHook.bind(this) + this.getOrganizations = getOrganizations.bind(this) /* Gitter WebHook Integration */ @@ -119,14 +135,18 @@ export default class GitTokenServer extends GitTokenContracts { this.app.use(bodyParser.json()) // handle json data this.app.use(bodyParser.urlencoded({ extended: true })) // handle + this.app.use('/api/', this.ApiRouter()); this.app.use('/auth/', this.AuthRouter()); this.app.use('/webhook/', this.WebHookRouter()); - this.app.use('/account', this.AccountRouter()); + // this.app.use('/account', this.AccountRouter()); - // Serve Web Applications - this.app.use('/registry', express.static(`${process.cwd()}/node_modules/gittoken-registry-ui/`)) - this.app.use('/', express.static(`${process.cwd()}/node_modules/gittoken-landing-page/`)) + // Serve Web Application UI + this.app.use('/', express.static(`${process.cwd()}/ui/`)) + + this.app.use((req, res) => { + res.redirect('/') + }) /* Run GitToken Server */ diff --git a/src/middleware/SaveUserMiddleware.js b/src/middleware/SaveUserMiddleware.js new file mode 100644 index 0000000..f3766c6 --- /dev/null +++ b/src/middleware/SaveUserMiddleware.js @@ -0,0 +1,19 @@ +export default function SaveUserMiddleware(req, res, next) { + const { session: { passport } } = req + const { user: { profile: { username, emails } } } = passport + + this.saveUserDetails({ + username, + email: emails[0]['value'] + }).then((user) => { + next() + }).catch((error) => { + switch(error.errno) { + case 1062: // sql duplicate entry error + return next() + break; + default: + res.status(500).send(error) + } + }) +} diff --git a/src/middleware/VerifyAccountMiddleware.js b/src/middleware/VerifyAccountMiddleware.js new file mode 100644 index 0000000..7be48b4 --- /dev/null +++ b/src/middleware/VerifyAccountMiddleware.js @@ -0,0 +1,41 @@ +import Promise, { promisifyAll } from 'bluebird' +import { recoverTypedSignature, typedSignatureHash } from 'eth-sig-util' + +export default function VerifyAccountMiddleware(req, res, next) { + const { body: { msgParams, sig, username, address }, session: { passport } } = req + + if (passport && passport['user']) { + const { user: { profile: { username, emails } } } = passport + const signer = recoverTypedSignature({ data: msgParams, sig }) + const user = msgParams[1].value + if (address != signer || username != user) { + res.status(401).send(false) + } else { + const eula_hash = typedSignatureHash(msgParams) + this.saveEndUserLicenseAgreement({ + eula_hash, + signature: sig, + username, + address + }).then((result) => { + console.log('result', result) + return this.updateUserAddress({ + address, + username + }) + }).then((result) => { + console.log('result', result) + next() + }).catch((error) => { + if (error.errno == 1062) { + next() + } else { + console.log('VerifyAccountMiddleware::error', error) + res.status(500).send(error) + } + }) + } + } else { + res.status(401).send(false) + } +} diff --git a/src/middleware/index.js b/src/middleware/index.js index b48c4ef..1a16c14 100644 --- a/src/middleware/index.js +++ b/src/middleware/index.js @@ -1,5 +1,9 @@ import WebHookMiddleware from './WebHookMiddleware' +import SaveUserMiddleware from './SaveUserMiddleware' +import VerifyAccountMiddleware from './VerifyAccountMiddleware' export { - WebHookMiddleware + WebHookMiddleware, + SaveUserMiddleware, + VerifyAccountMiddleware } diff --git a/src/mysql/getEndUserLicenseAgreement.js b/src/mysql/getEndUserLicenseAgreement.js new file mode 100644 index 0000000..f519db9 --- /dev/null +++ b/src/mysql/getEndUserLicenseAgreement.js @@ -0,0 +1,13 @@ +export default function getEndUserLicenseAgreement({ username }) { + return new Promise((resolve, reject) => { + this.query({ + queryString: ` + SELECT * FROM eula WHERE username = "${username}"; + ` + }).then((eula) => { + resolve(eula[0]) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/mysql/getUserDetails.js b/src/mysql/getUserDetails.js new file mode 100644 index 0000000..df3b186 --- /dev/null +++ b/src/mysql/getUserDetails.js @@ -0,0 +1,13 @@ +export default function getUserDetails ({ username }) { + return new Promise((resolve, reject) => { + this.query({ + queryString: ` + SELECT * FROM user_details WHERE username = "${username}"; + ` + }).then((user) => { + resolve(user[0]) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/mysql/index.js b/src/mysql/index.js index de02213..710f70d 100644 --- a/src/mysql/index.js +++ b/src/mysql/index.js @@ -4,6 +4,11 @@ import saveTotalSupply from './saveTotalSupply' import getContributions from './getContributions' import getTokenSupply from './getTokenSupply' import getUserBalances from './getUserBalances' +import saveUserDetails from './saveUserDetails' +import getUserDetails from './getUserDetails' +import saveEndUserLicenseAgreement from './saveEndUserLicenseAgreement' +import getEndUserLicenseAgreement from './getEndUserLicenseAgreement' +import updateUserAddress from './updateUserAddress' import query from './query' export { @@ -13,5 +18,10 @@ export { getContributions, getTokenSupply, getUserBalances, - query + query, + saveUserDetails, + getUserDetails, + saveEndUserLicenseAgreement, + getEndUserLicenseAgreement, + updateUserAddress } diff --git a/src/mysql/saveEndUserLicenseAgreement.js b/src/mysql/saveEndUserLicenseAgreement.js new file mode 100644 index 0000000..b99179e --- /dev/null +++ b/src/mysql/saveEndUserLicenseAgreement.js @@ -0,0 +1,47 @@ +import Promise from 'bluebird' + +export default function saveEndUserLicenseAgreement({ + username='', + eula_hash='', + signature='', + address='' +}) { + return new Promise((resolve, reject) => { + this.query({ + queryString: ` + CREATE TABLE IF NOT EXISTS eula ( + username CHARACTER(39) PRIMARY KEY, + eula_hash CHARACTER(66), + signature CHARACTER(132), + address CHARACTER(66) + ); + ` + }).then(() => { + return this.query({ + queryString: ` + INSERT INTO eula ( + username, + eula_hash, + signature, + address + ) VALUES ( + "${ username }", + "${ eula_hash }", + "${ signature }", + "${ address }" + ); + ` + }) + }).then(() => { + return this.query({ + queryString: ` + SELECT * FROM eula WHERE username = "${username}"; + ` + }) + }).then((eula) => { + resolve(eula[0]) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/mysql/saveUserDetails.js b/src/mysql/saveUserDetails.js new file mode 100644 index 0000000..667594b --- /dev/null +++ b/src/mysql/saveUserDetails.js @@ -0,0 +1,43 @@ +import Promise from 'bluebird' + +export default function saveUserDetails({ + username='', + email='', + address='0x0' +}) { + return new Promise((resolve, reject) => { + this.query({ + queryString: ` + CREATE TABLE IF NOT EXISTS user_details ( + email TEXT, + username CHARACTER(39) PRIMARY KEY, + address CHARACTER(42) NOT NULL DEFAULT "0x0" + ); + ` + }).then(() => { + return this.query({ + queryString: ` + INSERT INTO user_details ( + email, + username, + address + ) VALUES ( + "${ email }", + "${ username }", + "${ address }" + ); + ` + }) + }).then(() => { + return this.query({ + queryString: ` + SELECT * FROM user_details WHERE username = "${username}"; + ` + }) + }).then((details) => { + resolve(details[0]) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/mysql/updateUserAddress.js b/src/mysql/updateUserAddress.js new file mode 100644 index 0000000..ebc1b5c --- /dev/null +++ b/src/mysql/updateUserAddress.js @@ -0,0 +1,26 @@ +import Promise from 'bluebird' + +export default function updateUserAddress({ + address='0x0', + username='' +}) { + return new Promise((resolve, reject) => { + this.query({ + queryString: ` + UPDATE user_details + SET address = "${ address }" + WHERE username = "${ username }" + ` + }).then(() => { + return this.query({ + queryString: ` + SELECT * FROM user_details WHERE username = "${username}"; + ` + }) + }).then((details) => { + resolve(details[0]) + }).catch((error) => { + reject(error) + }) + }) +} diff --git a/src/routers/AccountRouter.js b/src/routers/AccountRouter.js index 8651c27..16ade7f 100644 --- a/src/routers/AccountRouter.js +++ b/src/routers/AccountRouter.js @@ -1,12 +1,10 @@ -import { Router } from 'express' +import express, { Router } from 'express' export default function AccountRouter() { let router = Router() // Serve static web apps - router.get('/', (req, res) => { - res.send(true) - }) + router.use('/', express.static(`${process.cwd()}/node_modules/gittoken-account-ui/`)) return router } diff --git a/src/routers/ApiRouter.js b/src/routers/ApiRouter.js index 1fe19da..59014b8 100644 --- a/src/routers/ApiRouter.js +++ b/src/routers/ApiRouter.js @@ -1,6 +1,6 @@ import { Router } from 'express' -export default function AuthRouter() { +export default function ApiRouter() { let router = Router() router.get('/contributions/:username?', (req, res) => { @@ -59,15 +59,58 @@ export default function AuthRouter() { }) }) - router.get('/profile', (req, res) => { - try { - const { session: { passport: { user: { profile } } } } = req - res.status(200).send(profile) - } catch (error) { - res.status(500).send(error) + router.get('/account/profile', (req, res) => { + const { session: { passport } } = req + + if (passport && passport['user']) { + try { + const { user: { profile } } = passport + res.status(200).send(profile) + } catch (error) { + res.status(500).send(error) + } + } else { + res.status(401).send(false) + } + }) + + router.get('/account/verified', (req, res) => { + const { session: { passport } } = req + + if (passport && passport['user']) { + const { user: { profile: { username } } } = passport + this.getEndUserLicenseAgreement({ username }).then((eula) => { + const verified = !eula ? false : true + res.status(200).send(verified) + }).catch((error) => { + res.status(500).send(error) + }) + } else { + res.status(401).send(false) } }) + router.get('/account/organizations', (req, res) => { + const { session: { passport } } = req + + if (passport && passport['user']) { + const { user: { accessToken, profile: { username } } } = passport + this.getOrganizations({ accessToken, username }).then((organizations) => { + res.status(200).send(organizations) + }).catch((error) => { + console.log('error', error) + res.status(500).send(error) + }) + + } else { + res.status(401).send(false) + } + }) + + router.post('/account/verify', this.VerifyAccountMiddleware, (req, res) => { + res.status(200).send(true) + }) + router.post('/register', (req, res) => { this.createOrgWebHook({ req }).then((result) => { res.status(200).send(result) diff --git a/src/routers/AuthRouter.js b/src/routers/AuthRouter.js index 1a888f4..8672645 100644 --- a/src/routers/AuthRouter.js +++ b/src/routers/AuthRouter.js @@ -27,27 +27,26 @@ export default function AuthRouter() { router.get('/github', this.passport.authenticate('github')) router.get('/github/callback', this.passport.authenticate('github', { failureRedirect: '/' }), - (req, res) => { - res.redirect('/account') - }) - - router.get('/verify/:address', (req, res) => { - const { - session: { passport }, - params: { address } - } = req - - if (!passport || !passport['user']) { - res.redirect('/auth/github') - } else { - const { user: { profile: { username } } } = req - - res.send(` - Authenticating GitToken Contributor Address, ${address}, - with GitHub User, ${username} - `) - } - }) + this.SaveUserMiddleware, + (req, res) => { res.redirect('/') }) + + // router.get('/verify/:address', (req, res) => { + // const { + // session: { passport }, + // params: { address } + // } = req + // + // if (!passport || !passport['user']) { + // res.redirect('/auth/github') + // } else { + // const { user: { profile: { username } } } = req + // + // res.send(` + // Authenticating GitToken Contributor Address, ${address}, + // with GitHub User, ${username} + // `) + // } + // }) return router } diff --git a/ui/6d42f3d573f78857f2db.worker.js b/ui/6d42f3d573f78857f2db.worker.js new file mode 100644 index 0000000..230934c --- /dev/null +++ b/ui/6d42f3d573f78857f2db.worker.js @@ -0,0 +1,7966 @@ +/******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { +/******/ configurable: false, +/******/ enumerable: true, +/******/ get: getter +/******/ }); +/******/ } +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = "/"; +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(__webpack_require__.s = 11); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var bind = __webpack_require__(6); + +/*global toString:true*/ + +// utils is a library of generic helper functions non-specific to axios + +var toString = Object.prototype.toString; + +/** + * Determine if a value is an Array + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an Array, otherwise false + */ +function isArray(val) { + return toString.call(val) === '[object Array]'; +} + +/** + * Determine if a value is an ArrayBuffer + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an ArrayBuffer, otherwise false + */ +function isArrayBuffer(val) { + return toString.call(val) === '[object ArrayBuffer]'; +} + +/** + * Determine if a value is a FormData + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an FormData, otherwise false + */ +function isFormData(val) { + return (typeof FormData !== 'undefined') && (val instanceof FormData); +} + +/** + * Determine if a value is a view on an ArrayBuffer + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false + */ +function isArrayBufferView(val) { + var result; + if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) { + result = ArrayBuffer.isView(val); + } else { + result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer); + } + return result; +} + +/** + * Determine if a value is a String + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a String, otherwise false + */ +function isString(val) { + return typeof val === 'string'; +} + +/** + * Determine if a value is a Number + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Number, otherwise false + */ +function isNumber(val) { + return typeof val === 'number'; +} + +/** + * Determine if a value is undefined + * + * @param {Object} val The value to test + * @returns {boolean} True if the value is undefined, otherwise false + */ +function isUndefined(val) { + return typeof val === 'undefined'; +} + +/** + * Determine if a value is an Object + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an Object, otherwise false + */ +function isObject(val) { + return val !== null && typeof val === 'object'; +} + +/** + * Determine if a value is a Date + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Date, otherwise false + */ +function isDate(val) { + return toString.call(val) === '[object Date]'; +} + +/** + * Determine if a value is a File + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a File, otherwise false + */ +function isFile(val) { + return toString.call(val) === '[object File]'; +} + +/** + * Determine if a value is a Blob + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Blob, otherwise false + */ +function isBlob(val) { + return toString.call(val) === '[object Blob]'; +} + +/** + * Determine if a value is a Function + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Function, otherwise false + */ +function isFunction(val) { + return toString.call(val) === '[object Function]'; +} + +/** + * Determine if a value is a Stream + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Stream, otherwise false + */ +function isStream(val) { + return isObject(val) && isFunction(val.pipe); +} + +/** + * Determine if a value is a URLSearchParams object + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a URLSearchParams object, otherwise false + */ +function isURLSearchParams(val) { + return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams; +} + +/** + * Trim excess whitespace off the beginning and end of a string + * + * @param {String} str The String to trim + * @returns {String} The String freed of excess whitespace + */ +function trim(str) { + return str.replace(/^\s*/, '').replace(/\s*$/, ''); +} + +/** + * Determine if we're running in a standard browser environment + * + * This allows axios to run in a web worker, and react-native. + * Both environments support XMLHttpRequest, but not fully standard globals. + * + * web workers: + * typeof window -> undefined + * typeof document -> undefined + * + * react-native: + * typeof document.createElement -> undefined + */ +function isStandardBrowserEnv() { + return ( + typeof window !== 'undefined' && + typeof document !== 'undefined' && + typeof document.createElement === 'function' + ); +} + +/** + * Iterate over an Array or an Object invoking a function for each item. + * + * If `obj` is an Array callback will be called passing + * the value, index, and complete array for each item. + * + * If 'obj' is an Object callback will be called passing + * the value, key, and complete object for each property. + * + * @param {Object|Array} obj The object to iterate + * @param {Function} fn The callback to invoke for each item + */ +function forEach(obj, fn) { + // Don't bother if no value provided + if (obj === null || typeof obj === 'undefined') { + return; + } + + // Force an array if not already something iterable + if (typeof obj !== 'object' && !isArray(obj)) { + /*eslint no-param-reassign:0*/ + obj = [obj]; + } + + if (isArray(obj)) { + // Iterate over array values + for (var i = 0, l = obj.length; i < l; i++) { + fn.call(null, obj[i], i, obj); + } + } else { + // Iterate over object keys + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) { + fn.call(null, obj[key], key, obj); + } + } + } +} + +/** + * Accepts varargs expecting each argument to be an object, then + * immutably merges the properties of each object and returns result. + * + * When multiple objects contain the same key the later object in + * the arguments list will take precedence. + * + * Example: + * + * ```js + * var result = merge({foo: 123}, {foo: 456}); + * console.log(result.foo); // outputs 456 + * ``` + * + * @param {Object} obj1 Object to merge + * @returns {Object} Result of all merge properties + */ +function merge(/* obj1, obj2, obj3, ... */) { + var result = {}; + function assignValue(val, key) { + if (typeof result[key] === 'object' && typeof val === 'object') { + result[key] = merge(result[key], val); + } else { + result[key] = val; + } + } + + for (var i = 0, l = arguments.length; i < l; i++) { + forEach(arguments[i], assignValue); + } + return result; +} + +/** + * Extends object a by mutably adding to it the properties of object b. + * + * @param {Object} a The object to be extended + * @param {Object} b The object to copy properties from + * @param {Object} thisArg The object to bind function to + * @return {Object} The resulting value of object a + */ +function extend(a, b, thisArg) { + forEach(b, function assignValue(val, key) { + if (thisArg && typeof val === 'function') { + a[key] = bind(val, thisArg); + } else { + a[key] = val; + } + }); + return a; +} + +module.exports = { + isArray: isArray, + isArrayBuffer: isArrayBuffer, + isFormData: isFormData, + isArrayBufferView: isArrayBufferView, + isString: isString, + isNumber: isNumber, + isObject: isObject, + isUndefined: isUndefined, + isDate: isDate, + isFile: isFile, + isBlob: isBlob, + isFunction: isFunction, + isStream: isStream, + isURLSearchParams: isURLSearchParams, + isStandardBrowserEnv: isStandardBrowserEnv, + forEach: forEach, + merge: merge, + extend: extend, + trim: trim +}; + + +/***/ }), +/* 1 */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = { "default": __webpack_require__(14), __esModule: true }; + +/***/ }), +/* 2 */ +/***/ (function(module, exports) { + +// shim for using process in browser +var process = module.exports = {}; + +// cached from whatever global is present so that test runners that stub it +// don't break things. But we need to wrap it in a try catch in case it is +// wrapped in strict mode code which doesn't define any globals. It's inside a +// function because try/catches deoptimize in certain engines. + +var cachedSetTimeout; +var cachedClearTimeout; + +function defaultSetTimout() { + throw new Error('setTimeout has not been defined'); +} +function defaultClearTimeout () { + throw new Error('clearTimeout has not been defined'); +} +(function () { + try { + if (typeof setTimeout === 'function') { + cachedSetTimeout = setTimeout; + } else { + cachedSetTimeout = defaultSetTimout; + } + } catch (e) { + cachedSetTimeout = defaultSetTimout; + } + try { + if (typeof clearTimeout === 'function') { + cachedClearTimeout = clearTimeout; + } else { + cachedClearTimeout = defaultClearTimeout; + } + } catch (e) { + cachedClearTimeout = defaultClearTimeout; + } +} ()) +function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + //normal enviroments in sane situations + return setTimeout(fun, 0); + } + // if setTimeout wasn't available but was latter defined + if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { + cachedSetTimeout = setTimeout; + return setTimeout(fun, 0); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedSetTimeout(fun, 0); + } catch(e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedSetTimeout.call(null, fun, 0); + } catch(e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error + return cachedSetTimeout.call(this, fun, 0); + } + } + + +} +function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + //normal enviroments in sane situations + return clearTimeout(marker); + } + // if clearTimeout wasn't available but was latter defined + if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { + cachedClearTimeout = clearTimeout; + return clearTimeout(marker); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedClearTimeout(marker); + } catch (e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedClearTimeout.call(null, marker); + } catch (e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. + // Some versions of I.E. have different rules for clearTimeout vs setTimeout + return cachedClearTimeout.call(this, marker); + } + } + + + +} +var queue = []; +var draining = false; +var currentQueue; +var queueIndex = -1; + +function cleanUpNextTick() { + if (!draining || !currentQueue) { + return; + } + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); + } +} + +function drainQueue() { + if (draining) { + return; + } + var timeout = runTimeout(cleanUpNextTick); + draining = true; + + var len = queue.length; + while(len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); + } + } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + runClearTimeout(timeout); +} + +process.nextTick = function (fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } +}; + +// v8 likes predictible objects +function Item(fun, array) { + this.fun = fun; + this.array = array; +} +Item.prototype.run = function () { + this.fun.apply(null, this.array); +}; +process.title = 'browser'; +process.browser = true; +process.env = {}; +process.argv = []; +process.version = ''; // empty string to avoid regexp issues +process.versions = {}; + +function noop() {} + +process.on = noop; +process.addListener = noop; +process.once = noop; +process.off = noop; +process.removeListener = noop; +process.removeAllListeners = noop; +process.emit = noop; +process.prependListener = noop; +process.prependOnceListener = noop; + +process.listeners = function (name) { return [] } + +process.binding = function (name) { + throw new Error('process.binding is not supported'); +}; + +process.cwd = function () { return '/' }; +process.chdir = function (dir) { + throw new Error('process.chdir is not supported'); +}; +process.umask = function() { return 0; }; + + +/***/ }), +/* 3 */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(19); + +/***/ }), +/* 4 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +/* WEBPACK VAR INJECTION */(function(process) { + +var utils = __webpack_require__(0); +var normalizeHeaderName = __webpack_require__(21); + +var PROTECTION_PREFIX = /^\)\]\}',?\n/; +var DEFAULT_CONTENT_TYPE = { + 'Content-Type': 'application/x-www-form-urlencoded' +}; + +function setContentTypeIfUnset(headers, value) { + if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) { + headers['Content-Type'] = value; + } +} + +function getDefaultAdapter() { + var adapter; + if (typeof XMLHttpRequest !== 'undefined') { + // For browsers use XHR adapter + adapter = __webpack_require__(7); + } else if (typeof process !== 'undefined') { + // For node use HTTP adapter + adapter = __webpack_require__(7); + } + return adapter; +} + +var defaults = { + adapter: getDefaultAdapter(), + + transformRequest: [function transformRequest(data, headers) { + normalizeHeaderName(headers, 'Content-Type'); + if (utils.isFormData(data) || + utils.isArrayBuffer(data) || + utils.isStream(data) || + utils.isFile(data) || + utils.isBlob(data) + ) { + return data; + } + if (utils.isArrayBufferView(data)) { + return data.buffer; + } + if (utils.isURLSearchParams(data)) { + setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8'); + return data.toString(); + } + if (utils.isObject(data)) { + setContentTypeIfUnset(headers, 'application/json;charset=utf-8'); + return JSON.stringify(data); + } + return data; + }], + + transformResponse: [function transformResponse(data) { + /*eslint no-param-reassign:0*/ + if (typeof data === 'string') { + data = data.replace(PROTECTION_PREFIX, ''); + try { + data = JSON.parse(data); + } catch (e) { /* Ignore */ } + } + return data; + }], + + timeout: 0, + + xsrfCookieName: 'XSRF-TOKEN', + xsrfHeaderName: 'X-XSRF-TOKEN', + + maxContentLength: -1, + + validateStatus: function validateStatus(status) { + return status >= 200 && status < 300; + } +}; + +defaults.headers = { + common: { + 'Accept': 'application/json, text/plain, */*' + } +}; + +utils.forEach(['delete', 'get', 'head'], function forEachMehtodNoData(method) { + defaults.headers[method] = {}; +}); + +utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) { + defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE); +}); + +module.exports = defaults; + +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2))) + +/***/ }), +/* 5 */ +/***/ (function(module, exports) { + +var g; + +// This works in non-strict mode +g = (function() { + return this; +})(); + +try { + // This works if eval is allowed (see CSP) + g = g || Function("return this")() || (1,eval)("this"); +} catch(e) { + // This works if the window reference is available + if(typeof window === "object") + g = window; +} + +// g can still be undefined, but nothing to do about it... +// We return undefined, instead of nothing here, so it's +// easier to handle this case. if(!global) { ...} + +module.exports = g; + + +/***/ }), +/* 6 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +module.exports = function bind(fn, thisArg) { + return function wrap() { + var args = new Array(arguments.length); + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i]; + } + return fn.apply(thisArg, args); + }; +}; + + +/***/ }), +/* 7 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var utils = __webpack_require__(0); +var settle = __webpack_require__(22); +var buildURL = __webpack_require__(24); +var parseHeaders = __webpack_require__(25); +var isURLSameOrigin = __webpack_require__(26); +var createError = __webpack_require__(8); +var btoa = (typeof window !== 'undefined' && window.btoa && window.btoa.bind(window)) || __webpack_require__(27); + +module.exports = function xhrAdapter(config) { + return new Promise(function dispatchXhrRequest(resolve, reject) { + var requestData = config.data; + var requestHeaders = config.headers; + + if (utils.isFormData(requestData)) { + delete requestHeaders['Content-Type']; // Let the browser set it + } + + var request = new XMLHttpRequest(); + var loadEvent = 'onreadystatechange'; + var xDomain = false; + + // For IE 8/9 CORS support + // Only supports POST and GET calls and doesn't returns the response headers. + // DON'T do this for testing b/c XMLHttpRequest is mocked, not XDomainRequest. + if ("development" !== 'test' && + typeof window !== 'undefined' && + window.XDomainRequest && !('withCredentials' in request) && + !isURLSameOrigin(config.url)) { + request = new window.XDomainRequest(); + loadEvent = 'onload'; + xDomain = true; + request.onprogress = function handleProgress() {}; + request.ontimeout = function handleTimeout() {}; + } + + // HTTP basic authentication + if (config.auth) { + var username = config.auth.username || ''; + var password = config.auth.password || ''; + requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password); + } + + request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true); + + // Set the request timeout in MS + request.timeout = config.timeout; + + // Listen for ready state + request[loadEvent] = function handleLoad() { + if (!request || (request.readyState !== 4 && !xDomain)) { + return; + } + + // The request errored out and we didn't get a response, this will be + // handled by onerror instead + // With one exception: request that using file: protocol, most browsers + // will return status as 0 even though it's a successful request + if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) { + return; + } + + // Prepare the response + var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null; + var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response; + var response = { + data: responseData, + // IE sends 1223 instead of 204 (https://github.com/mzabriskie/axios/issues/201) + status: request.status === 1223 ? 204 : request.status, + statusText: request.status === 1223 ? 'No Content' : request.statusText, + headers: responseHeaders, + config: config, + request: request + }; + + settle(resolve, reject, response); + + // Clean up request + request = null; + }; + + // Handle low level network errors + request.onerror = function handleError() { + // Real errors are hidden from us by the browser + // onerror should only fire if it's a network error + reject(createError('Network Error', config)); + + // Clean up request + request = null; + }; + + // Handle timeout + request.ontimeout = function handleTimeout() { + reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED')); + + // Clean up request + request = null; + }; + + // Add xsrf header + // This is only done if running in a standard browser environment. + // Specifically not if we're in a web worker, or react-native. + if (utils.isStandardBrowserEnv()) { + var cookies = __webpack_require__(28); + + // Add xsrf header + var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ? + cookies.read(config.xsrfCookieName) : + undefined; + + if (xsrfValue) { + requestHeaders[config.xsrfHeaderName] = xsrfValue; + } + } + + // Add headers to the request + if ('setRequestHeader' in request) { + utils.forEach(requestHeaders, function setRequestHeader(val, key) { + if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') { + // Remove Content-Type if data is undefined + delete requestHeaders[key]; + } else { + // Otherwise add header to the request + request.setRequestHeader(key, val); + } + }); + } + + // Add withCredentials to request if needed + if (config.withCredentials) { + request.withCredentials = true; + } + + // Add responseType to request if needed + if (config.responseType) { + try { + request.responseType = config.responseType; + } catch (e) { + if (request.responseType !== 'json') { + throw e; + } + } + } + + // Handle progress if needed + if (typeof config.onDownloadProgress === 'function') { + request.addEventListener('progress', config.onDownloadProgress); + } + + // Not all browsers support upload events + if (typeof config.onUploadProgress === 'function' && request.upload) { + request.upload.addEventListener('progress', config.onUploadProgress); + } + + if (config.cancelToken) { + // Handle cancellation + config.cancelToken.promise.then(function onCanceled(cancel) { + if (!request) { + return; + } + + request.abort(); + reject(cancel); + // Clean up request + request = null; + }); + } + + if (requestData === undefined) { + requestData = null; + } + + // Send the request + request.send(requestData); + }); +}; + + +/***/ }), +/* 8 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var enhanceError = __webpack_require__(23); + +/** + * Create an Error with the specified message, config, error code, and response. + * + * @param {string} message The error message. + * @param {Object} config The config. + * @param {string} [code] The error code (for example, 'ECONNABORTED'). + @ @param {Object} [response] The response. + * @returns {Error} The created error. + */ +module.exports = function createError(message, config, code, response) { + var error = new Error(message); + return enhanceError(error, config, code, response); +}; + + +/***/ }), +/* 9 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +module.exports = function isCancel(value) { + return !!(value && value.__CANCEL__); +}; + + +/***/ }), +/* 10 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +/** + * A `Cancel` is an object that is thrown when an operation is canceled. + * + * @class + * @param {string=} message The message. + */ +function Cancel(message) { + this.message = message; +} + +Cancel.prototype.toString = function toString() { + return 'Cancel' + (this.message ? ': ' + this.message : ''); +}; + +Cancel.prototype.__CANCEL__ = true; + +module.exports = Cancel; + + +/***/ }), +/* 11 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__accountVerified__ = __webpack_require__(12); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__accountVerified___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__accountVerified__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getProfile__ = __webpack_require__(13); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getProfile___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__getProfile__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__verifyAccount__ = __webpack_require__(36); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__verifyAccount___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__verifyAccount__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__getOrganizations__ = __webpack_require__(37); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__getOrganizations___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__getOrganizations__); + + + + + +class GitTokenAccountWorker { + constructor({ accountApiUrl }) { + this.accountApiUrl = accountApiUrl + + /* Bind Methods */ + this.getOrganizations = __WEBPACK_IMPORTED_MODULE_3__getOrganizations___default.a.bind(this) + this.accountVerified = __WEBPACK_IMPORTED_MODULE_0__accountVerified___default.a.bind(this) + this.verifyAccount = __WEBPACK_IMPORTED_MODULE_2__verifyAccount___default.a.bind(this) + this.getProfile = __WEBPACK_IMPORTED_MODULE_1__getProfile___default.a.bind(this) + + this.listen() + } + + listen() { + console.log('GitToken Account Web Worker Listening for Events') + addEventListener('message', (msg) => { + console.log('msg', msg) + const { type, value } = typeof msg.data == 'string' ? JSON.parse(msg.data) : msg.data + + if (type) { + switch(type) { + case 'VERIFY_ACCOUNT': + const { username, address, msgParams, sig } = value + return this.verifyAccount({ username, address, msgParams, sig }) + break; + case 'GET_PROFILE': + return this.getProfile() + break; + case 'GET_ORGANIZATIONS': + return this.getOrganizations() + break; + // webpackOk is emitted by dev server? + case 'webpackOk': + break; + default: + console.error(new Error(`Invalid Type for Web Worker: ${type}`)) + } + } + }) + } +} + +const worker = new GitTokenAccountWorker({ accountApiUrl: `/api/account` }) + +/* harmony default export */ __webpack_exports__["default"] = (worker); + + +/***/ }), +/* 12 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = accountVerified; +function accountVerified(_ref) { + var username = _ref.username; + + console.log('Check if the account is verified'); +} + +/***/ }), +/* 13 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _stringify = __webpack_require__(1); + +var _stringify2 = _interopRequireDefault(_stringify); + +exports.default = getProfile; + +var _bluebird = __webpack_require__(16); + +var _bluebird2 = _interopRequireDefault(_bluebird); + +var _axios = __webpack_require__(3); + +var _axios2 = _interopRequireDefault(_axios); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function getProfile() { + (0, _bluebird.join)((0, _axios2.default)({ method: 'GET', url: this.accountApiUrl + '/profile' }), (0, _axios2.default)({ method: 'GET', url: this.accountApiUrl + '/verified' })).then(function (response) { + + postMessage((0, _stringify2.default)({ + type: 'SET_PROFILE', + id: 'profile', + value: response[0].data + })); + + postMessage((0, _stringify2.default)({ + type: 'SET_ACCOUNT_VERIFIED', + id: 'verified', + value: response[1].data + })); + + postMessage((0, _stringify2.default)({ + type: 'SET_ACCOUNT_SETUP_DETAILS', + id: 'activeStep', + value: 'welcome' + })); + + return null; + }).catch(function (error) { + console.log('error', error); + var status = error.response.status; + + switch (status) { + case 401: + console.warn('Unauthorized! Please Register with GitHub'); + return null; + default: + console.error(error); + } + }); +} + +/***/ }), +/* 14 */ +/***/ (function(module, exports, __webpack_require__) { + +var core = __webpack_require__(15); +var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify }); +module.exports = function stringify(it) { // eslint-disable-line no-unused-vars + return $JSON.stringify.apply($JSON, arguments); +}; + + +/***/ }), +/* 15 */ +/***/ (function(module, exports) { + +var core = module.exports = { version: '2.5.3' }; +if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef + + +/***/ }), +/* 16 */ +/***/ (function(module, exports, __webpack_require__) { + +/* WEBPACK VAR INJECTION */(function(process, global, setImmediate) {/* @preserve + * The MIT License (MIT) + * + * Copyright (c) 2013-2017 Petka Antonov + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ +/** + * bluebird build version 3.5.1 + * Features enabled: core, race, call_get, generators, map, nodeify, promisify, props, reduce, settle, some, using, timers, filter, any, each +*/ +!function(e){if(true)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var f;"undefined"!=typeof window?f=window:"undefined"!=typeof global?f=global:"undefined"!=typeof self&&(f=self),f.Promise=e()}}(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof _dereq_=="function"&&_dereq_;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof _dereq_=="function"&&_dereq_;for(var o=0;o 0) { + var fn = queue.shift(); + if (typeof fn !== "function") { + fn._settlePromises(); + continue; + } + var receiver = queue.shift(); + var arg = queue.shift(); + fn.call(receiver, arg); + } +}; + +Async.prototype._drainQueues = function () { + this._drainQueue(this._normalQueue); + this._reset(); + this._haveDrainedQueues = true; + this._drainQueue(this._lateQueue); +}; + +Async.prototype._queueTick = function () { + if (!this._isTickUsed) { + this._isTickUsed = true; + this._schedule(this.drainQueues); + } +}; + +Async.prototype._reset = function () { + this._isTickUsed = false; +}; + +module.exports = Async; +module.exports.firstLineError = firstLineError; + +},{"./queue":26,"./schedule":29,"./util":36}],3:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, INTERNAL, tryConvertToPromise, debug) { +var calledBind = false; +var rejectThis = function(_, e) { + this._reject(e); +}; + +var targetRejected = function(e, context) { + context.promiseRejectionQueued = true; + context.bindingPromise._then(rejectThis, rejectThis, null, this, e); +}; + +var bindingResolved = function(thisArg, context) { + if (((this._bitField & 50397184) === 0)) { + this._resolveCallback(context.target); + } +}; + +var bindingRejected = function(e, context) { + if (!context.promiseRejectionQueued) this._reject(e); +}; + +Promise.prototype.bind = function (thisArg) { + if (!calledBind) { + calledBind = true; + Promise.prototype._propagateFrom = debug.propagateFromFunction(); + Promise.prototype._boundValue = debug.boundValueFunction(); + } + var maybePromise = tryConvertToPromise(thisArg); + var ret = new Promise(INTERNAL); + ret._propagateFrom(this, 1); + var target = this._target(); + ret._setBoundTo(maybePromise); + if (maybePromise instanceof Promise) { + var context = { + promiseRejectionQueued: false, + promise: ret, + target: target, + bindingPromise: maybePromise + }; + target._then(INTERNAL, targetRejected, undefined, ret, context); + maybePromise._then( + bindingResolved, bindingRejected, undefined, ret, context); + ret._setOnCancel(maybePromise); + } else { + ret._resolveCallback(target); + } + return ret; +}; + +Promise.prototype._setBoundTo = function (obj) { + if (obj !== undefined) { + this._bitField = this._bitField | 2097152; + this._boundTo = obj; + } else { + this._bitField = this._bitField & (~2097152); + } +}; + +Promise.prototype._isBound = function () { + return (this._bitField & 2097152) === 2097152; +}; + +Promise.bind = function (thisArg, value) { + return Promise.resolve(value).bind(thisArg); +}; +}; + +},{}],4:[function(_dereq_,module,exports){ +"use strict"; +var old; +if (typeof Promise !== "undefined") old = Promise; +function noConflict() { + try { if (Promise === bluebird) Promise = old; } + catch (e) {} + return bluebird; +} +var bluebird = _dereq_("./promise")(); +bluebird.noConflict = noConflict; +module.exports = bluebird; + +},{"./promise":22}],5:[function(_dereq_,module,exports){ +"use strict"; +var cr = Object.create; +if (cr) { + var callerCache = cr(null); + var getterCache = cr(null); + callerCache[" size"] = getterCache[" size"] = 0; +} + +module.exports = function(Promise) { +var util = _dereq_("./util"); +var canEvaluate = util.canEvaluate; +var isIdentifier = util.isIdentifier; + +var getMethodCaller; +var getGetter; +if (false) { +var makeMethodCaller = function (methodName) { + return new Function("ensureMethod", " \n\ + return function(obj) { \n\ + 'use strict' \n\ + var len = this.length; \n\ + ensureMethod(obj, 'methodName'); \n\ + switch(len) { \n\ + case 1: return obj.methodName(this[0]); \n\ + case 2: return obj.methodName(this[0], this[1]); \n\ + case 3: return obj.methodName(this[0], this[1], this[2]); \n\ + case 0: return obj.methodName(); \n\ + default: \n\ + return obj.methodName.apply(obj, this); \n\ + } \n\ + }; \n\ + ".replace(/methodName/g, methodName))(ensureMethod); +}; + +var makeGetter = function (propertyName) { + return new Function("obj", " \n\ + 'use strict'; \n\ + return obj.propertyName; \n\ + ".replace("propertyName", propertyName)); +}; + +var getCompiled = function(name, compiler, cache) { + var ret = cache[name]; + if (typeof ret !== "function") { + if (!isIdentifier(name)) { + return null; + } + ret = compiler(name); + cache[name] = ret; + cache[" size"]++; + if (cache[" size"] > 512) { + var keys = Object.keys(cache); + for (var i = 0; i < 256; ++i) delete cache[keys[i]]; + cache[" size"] = keys.length - 256; + } + } + return ret; +}; + +getMethodCaller = function(name) { + return getCompiled(name, makeMethodCaller, callerCache); +}; + +getGetter = function(name) { + return getCompiled(name, makeGetter, getterCache); +}; +} + +function ensureMethod(obj, methodName) { + var fn; + if (obj != null) fn = obj[methodName]; + if (typeof fn !== "function") { + var message = "Object " + util.classString(obj) + " has no method '" + + util.toString(methodName) + "'"; + throw new Promise.TypeError(message); + } + return fn; +} + +function caller(obj) { + var methodName = this.pop(); + var fn = ensureMethod(obj, methodName); + return fn.apply(obj, this); +} +Promise.prototype.call = function (methodName) { + var args = [].slice.call(arguments, 1);; + if (false) { + if (canEvaluate) { + var maybeCaller = getMethodCaller(methodName); + if (maybeCaller !== null) { + return this._then( + maybeCaller, undefined, undefined, args, undefined); + } + } + } + args.push(methodName); + return this._then(caller, undefined, undefined, args, undefined); +}; + +function namedGetter(obj) { + return obj[this]; +} +function indexedGetter(obj) { + var index = +this; + if (index < 0) index = Math.max(0, index + obj.length); + return obj[index]; +} +Promise.prototype.get = function (propertyName) { + var isIndex = (typeof propertyName === "number"); + var getter; + if (!isIndex) { + if (canEvaluate) { + var maybeGetter = getGetter(propertyName); + getter = maybeGetter !== null ? maybeGetter : namedGetter; + } else { + getter = namedGetter; + } + } else { + getter = indexedGetter; + } + return this._then(getter, undefined, undefined, propertyName, undefined); +}; +}; + +},{"./util":36}],6:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, PromiseArray, apiRejection, debug) { +var util = _dereq_("./util"); +var tryCatch = util.tryCatch; +var errorObj = util.errorObj; +var async = Promise._async; + +Promise.prototype["break"] = Promise.prototype.cancel = function() { + if (!debug.cancellation()) return this._warn("cancellation is disabled"); + + var promise = this; + var child = promise; + while (promise._isCancellable()) { + if (!promise._cancelBy(child)) { + if (child._isFollowing()) { + child._followee().cancel(); + } else { + child._cancelBranched(); + } + break; + } + + var parent = promise._cancellationParent; + if (parent == null || !parent._isCancellable()) { + if (promise._isFollowing()) { + promise._followee().cancel(); + } else { + promise._cancelBranched(); + } + break; + } else { + if (promise._isFollowing()) promise._followee().cancel(); + promise._setWillBeCancelled(); + child = promise; + promise = parent; + } + } +}; + +Promise.prototype._branchHasCancelled = function() { + this._branchesRemainingToCancel--; +}; + +Promise.prototype._enoughBranchesHaveCancelled = function() { + return this._branchesRemainingToCancel === undefined || + this._branchesRemainingToCancel <= 0; +}; + +Promise.prototype._cancelBy = function(canceller) { + if (canceller === this) { + this._branchesRemainingToCancel = 0; + this._invokeOnCancel(); + return true; + } else { + this._branchHasCancelled(); + if (this._enoughBranchesHaveCancelled()) { + this._invokeOnCancel(); + return true; + } + } + return false; +}; + +Promise.prototype._cancelBranched = function() { + if (this._enoughBranchesHaveCancelled()) { + this._cancel(); + } +}; + +Promise.prototype._cancel = function() { + if (!this._isCancellable()) return; + this._setCancelled(); + async.invoke(this._cancelPromises, this, undefined); +}; + +Promise.prototype._cancelPromises = function() { + if (this._length() > 0) this._settlePromises(); +}; + +Promise.prototype._unsetOnCancel = function() { + this._onCancelField = undefined; +}; + +Promise.prototype._isCancellable = function() { + return this.isPending() && !this._isCancelled(); +}; + +Promise.prototype.isCancellable = function() { + return this.isPending() && !this.isCancelled(); +}; + +Promise.prototype._doInvokeOnCancel = function(onCancelCallback, internalOnly) { + if (util.isArray(onCancelCallback)) { + for (var i = 0; i < onCancelCallback.length; ++i) { + this._doInvokeOnCancel(onCancelCallback[i], internalOnly); + } + } else if (onCancelCallback !== undefined) { + if (typeof onCancelCallback === "function") { + if (!internalOnly) { + var e = tryCatch(onCancelCallback).call(this._boundValue()); + if (e === errorObj) { + this._attachExtraTrace(e.e); + async.throwLater(e.e); + } + } + } else { + onCancelCallback._resultCancelled(this); + } + } +}; + +Promise.prototype._invokeOnCancel = function() { + var onCancelCallback = this._onCancel(); + this._unsetOnCancel(); + async.invoke(this._doInvokeOnCancel, this, onCancelCallback); +}; + +Promise.prototype._invokeInternalOnCancel = function() { + if (this._isCancellable()) { + this._doInvokeOnCancel(this._onCancel(), true); + this._unsetOnCancel(); + } +}; + +Promise.prototype._resultCancelled = function() { + this.cancel(); +}; + +}; + +},{"./util":36}],7:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(NEXT_FILTER) { +var util = _dereq_("./util"); +var getKeys = _dereq_("./es5").keys; +var tryCatch = util.tryCatch; +var errorObj = util.errorObj; + +function catchFilter(instances, cb, promise) { + return function(e) { + var boundTo = promise._boundValue(); + predicateLoop: for (var i = 0; i < instances.length; ++i) { + var item = instances[i]; + + if (item === Error || + (item != null && item.prototype instanceof Error)) { + if (e instanceof item) { + return tryCatch(cb).call(boundTo, e); + } + } else if (typeof item === "function") { + var matchesPredicate = tryCatch(item).call(boundTo, e); + if (matchesPredicate === errorObj) { + return matchesPredicate; + } else if (matchesPredicate) { + return tryCatch(cb).call(boundTo, e); + } + } else if (util.isObject(e)) { + var keys = getKeys(item); + for (var j = 0; j < keys.length; ++j) { + var key = keys[j]; + if (item[key] != e[key]) { + continue predicateLoop; + } + } + return tryCatch(cb).call(boundTo, e); + } + } + return NEXT_FILTER; + }; +} + +return catchFilter; +}; + +},{"./es5":13,"./util":36}],8:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise) { +var longStackTraces = false; +var contextStack = []; + +Promise.prototype._promiseCreated = function() {}; +Promise.prototype._pushContext = function() {}; +Promise.prototype._popContext = function() {return null;}; +Promise._peekContext = Promise.prototype._peekContext = function() {}; + +function Context() { + this._trace = new Context.CapturedTrace(peekContext()); +} +Context.prototype._pushContext = function () { + if (this._trace !== undefined) { + this._trace._promiseCreated = null; + contextStack.push(this._trace); + } +}; + +Context.prototype._popContext = function () { + if (this._trace !== undefined) { + var trace = contextStack.pop(); + var ret = trace._promiseCreated; + trace._promiseCreated = null; + return ret; + } + return null; +}; + +function createContext() { + if (longStackTraces) return new Context(); +} + +function peekContext() { + var lastIndex = contextStack.length - 1; + if (lastIndex >= 0) { + return contextStack[lastIndex]; + } + return undefined; +} +Context.CapturedTrace = null; +Context.create = createContext; +Context.deactivateLongStackTraces = function() {}; +Context.activateLongStackTraces = function() { + var Promise_pushContext = Promise.prototype._pushContext; + var Promise_popContext = Promise.prototype._popContext; + var Promise_PeekContext = Promise._peekContext; + var Promise_peekContext = Promise.prototype._peekContext; + var Promise_promiseCreated = Promise.prototype._promiseCreated; + Context.deactivateLongStackTraces = function() { + Promise.prototype._pushContext = Promise_pushContext; + Promise.prototype._popContext = Promise_popContext; + Promise._peekContext = Promise_PeekContext; + Promise.prototype._peekContext = Promise_peekContext; + Promise.prototype._promiseCreated = Promise_promiseCreated; + longStackTraces = false; + }; + longStackTraces = true; + Promise.prototype._pushContext = Context.prototype._pushContext; + Promise.prototype._popContext = Context.prototype._popContext; + Promise._peekContext = Promise.prototype._peekContext = peekContext; + Promise.prototype._promiseCreated = function() { + var ctx = this._peekContext(); + if (ctx && ctx._promiseCreated == null) ctx._promiseCreated = this; + }; +}; +return Context; +}; + +},{}],9:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, Context) { +var getDomain = Promise._getDomain; +var async = Promise._async; +var Warning = _dereq_("./errors").Warning; +var util = _dereq_("./util"); +var canAttachTrace = util.canAttachTrace; +var unhandledRejectionHandled; +var possiblyUnhandledRejection; +var bluebirdFramePattern = + /[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/; +var nodeFramePattern = /\((?:timers\.js):\d+:\d+\)/; +var parseLinePattern = /[\/<\(](.+?):(\d+):(\d+)\)?\s*$/; +var stackFramePattern = null; +var formatStack = null; +var indentStackFrames = false; +var printWarning; +var debugging = !!(util.env("BLUEBIRD_DEBUG") != 0 && + (true || + util.env("BLUEBIRD_DEBUG") || + util.env("NODE_ENV") === "development")); + +var warnings = !!(util.env("BLUEBIRD_WARNINGS") != 0 && + (debugging || util.env("BLUEBIRD_WARNINGS"))); + +var longStackTraces = !!(util.env("BLUEBIRD_LONG_STACK_TRACES") != 0 && + (debugging || util.env("BLUEBIRD_LONG_STACK_TRACES"))); + +var wForgottenReturn = util.env("BLUEBIRD_W_FORGOTTEN_RETURN") != 0 && + (warnings || !!util.env("BLUEBIRD_W_FORGOTTEN_RETURN")); + +Promise.prototype.suppressUnhandledRejections = function() { + var target = this._target(); + target._bitField = ((target._bitField & (~1048576)) | + 524288); +}; + +Promise.prototype._ensurePossibleRejectionHandled = function () { + if ((this._bitField & 524288) !== 0) return; + this._setRejectionIsUnhandled(); + var self = this; + setTimeout(function() { + self._notifyUnhandledRejection(); + }, 1); +}; + +Promise.prototype._notifyUnhandledRejectionIsHandled = function () { + fireRejectionEvent("rejectionHandled", + unhandledRejectionHandled, undefined, this); +}; + +Promise.prototype._setReturnedNonUndefined = function() { + this._bitField = this._bitField | 268435456; +}; + +Promise.prototype._returnedNonUndefined = function() { + return (this._bitField & 268435456) !== 0; +}; + +Promise.prototype._notifyUnhandledRejection = function () { + if (this._isRejectionUnhandled()) { + var reason = this._settledValue(); + this._setUnhandledRejectionIsNotified(); + fireRejectionEvent("unhandledRejection", + possiblyUnhandledRejection, reason, this); + } +}; + +Promise.prototype._setUnhandledRejectionIsNotified = function () { + this._bitField = this._bitField | 262144; +}; + +Promise.prototype._unsetUnhandledRejectionIsNotified = function () { + this._bitField = this._bitField & (~262144); +}; + +Promise.prototype._isUnhandledRejectionNotified = function () { + return (this._bitField & 262144) > 0; +}; + +Promise.prototype._setRejectionIsUnhandled = function () { + this._bitField = this._bitField | 1048576; +}; + +Promise.prototype._unsetRejectionIsUnhandled = function () { + this._bitField = this._bitField & (~1048576); + if (this._isUnhandledRejectionNotified()) { + this._unsetUnhandledRejectionIsNotified(); + this._notifyUnhandledRejectionIsHandled(); + } +}; + +Promise.prototype._isRejectionUnhandled = function () { + return (this._bitField & 1048576) > 0; +}; + +Promise.prototype._warn = function(message, shouldUseOwnTrace, promise) { + return warn(message, shouldUseOwnTrace, promise || this); +}; + +Promise.onPossiblyUnhandledRejection = function (fn) { + var domain = getDomain(); + possiblyUnhandledRejection = + typeof fn === "function" ? (domain === null ? + fn : util.domainBind(domain, fn)) + : undefined; +}; + +Promise.onUnhandledRejectionHandled = function (fn) { + var domain = getDomain(); + unhandledRejectionHandled = + typeof fn === "function" ? (domain === null ? + fn : util.domainBind(domain, fn)) + : undefined; +}; + +var disableLongStackTraces = function() {}; +Promise.longStackTraces = function () { + if (async.haveItemsQueued() && !config.longStackTraces) { + throw new Error("cannot enable long stack traces after promises have been created\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + if (!config.longStackTraces && longStackTracesIsSupported()) { + var Promise_captureStackTrace = Promise.prototype._captureStackTrace; + var Promise_attachExtraTrace = Promise.prototype._attachExtraTrace; + config.longStackTraces = true; + disableLongStackTraces = function() { + if (async.haveItemsQueued() && !config.longStackTraces) { + throw new Error("cannot enable long stack traces after promises have been created\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + Promise.prototype._captureStackTrace = Promise_captureStackTrace; + Promise.prototype._attachExtraTrace = Promise_attachExtraTrace; + Context.deactivateLongStackTraces(); + async.enableTrampoline(); + config.longStackTraces = false; + }; + Promise.prototype._captureStackTrace = longStackTracesCaptureStackTrace; + Promise.prototype._attachExtraTrace = longStackTracesAttachExtraTrace; + Context.activateLongStackTraces(); + async.disableTrampolineIfNecessary(); + } +}; + +Promise.hasLongStackTraces = function () { + return config.longStackTraces && longStackTracesIsSupported(); +}; + +var fireDomEvent = (function() { + try { + if (typeof CustomEvent === "function") { + var event = new CustomEvent("CustomEvent"); + util.global.dispatchEvent(event); + return function(name, event) { + var domEvent = new CustomEvent(name.toLowerCase(), { + detail: event, + cancelable: true + }); + return !util.global.dispatchEvent(domEvent); + }; + } else if (typeof Event === "function") { + var event = new Event("CustomEvent"); + util.global.dispatchEvent(event); + return function(name, event) { + var domEvent = new Event(name.toLowerCase(), { + cancelable: true + }); + domEvent.detail = event; + return !util.global.dispatchEvent(domEvent); + }; + } else { + var event = document.createEvent("CustomEvent"); + event.initCustomEvent("testingtheevent", false, true, {}); + util.global.dispatchEvent(event); + return function(name, event) { + var domEvent = document.createEvent("CustomEvent"); + domEvent.initCustomEvent(name.toLowerCase(), false, true, + event); + return !util.global.dispatchEvent(domEvent); + }; + } + } catch (e) {} + return function() { + return false; + }; +})(); + +var fireGlobalEvent = (function() { + if (util.isNode) { + return function() { + return process.emit.apply(process, arguments); + }; + } else { + if (!util.global) { + return function() { + return false; + }; + } + return function(name) { + var methodName = "on" + name.toLowerCase(); + var method = util.global[methodName]; + if (!method) return false; + method.apply(util.global, [].slice.call(arguments, 1)); + return true; + }; + } +})(); + +function generatePromiseLifecycleEventObject(name, promise) { + return {promise: promise}; +} + +var eventToObjectGenerator = { + promiseCreated: generatePromiseLifecycleEventObject, + promiseFulfilled: generatePromiseLifecycleEventObject, + promiseRejected: generatePromiseLifecycleEventObject, + promiseResolved: generatePromiseLifecycleEventObject, + promiseCancelled: generatePromiseLifecycleEventObject, + promiseChained: function(name, promise, child) { + return {promise: promise, child: child}; + }, + warning: function(name, warning) { + return {warning: warning}; + }, + unhandledRejection: function (name, reason, promise) { + return {reason: reason, promise: promise}; + }, + rejectionHandled: generatePromiseLifecycleEventObject +}; + +var activeFireEvent = function (name) { + var globalEventFired = false; + try { + globalEventFired = fireGlobalEvent.apply(null, arguments); + } catch (e) { + async.throwLater(e); + globalEventFired = true; + } + + var domEventFired = false; + try { + domEventFired = fireDomEvent(name, + eventToObjectGenerator[name].apply(null, arguments)); + } catch (e) { + async.throwLater(e); + domEventFired = true; + } + + return domEventFired || globalEventFired; +}; + +Promise.config = function(opts) { + opts = Object(opts); + if ("longStackTraces" in opts) { + if (opts.longStackTraces) { + Promise.longStackTraces(); + } else if (!opts.longStackTraces && Promise.hasLongStackTraces()) { + disableLongStackTraces(); + } + } + if ("warnings" in opts) { + var warningsOption = opts.warnings; + config.warnings = !!warningsOption; + wForgottenReturn = config.warnings; + + if (util.isObject(warningsOption)) { + if ("wForgottenReturn" in warningsOption) { + wForgottenReturn = !!warningsOption.wForgottenReturn; + } + } + } + if ("cancellation" in opts && opts.cancellation && !config.cancellation) { + if (async.haveItemsQueued()) { + throw new Error( + "cannot enable cancellation after promises are in use"); + } + Promise.prototype._clearCancellationData = + cancellationClearCancellationData; + Promise.prototype._propagateFrom = cancellationPropagateFrom; + Promise.prototype._onCancel = cancellationOnCancel; + Promise.prototype._setOnCancel = cancellationSetOnCancel; + Promise.prototype._attachCancellationCallback = + cancellationAttachCancellationCallback; + Promise.prototype._execute = cancellationExecute; + propagateFromFunction = cancellationPropagateFrom; + config.cancellation = true; + } + if ("monitoring" in opts) { + if (opts.monitoring && !config.monitoring) { + config.monitoring = true; + Promise.prototype._fireEvent = activeFireEvent; + } else if (!opts.monitoring && config.monitoring) { + config.monitoring = false; + Promise.prototype._fireEvent = defaultFireEvent; + } + } + return Promise; +}; + +function defaultFireEvent() { return false; } + +Promise.prototype._fireEvent = defaultFireEvent; +Promise.prototype._execute = function(executor, resolve, reject) { + try { + executor(resolve, reject); + } catch (e) { + return e; + } +}; +Promise.prototype._onCancel = function () {}; +Promise.prototype._setOnCancel = function (handler) { ; }; +Promise.prototype._attachCancellationCallback = function(onCancel) { + ; +}; +Promise.prototype._captureStackTrace = function () {}; +Promise.prototype._attachExtraTrace = function () {}; +Promise.prototype._clearCancellationData = function() {}; +Promise.prototype._propagateFrom = function (parent, flags) { + ; + ; +}; + +function cancellationExecute(executor, resolve, reject) { + var promise = this; + try { + executor(resolve, reject, function(onCancel) { + if (typeof onCancel !== "function") { + throw new TypeError("onCancel must be a function, got: " + + util.toString(onCancel)); + } + promise._attachCancellationCallback(onCancel); + }); + } catch (e) { + return e; + } +} + +function cancellationAttachCancellationCallback(onCancel) { + if (!this._isCancellable()) return this; + + var previousOnCancel = this._onCancel(); + if (previousOnCancel !== undefined) { + if (util.isArray(previousOnCancel)) { + previousOnCancel.push(onCancel); + } else { + this._setOnCancel([previousOnCancel, onCancel]); + } + } else { + this._setOnCancel(onCancel); + } +} + +function cancellationOnCancel() { + return this._onCancelField; +} + +function cancellationSetOnCancel(onCancel) { + this._onCancelField = onCancel; +} + +function cancellationClearCancellationData() { + this._cancellationParent = undefined; + this._onCancelField = undefined; +} + +function cancellationPropagateFrom(parent, flags) { + if ((flags & 1) !== 0) { + this._cancellationParent = parent; + var branchesRemainingToCancel = parent._branchesRemainingToCancel; + if (branchesRemainingToCancel === undefined) { + branchesRemainingToCancel = 0; + } + parent._branchesRemainingToCancel = branchesRemainingToCancel + 1; + } + if ((flags & 2) !== 0 && parent._isBound()) { + this._setBoundTo(parent._boundTo); + } +} + +function bindingPropagateFrom(parent, flags) { + if ((flags & 2) !== 0 && parent._isBound()) { + this._setBoundTo(parent._boundTo); + } +} +var propagateFromFunction = bindingPropagateFrom; + +function boundValueFunction() { + var ret = this._boundTo; + if (ret !== undefined) { + if (ret instanceof Promise) { + if (ret.isFulfilled()) { + return ret.value(); + } else { + return undefined; + } + } + } + return ret; +} + +function longStackTracesCaptureStackTrace() { + this._trace = new CapturedTrace(this._peekContext()); +} + +function longStackTracesAttachExtraTrace(error, ignoreSelf) { + if (canAttachTrace(error)) { + var trace = this._trace; + if (trace !== undefined) { + if (ignoreSelf) trace = trace._parent; + } + if (trace !== undefined) { + trace.attachExtraTrace(error); + } else if (!error.__stackCleaned__) { + var parsed = parseStackAndMessage(error); + util.notEnumerableProp(error, "stack", + parsed.message + "\n" + parsed.stack.join("\n")); + util.notEnumerableProp(error, "__stackCleaned__", true); + } + } +} + +function checkForgottenReturns(returnValue, promiseCreated, name, promise, + parent) { + if (returnValue === undefined && promiseCreated !== null && + wForgottenReturn) { + if (parent !== undefined && parent._returnedNonUndefined()) return; + if ((promise._bitField & 65535) === 0) return; + + if (name) name = name + " "; + var handlerLine = ""; + var creatorLine = ""; + if (promiseCreated._trace) { + var traceLines = promiseCreated._trace.stack.split("\n"); + var stack = cleanStack(traceLines); + for (var i = stack.length - 1; i >= 0; --i) { + var line = stack[i]; + if (!nodeFramePattern.test(line)) { + var lineMatches = line.match(parseLinePattern); + if (lineMatches) { + handlerLine = "at " + lineMatches[1] + + ":" + lineMatches[2] + ":" + lineMatches[3] + " "; + } + break; + } + } + + if (stack.length > 0) { + var firstUserLine = stack[0]; + for (var i = 0; i < traceLines.length; ++i) { + + if (traceLines[i] === firstUserLine) { + if (i > 0) { + creatorLine = "\n" + traceLines[i - 1]; + } + break; + } + } + + } + } + var msg = "a promise was created in a " + name + + "handler " + handlerLine + "but was not returned from it, " + + "see http://goo.gl/rRqMUw" + + creatorLine; + promise._warn(msg, true, promiseCreated); + } +} + +function deprecated(name, replacement) { + var message = name + + " is deprecated and will be removed in a future version."; + if (replacement) message += " Use " + replacement + " instead."; + return warn(message); +} + +function warn(message, shouldUseOwnTrace, promise) { + if (!config.warnings) return; + var warning = new Warning(message); + var ctx; + if (shouldUseOwnTrace) { + promise._attachExtraTrace(warning); + } else if (config.longStackTraces && (ctx = Promise._peekContext())) { + ctx.attachExtraTrace(warning); + } else { + var parsed = parseStackAndMessage(warning); + warning.stack = parsed.message + "\n" + parsed.stack.join("\n"); + } + + if (!activeFireEvent("warning", warning)) { + formatAndLogError(warning, "", true); + } +} + +function reconstructStack(message, stacks) { + for (var i = 0; i < stacks.length - 1; ++i) { + stacks[i].push("From previous event:"); + stacks[i] = stacks[i].join("\n"); + } + if (i < stacks.length) { + stacks[i] = stacks[i].join("\n"); + } + return message + "\n" + stacks.join("\n"); +} + +function removeDuplicateOrEmptyJumps(stacks) { + for (var i = 0; i < stacks.length; ++i) { + if (stacks[i].length === 0 || + ((i + 1 < stacks.length) && stacks[i][0] === stacks[i+1][0])) { + stacks.splice(i, 1); + i--; + } + } +} + +function removeCommonRoots(stacks) { + var current = stacks[0]; + for (var i = 1; i < stacks.length; ++i) { + var prev = stacks[i]; + var currentLastIndex = current.length - 1; + var currentLastLine = current[currentLastIndex]; + var commonRootMeetPoint = -1; + + for (var j = prev.length - 1; j >= 0; --j) { + if (prev[j] === currentLastLine) { + commonRootMeetPoint = j; + break; + } + } + + for (var j = commonRootMeetPoint; j >= 0; --j) { + var line = prev[j]; + if (current[currentLastIndex] === line) { + current.pop(); + currentLastIndex--; + } else { + break; + } + } + current = prev; + } +} + +function cleanStack(stack) { + var ret = []; + for (var i = 0; i < stack.length; ++i) { + var line = stack[i]; + var isTraceLine = " (No stack trace)" === line || + stackFramePattern.test(line); + var isInternalFrame = isTraceLine && shouldIgnore(line); + if (isTraceLine && !isInternalFrame) { + if (indentStackFrames && line.charAt(0) !== " ") { + line = " " + line; + } + ret.push(line); + } + } + return ret; +} + +function stackFramesAsArray(error) { + var stack = error.stack.replace(/\s+$/g, "").split("\n"); + for (var i = 0; i < stack.length; ++i) { + var line = stack[i]; + if (" (No stack trace)" === line || stackFramePattern.test(line)) { + break; + } + } + if (i > 0 && error.name != "SyntaxError") { + stack = stack.slice(i); + } + return stack; +} + +function parseStackAndMessage(error) { + var stack = error.stack; + var message = error.toString(); + stack = typeof stack === "string" && stack.length > 0 + ? stackFramesAsArray(error) : [" (No stack trace)"]; + return { + message: message, + stack: error.name == "SyntaxError" ? stack : cleanStack(stack) + }; +} + +function formatAndLogError(error, title, isSoft) { + if (typeof console !== "undefined") { + var message; + if (util.isObject(error)) { + var stack = error.stack; + message = title + formatStack(stack, error); + } else { + message = title + String(error); + } + if (typeof printWarning === "function") { + printWarning(message, isSoft); + } else if (typeof console.log === "function" || + typeof console.log === "object") { + console.log(message); + } + } +} + +function fireRejectionEvent(name, localHandler, reason, promise) { + var localEventFired = false; + try { + if (typeof localHandler === "function") { + localEventFired = true; + if (name === "rejectionHandled") { + localHandler(promise); + } else { + localHandler(reason, promise); + } + } + } catch (e) { + async.throwLater(e); + } + + if (name === "unhandledRejection") { + if (!activeFireEvent(name, reason, promise) && !localEventFired) { + formatAndLogError(reason, "Unhandled rejection "); + } + } else { + activeFireEvent(name, promise); + } +} + +function formatNonError(obj) { + var str; + if (typeof obj === "function") { + str = "[function " + + (obj.name || "anonymous") + + "]"; + } else { + str = obj && typeof obj.toString === "function" + ? obj.toString() : util.toString(obj); + var ruselessToString = /\[object [a-zA-Z0-9$_]+\]/; + if (ruselessToString.test(str)) { + try { + var newStr = JSON.stringify(obj); + str = newStr; + } + catch(e) { + + } + } + if (str.length === 0) { + str = "(empty array)"; + } + } + return ("(<" + snip(str) + ">, no stack trace)"); +} + +function snip(str) { + var maxChars = 41; + if (str.length < maxChars) { + return str; + } + return str.substr(0, maxChars - 3) + "..."; +} + +function longStackTracesIsSupported() { + return typeof captureStackTrace === "function"; +} + +var shouldIgnore = function() { return false; }; +var parseLineInfoRegex = /[\/<\(]([^:\/]+):(\d+):(?:\d+)\)?\s*$/; +function parseLineInfo(line) { + var matches = line.match(parseLineInfoRegex); + if (matches) { + return { + fileName: matches[1], + line: parseInt(matches[2], 10) + }; + } +} + +function setBounds(firstLineError, lastLineError) { + if (!longStackTracesIsSupported()) return; + var firstStackLines = firstLineError.stack.split("\n"); + var lastStackLines = lastLineError.stack.split("\n"); + var firstIndex = -1; + var lastIndex = -1; + var firstFileName; + var lastFileName; + for (var i = 0; i < firstStackLines.length; ++i) { + var result = parseLineInfo(firstStackLines[i]); + if (result) { + firstFileName = result.fileName; + firstIndex = result.line; + break; + } + } + for (var i = 0; i < lastStackLines.length; ++i) { + var result = parseLineInfo(lastStackLines[i]); + if (result) { + lastFileName = result.fileName; + lastIndex = result.line; + break; + } + } + if (firstIndex < 0 || lastIndex < 0 || !firstFileName || !lastFileName || + firstFileName !== lastFileName || firstIndex >= lastIndex) { + return; + } + + shouldIgnore = function(line) { + if (bluebirdFramePattern.test(line)) return true; + var info = parseLineInfo(line); + if (info) { + if (info.fileName === firstFileName && + (firstIndex <= info.line && info.line <= lastIndex)) { + return true; + } + } + return false; + }; +} + +function CapturedTrace(parent) { + this._parent = parent; + this._promisesCreated = 0; + var length = this._length = 1 + (parent === undefined ? 0 : parent._length); + captureStackTrace(this, CapturedTrace); + if (length > 32) this.uncycle(); +} +util.inherits(CapturedTrace, Error); +Context.CapturedTrace = CapturedTrace; + +CapturedTrace.prototype.uncycle = function() { + var length = this._length; + if (length < 2) return; + var nodes = []; + var stackToIndex = {}; + + for (var i = 0, node = this; node !== undefined; ++i) { + nodes.push(node); + node = node._parent; + } + length = this._length = i; + for (var i = length - 1; i >= 0; --i) { + var stack = nodes[i].stack; + if (stackToIndex[stack] === undefined) { + stackToIndex[stack] = i; + } + } + for (var i = 0; i < length; ++i) { + var currentStack = nodes[i].stack; + var index = stackToIndex[currentStack]; + if (index !== undefined && index !== i) { + if (index > 0) { + nodes[index - 1]._parent = undefined; + nodes[index - 1]._length = 1; + } + nodes[i]._parent = undefined; + nodes[i]._length = 1; + var cycleEdgeNode = i > 0 ? nodes[i - 1] : this; + + if (index < length - 1) { + cycleEdgeNode._parent = nodes[index + 1]; + cycleEdgeNode._parent.uncycle(); + cycleEdgeNode._length = + cycleEdgeNode._parent._length + 1; + } else { + cycleEdgeNode._parent = undefined; + cycleEdgeNode._length = 1; + } + var currentChildLength = cycleEdgeNode._length + 1; + for (var j = i - 2; j >= 0; --j) { + nodes[j]._length = currentChildLength; + currentChildLength++; + } + return; + } + } +}; + +CapturedTrace.prototype.attachExtraTrace = function(error) { + if (error.__stackCleaned__) return; + this.uncycle(); + var parsed = parseStackAndMessage(error); + var message = parsed.message; + var stacks = [parsed.stack]; + + var trace = this; + while (trace !== undefined) { + stacks.push(cleanStack(trace.stack.split("\n"))); + trace = trace._parent; + } + removeCommonRoots(stacks); + removeDuplicateOrEmptyJumps(stacks); + util.notEnumerableProp(error, "stack", reconstructStack(message, stacks)); + util.notEnumerableProp(error, "__stackCleaned__", true); +}; + +var captureStackTrace = (function stackDetection() { + var v8stackFramePattern = /^\s*at\s*/; + var v8stackFormatter = function(stack, error) { + if (typeof stack === "string") return stack; + + if (error.name !== undefined && + error.message !== undefined) { + return error.toString(); + } + return formatNonError(error); + }; + + if (typeof Error.stackTraceLimit === "number" && + typeof Error.captureStackTrace === "function") { + Error.stackTraceLimit += 6; + stackFramePattern = v8stackFramePattern; + formatStack = v8stackFormatter; + var captureStackTrace = Error.captureStackTrace; + + shouldIgnore = function(line) { + return bluebirdFramePattern.test(line); + }; + return function(receiver, ignoreUntil) { + Error.stackTraceLimit += 6; + captureStackTrace(receiver, ignoreUntil); + Error.stackTraceLimit -= 6; + }; + } + var err = new Error(); + + if (typeof err.stack === "string" && + err.stack.split("\n")[0].indexOf("stackDetection@") >= 0) { + stackFramePattern = /@/; + formatStack = v8stackFormatter; + indentStackFrames = true; + return function captureStackTrace(o) { + o.stack = new Error().stack; + }; + } + + var hasStackAfterThrow; + try { throw new Error(); } + catch(e) { + hasStackAfterThrow = ("stack" in e); + } + if (!("stack" in err) && hasStackAfterThrow && + typeof Error.stackTraceLimit === "number") { + stackFramePattern = v8stackFramePattern; + formatStack = v8stackFormatter; + return function captureStackTrace(o) { + Error.stackTraceLimit += 6; + try { throw new Error(); } + catch(e) { o.stack = e.stack; } + Error.stackTraceLimit -= 6; + }; + } + + formatStack = function(stack, error) { + if (typeof stack === "string") return stack; + + if ((typeof error === "object" || + typeof error === "function") && + error.name !== undefined && + error.message !== undefined) { + return error.toString(); + } + return formatNonError(error); + }; + + return null; + +})([]); + +if (typeof console !== "undefined" && typeof console.warn !== "undefined") { + printWarning = function (message) { + console.warn(message); + }; + if (util.isNode && process.stderr.isTTY) { + printWarning = function(message, isSoft) { + var color = isSoft ? "\u001b[33m" : "\u001b[31m"; + console.warn(color + message + "\u001b[0m\n"); + }; + } else if (!util.isNode && typeof (new Error().stack) === "string") { + printWarning = function(message, isSoft) { + console.warn("%c" + message, + isSoft ? "color: darkorange" : "color: red"); + }; + } +} + +var config = { + warnings: warnings, + longStackTraces: false, + cancellation: false, + monitoring: false +}; + +if (longStackTraces) Promise.longStackTraces(); + +return { + longStackTraces: function() { + return config.longStackTraces; + }, + warnings: function() { + return config.warnings; + }, + cancellation: function() { + return config.cancellation; + }, + monitoring: function() { + return config.monitoring; + }, + propagateFromFunction: function() { + return propagateFromFunction; + }, + boundValueFunction: function() { + return boundValueFunction; + }, + checkForgottenReturns: checkForgottenReturns, + setBounds: setBounds, + warn: warn, + deprecated: deprecated, + CapturedTrace: CapturedTrace, + fireDomEvent: fireDomEvent, + fireGlobalEvent: fireGlobalEvent +}; +}; + +},{"./errors":12,"./util":36}],10:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise) { +function returner() { + return this.value; +} +function thrower() { + throw this.reason; +} + +Promise.prototype["return"] = +Promise.prototype.thenReturn = function (value) { + if (value instanceof Promise) value.suppressUnhandledRejections(); + return this._then( + returner, undefined, undefined, {value: value}, undefined); +}; + +Promise.prototype["throw"] = +Promise.prototype.thenThrow = function (reason) { + return this._then( + thrower, undefined, undefined, {reason: reason}, undefined); +}; + +Promise.prototype.catchThrow = function (reason) { + if (arguments.length <= 1) { + return this._then( + undefined, thrower, undefined, {reason: reason}, undefined); + } else { + var _reason = arguments[1]; + var handler = function() {throw _reason;}; + return this.caught(reason, handler); + } +}; + +Promise.prototype.catchReturn = function (value) { + if (arguments.length <= 1) { + if (value instanceof Promise) value.suppressUnhandledRejections(); + return this._then( + undefined, returner, undefined, {value: value}, undefined); + } else { + var _value = arguments[1]; + if (_value instanceof Promise) _value.suppressUnhandledRejections(); + var handler = function() {return _value;}; + return this.caught(value, handler); + } +}; +}; + +},{}],11:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, INTERNAL) { +var PromiseReduce = Promise.reduce; +var PromiseAll = Promise.all; + +function promiseAllThis() { + return PromiseAll(this); +} + +function PromiseMapSeries(promises, fn) { + return PromiseReduce(promises, fn, INTERNAL, INTERNAL); +} + +Promise.prototype.each = function (fn) { + return PromiseReduce(this, fn, INTERNAL, 0) + ._then(promiseAllThis, undefined, undefined, this, undefined); +}; + +Promise.prototype.mapSeries = function (fn) { + return PromiseReduce(this, fn, INTERNAL, INTERNAL); +}; + +Promise.each = function (promises, fn) { + return PromiseReduce(promises, fn, INTERNAL, 0) + ._then(promiseAllThis, undefined, undefined, promises, undefined); +}; + +Promise.mapSeries = PromiseMapSeries; +}; + + +},{}],12:[function(_dereq_,module,exports){ +"use strict"; +var es5 = _dereq_("./es5"); +var Objectfreeze = es5.freeze; +var util = _dereq_("./util"); +var inherits = util.inherits; +var notEnumerableProp = util.notEnumerableProp; + +function subError(nameProperty, defaultMessage) { + function SubError(message) { + if (!(this instanceof SubError)) return new SubError(message); + notEnumerableProp(this, "message", + typeof message === "string" ? message : defaultMessage); + notEnumerableProp(this, "name", nameProperty); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + Error.call(this); + } + } + inherits(SubError, Error); + return SubError; +} + +var _TypeError, _RangeError; +var Warning = subError("Warning", "warning"); +var CancellationError = subError("CancellationError", "cancellation error"); +var TimeoutError = subError("TimeoutError", "timeout error"); +var AggregateError = subError("AggregateError", "aggregate error"); +try { + _TypeError = TypeError; + _RangeError = RangeError; +} catch(e) { + _TypeError = subError("TypeError", "type error"); + _RangeError = subError("RangeError", "range error"); +} + +var methods = ("join pop push shift unshift slice filter forEach some " + + "every map indexOf lastIndexOf reduce reduceRight sort reverse").split(" "); + +for (var i = 0; i < methods.length; ++i) { + if (typeof Array.prototype[methods[i]] === "function") { + AggregateError.prototype[methods[i]] = Array.prototype[methods[i]]; + } +} + +es5.defineProperty(AggregateError.prototype, "length", { + value: 0, + configurable: false, + writable: true, + enumerable: true +}); +AggregateError.prototype["isOperational"] = true; +var level = 0; +AggregateError.prototype.toString = function() { + var indent = Array(level * 4 + 1).join(" "); + var ret = "\n" + indent + "AggregateError of:" + "\n"; + level++; + indent = Array(level * 4 + 1).join(" "); + for (var i = 0; i < this.length; ++i) { + var str = this[i] === this ? "[Circular AggregateError]" : this[i] + ""; + var lines = str.split("\n"); + for (var j = 0; j < lines.length; ++j) { + lines[j] = indent + lines[j]; + } + str = lines.join("\n"); + ret += str + "\n"; + } + level--; + return ret; +}; + +function OperationalError(message) { + if (!(this instanceof OperationalError)) + return new OperationalError(message); + notEnumerableProp(this, "name", "OperationalError"); + notEnumerableProp(this, "message", message); + this.cause = message; + this["isOperational"] = true; + + if (message instanceof Error) { + notEnumerableProp(this, "message", message.message); + notEnumerableProp(this, "stack", message.stack); + } else if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } + +} +inherits(OperationalError, Error); + +var errorTypes = Error["__BluebirdErrorTypes__"]; +if (!errorTypes) { + errorTypes = Objectfreeze({ + CancellationError: CancellationError, + TimeoutError: TimeoutError, + OperationalError: OperationalError, + RejectionError: OperationalError, + AggregateError: AggregateError + }); + es5.defineProperty(Error, "__BluebirdErrorTypes__", { + value: errorTypes, + writable: false, + enumerable: false, + configurable: false + }); +} + +module.exports = { + Error: Error, + TypeError: _TypeError, + RangeError: _RangeError, + CancellationError: errorTypes.CancellationError, + OperationalError: errorTypes.OperationalError, + TimeoutError: errorTypes.TimeoutError, + AggregateError: errorTypes.AggregateError, + Warning: Warning +}; + +},{"./es5":13,"./util":36}],13:[function(_dereq_,module,exports){ +var isES5 = (function(){ + "use strict"; + return this === undefined; +})(); + +if (isES5) { + module.exports = { + freeze: Object.freeze, + defineProperty: Object.defineProperty, + getDescriptor: Object.getOwnPropertyDescriptor, + keys: Object.keys, + names: Object.getOwnPropertyNames, + getPrototypeOf: Object.getPrototypeOf, + isArray: Array.isArray, + isES5: isES5, + propertyIsWritable: function(obj, prop) { + var descriptor = Object.getOwnPropertyDescriptor(obj, prop); + return !!(!descriptor || descriptor.writable || descriptor.set); + } + }; +} else { + var has = {}.hasOwnProperty; + var str = {}.toString; + var proto = {}.constructor.prototype; + + var ObjectKeys = function (o) { + var ret = []; + for (var key in o) { + if (has.call(o, key)) { + ret.push(key); + } + } + return ret; + }; + + var ObjectGetDescriptor = function(o, key) { + return {value: o[key]}; + }; + + var ObjectDefineProperty = function (o, key, desc) { + o[key] = desc.value; + return o; + }; + + var ObjectFreeze = function (obj) { + return obj; + }; + + var ObjectGetPrototypeOf = function (obj) { + try { + return Object(obj).constructor.prototype; + } + catch (e) { + return proto; + } + }; + + var ArrayIsArray = function (obj) { + try { + return str.call(obj) === "[object Array]"; + } + catch(e) { + return false; + } + }; + + module.exports = { + isArray: ArrayIsArray, + keys: ObjectKeys, + names: ObjectKeys, + defineProperty: ObjectDefineProperty, + getDescriptor: ObjectGetDescriptor, + freeze: ObjectFreeze, + getPrototypeOf: ObjectGetPrototypeOf, + isES5: isES5, + propertyIsWritable: function() { + return true; + } + }; +} + +},{}],14:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, INTERNAL) { +var PromiseMap = Promise.map; + +Promise.prototype.filter = function (fn, options) { + return PromiseMap(this, fn, options, INTERNAL); +}; + +Promise.filter = function (promises, fn, options) { + return PromiseMap(promises, fn, options, INTERNAL); +}; +}; + +},{}],15:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, tryConvertToPromise, NEXT_FILTER) { +var util = _dereq_("./util"); +var CancellationError = Promise.CancellationError; +var errorObj = util.errorObj; +var catchFilter = _dereq_("./catch_filter")(NEXT_FILTER); + +function PassThroughHandlerContext(promise, type, handler) { + this.promise = promise; + this.type = type; + this.handler = handler; + this.called = false; + this.cancelPromise = null; +} + +PassThroughHandlerContext.prototype.isFinallyHandler = function() { + return this.type === 0; +}; + +function FinallyHandlerCancelReaction(finallyHandler) { + this.finallyHandler = finallyHandler; +} + +FinallyHandlerCancelReaction.prototype._resultCancelled = function() { + checkCancel(this.finallyHandler); +}; + +function checkCancel(ctx, reason) { + if (ctx.cancelPromise != null) { + if (arguments.length > 1) { + ctx.cancelPromise._reject(reason); + } else { + ctx.cancelPromise._cancel(); + } + ctx.cancelPromise = null; + return true; + } + return false; +} + +function succeed() { + return finallyHandler.call(this, this.promise._target()._settledValue()); +} +function fail(reason) { + if (checkCancel(this, reason)) return; + errorObj.e = reason; + return errorObj; +} +function finallyHandler(reasonOrValue) { + var promise = this.promise; + var handler = this.handler; + + if (!this.called) { + this.called = true; + var ret = this.isFinallyHandler() + ? handler.call(promise._boundValue()) + : handler.call(promise._boundValue(), reasonOrValue); + if (ret === NEXT_FILTER) { + return ret; + } else if (ret !== undefined) { + promise._setReturnedNonUndefined(); + var maybePromise = tryConvertToPromise(ret, promise); + if (maybePromise instanceof Promise) { + if (this.cancelPromise != null) { + if (maybePromise._isCancelled()) { + var reason = + new CancellationError("late cancellation observer"); + promise._attachExtraTrace(reason); + errorObj.e = reason; + return errorObj; + } else if (maybePromise.isPending()) { + maybePromise._attachCancellationCallback( + new FinallyHandlerCancelReaction(this)); + } + } + return maybePromise._then( + succeed, fail, undefined, this, undefined); + } + } + } + + if (promise.isRejected()) { + checkCancel(this); + errorObj.e = reasonOrValue; + return errorObj; + } else { + checkCancel(this); + return reasonOrValue; + } +} + +Promise.prototype._passThrough = function(handler, type, success, fail) { + if (typeof handler !== "function") return this.then(); + return this._then(success, + fail, + undefined, + new PassThroughHandlerContext(this, type, handler), + undefined); +}; + +Promise.prototype.lastly = +Promise.prototype["finally"] = function (handler) { + return this._passThrough(handler, + 0, + finallyHandler, + finallyHandler); +}; + + +Promise.prototype.tap = function (handler) { + return this._passThrough(handler, 1, finallyHandler); +}; + +Promise.prototype.tapCatch = function (handlerOrPredicate) { + var len = arguments.length; + if(len === 1) { + return this._passThrough(handlerOrPredicate, + 1, + undefined, + finallyHandler); + } else { + var catchInstances = new Array(len - 1), + j = 0, i; + for (i = 0; i < len - 1; ++i) { + var item = arguments[i]; + if (util.isObject(item)) { + catchInstances[j++] = item; + } else { + return Promise.reject(new TypeError( + "tapCatch statement predicate: " + + "expecting an object but got " + util.classString(item) + )); + } + } + catchInstances.length = j; + var handler = arguments[i]; + return this._passThrough(catchFilter(catchInstances, handler, this), + 1, + undefined, + finallyHandler); + } + +}; + +return PassThroughHandlerContext; +}; + +},{"./catch_filter":7,"./util":36}],16:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, + apiRejection, + INTERNAL, + tryConvertToPromise, + Proxyable, + debug) { +var errors = _dereq_("./errors"); +var TypeError = errors.TypeError; +var util = _dereq_("./util"); +var errorObj = util.errorObj; +var tryCatch = util.tryCatch; +var yieldHandlers = []; + +function promiseFromYieldHandler(value, yieldHandlers, traceParent) { + for (var i = 0; i < yieldHandlers.length; ++i) { + traceParent._pushContext(); + var result = tryCatch(yieldHandlers[i])(value); + traceParent._popContext(); + if (result === errorObj) { + traceParent._pushContext(); + var ret = Promise.reject(errorObj.e); + traceParent._popContext(); + return ret; + } + var maybePromise = tryConvertToPromise(result, traceParent); + if (maybePromise instanceof Promise) return maybePromise; + } + return null; +} + +function PromiseSpawn(generatorFunction, receiver, yieldHandler, stack) { + if (debug.cancellation()) { + var internal = new Promise(INTERNAL); + var _finallyPromise = this._finallyPromise = new Promise(INTERNAL); + this._promise = internal.lastly(function() { + return _finallyPromise; + }); + internal._captureStackTrace(); + internal._setOnCancel(this); + } else { + var promise = this._promise = new Promise(INTERNAL); + promise._captureStackTrace(); + } + this._stack = stack; + this._generatorFunction = generatorFunction; + this._receiver = receiver; + this._generator = undefined; + this._yieldHandlers = typeof yieldHandler === "function" + ? [yieldHandler].concat(yieldHandlers) + : yieldHandlers; + this._yieldedPromise = null; + this._cancellationPhase = false; +} +util.inherits(PromiseSpawn, Proxyable); + +PromiseSpawn.prototype._isResolved = function() { + return this._promise === null; +}; + +PromiseSpawn.prototype._cleanup = function() { + this._promise = this._generator = null; + if (debug.cancellation() && this._finallyPromise !== null) { + this._finallyPromise._fulfill(); + this._finallyPromise = null; + } +}; + +PromiseSpawn.prototype._promiseCancelled = function() { + if (this._isResolved()) return; + var implementsReturn = typeof this._generator["return"] !== "undefined"; + + var result; + if (!implementsReturn) { + var reason = new Promise.CancellationError( + "generator .return() sentinel"); + Promise.coroutine.returnSentinel = reason; + this._promise._attachExtraTrace(reason); + this._promise._pushContext(); + result = tryCatch(this._generator["throw"]).call(this._generator, + reason); + this._promise._popContext(); + } else { + this._promise._pushContext(); + result = tryCatch(this._generator["return"]).call(this._generator, + undefined); + this._promise._popContext(); + } + this._cancellationPhase = true; + this._yieldedPromise = null; + this._continue(result); +}; + +PromiseSpawn.prototype._promiseFulfilled = function(value) { + this._yieldedPromise = null; + this._promise._pushContext(); + var result = tryCatch(this._generator.next).call(this._generator, value); + this._promise._popContext(); + this._continue(result); +}; + +PromiseSpawn.prototype._promiseRejected = function(reason) { + this._yieldedPromise = null; + this._promise._attachExtraTrace(reason); + this._promise._pushContext(); + var result = tryCatch(this._generator["throw"]) + .call(this._generator, reason); + this._promise._popContext(); + this._continue(result); +}; + +PromiseSpawn.prototype._resultCancelled = function() { + if (this._yieldedPromise instanceof Promise) { + var promise = this._yieldedPromise; + this._yieldedPromise = null; + promise.cancel(); + } +}; + +PromiseSpawn.prototype.promise = function () { + return this._promise; +}; + +PromiseSpawn.prototype._run = function () { + this._generator = this._generatorFunction.call(this._receiver); + this._receiver = + this._generatorFunction = undefined; + this._promiseFulfilled(undefined); +}; + +PromiseSpawn.prototype._continue = function (result) { + var promise = this._promise; + if (result === errorObj) { + this._cleanup(); + if (this._cancellationPhase) { + return promise.cancel(); + } else { + return promise._rejectCallback(result.e, false); + } + } + + var value = result.value; + if (result.done === true) { + this._cleanup(); + if (this._cancellationPhase) { + return promise.cancel(); + } else { + return promise._resolveCallback(value); + } + } else { + var maybePromise = tryConvertToPromise(value, this._promise); + if (!(maybePromise instanceof Promise)) { + maybePromise = + promiseFromYieldHandler(maybePromise, + this._yieldHandlers, + this._promise); + if (maybePromise === null) { + this._promiseRejected( + new TypeError( + "A value %s was yielded that could not be treated as a promise\u000a\u000a See http://goo.gl/MqrFmX\u000a\u000a".replace("%s", String(value)) + + "From coroutine:\u000a" + + this._stack.split("\n").slice(1, -7).join("\n") + ) + ); + return; + } + } + maybePromise = maybePromise._target(); + var bitField = maybePromise._bitField; + ; + if (((bitField & 50397184) === 0)) { + this._yieldedPromise = maybePromise; + maybePromise._proxy(this, null); + } else if (((bitField & 33554432) !== 0)) { + Promise._async.invoke( + this._promiseFulfilled, this, maybePromise._value() + ); + } else if (((bitField & 16777216) !== 0)) { + Promise._async.invoke( + this._promiseRejected, this, maybePromise._reason() + ); + } else { + this._promiseCancelled(); + } + } +}; + +Promise.coroutine = function (generatorFunction, options) { + if (typeof generatorFunction !== "function") { + throw new TypeError("generatorFunction must be a function\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + var yieldHandler = Object(options).yieldHandler; + var PromiseSpawn$ = PromiseSpawn; + var stack = new Error().stack; + return function () { + var generator = generatorFunction.apply(this, arguments); + var spawn = new PromiseSpawn$(undefined, undefined, yieldHandler, + stack); + var ret = spawn.promise(); + spawn._generator = generator; + spawn._promiseFulfilled(undefined); + return ret; + }; +}; + +Promise.coroutine.addYieldHandler = function(fn) { + if (typeof fn !== "function") { + throw new TypeError("expecting a function but got " + util.classString(fn)); + } + yieldHandlers.push(fn); +}; + +Promise.spawn = function (generatorFunction) { + debug.deprecated("Promise.spawn()", "Promise.coroutine()"); + if (typeof generatorFunction !== "function") { + return apiRejection("generatorFunction must be a function\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + var spawn = new PromiseSpawn(generatorFunction, this); + var ret = spawn.promise(); + spawn._run(Promise.spawn); + return ret; +}; +}; + +},{"./errors":12,"./util":36}],17:[function(_dereq_,module,exports){ +"use strict"; +module.exports = +function(Promise, PromiseArray, tryConvertToPromise, INTERNAL, async, + getDomain) { +var util = _dereq_("./util"); +var canEvaluate = util.canEvaluate; +var tryCatch = util.tryCatch; +var errorObj = util.errorObj; +var reject; + +if (false) { +if (canEvaluate) { + var thenCallback = function(i) { + return new Function("value", "holder", " \n\ + 'use strict'; \n\ + holder.pIndex = value; \n\ + holder.checkFulfillment(this); \n\ + ".replace(/Index/g, i)); + }; + + var promiseSetter = function(i) { + return new Function("promise", "holder", " \n\ + 'use strict'; \n\ + holder.pIndex = promise; \n\ + ".replace(/Index/g, i)); + }; + + var generateHolderClass = function(total) { + var props = new Array(total); + for (var i = 0; i < props.length; ++i) { + props[i] = "this.p" + (i+1); + } + var assignment = props.join(" = ") + " = null;"; + var cancellationCode= "var promise;\n" + props.map(function(prop) { + return " \n\ + promise = " + prop + "; \n\ + if (promise instanceof Promise) { \n\ + promise.cancel(); \n\ + } \n\ + "; + }).join("\n"); + var passedArguments = props.join(", "); + var name = "Holder$" + total; + + + var code = "return function(tryCatch, errorObj, Promise, async) { \n\ + 'use strict'; \n\ + function [TheName](fn) { \n\ + [TheProperties] \n\ + this.fn = fn; \n\ + this.asyncNeeded = true; \n\ + this.now = 0; \n\ + } \n\ + \n\ + [TheName].prototype._callFunction = function(promise) { \n\ + promise._pushContext(); \n\ + var ret = tryCatch(this.fn)([ThePassedArguments]); \n\ + promise._popContext(); \n\ + if (ret === errorObj) { \n\ + promise._rejectCallback(ret.e, false); \n\ + } else { \n\ + promise._resolveCallback(ret); \n\ + } \n\ + }; \n\ + \n\ + [TheName].prototype.checkFulfillment = function(promise) { \n\ + var now = ++this.now; \n\ + if (now === [TheTotal]) { \n\ + if (this.asyncNeeded) { \n\ + async.invoke(this._callFunction, this, promise); \n\ + } else { \n\ + this._callFunction(promise); \n\ + } \n\ + \n\ + } \n\ + }; \n\ + \n\ + [TheName].prototype._resultCancelled = function() { \n\ + [CancellationCode] \n\ + }; \n\ + \n\ + return [TheName]; \n\ + }(tryCatch, errorObj, Promise, async); \n\ + "; + + code = code.replace(/\[TheName\]/g, name) + .replace(/\[TheTotal\]/g, total) + .replace(/\[ThePassedArguments\]/g, passedArguments) + .replace(/\[TheProperties\]/g, assignment) + .replace(/\[CancellationCode\]/g, cancellationCode); + + return new Function("tryCatch", "errorObj", "Promise", "async", code) + (tryCatch, errorObj, Promise, async); + }; + + var holderClasses = []; + var thenCallbacks = []; + var promiseSetters = []; + + for (var i = 0; i < 8; ++i) { + holderClasses.push(generateHolderClass(i + 1)); + thenCallbacks.push(thenCallback(i + 1)); + promiseSetters.push(promiseSetter(i + 1)); + } + + reject = function (reason) { + this._reject(reason); + }; +}} + +Promise.join = function () { + var last = arguments.length - 1; + var fn; + if (last > 0 && typeof arguments[last] === "function") { + fn = arguments[last]; + if (false) { + if (last <= 8 && canEvaluate) { + var ret = new Promise(INTERNAL); + ret._captureStackTrace(); + var HolderClass = holderClasses[last - 1]; + var holder = new HolderClass(fn); + var callbacks = thenCallbacks; + + for (var i = 0; i < last; ++i) { + var maybePromise = tryConvertToPromise(arguments[i], ret); + if (maybePromise instanceof Promise) { + maybePromise = maybePromise._target(); + var bitField = maybePromise._bitField; + ; + if (((bitField & 50397184) === 0)) { + maybePromise._then(callbacks[i], reject, + undefined, ret, holder); + promiseSetters[i](maybePromise, holder); + holder.asyncNeeded = false; + } else if (((bitField & 33554432) !== 0)) { + callbacks[i].call(ret, + maybePromise._value(), holder); + } else if (((bitField & 16777216) !== 0)) { + ret._reject(maybePromise._reason()); + } else { + ret._cancel(); + } + } else { + callbacks[i].call(ret, maybePromise, holder); + } + } + + if (!ret._isFateSealed()) { + if (holder.asyncNeeded) { + var domain = getDomain(); + if (domain !== null) { + holder.fn = util.domainBind(domain, holder.fn); + } + } + ret._setAsyncGuaranteed(); + ret._setOnCancel(holder); + } + return ret; + } + } + } + var args = [].slice.call(arguments);; + if (fn) args.pop(); + var ret = new PromiseArray(args).promise(); + return fn !== undefined ? ret.spread(fn) : ret; +}; + +}; + +},{"./util":36}],18:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, + PromiseArray, + apiRejection, + tryConvertToPromise, + INTERNAL, + debug) { +var getDomain = Promise._getDomain; +var util = _dereq_("./util"); +var tryCatch = util.tryCatch; +var errorObj = util.errorObj; +var async = Promise._async; + +function MappingPromiseArray(promises, fn, limit, _filter) { + this.constructor$(promises); + this._promise._captureStackTrace(); + var domain = getDomain(); + this._callback = domain === null ? fn : util.domainBind(domain, fn); + this._preservedValues = _filter === INTERNAL + ? new Array(this.length()) + : null; + this._limit = limit; + this._inFlight = 0; + this._queue = []; + async.invoke(this._asyncInit, this, undefined); +} +util.inherits(MappingPromiseArray, PromiseArray); + +MappingPromiseArray.prototype._asyncInit = function() { + this._init$(undefined, -2); +}; + +MappingPromiseArray.prototype._init = function () {}; + +MappingPromiseArray.prototype._promiseFulfilled = function (value, index) { + var values = this._values; + var length = this.length(); + var preservedValues = this._preservedValues; + var limit = this._limit; + + if (index < 0) { + index = (index * -1) - 1; + values[index] = value; + if (limit >= 1) { + this._inFlight--; + this._drainQueue(); + if (this._isResolved()) return true; + } + } else { + if (limit >= 1 && this._inFlight >= limit) { + values[index] = value; + this._queue.push(index); + return false; + } + if (preservedValues !== null) preservedValues[index] = value; + + var promise = this._promise; + var callback = this._callback; + var receiver = promise._boundValue(); + promise._pushContext(); + var ret = tryCatch(callback).call(receiver, value, index, length); + var promiseCreated = promise._popContext(); + debug.checkForgottenReturns( + ret, + promiseCreated, + preservedValues !== null ? "Promise.filter" : "Promise.map", + promise + ); + if (ret === errorObj) { + this._reject(ret.e); + return true; + } + + var maybePromise = tryConvertToPromise(ret, this._promise); + if (maybePromise instanceof Promise) { + maybePromise = maybePromise._target(); + var bitField = maybePromise._bitField; + ; + if (((bitField & 50397184) === 0)) { + if (limit >= 1) this._inFlight++; + values[index] = maybePromise; + maybePromise._proxy(this, (index + 1) * -1); + return false; + } else if (((bitField & 33554432) !== 0)) { + ret = maybePromise._value(); + } else if (((bitField & 16777216) !== 0)) { + this._reject(maybePromise._reason()); + return true; + } else { + this._cancel(); + return true; + } + } + values[index] = ret; + } + var totalResolved = ++this._totalResolved; + if (totalResolved >= length) { + if (preservedValues !== null) { + this._filter(values, preservedValues); + } else { + this._resolve(values); + } + return true; + } + return false; +}; + +MappingPromiseArray.prototype._drainQueue = function () { + var queue = this._queue; + var limit = this._limit; + var values = this._values; + while (queue.length > 0 && this._inFlight < limit) { + if (this._isResolved()) return; + var index = queue.pop(); + this._promiseFulfilled(values[index], index); + } +}; + +MappingPromiseArray.prototype._filter = function (booleans, values) { + var len = values.length; + var ret = new Array(len); + var j = 0; + for (var i = 0; i < len; ++i) { + if (booleans[i]) ret[j++] = values[i]; + } + ret.length = j; + this._resolve(ret); +}; + +MappingPromiseArray.prototype.preservedValues = function () { + return this._preservedValues; +}; + +function map(promises, fn, options, _filter) { + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util.classString(fn)); + } + + var limit = 0; + if (options !== undefined) { + if (typeof options === "object" && options !== null) { + if (typeof options.concurrency !== "number") { + return Promise.reject( + new TypeError("'concurrency' must be a number but it is " + + util.classString(options.concurrency))); + } + limit = options.concurrency; + } else { + return Promise.reject(new TypeError( + "options argument must be an object but it is " + + util.classString(options))); + } + } + limit = typeof limit === "number" && + isFinite(limit) && limit >= 1 ? limit : 0; + return new MappingPromiseArray(promises, fn, limit, _filter).promise(); +} + +Promise.prototype.map = function (fn, options) { + return map(this, fn, options, null); +}; + +Promise.map = function (promises, fn, options, _filter) { + return map(promises, fn, options, _filter); +}; + + +}; + +},{"./util":36}],19:[function(_dereq_,module,exports){ +"use strict"; +module.exports = +function(Promise, INTERNAL, tryConvertToPromise, apiRejection, debug) { +var util = _dereq_("./util"); +var tryCatch = util.tryCatch; + +Promise.method = function (fn) { + if (typeof fn !== "function") { + throw new Promise.TypeError("expecting a function but got " + util.classString(fn)); + } + return function () { + var ret = new Promise(INTERNAL); + ret._captureStackTrace(); + ret._pushContext(); + var value = tryCatch(fn).apply(this, arguments); + var promiseCreated = ret._popContext(); + debug.checkForgottenReturns( + value, promiseCreated, "Promise.method", ret); + ret._resolveFromSyncValue(value); + return ret; + }; +}; + +Promise.attempt = Promise["try"] = function (fn) { + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util.classString(fn)); + } + var ret = new Promise(INTERNAL); + ret._captureStackTrace(); + ret._pushContext(); + var value; + if (arguments.length > 1) { + debug.deprecated("calling Promise.try with more than 1 argument"); + var arg = arguments[1]; + var ctx = arguments[2]; + value = util.isArray(arg) ? tryCatch(fn).apply(ctx, arg) + : tryCatch(fn).call(ctx, arg); + } else { + value = tryCatch(fn)(); + } + var promiseCreated = ret._popContext(); + debug.checkForgottenReturns( + value, promiseCreated, "Promise.try", ret); + ret._resolveFromSyncValue(value); + return ret; +}; + +Promise.prototype._resolveFromSyncValue = function (value) { + if (value === util.errorObj) { + this._rejectCallback(value.e, false); + } else { + this._resolveCallback(value, true); + } +}; +}; + +},{"./util":36}],20:[function(_dereq_,module,exports){ +"use strict"; +var util = _dereq_("./util"); +var maybeWrapAsError = util.maybeWrapAsError; +var errors = _dereq_("./errors"); +var OperationalError = errors.OperationalError; +var es5 = _dereq_("./es5"); + +function isUntypedError(obj) { + return obj instanceof Error && + es5.getPrototypeOf(obj) === Error.prototype; +} + +var rErrorKey = /^(?:name|message|stack|cause)$/; +function wrapAsOperationalError(obj) { + var ret; + if (isUntypedError(obj)) { + ret = new OperationalError(obj); + ret.name = obj.name; + ret.message = obj.message; + ret.stack = obj.stack; + var keys = es5.keys(obj); + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + if (!rErrorKey.test(key)) { + ret[key] = obj[key]; + } + } + return ret; + } + util.markAsOriginatingFromRejection(obj); + return obj; +} + +function nodebackForPromise(promise, multiArgs) { + return function(err, value) { + if (promise === null) return; + if (err) { + var wrapped = wrapAsOperationalError(maybeWrapAsError(err)); + promise._attachExtraTrace(wrapped); + promise._reject(wrapped); + } else if (!multiArgs) { + promise._fulfill(value); + } else { + var args = [].slice.call(arguments, 1);; + promise._fulfill(args); + } + promise = null; + }; +} + +module.exports = nodebackForPromise; + +},{"./errors":12,"./es5":13,"./util":36}],21:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise) { +var util = _dereq_("./util"); +var async = Promise._async; +var tryCatch = util.tryCatch; +var errorObj = util.errorObj; + +function spreadAdapter(val, nodeback) { + var promise = this; + if (!util.isArray(val)) return successAdapter.call(promise, val, nodeback); + var ret = + tryCatch(nodeback).apply(promise._boundValue(), [null].concat(val)); + if (ret === errorObj) { + async.throwLater(ret.e); + } +} + +function successAdapter(val, nodeback) { + var promise = this; + var receiver = promise._boundValue(); + var ret = val === undefined + ? tryCatch(nodeback).call(receiver, null) + : tryCatch(nodeback).call(receiver, null, val); + if (ret === errorObj) { + async.throwLater(ret.e); + } +} +function errorAdapter(reason, nodeback) { + var promise = this; + if (!reason) { + var newReason = new Error(reason + ""); + newReason.cause = reason; + reason = newReason; + } + var ret = tryCatch(nodeback).call(promise._boundValue(), reason); + if (ret === errorObj) { + async.throwLater(ret.e); + } +} + +Promise.prototype.asCallback = Promise.prototype.nodeify = function (nodeback, + options) { + if (typeof nodeback == "function") { + var adapter = successAdapter; + if (options !== undefined && Object(options).spread) { + adapter = spreadAdapter; + } + this._then( + adapter, + errorAdapter, + undefined, + this, + nodeback + ); + } + return this; +}; +}; + +},{"./util":36}],22:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function() { +var makeSelfResolutionError = function () { + return new TypeError("circular promise resolution chain\u000a\u000a See http://goo.gl/MqrFmX\u000a"); +}; +var reflectHandler = function() { + return new Promise.PromiseInspection(this._target()); +}; +var apiRejection = function(msg) { + return Promise.reject(new TypeError(msg)); +}; +function Proxyable() {} +var UNDEFINED_BINDING = {}; +var util = _dereq_("./util"); + +var getDomain; +if (util.isNode) { + getDomain = function() { + var ret = process.domain; + if (ret === undefined) ret = null; + return ret; + }; +} else { + getDomain = function() { + return null; + }; +} +util.notEnumerableProp(Promise, "_getDomain", getDomain); + +var es5 = _dereq_("./es5"); +var Async = _dereq_("./async"); +var async = new Async(); +es5.defineProperty(Promise, "_async", {value: async}); +var errors = _dereq_("./errors"); +var TypeError = Promise.TypeError = errors.TypeError; +Promise.RangeError = errors.RangeError; +var CancellationError = Promise.CancellationError = errors.CancellationError; +Promise.TimeoutError = errors.TimeoutError; +Promise.OperationalError = errors.OperationalError; +Promise.RejectionError = errors.OperationalError; +Promise.AggregateError = errors.AggregateError; +var INTERNAL = function(){}; +var APPLY = {}; +var NEXT_FILTER = {}; +var tryConvertToPromise = _dereq_("./thenables")(Promise, INTERNAL); +var PromiseArray = + _dereq_("./promise_array")(Promise, INTERNAL, + tryConvertToPromise, apiRejection, Proxyable); +var Context = _dereq_("./context")(Promise); + /*jshint unused:false*/ +var createContext = Context.create; +var debug = _dereq_("./debuggability")(Promise, Context); +var CapturedTrace = debug.CapturedTrace; +var PassThroughHandlerContext = + _dereq_("./finally")(Promise, tryConvertToPromise, NEXT_FILTER); +var catchFilter = _dereq_("./catch_filter")(NEXT_FILTER); +var nodebackForPromise = _dereq_("./nodeback"); +var errorObj = util.errorObj; +var tryCatch = util.tryCatch; +function check(self, executor) { + if (self == null || self.constructor !== Promise) { + throw new TypeError("the promise constructor cannot be invoked directly\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + if (typeof executor !== "function") { + throw new TypeError("expecting a function but got " + util.classString(executor)); + } + +} + +function Promise(executor) { + if (executor !== INTERNAL) { + check(this, executor); + } + this._bitField = 0; + this._fulfillmentHandler0 = undefined; + this._rejectionHandler0 = undefined; + this._promise0 = undefined; + this._receiver0 = undefined; + this._resolveFromExecutor(executor); + this._promiseCreated(); + this._fireEvent("promiseCreated", this); +} + +Promise.prototype.toString = function () { + return "[object Promise]"; +}; + +Promise.prototype.caught = Promise.prototype["catch"] = function (fn) { + var len = arguments.length; + if (len > 1) { + var catchInstances = new Array(len - 1), + j = 0, i; + for (i = 0; i < len - 1; ++i) { + var item = arguments[i]; + if (util.isObject(item)) { + catchInstances[j++] = item; + } else { + return apiRejection("Catch statement predicate: " + + "expecting an object but got " + util.classString(item)); + } + } + catchInstances.length = j; + fn = arguments[i]; + return this.then(undefined, catchFilter(catchInstances, fn, this)); + } + return this.then(undefined, fn); +}; + +Promise.prototype.reflect = function () { + return this._then(reflectHandler, + reflectHandler, undefined, this, undefined); +}; + +Promise.prototype.then = function (didFulfill, didReject) { + if (debug.warnings() && arguments.length > 0 && + typeof didFulfill !== "function" && + typeof didReject !== "function") { + var msg = ".then() only accepts functions but was passed: " + + util.classString(didFulfill); + if (arguments.length > 1) { + msg += ", " + util.classString(didReject); + } + this._warn(msg); + } + return this._then(didFulfill, didReject, undefined, undefined, undefined); +}; + +Promise.prototype.done = function (didFulfill, didReject) { + var promise = + this._then(didFulfill, didReject, undefined, undefined, undefined); + promise._setIsFinal(); +}; + +Promise.prototype.spread = function (fn) { + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util.classString(fn)); + } + return this.all()._then(fn, undefined, undefined, APPLY, undefined); +}; + +Promise.prototype.toJSON = function () { + var ret = { + isFulfilled: false, + isRejected: false, + fulfillmentValue: undefined, + rejectionReason: undefined + }; + if (this.isFulfilled()) { + ret.fulfillmentValue = this.value(); + ret.isFulfilled = true; + } else if (this.isRejected()) { + ret.rejectionReason = this.reason(); + ret.isRejected = true; + } + return ret; +}; + +Promise.prototype.all = function () { + if (arguments.length > 0) { + this._warn(".all() was passed arguments but it does not take any"); + } + return new PromiseArray(this).promise(); +}; + +Promise.prototype.error = function (fn) { + return this.caught(util.originatesFromRejection, fn); +}; + +Promise.getNewLibraryCopy = module.exports; + +Promise.is = function (val) { + return val instanceof Promise; +}; + +Promise.fromNode = Promise.fromCallback = function(fn) { + var ret = new Promise(INTERNAL); + ret._captureStackTrace(); + var multiArgs = arguments.length > 1 ? !!Object(arguments[1]).multiArgs + : false; + var result = tryCatch(fn)(nodebackForPromise(ret, multiArgs)); + if (result === errorObj) { + ret._rejectCallback(result.e, true); + } + if (!ret._isFateSealed()) ret._setAsyncGuaranteed(); + return ret; +}; + +Promise.all = function (promises) { + return new PromiseArray(promises).promise(); +}; + +Promise.cast = function (obj) { + var ret = tryConvertToPromise(obj); + if (!(ret instanceof Promise)) { + ret = new Promise(INTERNAL); + ret._captureStackTrace(); + ret._setFulfilled(); + ret._rejectionHandler0 = obj; + } + return ret; +}; + +Promise.resolve = Promise.fulfilled = Promise.cast; + +Promise.reject = Promise.rejected = function (reason) { + var ret = new Promise(INTERNAL); + ret._captureStackTrace(); + ret._rejectCallback(reason, true); + return ret; +}; + +Promise.setScheduler = function(fn) { + if (typeof fn !== "function") { + throw new TypeError("expecting a function but got " + util.classString(fn)); + } + return async.setScheduler(fn); +}; + +Promise.prototype._then = function ( + didFulfill, + didReject, + _, receiver, + internalData +) { + var haveInternalData = internalData !== undefined; + var promise = haveInternalData ? internalData : new Promise(INTERNAL); + var target = this._target(); + var bitField = target._bitField; + + if (!haveInternalData) { + promise._propagateFrom(this, 3); + promise._captureStackTrace(); + if (receiver === undefined && + ((this._bitField & 2097152) !== 0)) { + if (!((bitField & 50397184) === 0)) { + receiver = this._boundValue(); + } else { + receiver = target === this ? undefined : this._boundTo; + } + } + this._fireEvent("promiseChained", this, promise); + } + + var domain = getDomain(); + if (!((bitField & 50397184) === 0)) { + var handler, value, settler = target._settlePromiseCtx; + if (((bitField & 33554432) !== 0)) { + value = target._rejectionHandler0; + handler = didFulfill; + } else if (((bitField & 16777216) !== 0)) { + value = target._fulfillmentHandler0; + handler = didReject; + target._unsetRejectionIsUnhandled(); + } else { + settler = target._settlePromiseLateCancellationObserver; + value = new CancellationError("late cancellation observer"); + target._attachExtraTrace(value); + handler = didReject; + } + + async.invoke(settler, target, { + handler: domain === null ? handler + : (typeof handler === "function" && + util.domainBind(domain, handler)), + promise: promise, + receiver: receiver, + value: value + }); + } else { + target._addCallbacks(didFulfill, didReject, promise, receiver, domain); + } + + return promise; +}; + +Promise.prototype._length = function () { + return this._bitField & 65535; +}; + +Promise.prototype._isFateSealed = function () { + return (this._bitField & 117506048) !== 0; +}; + +Promise.prototype._isFollowing = function () { + return (this._bitField & 67108864) === 67108864; +}; + +Promise.prototype._setLength = function (len) { + this._bitField = (this._bitField & -65536) | + (len & 65535); +}; + +Promise.prototype._setFulfilled = function () { + this._bitField = this._bitField | 33554432; + this._fireEvent("promiseFulfilled", this); +}; + +Promise.prototype._setRejected = function () { + this._bitField = this._bitField | 16777216; + this._fireEvent("promiseRejected", this); +}; + +Promise.prototype._setFollowing = function () { + this._bitField = this._bitField | 67108864; + this._fireEvent("promiseResolved", this); +}; + +Promise.prototype._setIsFinal = function () { + this._bitField = this._bitField | 4194304; +}; + +Promise.prototype._isFinal = function () { + return (this._bitField & 4194304) > 0; +}; + +Promise.prototype._unsetCancelled = function() { + this._bitField = this._bitField & (~65536); +}; + +Promise.prototype._setCancelled = function() { + this._bitField = this._bitField | 65536; + this._fireEvent("promiseCancelled", this); +}; + +Promise.prototype._setWillBeCancelled = function() { + this._bitField = this._bitField | 8388608; +}; + +Promise.prototype._setAsyncGuaranteed = function() { + if (async.hasCustomScheduler()) return; + this._bitField = this._bitField | 134217728; +}; + +Promise.prototype._receiverAt = function (index) { + var ret = index === 0 ? this._receiver0 : this[ + index * 4 - 4 + 3]; + if (ret === UNDEFINED_BINDING) { + return undefined; + } else if (ret === undefined && this._isBound()) { + return this._boundValue(); + } + return ret; +}; + +Promise.prototype._promiseAt = function (index) { + return this[ + index * 4 - 4 + 2]; +}; + +Promise.prototype._fulfillmentHandlerAt = function (index) { + return this[ + index * 4 - 4 + 0]; +}; + +Promise.prototype._rejectionHandlerAt = function (index) { + return this[ + index * 4 - 4 + 1]; +}; + +Promise.prototype._boundValue = function() {}; + +Promise.prototype._migrateCallback0 = function (follower) { + var bitField = follower._bitField; + var fulfill = follower._fulfillmentHandler0; + var reject = follower._rejectionHandler0; + var promise = follower._promise0; + var receiver = follower._receiverAt(0); + if (receiver === undefined) receiver = UNDEFINED_BINDING; + this._addCallbacks(fulfill, reject, promise, receiver, null); +}; + +Promise.prototype._migrateCallbackAt = function (follower, index) { + var fulfill = follower._fulfillmentHandlerAt(index); + var reject = follower._rejectionHandlerAt(index); + var promise = follower._promiseAt(index); + var receiver = follower._receiverAt(index); + if (receiver === undefined) receiver = UNDEFINED_BINDING; + this._addCallbacks(fulfill, reject, promise, receiver, null); +}; + +Promise.prototype._addCallbacks = function ( + fulfill, + reject, + promise, + receiver, + domain +) { + var index = this._length(); + + if (index >= 65535 - 4) { + index = 0; + this._setLength(0); + } + + if (index === 0) { + this._promise0 = promise; + this._receiver0 = receiver; + if (typeof fulfill === "function") { + this._fulfillmentHandler0 = + domain === null ? fulfill : util.domainBind(domain, fulfill); + } + if (typeof reject === "function") { + this._rejectionHandler0 = + domain === null ? reject : util.domainBind(domain, reject); + } + } else { + var base = index * 4 - 4; + this[base + 2] = promise; + this[base + 3] = receiver; + if (typeof fulfill === "function") { + this[base + 0] = + domain === null ? fulfill : util.domainBind(domain, fulfill); + } + if (typeof reject === "function") { + this[base + 1] = + domain === null ? reject : util.domainBind(domain, reject); + } + } + this._setLength(index + 1); + return index; +}; + +Promise.prototype._proxy = function (proxyable, arg) { + this._addCallbacks(undefined, undefined, arg, proxyable, null); +}; + +Promise.prototype._resolveCallback = function(value, shouldBind) { + if (((this._bitField & 117506048) !== 0)) return; + if (value === this) + return this._rejectCallback(makeSelfResolutionError(), false); + var maybePromise = tryConvertToPromise(value, this); + if (!(maybePromise instanceof Promise)) return this._fulfill(value); + + if (shouldBind) this._propagateFrom(maybePromise, 2); + + var promise = maybePromise._target(); + + if (promise === this) { + this._reject(makeSelfResolutionError()); + return; + } + + var bitField = promise._bitField; + if (((bitField & 50397184) === 0)) { + var len = this._length(); + if (len > 0) promise._migrateCallback0(this); + for (var i = 1; i < len; ++i) { + promise._migrateCallbackAt(this, i); + } + this._setFollowing(); + this._setLength(0); + this._setFollowee(promise); + } else if (((bitField & 33554432) !== 0)) { + this._fulfill(promise._value()); + } else if (((bitField & 16777216) !== 0)) { + this._reject(promise._reason()); + } else { + var reason = new CancellationError("late cancellation observer"); + promise._attachExtraTrace(reason); + this._reject(reason); + } +}; + +Promise.prototype._rejectCallback = +function(reason, synchronous, ignoreNonErrorWarnings) { + var trace = util.ensureErrorObject(reason); + var hasStack = trace === reason; + if (!hasStack && !ignoreNonErrorWarnings && debug.warnings()) { + var message = "a promise was rejected with a non-error: " + + util.classString(reason); + this._warn(message, true); + } + this._attachExtraTrace(trace, synchronous ? hasStack : false); + this._reject(reason); +}; + +Promise.prototype._resolveFromExecutor = function (executor) { + if (executor === INTERNAL) return; + var promise = this; + this._captureStackTrace(); + this._pushContext(); + var synchronous = true; + var r = this._execute(executor, function(value) { + promise._resolveCallback(value); + }, function (reason) { + promise._rejectCallback(reason, synchronous); + }); + synchronous = false; + this._popContext(); + + if (r !== undefined) { + promise._rejectCallback(r, true); + } +}; + +Promise.prototype._settlePromiseFromHandler = function ( + handler, receiver, value, promise +) { + var bitField = promise._bitField; + if (((bitField & 65536) !== 0)) return; + promise._pushContext(); + var x; + if (receiver === APPLY) { + if (!value || typeof value.length !== "number") { + x = errorObj; + x.e = new TypeError("cannot .spread() a non-array: " + + util.classString(value)); + } else { + x = tryCatch(handler).apply(this._boundValue(), value); + } + } else { + x = tryCatch(handler).call(receiver, value); + } + var promiseCreated = promise._popContext(); + bitField = promise._bitField; + if (((bitField & 65536) !== 0)) return; + + if (x === NEXT_FILTER) { + promise._reject(value); + } else if (x === errorObj) { + promise._rejectCallback(x.e, false); + } else { + debug.checkForgottenReturns(x, promiseCreated, "", promise, this); + promise._resolveCallback(x); + } +}; + +Promise.prototype._target = function() { + var ret = this; + while (ret._isFollowing()) ret = ret._followee(); + return ret; +}; + +Promise.prototype._followee = function() { + return this._rejectionHandler0; +}; + +Promise.prototype._setFollowee = function(promise) { + this._rejectionHandler0 = promise; +}; + +Promise.prototype._settlePromise = function(promise, handler, receiver, value) { + var isPromise = promise instanceof Promise; + var bitField = this._bitField; + var asyncGuaranteed = ((bitField & 134217728) !== 0); + if (((bitField & 65536) !== 0)) { + if (isPromise) promise._invokeInternalOnCancel(); + + if (receiver instanceof PassThroughHandlerContext && + receiver.isFinallyHandler()) { + receiver.cancelPromise = promise; + if (tryCatch(handler).call(receiver, value) === errorObj) { + promise._reject(errorObj.e); + } + } else if (handler === reflectHandler) { + promise._fulfill(reflectHandler.call(receiver)); + } else if (receiver instanceof Proxyable) { + receiver._promiseCancelled(promise); + } else if (isPromise || promise instanceof PromiseArray) { + promise._cancel(); + } else { + receiver.cancel(); + } + } else if (typeof handler === "function") { + if (!isPromise) { + handler.call(receiver, value, promise); + } else { + if (asyncGuaranteed) promise._setAsyncGuaranteed(); + this._settlePromiseFromHandler(handler, receiver, value, promise); + } + } else if (receiver instanceof Proxyable) { + if (!receiver._isResolved()) { + if (((bitField & 33554432) !== 0)) { + receiver._promiseFulfilled(value, promise); + } else { + receiver._promiseRejected(value, promise); + } + } + } else if (isPromise) { + if (asyncGuaranteed) promise._setAsyncGuaranteed(); + if (((bitField & 33554432) !== 0)) { + promise._fulfill(value); + } else { + promise._reject(value); + } + } +}; + +Promise.prototype._settlePromiseLateCancellationObserver = function(ctx) { + var handler = ctx.handler; + var promise = ctx.promise; + var receiver = ctx.receiver; + var value = ctx.value; + if (typeof handler === "function") { + if (!(promise instanceof Promise)) { + handler.call(receiver, value, promise); + } else { + this._settlePromiseFromHandler(handler, receiver, value, promise); + } + } else if (promise instanceof Promise) { + promise._reject(value); + } +}; + +Promise.prototype._settlePromiseCtx = function(ctx) { + this._settlePromise(ctx.promise, ctx.handler, ctx.receiver, ctx.value); +}; + +Promise.prototype._settlePromise0 = function(handler, value, bitField) { + var promise = this._promise0; + var receiver = this._receiverAt(0); + this._promise0 = undefined; + this._receiver0 = undefined; + this._settlePromise(promise, handler, receiver, value); +}; + +Promise.prototype._clearCallbackDataAtIndex = function(index) { + var base = index * 4 - 4; + this[base + 2] = + this[base + 3] = + this[base + 0] = + this[base + 1] = undefined; +}; + +Promise.prototype._fulfill = function (value) { + var bitField = this._bitField; + if (((bitField & 117506048) >>> 16)) return; + if (value === this) { + var err = makeSelfResolutionError(); + this._attachExtraTrace(err); + return this._reject(err); + } + this._setFulfilled(); + this._rejectionHandler0 = value; + + if ((bitField & 65535) > 0) { + if (((bitField & 134217728) !== 0)) { + this._settlePromises(); + } else { + async.settlePromises(this); + } + } +}; + +Promise.prototype._reject = function (reason) { + var bitField = this._bitField; + if (((bitField & 117506048) >>> 16)) return; + this._setRejected(); + this._fulfillmentHandler0 = reason; + + if (this._isFinal()) { + return async.fatalError(reason, util.isNode); + } + + if ((bitField & 65535) > 0) { + async.settlePromises(this); + } else { + this._ensurePossibleRejectionHandled(); + } +}; + +Promise.prototype._fulfillPromises = function (len, value) { + for (var i = 1; i < len; i++) { + var handler = this._fulfillmentHandlerAt(i); + var promise = this._promiseAt(i); + var receiver = this._receiverAt(i); + this._clearCallbackDataAtIndex(i); + this._settlePromise(promise, handler, receiver, value); + } +}; + +Promise.prototype._rejectPromises = function (len, reason) { + for (var i = 1; i < len; i++) { + var handler = this._rejectionHandlerAt(i); + var promise = this._promiseAt(i); + var receiver = this._receiverAt(i); + this._clearCallbackDataAtIndex(i); + this._settlePromise(promise, handler, receiver, reason); + } +}; + +Promise.prototype._settlePromises = function () { + var bitField = this._bitField; + var len = (bitField & 65535); + + if (len > 0) { + if (((bitField & 16842752) !== 0)) { + var reason = this._fulfillmentHandler0; + this._settlePromise0(this._rejectionHandler0, reason, bitField); + this._rejectPromises(len, reason); + } else { + var value = this._rejectionHandler0; + this._settlePromise0(this._fulfillmentHandler0, value, bitField); + this._fulfillPromises(len, value); + } + this._setLength(0); + } + this._clearCancellationData(); +}; + +Promise.prototype._settledValue = function() { + var bitField = this._bitField; + if (((bitField & 33554432) !== 0)) { + return this._rejectionHandler0; + } else if (((bitField & 16777216) !== 0)) { + return this._fulfillmentHandler0; + } +}; + +function deferResolve(v) {this.promise._resolveCallback(v);} +function deferReject(v) {this.promise._rejectCallback(v, false);} + +Promise.defer = Promise.pending = function() { + debug.deprecated("Promise.defer", "new Promise"); + var promise = new Promise(INTERNAL); + return { + promise: promise, + resolve: deferResolve, + reject: deferReject + }; +}; + +util.notEnumerableProp(Promise, + "_makeSelfResolutionError", + makeSelfResolutionError); + +_dereq_("./method")(Promise, INTERNAL, tryConvertToPromise, apiRejection, + debug); +_dereq_("./bind")(Promise, INTERNAL, tryConvertToPromise, debug); +_dereq_("./cancel")(Promise, PromiseArray, apiRejection, debug); +_dereq_("./direct_resolve")(Promise); +_dereq_("./synchronous_inspection")(Promise); +_dereq_("./join")( + Promise, PromiseArray, tryConvertToPromise, INTERNAL, async, getDomain); +Promise.Promise = Promise; +Promise.version = "3.5.1"; +_dereq_('./map.js')(Promise, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL, debug); +_dereq_('./call_get.js')(Promise); +_dereq_('./using.js')(Promise, apiRejection, tryConvertToPromise, createContext, INTERNAL, debug); +_dereq_('./timers.js')(Promise, INTERNAL, debug); +_dereq_('./generators.js')(Promise, apiRejection, INTERNAL, tryConvertToPromise, Proxyable, debug); +_dereq_('./nodeify.js')(Promise); +_dereq_('./promisify.js')(Promise, INTERNAL); +_dereq_('./props.js')(Promise, PromiseArray, tryConvertToPromise, apiRejection); +_dereq_('./race.js')(Promise, INTERNAL, tryConvertToPromise, apiRejection); +_dereq_('./reduce.js')(Promise, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL, debug); +_dereq_('./settle.js')(Promise, PromiseArray, debug); +_dereq_('./some.js')(Promise, PromiseArray, apiRejection); +_dereq_('./filter.js')(Promise, INTERNAL); +_dereq_('./each.js')(Promise, INTERNAL); +_dereq_('./any.js')(Promise); + + util.toFastProperties(Promise); + util.toFastProperties(Promise.prototype); + function fillTypes(value) { + var p = new Promise(INTERNAL); + p._fulfillmentHandler0 = value; + p._rejectionHandler0 = value; + p._promise0 = value; + p._receiver0 = value; + } + // Complete slack tracking, opt out of field-type tracking and + // stabilize map + fillTypes({a: 1}); + fillTypes({b: 2}); + fillTypes({c: 3}); + fillTypes(1); + fillTypes(function(){}); + fillTypes(undefined); + fillTypes(false); + fillTypes(new Promise(INTERNAL)); + debug.setBounds(Async.firstLineError, util.lastLineError); + return Promise; + +}; + +},{"./any.js":1,"./async":2,"./bind":3,"./call_get.js":5,"./cancel":6,"./catch_filter":7,"./context":8,"./debuggability":9,"./direct_resolve":10,"./each.js":11,"./errors":12,"./es5":13,"./filter.js":14,"./finally":15,"./generators.js":16,"./join":17,"./map.js":18,"./method":19,"./nodeback":20,"./nodeify.js":21,"./promise_array":23,"./promisify.js":24,"./props.js":25,"./race.js":27,"./reduce.js":28,"./settle.js":30,"./some.js":31,"./synchronous_inspection":32,"./thenables":33,"./timers.js":34,"./using.js":35,"./util":36}],23:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, INTERNAL, tryConvertToPromise, + apiRejection, Proxyable) { +var util = _dereq_("./util"); +var isArray = util.isArray; + +function toResolutionValue(val) { + switch(val) { + case -2: return []; + case -3: return {}; + case -6: return new Map(); + } +} + +function PromiseArray(values) { + var promise = this._promise = new Promise(INTERNAL); + if (values instanceof Promise) { + promise._propagateFrom(values, 3); + } + promise._setOnCancel(this); + this._values = values; + this._length = 0; + this._totalResolved = 0; + this._init(undefined, -2); +} +util.inherits(PromiseArray, Proxyable); + +PromiseArray.prototype.length = function () { + return this._length; +}; + +PromiseArray.prototype.promise = function () { + return this._promise; +}; + +PromiseArray.prototype._init = function init(_, resolveValueIfEmpty) { + var values = tryConvertToPromise(this._values, this._promise); + if (values instanceof Promise) { + values = values._target(); + var bitField = values._bitField; + ; + this._values = values; + + if (((bitField & 50397184) === 0)) { + this._promise._setAsyncGuaranteed(); + return values._then( + init, + this._reject, + undefined, + this, + resolveValueIfEmpty + ); + } else if (((bitField & 33554432) !== 0)) { + values = values._value(); + } else if (((bitField & 16777216) !== 0)) { + return this._reject(values._reason()); + } else { + return this._cancel(); + } + } + values = util.asArray(values); + if (values === null) { + var err = apiRejection( + "expecting an array or an iterable object but got " + util.classString(values)).reason(); + this._promise._rejectCallback(err, false); + return; + } + + if (values.length === 0) { + if (resolveValueIfEmpty === -5) { + this._resolveEmptyArray(); + } + else { + this._resolve(toResolutionValue(resolveValueIfEmpty)); + } + return; + } + this._iterate(values); +}; + +PromiseArray.prototype._iterate = function(values) { + var len = this.getActualLength(values.length); + this._length = len; + this._values = this.shouldCopyValues() ? new Array(len) : this._values; + var result = this._promise; + var isResolved = false; + var bitField = null; + for (var i = 0; i < len; ++i) { + var maybePromise = tryConvertToPromise(values[i], result); + + if (maybePromise instanceof Promise) { + maybePromise = maybePromise._target(); + bitField = maybePromise._bitField; + } else { + bitField = null; + } + + if (isResolved) { + if (bitField !== null) { + maybePromise.suppressUnhandledRejections(); + } + } else if (bitField !== null) { + if (((bitField & 50397184) === 0)) { + maybePromise._proxy(this, i); + this._values[i] = maybePromise; + } else if (((bitField & 33554432) !== 0)) { + isResolved = this._promiseFulfilled(maybePromise._value(), i); + } else if (((bitField & 16777216) !== 0)) { + isResolved = this._promiseRejected(maybePromise._reason(), i); + } else { + isResolved = this._promiseCancelled(i); + } + } else { + isResolved = this._promiseFulfilled(maybePromise, i); + } + } + if (!isResolved) result._setAsyncGuaranteed(); +}; + +PromiseArray.prototype._isResolved = function () { + return this._values === null; +}; + +PromiseArray.prototype._resolve = function (value) { + this._values = null; + this._promise._fulfill(value); +}; + +PromiseArray.prototype._cancel = function() { + if (this._isResolved() || !this._promise._isCancellable()) return; + this._values = null; + this._promise._cancel(); +}; + +PromiseArray.prototype._reject = function (reason) { + this._values = null; + this._promise._rejectCallback(reason, false); +}; + +PromiseArray.prototype._promiseFulfilled = function (value, index) { + this._values[index] = value; + var totalResolved = ++this._totalResolved; + if (totalResolved >= this._length) { + this._resolve(this._values); + return true; + } + return false; +}; + +PromiseArray.prototype._promiseCancelled = function() { + this._cancel(); + return true; +}; + +PromiseArray.prototype._promiseRejected = function (reason) { + this._totalResolved++; + this._reject(reason); + return true; +}; + +PromiseArray.prototype._resultCancelled = function() { + if (this._isResolved()) return; + var values = this._values; + this._cancel(); + if (values instanceof Promise) { + values.cancel(); + } else { + for (var i = 0; i < values.length; ++i) { + if (values[i] instanceof Promise) { + values[i].cancel(); + } + } + } +}; + +PromiseArray.prototype.shouldCopyValues = function () { + return true; +}; + +PromiseArray.prototype.getActualLength = function (len) { + return len; +}; + +return PromiseArray; +}; + +},{"./util":36}],24:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, INTERNAL) { +var THIS = {}; +var util = _dereq_("./util"); +var nodebackForPromise = _dereq_("./nodeback"); +var withAppended = util.withAppended; +var maybeWrapAsError = util.maybeWrapAsError; +var canEvaluate = util.canEvaluate; +var TypeError = _dereq_("./errors").TypeError; +var defaultSuffix = "Async"; +var defaultPromisified = {__isPromisified__: true}; +var noCopyProps = [ + "arity", "length", + "name", + "arguments", + "caller", + "callee", + "prototype", + "__isPromisified__" +]; +var noCopyPropsPattern = new RegExp("^(?:" + noCopyProps.join("|") + ")$"); + +var defaultFilter = function(name) { + return util.isIdentifier(name) && + name.charAt(0) !== "_" && + name !== "constructor"; +}; + +function propsFilter(key) { + return !noCopyPropsPattern.test(key); +} + +function isPromisified(fn) { + try { + return fn.__isPromisified__ === true; + } + catch (e) { + return false; + } +} + +function hasPromisified(obj, key, suffix) { + var val = util.getDataPropertyOrDefault(obj, key + suffix, + defaultPromisified); + return val ? isPromisified(val) : false; +} +function checkValid(ret, suffix, suffixRegexp) { + for (var i = 0; i < ret.length; i += 2) { + var key = ret[i]; + if (suffixRegexp.test(key)) { + var keyWithoutAsyncSuffix = key.replace(suffixRegexp, ""); + for (var j = 0; j < ret.length; j += 2) { + if (ret[j] === keyWithoutAsyncSuffix) { + throw new TypeError("Cannot promisify an API that has normal methods with '%s'-suffix\u000a\u000a See http://goo.gl/MqrFmX\u000a" + .replace("%s", suffix)); + } + } + } + } +} + +function promisifiableMethods(obj, suffix, suffixRegexp, filter) { + var keys = util.inheritedDataKeys(obj); + var ret = []; + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + var value = obj[key]; + var passesDefaultFilter = filter === defaultFilter + ? true : defaultFilter(key, value, obj); + if (typeof value === "function" && + !isPromisified(value) && + !hasPromisified(obj, key, suffix) && + filter(key, value, obj, passesDefaultFilter)) { + ret.push(key, value); + } + } + checkValid(ret, suffix, suffixRegexp); + return ret; +} + +var escapeIdentRegex = function(str) { + return str.replace(/([$])/, "\\$"); +}; + +var makeNodePromisifiedEval; +if (false) { +var switchCaseArgumentOrder = function(likelyArgumentCount) { + var ret = [likelyArgumentCount]; + var min = Math.max(0, likelyArgumentCount - 1 - 3); + for(var i = likelyArgumentCount - 1; i >= min; --i) { + ret.push(i); + } + for(var i = likelyArgumentCount + 1; i <= 3; ++i) { + ret.push(i); + } + return ret; +}; + +var argumentSequence = function(argumentCount) { + return util.filledRange(argumentCount, "_arg", ""); +}; + +var parameterDeclaration = function(parameterCount) { + return util.filledRange( + Math.max(parameterCount, 3), "_arg", ""); +}; + +var parameterCount = function(fn) { + if (typeof fn.length === "number") { + return Math.max(Math.min(fn.length, 1023 + 1), 0); + } + return 0; +}; + +makeNodePromisifiedEval = +function(callback, receiver, originalName, fn, _, multiArgs) { + var newParameterCount = Math.max(0, parameterCount(fn) - 1); + var argumentOrder = switchCaseArgumentOrder(newParameterCount); + var shouldProxyThis = typeof callback === "string" || receiver === THIS; + + function generateCallForArgumentCount(count) { + var args = argumentSequence(count).join(", "); + var comma = count > 0 ? ", " : ""; + var ret; + if (shouldProxyThis) { + ret = "ret = callback.call(this, {{args}}, nodeback); break;\n"; + } else { + ret = receiver === undefined + ? "ret = callback({{args}}, nodeback); break;\n" + : "ret = callback.call(receiver, {{args}}, nodeback); break;\n"; + } + return ret.replace("{{args}}", args).replace(", ", comma); + } + + function generateArgumentSwitchCase() { + var ret = ""; + for (var i = 0; i < argumentOrder.length; ++i) { + ret += "case " + argumentOrder[i] +":" + + generateCallForArgumentCount(argumentOrder[i]); + } + + ret += " \n\ + default: \n\ + var args = new Array(len + 1); \n\ + var i = 0; \n\ + for (var i = 0; i < len; ++i) { \n\ + args[i] = arguments[i]; \n\ + } \n\ + args[i] = nodeback; \n\ + [CodeForCall] \n\ + break; \n\ + ".replace("[CodeForCall]", (shouldProxyThis + ? "ret = callback.apply(this, args);\n" + : "ret = callback.apply(receiver, args);\n")); + return ret; + } + + var getFunctionCode = typeof callback === "string" + ? ("this != null ? this['"+callback+"'] : fn") + : "fn"; + var body = "'use strict'; \n\ + var ret = function (Parameters) { \n\ + 'use strict'; \n\ + var len = arguments.length; \n\ + var promise = new Promise(INTERNAL); \n\ + promise._captureStackTrace(); \n\ + var nodeback = nodebackForPromise(promise, " + multiArgs + "); \n\ + var ret; \n\ + var callback = tryCatch([GetFunctionCode]); \n\ + switch(len) { \n\ + [CodeForSwitchCase] \n\ + } \n\ + if (ret === errorObj) { \n\ + promise._rejectCallback(maybeWrapAsError(ret.e), true, true);\n\ + } \n\ + if (!promise._isFateSealed()) promise._setAsyncGuaranteed(); \n\ + return promise; \n\ + }; \n\ + notEnumerableProp(ret, '__isPromisified__', true); \n\ + return ret; \n\ + ".replace("[CodeForSwitchCase]", generateArgumentSwitchCase()) + .replace("[GetFunctionCode]", getFunctionCode); + body = body.replace("Parameters", parameterDeclaration(newParameterCount)); + return new Function("Promise", + "fn", + "receiver", + "withAppended", + "maybeWrapAsError", + "nodebackForPromise", + "tryCatch", + "errorObj", + "notEnumerableProp", + "INTERNAL", + body)( + Promise, + fn, + receiver, + withAppended, + maybeWrapAsError, + nodebackForPromise, + util.tryCatch, + util.errorObj, + util.notEnumerableProp, + INTERNAL); +}; +} + +function makeNodePromisifiedClosure(callback, receiver, _, fn, __, multiArgs) { + var defaultThis = (function() {return this;})(); + var method = callback; + if (typeof method === "string") { + callback = fn; + } + function promisified() { + var _receiver = receiver; + if (receiver === THIS) _receiver = this; + var promise = new Promise(INTERNAL); + promise._captureStackTrace(); + var cb = typeof method === "string" && this !== defaultThis + ? this[method] : callback; + var fn = nodebackForPromise(promise, multiArgs); + try { + cb.apply(_receiver, withAppended(arguments, fn)); + } catch(e) { + promise._rejectCallback(maybeWrapAsError(e), true, true); + } + if (!promise._isFateSealed()) promise._setAsyncGuaranteed(); + return promise; + } + util.notEnumerableProp(promisified, "__isPromisified__", true); + return promisified; +} + +var makeNodePromisified = canEvaluate + ? makeNodePromisifiedEval + : makeNodePromisifiedClosure; + +function promisifyAll(obj, suffix, filter, promisifier, multiArgs) { + var suffixRegexp = new RegExp(escapeIdentRegex(suffix) + "$"); + var methods = + promisifiableMethods(obj, suffix, suffixRegexp, filter); + + for (var i = 0, len = methods.length; i < len; i+= 2) { + var key = methods[i]; + var fn = methods[i+1]; + var promisifiedKey = key + suffix; + if (promisifier === makeNodePromisified) { + obj[promisifiedKey] = + makeNodePromisified(key, THIS, key, fn, suffix, multiArgs); + } else { + var promisified = promisifier(fn, function() { + return makeNodePromisified(key, THIS, key, + fn, suffix, multiArgs); + }); + util.notEnumerableProp(promisified, "__isPromisified__", true); + obj[promisifiedKey] = promisified; + } + } + util.toFastProperties(obj); + return obj; +} + +function promisify(callback, receiver, multiArgs) { + return makeNodePromisified(callback, receiver, undefined, + callback, null, multiArgs); +} + +Promise.promisify = function (fn, options) { + if (typeof fn !== "function") { + throw new TypeError("expecting a function but got " + util.classString(fn)); + } + if (isPromisified(fn)) { + return fn; + } + options = Object(options); + var receiver = options.context === undefined ? THIS : options.context; + var multiArgs = !!options.multiArgs; + var ret = promisify(fn, receiver, multiArgs); + util.copyDescriptors(fn, ret, propsFilter); + return ret; +}; + +Promise.promisifyAll = function (target, options) { + if (typeof target !== "function" && typeof target !== "object") { + throw new TypeError("the target of promisifyAll must be an object or a function\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + options = Object(options); + var multiArgs = !!options.multiArgs; + var suffix = options.suffix; + if (typeof suffix !== "string") suffix = defaultSuffix; + var filter = options.filter; + if (typeof filter !== "function") filter = defaultFilter; + var promisifier = options.promisifier; + if (typeof promisifier !== "function") promisifier = makeNodePromisified; + + if (!util.isIdentifier(suffix)) { + throw new RangeError("suffix must be a valid identifier\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + + var keys = util.inheritedDataKeys(target); + for (var i = 0; i < keys.length; ++i) { + var value = target[keys[i]]; + if (keys[i] !== "constructor" && + util.isClass(value)) { + promisifyAll(value.prototype, suffix, filter, promisifier, + multiArgs); + promisifyAll(value, suffix, filter, promisifier, multiArgs); + } + } + + return promisifyAll(target, suffix, filter, promisifier, multiArgs); +}; +}; + + +},{"./errors":12,"./nodeback":20,"./util":36}],25:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function( + Promise, PromiseArray, tryConvertToPromise, apiRejection) { +var util = _dereq_("./util"); +var isObject = util.isObject; +var es5 = _dereq_("./es5"); +var Es6Map; +if (typeof Map === "function") Es6Map = Map; + +var mapToEntries = (function() { + var index = 0; + var size = 0; + + function extractEntry(value, key) { + this[index] = value; + this[index + size] = key; + index++; + } + + return function mapToEntries(map) { + size = map.size; + index = 0; + var ret = new Array(map.size * 2); + map.forEach(extractEntry, ret); + return ret; + }; +})(); + +var entriesToMap = function(entries) { + var ret = new Es6Map(); + var length = entries.length / 2 | 0; + for (var i = 0; i < length; ++i) { + var key = entries[length + i]; + var value = entries[i]; + ret.set(key, value); + } + return ret; +}; + +function PropertiesPromiseArray(obj) { + var isMap = false; + var entries; + if (Es6Map !== undefined && obj instanceof Es6Map) { + entries = mapToEntries(obj); + isMap = true; + } else { + var keys = es5.keys(obj); + var len = keys.length; + entries = new Array(len * 2); + for (var i = 0; i < len; ++i) { + var key = keys[i]; + entries[i] = obj[key]; + entries[i + len] = key; + } + } + this.constructor$(entries); + this._isMap = isMap; + this._init$(undefined, isMap ? -6 : -3); +} +util.inherits(PropertiesPromiseArray, PromiseArray); + +PropertiesPromiseArray.prototype._init = function () {}; + +PropertiesPromiseArray.prototype._promiseFulfilled = function (value, index) { + this._values[index] = value; + var totalResolved = ++this._totalResolved; + if (totalResolved >= this._length) { + var val; + if (this._isMap) { + val = entriesToMap(this._values); + } else { + val = {}; + var keyOffset = this.length(); + for (var i = 0, len = this.length(); i < len; ++i) { + val[this._values[i + keyOffset]] = this._values[i]; + } + } + this._resolve(val); + return true; + } + return false; +}; + +PropertiesPromiseArray.prototype.shouldCopyValues = function () { + return false; +}; + +PropertiesPromiseArray.prototype.getActualLength = function (len) { + return len >> 1; +}; + +function props(promises) { + var ret; + var castValue = tryConvertToPromise(promises); + + if (!isObject(castValue)) { + return apiRejection("cannot await properties of a non-object\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } else if (castValue instanceof Promise) { + ret = castValue._then( + Promise.props, undefined, undefined, undefined, undefined); + } else { + ret = new PropertiesPromiseArray(castValue).promise(); + } + + if (castValue instanceof Promise) { + ret._propagateFrom(castValue, 2); + } + return ret; +} + +Promise.prototype.props = function () { + return props(this); +}; + +Promise.props = function (promises) { + return props(promises); +}; +}; + +},{"./es5":13,"./util":36}],26:[function(_dereq_,module,exports){ +"use strict"; +function arrayMove(src, srcIndex, dst, dstIndex, len) { + for (var j = 0; j < len; ++j) { + dst[j + dstIndex] = src[j + srcIndex]; + src[j + srcIndex] = void 0; + } +} + +function Queue(capacity) { + this._capacity = capacity; + this._length = 0; + this._front = 0; +} + +Queue.prototype._willBeOverCapacity = function (size) { + return this._capacity < size; +}; + +Queue.prototype._pushOne = function (arg) { + var length = this.length(); + this._checkCapacity(length + 1); + var i = (this._front + length) & (this._capacity - 1); + this[i] = arg; + this._length = length + 1; +}; + +Queue.prototype.push = function (fn, receiver, arg) { + var length = this.length() + 3; + if (this._willBeOverCapacity(length)) { + this._pushOne(fn); + this._pushOne(receiver); + this._pushOne(arg); + return; + } + var j = this._front + length - 3; + this._checkCapacity(length); + var wrapMask = this._capacity - 1; + this[(j + 0) & wrapMask] = fn; + this[(j + 1) & wrapMask] = receiver; + this[(j + 2) & wrapMask] = arg; + this._length = length; +}; + +Queue.prototype.shift = function () { + var front = this._front, + ret = this[front]; + + this[front] = undefined; + this._front = (front + 1) & (this._capacity - 1); + this._length--; + return ret; +}; + +Queue.prototype.length = function () { + return this._length; +}; + +Queue.prototype._checkCapacity = function (size) { + if (this._capacity < size) { + this._resizeTo(this._capacity << 1); + } +}; + +Queue.prototype._resizeTo = function (capacity) { + var oldCapacity = this._capacity; + this._capacity = capacity; + var front = this._front; + var length = this._length; + var moveItemsCount = (front + length) & (oldCapacity - 1); + arrayMove(this, 0, this, oldCapacity, moveItemsCount); +}; + +module.exports = Queue; + +},{}],27:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function( + Promise, INTERNAL, tryConvertToPromise, apiRejection) { +var util = _dereq_("./util"); + +var raceLater = function (promise) { + return promise.then(function(array) { + return race(array, promise); + }); +}; + +function race(promises, parent) { + var maybePromise = tryConvertToPromise(promises); + + if (maybePromise instanceof Promise) { + return raceLater(maybePromise); + } else { + promises = util.asArray(promises); + if (promises === null) + return apiRejection("expecting an array or an iterable object but got " + util.classString(promises)); + } + + var ret = new Promise(INTERNAL); + if (parent !== undefined) { + ret._propagateFrom(parent, 3); + } + var fulfill = ret._fulfill; + var reject = ret._reject; + for (var i = 0, len = promises.length; i < len; ++i) { + var val = promises[i]; + + if (val === undefined && !(i in promises)) { + continue; + } + + Promise.cast(val)._then(fulfill, reject, undefined, ret, null); + } + return ret; +} + +Promise.race = function (promises) { + return race(promises, undefined); +}; + +Promise.prototype.race = function () { + return race(this, undefined); +}; + +}; + +},{"./util":36}],28:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, + PromiseArray, + apiRejection, + tryConvertToPromise, + INTERNAL, + debug) { +var getDomain = Promise._getDomain; +var util = _dereq_("./util"); +var tryCatch = util.tryCatch; + +function ReductionPromiseArray(promises, fn, initialValue, _each) { + this.constructor$(promises); + var domain = getDomain(); + this._fn = domain === null ? fn : util.domainBind(domain, fn); + if (initialValue !== undefined) { + initialValue = Promise.resolve(initialValue); + initialValue._attachCancellationCallback(this); + } + this._initialValue = initialValue; + this._currentCancellable = null; + if(_each === INTERNAL) { + this._eachValues = Array(this._length); + } else if (_each === 0) { + this._eachValues = null; + } else { + this._eachValues = undefined; + } + this._promise._captureStackTrace(); + this._init$(undefined, -5); +} +util.inherits(ReductionPromiseArray, PromiseArray); + +ReductionPromiseArray.prototype._gotAccum = function(accum) { + if (this._eachValues !== undefined && + this._eachValues !== null && + accum !== INTERNAL) { + this._eachValues.push(accum); + } +}; + +ReductionPromiseArray.prototype._eachComplete = function(value) { + if (this._eachValues !== null) { + this._eachValues.push(value); + } + return this._eachValues; +}; + +ReductionPromiseArray.prototype._init = function() {}; + +ReductionPromiseArray.prototype._resolveEmptyArray = function() { + this._resolve(this._eachValues !== undefined ? this._eachValues + : this._initialValue); +}; + +ReductionPromiseArray.prototype.shouldCopyValues = function () { + return false; +}; + +ReductionPromiseArray.prototype._resolve = function(value) { + this._promise._resolveCallback(value); + this._values = null; +}; + +ReductionPromiseArray.prototype._resultCancelled = function(sender) { + if (sender === this._initialValue) return this._cancel(); + if (this._isResolved()) return; + this._resultCancelled$(); + if (this._currentCancellable instanceof Promise) { + this._currentCancellable.cancel(); + } + if (this._initialValue instanceof Promise) { + this._initialValue.cancel(); + } +}; + +ReductionPromiseArray.prototype._iterate = function (values) { + this._values = values; + var value; + var i; + var length = values.length; + if (this._initialValue !== undefined) { + value = this._initialValue; + i = 0; + } else { + value = Promise.resolve(values[0]); + i = 1; + } + + this._currentCancellable = value; + + if (!value.isRejected()) { + for (; i < length; ++i) { + var ctx = { + accum: null, + value: values[i], + index: i, + length: length, + array: this + }; + value = value._then(gotAccum, undefined, undefined, ctx, undefined); + } + } + + if (this._eachValues !== undefined) { + value = value + ._then(this._eachComplete, undefined, undefined, this, undefined); + } + value._then(completed, completed, undefined, value, this); +}; + +Promise.prototype.reduce = function (fn, initialValue) { + return reduce(this, fn, initialValue, null); +}; + +Promise.reduce = function (promises, fn, initialValue, _each) { + return reduce(promises, fn, initialValue, _each); +}; + +function completed(valueOrReason, array) { + if (this.isFulfilled()) { + array._resolve(valueOrReason); + } else { + array._reject(valueOrReason); + } +} + +function reduce(promises, fn, initialValue, _each) { + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util.classString(fn)); + } + var array = new ReductionPromiseArray(promises, fn, initialValue, _each); + return array.promise(); +} + +function gotAccum(accum) { + this.accum = accum; + this.array._gotAccum(accum); + var value = tryConvertToPromise(this.value, this.array._promise); + if (value instanceof Promise) { + this.array._currentCancellable = value; + return value._then(gotValue, undefined, undefined, this, undefined); + } else { + return gotValue.call(this, value); + } +} + +function gotValue(value) { + var array = this.array; + var promise = array._promise; + var fn = tryCatch(array._fn); + promise._pushContext(); + var ret; + if (array._eachValues !== undefined) { + ret = fn.call(promise._boundValue(), value, this.index, this.length); + } else { + ret = fn.call(promise._boundValue(), + this.accum, value, this.index, this.length); + } + if (ret instanceof Promise) { + array._currentCancellable = ret; + } + var promiseCreated = promise._popContext(); + debug.checkForgottenReturns( + ret, + promiseCreated, + array._eachValues !== undefined ? "Promise.each" : "Promise.reduce", + promise + ); + return ret; +} +}; + +},{"./util":36}],29:[function(_dereq_,module,exports){ +"use strict"; +var util = _dereq_("./util"); +var schedule; +var noAsyncScheduler = function() { + throw new Error("No async scheduler available\u000a\u000a See http://goo.gl/MqrFmX\u000a"); +}; +var NativePromise = util.getNativePromise(); +if (util.isNode && typeof MutationObserver === "undefined") { + var GlobalSetImmediate = global.setImmediate; + var ProcessNextTick = process.nextTick; + schedule = util.isRecentNode + ? function(fn) { GlobalSetImmediate.call(global, fn); } + : function(fn) { ProcessNextTick.call(process, fn); }; +} else if (typeof NativePromise === "function" && + typeof NativePromise.resolve === "function") { + var nativePromise = NativePromise.resolve(); + schedule = function(fn) { + nativePromise.then(fn); + }; +} else if ((typeof MutationObserver !== "undefined") && + !(typeof window !== "undefined" && + window.navigator && + (window.navigator.standalone || window.cordova))) { + schedule = (function() { + var div = document.createElement("div"); + var opts = {attributes: true}; + var toggleScheduled = false; + var div2 = document.createElement("div"); + var o2 = new MutationObserver(function() { + div.classList.toggle("foo"); + toggleScheduled = false; + }); + o2.observe(div2, opts); + + var scheduleToggle = function() { + if (toggleScheduled) return; + toggleScheduled = true; + div2.classList.toggle("foo"); + }; + + return function schedule(fn) { + var o = new MutationObserver(function() { + o.disconnect(); + fn(); + }); + o.observe(div, opts); + scheduleToggle(); + }; + })(); +} else if (typeof setImmediate !== "undefined") { + schedule = function (fn) { + setImmediate(fn); + }; +} else if (typeof setTimeout !== "undefined") { + schedule = function (fn) { + setTimeout(fn, 0); + }; +} else { + schedule = noAsyncScheduler; +} +module.exports = schedule; + +},{"./util":36}],30:[function(_dereq_,module,exports){ +"use strict"; +module.exports = + function(Promise, PromiseArray, debug) { +var PromiseInspection = Promise.PromiseInspection; +var util = _dereq_("./util"); + +function SettledPromiseArray(values) { + this.constructor$(values); +} +util.inherits(SettledPromiseArray, PromiseArray); + +SettledPromiseArray.prototype._promiseResolved = function (index, inspection) { + this._values[index] = inspection; + var totalResolved = ++this._totalResolved; + if (totalResolved >= this._length) { + this._resolve(this._values); + return true; + } + return false; +}; + +SettledPromiseArray.prototype._promiseFulfilled = function (value, index) { + var ret = new PromiseInspection(); + ret._bitField = 33554432; + ret._settledValueField = value; + return this._promiseResolved(index, ret); +}; +SettledPromiseArray.prototype._promiseRejected = function (reason, index) { + var ret = new PromiseInspection(); + ret._bitField = 16777216; + ret._settledValueField = reason; + return this._promiseResolved(index, ret); +}; + +Promise.settle = function (promises) { + debug.deprecated(".settle()", ".reflect()"); + return new SettledPromiseArray(promises).promise(); +}; + +Promise.prototype.settle = function () { + return Promise.settle(this); +}; +}; + +},{"./util":36}],31:[function(_dereq_,module,exports){ +"use strict"; +module.exports = +function(Promise, PromiseArray, apiRejection) { +var util = _dereq_("./util"); +var RangeError = _dereq_("./errors").RangeError; +var AggregateError = _dereq_("./errors").AggregateError; +var isArray = util.isArray; +var CANCELLATION = {}; + + +function SomePromiseArray(values) { + this.constructor$(values); + this._howMany = 0; + this._unwrap = false; + this._initialized = false; +} +util.inherits(SomePromiseArray, PromiseArray); + +SomePromiseArray.prototype._init = function () { + if (!this._initialized) { + return; + } + if (this._howMany === 0) { + this._resolve([]); + return; + } + this._init$(undefined, -5); + var isArrayResolved = isArray(this._values); + if (!this._isResolved() && + isArrayResolved && + this._howMany > this._canPossiblyFulfill()) { + this._reject(this._getRangeError(this.length())); + } +}; + +SomePromiseArray.prototype.init = function () { + this._initialized = true; + this._init(); +}; + +SomePromiseArray.prototype.setUnwrap = function () { + this._unwrap = true; +}; + +SomePromiseArray.prototype.howMany = function () { + return this._howMany; +}; + +SomePromiseArray.prototype.setHowMany = function (count) { + this._howMany = count; +}; + +SomePromiseArray.prototype._promiseFulfilled = function (value) { + this._addFulfilled(value); + if (this._fulfilled() === this.howMany()) { + this._values.length = this.howMany(); + if (this.howMany() === 1 && this._unwrap) { + this._resolve(this._values[0]); + } else { + this._resolve(this._values); + } + return true; + } + return false; + +}; +SomePromiseArray.prototype._promiseRejected = function (reason) { + this._addRejected(reason); + return this._checkOutcome(); +}; + +SomePromiseArray.prototype._promiseCancelled = function () { + if (this._values instanceof Promise || this._values == null) { + return this._cancel(); + } + this._addRejected(CANCELLATION); + return this._checkOutcome(); +}; + +SomePromiseArray.prototype._checkOutcome = function() { + if (this.howMany() > this._canPossiblyFulfill()) { + var e = new AggregateError(); + for (var i = this.length(); i < this._values.length; ++i) { + if (this._values[i] !== CANCELLATION) { + e.push(this._values[i]); + } + } + if (e.length > 0) { + this._reject(e); + } else { + this._cancel(); + } + return true; + } + return false; +}; + +SomePromiseArray.prototype._fulfilled = function () { + return this._totalResolved; +}; + +SomePromiseArray.prototype._rejected = function () { + return this._values.length - this.length(); +}; + +SomePromiseArray.prototype._addRejected = function (reason) { + this._values.push(reason); +}; + +SomePromiseArray.prototype._addFulfilled = function (value) { + this._values[this._totalResolved++] = value; +}; + +SomePromiseArray.prototype._canPossiblyFulfill = function () { + return this.length() - this._rejected(); +}; + +SomePromiseArray.prototype._getRangeError = function (count) { + var message = "Input array must contain at least " + + this._howMany + " items but contains only " + count + " items"; + return new RangeError(message); +}; + +SomePromiseArray.prototype._resolveEmptyArray = function () { + this._reject(this._getRangeError(0)); +}; + +function some(promises, howMany) { + if ((howMany | 0) !== howMany || howMany < 0) { + return apiRejection("expecting a positive integer\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + var ret = new SomePromiseArray(promises); + var promise = ret.promise(); + ret.setHowMany(howMany); + ret.init(); + return promise; +} + +Promise.some = function (promises, howMany) { + return some(promises, howMany); +}; + +Promise.prototype.some = function (howMany) { + return some(this, howMany); +}; + +Promise._SomePromiseArray = SomePromiseArray; +}; + +},{"./errors":12,"./util":36}],32:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise) { +function PromiseInspection(promise) { + if (promise !== undefined) { + promise = promise._target(); + this._bitField = promise._bitField; + this._settledValueField = promise._isFateSealed() + ? promise._settledValue() : undefined; + } + else { + this._bitField = 0; + this._settledValueField = undefined; + } +} + +PromiseInspection.prototype._settledValue = function() { + return this._settledValueField; +}; + +var value = PromiseInspection.prototype.value = function () { + if (!this.isFulfilled()) { + throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + return this._settledValue(); +}; + +var reason = PromiseInspection.prototype.error = +PromiseInspection.prototype.reason = function () { + if (!this.isRejected()) { + throw new TypeError("cannot get rejection reason of a non-rejected promise\u000a\u000a See http://goo.gl/MqrFmX\u000a"); + } + return this._settledValue(); +}; + +var isFulfilled = PromiseInspection.prototype.isFulfilled = function() { + return (this._bitField & 33554432) !== 0; +}; + +var isRejected = PromiseInspection.prototype.isRejected = function () { + return (this._bitField & 16777216) !== 0; +}; + +var isPending = PromiseInspection.prototype.isPending = function () { + return (this._bitField & 50397184) === 0; +}; + +var isResolved = PromiseInspection.prototype.isResolved = function () { + return (this._bitField & 50331648) !== 0; +}; + +PromiseInspection.prototype.isCancelled = function() { + return (this._bitField & 8454144) !== 0; +}; + +Promise.prototype.__isCancelled = function() { + return (this._bitField & 65536) === 65536; +}; + +Promise.prototype._isCancelled = function() { + return this._target().__isCancelled(); +}; + +Promise.prototype.isCancelled = function() { + return (this._target()._bitField & 8454144) !== 0; +}; + +Promise.prototype.isPending = function() { + return isPending.call(this._target()); +}; + +Promise.prototype.isRejected = function() { + return isRejected.call(this._target()); +}; + +Promise.prototype.isFulfilled = function() { + return isFulfilled.call(this._target()); +}; + +Promise.prototype.isResolved = function() { + return isResolved.call(this._target()); +}; + +Promise.prototype.value = function() { + return value.call(this._target()); +}; + +Promise.prototype.reason = function() { + var target = this._target(); + target._unsetRejectionIsUnhandled(); + return reason.call(target); +}; + +Promise.prototype._value = function() { + return this._settledValue(); +}; + +Promise.prototype._reason = function() { + this._unsetRejectionIsUnhandled(); + return this._settledValue(); +}; + +Promise.PromiseInspection = PromiseInspection; +}; + +},{}],33:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, INTERNAL) { +var util = _dereq_("./util"); +var errorObj = util.errorObj; +var isObject = util.isObject; + +function tryConvertToPromise(obj, context) { + if (isObject(obj)) { + if (obj instanceof Promise) return obj; + var then = getThen(obj); + if (then === errorObj) { + if (context) context._pushContext(); + var ret = Promise.reject(then.e); + if (context) context._popContext(); + return ret; + } else if (typeof then === "function") { + if (isAnyBluebirdPromise(obj)) { + var ret = new Promise(INTERNAL); + obj._then( + ret._fulfill, + ret._reject, + undefined, + ret, + null + ); + return ret; + } + return doThenable(obj, then, context); + } + } + return obj; +} + +function doGetThen(obj) { + return obj.then; +} + +function getThen(obj) { + try { + return doGetThen(obj); + } catch (e) { + errorObj.e = e; + return errorObj; + } +} + +var hasProp = {}.hasOwnProperty; +function isAnyBluebirdPromise(obj) { + try { + return hasProp.call(obj, "_promise0"); + } catch (e) { + return false; + } +} + +function doThenable(x, then, context) { + var promise = new Promise(INTERNAL); + var ret = promise; + if (context) context._pushContext(); + promise._captureStackTrace(); + if (context) context._popContext(); + var synchronous = true; + var result = util.tryCatch(then).call(x, resolve, reject); + synchronous = false; + + if (promise && result === errorObj) { + promise._rejectCallback(result.e, true, true); + promise = null; + } + + function resolve(value) { + if (!promise) return; + promise._resolveCallback(value); + promise = null; + } + + function reject(reason) { + if (!promise) return; + promise._rejectCallback(reason, synchronous, true); + promise = null; + } + return ret; +} + +return tryConvertToPromise; +}; + +},{"./util":36}],34:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function(Promise, INTERNAL, debug) { +var util = _dereq_("./util"); +var TimeoutError = Promise.TimeoutError; + +function HandleWrapper(handle) { + this.handle = handle; +} + +HandleWrapper.prototype._resultCancelled = function() { + clearTimeout(this.handle); +}; + +var afterValue = function(value) { return delay(+this).thenReturn(value); }; +var delay = Promise.delay = function (ms, value) { + var ret; + var handle; + if (value !== undefined) { + ret = Promise.resolve(value) + ._then(afterValue, null, null, ms, undefined); + if (debug.cancellation() && value instanceof Promise) { + ret._setOnCancel(value); + } + } else { + ret = new Promise(INTERNAL); + handle = setTimeout(function() { ret._fulfill(); }, +ms); + if (debug.cancellation()) { + ret._setOnCancel(new HandleWrapper(handle)); + } + ret._captureStackTrace(); + } + ret._setAsyncGuaranteed(); + return ret; +}; + +Promise.prototype.delay = function (ms) { + return delay(ms, this); +}; + +var afterTimeout = function (promise, message, parent) { + var err; + if (typeof message !== "string") { + if (message instanceof Error) { + err = message; + } else { + err = new TimeoutError("operation timed out"); + } + } else { + err = new TimeoutError(message); + } + util.markAsOriginatingFromRejection(err); + promise._attachExtraTrace(err); + promise._reject(err); + + if (parent != null) { + parent.cancel(); + } +}; + +function successClear(value) { + clearTimeout(this.handle); + return value; +} + +function failureClear(reason) { + clearTimeout(this.handle); + throw reason; +} + +Promise.prototype.timeout = function (ms, message) { + ms = +ms; + var ret, parent; + + var handleWrapper = new HandleWrapper(setTimeout(function timeoutTimeout() { + if (ret.isPending()) { + afterTimeout(ret, message, parent); + } + }, ms)); + + if (debug.cancellation()) { + parent = this.then(); + ret = parent._then(successClear, failureClear, + undefined, handleWrapper, undefined); + ret._setOnCancel(handleWrapper); + } else { + ret = this._then(successClear, failureClear, + undefined, handleWrapper, undefined); + } + + return ret; +}; + +}; + +},{"./util":36}],35:[function(_dereq_,module,exports){ +"use strict"; +module.exports = function (Promise, apiRejection, tryConvertToPromise, + createContext, INTERNAL, debug) { + var util = _dereq_("./util"); + var TypeError = _dereq_("./errors").TypeError; + var inherits = _dereq_("./util").inherits; + var errorObj = util.errorObj; + var tryCatch = util.tryCatch; + var NULL = {}; + + function thrower(e) { + setTimeout(function(){throw e;}, 0); + } + + function castPreservingDisposable(thenable) { + var maybePromise = tryConvertToPromise(thenable); + if (maybePromise !== thenable && + typeof thenable._isDisposable === "function" && + typeof thenable._getDisposer === "function" && + thenable._isDisposable()) { + maybePromise._setDisposable(thenable._getDisposer()); + } + return maybePromise; + } + function dispose(resources, inspection) { + var i = 0; + var len = resources.length; + var ret = new Promise(INTERNAL); + function iterator() { + if (i >= len) return ret._fulfill(); + var maybePromise = castPreservingDisposable(resources[i++]); + if (maybePromise instanceof Promise && + maybePromise._isDisposable()) { + try { + maybePromise = tryConvertToPromise( + maybePromise._getDisposer().tryDispose(inspection), + resources.promise); + } catch (e) { + return thrower(e); + } + if (maybePromise instanceof Promise) { + return maybePromise._then(iterator, thrower, + null, null, null); + } + } + iterator(); + } + iterator(); + return ret; + } + + function Disposer(data, promise, context) { + this._data = data; + this._promise = promise; + this._context = context; + } + + Disposer.prototype.data = function () { + return this._data; + }; + + Disposer.prototype.promise = function () { + return this._promise; + }; + + Disposer.prototype.resource = function () { + if (this.promise().isFulfilled()) { + return this.promise().value(); + } + return NULL; + }; + + Disposer.prototype.tryDispose = function(inspection) { + var resource = this.resource(); + var context = this._context; + if (context !== undefined) context._pushContext(); + var ret = resource !== NULL + ? this.doDispose(resource, inspection) : null; + if (context !== undefined) context._popContext(); + this._promise._unsetDisposable(); + this._data = null; + return ret; + }; + + Disposer.isDisposer = function (d) { + return (d != null && + typeof d.resource === "function" && + typeof d.tryDispose === "function"); + }; + + function FunctionDisposer(fn, promise, context) { + this.constructor$(fn, promise, context); + } + inherits(FunctionDisposer, Disposer); + + FunctionDisposer.prototype.doDispose = function (resource, inspection) { + var fn = this.data(); + return fn.call(resource, resource, inspection); + }; + + function maybeUnwrapDisposer(value) { + if (Disposer.isDisposer(value)) { + this.resources[this.index]._setDisposable(value); + return value.promise(); + } + return value; + } + + function ResourceList(length) { + this.length = length; + this.promise = null; + this[length-1] = null; + } + + ResourceList.prototype._resultCancelled = function() { + var len = this.length; + for (var i = 0; i < len; ++i) { + var item = this[i]; + if (item instanceof Promise) { + item.cancel(); + } + } + }; + + Promise.using = function () { + var len = arguments.length; + if (len < 2) return apiRejection( + "you must pass at least 2 arguments to Promise.using"); + var fn = arguments[len - 1]; + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util.classString(fn)); + } + var input; + var spreadArgs = true; + if (len === 2 && Array.isArray(arguments[0])) { + input = arguments[0]; + len = input.length; + spreadArgs = false; + } else { + input = arguments; + len--; + } + var resources = new ResourceList(len); + for (var i = 0; i < len; ++i) { + var resource = input[i]; + if (Disposer.isDisposer(resource)) { + var disposer = resource; + resource = resource.promise(); + resource._setDisposable(disposer); + } else { + var maybePromise = tryConvertToPromise(resource); + if (maybePromise instanceof Promise) { + resource = + maybePromise._then(maybeUnwrapDisposer, null, null, { + resources: resources, + index: i + }, undefined); + } + } + resources[i] = resource; + } + + var reflectedResources = new Array(resources.length); + for (var i = 0; i < reflectedResources.length; ++i) { + reflectedResources[i] = Promise.resolve(resources[i]).reflect(); + } + + var resultPromise = Promise.all(reflectedResources) + .then(function(inspections) { + for (var i = 0; i < inspections.length; ++i) { + var inspection = inspections[i]; + if (inspection.isRejected()) { + errorObj.e = inspection.error(); + return errorObj; + } else if (!inspection.isFulfilled()) { + resultPromise.cancel(); + return; + } + inspections[i] = inspection.value(); + } + promise._pushContext(); + + fn = tryCatch(fn); + var ret = spreadArgs + ? fn.apply(undefined, inspections) : fn(inspections); + var promiseCreated = promise._popContext(); + debug.checkForgottenReturns( + ret, promiseCreated, "Promise.using", promise); + return ret; + }); + + var promise = resultPromise.lastly(function() { + var inspection = new Promise.PromiseInspection(resultPromise); + return dispose(resources, inspection); + }); + resources.promise = promise; + promise._setOnCancel(resources); + return promise; + }; + + Promise.prototype._setDisposable = function (disposer) { + this._bitField = this._bitField | 131072; + this._disposer = disposer; + }; + + Promise.prototype._isDisposable = function () { + return (this._bitField & 131072) > 0; + }; + + Promise.prototype._getDisposer = function () { + return this._disposer; + }; + + Promise.prototype._unsetDisposable = function () { + this._bitField = this._bitField & (~131072); + this._disposer = undefined; + }; + + Promise.prototype.disposer = function (fn) { + if (typeof fn === "function") { + return new FunctionDisposer(fn, this, createContext()); + } + throw new TypeError(); + }; + +}; + +},{"./errors":12,"./util":36}],36:[function(_dereq_,module,exports){ +"use strict"; +var es5 = _dereq_("./es5"); +var canEvaluate = typeof navigator == "undefined"; + +var errorObj = {e: {}}; +var tryCatchTarget; +var globalObject = typeof self !== "undefined" ? self : + typeof window !== "undefined" ? window : + typeof global !== "undefined" ? global : + this !== undefined ? this : null; + +function tryCatcher() { + try { + var target = tryCatchTarget; + tryCatchTarget = null; + return target.apply(this, arguments); + } catch (e) { + errorObj.e = e; + return errorObj; + } +} +function tryCatch(fn) { + tryCatchTarget = fn; + return tryCatcher; +} + +var inherits = function(Child, Parent) { + var hasProp = {}.hasOwnProperty; + + function T() { + this.constructor = Child; + this.constructor$ = Parent; + for (var propertyName in Parent.prototype) { + if (hasProp.call(Parent.prototype, propertyName) && + propertyName.charAt(propertyName.length-1) !== "$" + ) { + this[propertyName + "$"] = Parent.prototype[propertyName]; + } + } + } + T.prototype = Parent.prototype; + Child.prototype = new T(); + return Child.prototype; +}; + + +function isPrimitive(val) { + return val == null || val === true || val === false || + typeof val === "string" || typeof val === "number"; + +} + +function isObject(value) { + return typeof value === "function" || + typeof value === "object" && value !== null; +} + +function maybeWrapAsError(maybeError) { + if (!isPrimitive(maybeError)) return maybeError; + + return new Error(safeToString(maybeError)); +} + +function withAppended(target, appendee) { + var len = target.length; + var ret = new Array(len + 1); + var i; + for (i = 0; i < len; ++i) { + ret[i] = target[i]; + } + ret[i] = appendee; + return ret; +} + +function getDataPropertyOrDefault(obj, key, defaultValue) { + if (es5.isES5) { + var desc = Object.getOwnPropertyDescriptor(obj, key); + + if (desc != null) { + return desc.get == null && desc.set == null + ? desc.value + : defaultValue; + } + } else { + return {}.hasOwnProperty.call(obj, key) ? obj[key] : undefined; + } +} + +function notEnumerableProp(obj, name, value) { + if (isPrimitive(obj)) return obj; + var descriptor = { + value: value, + configurable: true, + enumerable: false, + writable: true + }; + es5.defineProperty(obj, name, descriptor); + return obj; +} + +function thrower(r) { + throw r; +} + +var inheritedDataKeys = (function() { + var excludedPrototypes = [ + Array.prototype, + Object.prototype, + Function.prototype + ]; + + var isExcludedProto = function(val) { + for (var i = 0; i < excludedPrototypes.length; ++i) { + if (excludedPrototypes[i] === val) { + return true; + } + } + return false; + }; + + if (es5.isES5) { + var getKeys = Object.getOwnPropertyNames; + return function(obj) { + var ret = []; + var visitedKeys = Object.create(null); + while (obj != null && !isExcludedProto(obj)) { + var keys; + try { + keys = getKeys(obj); + } catch (e) { + return ret; + } + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + if (visitedKeys[key]) continue; + visitedKeys[key] = true; + var desc = Object.getOwnPropertyDescriptor(obj, key); + if (desc != null && desc.get == null && desc.set == null) { + ret.push(key); + } + } + obj = es5.getPrototypeOf(obj); + } + return ret; + }; + } else { + var hasProp = {}.hasOwnProperty; + return function(obj) { + if (isExcludedProto(obj)) return []; + var ret = []; + + /*jshint forin:false */ + enumeration: for (var key in obj) { + if (hasProp.call(obj, key)) { + ret.push(key); + } else { + for (var i = 0; i < excludedPrototypes.length; ++i) { + if (hasProp.call(excludedPrototypes[i], key)) { + continue enumeration; + } + } + ret.push(key); + } + } + return ret; + }; + } + +})(); + +var thisAssignmentPattern = /this\s*\.\s*\S+\s*=/; +function isClass(fn) { + try { + if (typeof fn === "function") { + var keys = es5.names(fn.prototype); + + var hasMethods = es5.isES5 && keys.length > 1; + var hasMethodsOtherThanConstructor = keys.length > 0 && + !(keys.length === 1 && keys[0] === "constructor"); + var hasThisAssignmentAndStaticMethods = + thisAssignmentPattern.test(fn + "") && es5.names(fn).length > 0; + + if (hasMethods || hasMethodsOtherThanConstructor || + hasThisAssignmentAndStaticMethods) { + return true; + } + } + return false; + } catch (e) { + return false; + } +} + +function toFastProperties(obj) { + /*jshint -W027,-W055,-W031*/ + function FakeConstructor() {} + FakeConstructor.prototype = obj; + var l = 8; + while (l--) new FakeConstructor(); + return obj; + eval(obj); +} + +var rident = /^[a-z$_][a-z$_0-9]*$/i; +function isIdentifier(str) { + return rident.test(str); +} + +function filledRange(count, prefix, suffix) { + var ret = new Array(count); + for(var i = 0; i < count; ++i) { + ret[i] = prefix + i + suffix; + } + return ret; +} + +function safeToString(obj) { + try { + return obj + ""; + } catch (e) { + return "[no string representation]"; + } +} + +function isError(obj) { + return obj instanceof Error || + (obj !== null && + typeof obj === "object" && + typeof obj.message === "string" && + typeof obj.name === "string"); +} + +function markAsOriginatingFromRejection(e) { + try { + notEnumerableProp(e, "isOperational", true); + } + catch(ignore) {} +} + +function originatesFromRejection(e) { + if (e == null) return false; + return ((e instanceof Error["__BluebirdErrorTypes__"].OperationalError) || + e["isOperational"] === true); +} + +function canAttachTrace(obj) { + return isError(obj) && es5.propertyIsWritable(obj, "stack"); +} + +var ensureErrorObject = (function() { + if (!("stack" in new Error())) { + return function(value) { + if (canAttachTrace(value)) return value; + try {throw new Error(safeToString(value));} + catch(err) {return err;} + }; + } else { + return function(value) { + if (canAttachTrace(value)) return value; + return new Error(safeToString(value)); + }; + } +})(); + +function classString(obj) { + return {}.toString.call(obj); +} + +function copyDescriptors(from, to, filter) { + var keys = es5.names(from); + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + if (filter(key)) { + try { + es5.defineProperty(to, key, es5.getDescriptor(from, key)); + } catch (ignore) {} + } + } +} + +var asArray = function(v) { + if (es5.isArray(v)) { + return v; + } + return null; +}; + +if (typeof Symbol !== "undefined" && Symbol.iterator) { + var ArrayFrom = typeof Array.from === "function" ? function(v) { + return Array.from(v); + } : function(v) { + var ret = []; + var it = v[Symbol.iterator](); + var itResult; + while (!((itResult = it.next()).done)) { + ret.push(itResult.value); + } + return ret; + }; + + asArray = function(v) { + if (es5.isArray(v)) { + return v; + } else if (v != null && typeof v[Symbol.iterator] === "function") { + return ArrayFrom(v); + } + return null; + }; +} + +var isNode = typeof process !== "undefined" && + classString(process).toLowerCase() === "[object process]"; + +var hasEnvVariables = typeof process !== "undefined" && + typeof process.env !== "undefined"; + +function env(key) { + return hasEnvVariables ? process.env[key] : undefined; +} + +function getNativePromise() { + if (typeof Promise === "function") { + try { + var promise = new Promise(function(){}); + if ({}.toString.call(promise) === "[object Promise]") { + return Promise; + } + } catch (e) {} + } +} + +function domainBind(self, cb) { + return self.bind(cb); +} + +var ret = { + isClass: isClass, + isIdentifier: isIdentifier, + inheritedDataKeys: inheritedDataKeys, + getDataPropertyOrDefault: getDataPropertyOrDefault, + thrower: thrower, + isArray: es5.isArray, + asArray: asArray, + notEnumerableProp: notEnumerableProp, + isPrimitive: isPrimitive, + isObject: isObject, + isError: isError, + canEvaluate: canEvaluate, + errorObj: errorObj, + tryCatch: tryCatch, + inherits: inherits, + withAppended: withAppended, + maybeWrapAsError: maybeWrapAsError, + toFastProperties: toFastProperties, + filledRange: filledRange, + toString: safeToString, + canAttachTrace: canAttachTrace, + ensureErrorObject: ensureErrorObject, + originatesFromRejection: originatesFromRejection, + markAsOriginatingFromRejection: markAsOriginatingFromRejection, + classString: classString, + copyDescriptors: copyDescriptors, + hasDevTools: typeof chrome !== "undefined" && chrome && + typeof chrome.loadTimes === "function", + isNode: isNode, + hasEnvVariables: hasEnvVariables, + env: env, + global: globalObject, + getNativePromise: getNativePromise, + domainBind: domainBind +}; +ret.isRecentNode = ret.isNode && (function() { + var version = process.versions.node.split(".").map(Number); + return (version[0] === 0 && version[1] > 10) || (version[0] > 0); +})(); + +if (ret.isNode) ret.toFastProperties(process); + +try {throw new Error(); } catch (e) {ret.lastLineError = e;} +module.exports = ret; + +},{"./es5":13}]},{},[4])(4) +}); ;if (typeof window !== 'undefined' && window !== null) { window.P = window.Promise; } else if (typeof self !== 'undefined' && self !== null) { self.P = self.Promise; } +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2), __webpack_require__(5), __webpack_require__(17).setImmediate)) + +/***/ }), +/* 17 */ +/***/ (function(module, exports, __webpack_require__) { + +var apply = Function.prototype.apply; + +// DOM APIs, for completeness + +exports.setTimeout = function() { + return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout); +}; +exports.setInterval = function() { + return new Timeout(apply.call(setInterval, window, arguments), clearInterval); +}; +exports.clearTimeout = +exports.clearInterval = function(timeout) { + if (timeout) { + timeout.close(); + } +}; + +function Timeout(id, clearFn) { + this._id = id; + this._clearFn = clearFn; +} +Timeout.prototype.unref = Timeout.prototype.ref = function() {}; +Timeout.prototype.close = function() { + this._clearFn.call(window, this._id); +}; + +// Does not start the time, just sets up the members needed. +exports.enroll = function(item, msecs) { + clearTimeout(item._idleTimeoutId); + item._idleTimeout = msecs; +}; + +exports.unenroll = function(item) { + clearTimeout(item._idleTimeoutId); + item._idleTimeout = -1; +}; + +exports._unrefActive = exports.active = function(item) { + clearTimeout(item._idleTimeoutId); + + var msecs = item._idleTimeout; + if (msecs >= 0) { + item._idleTimeoutId = setTimeout(function onTimeout() { + if (item._onTimeout) + item._onTimeout(); + }, msecs); + } +}; + +// setimmediate attaches itself to the global object +__webpack_require__(18); +exports.setImmediate = setImmediate; +exports.clearImmediate = clearImmediate; + + +/***/ }), +/* 18 */ +/***/ (function(module, exports, __webpack_require__) { + +/* WEBPACK VAR INJECTION */(function(global, process) {(function (global, undefined) { + "use strict"; + + if (global.setImmediate) { + return; + } + + var nextHandle = 1; // Spec says greater than zero + var tasksByHandle = {}; + var currentlyRunningATask = false; + var doc = global.document; + var registerImmediate; + + function setImmediate(callback) { + // Callback can either be a function or a string + if (typeof callback !== "function") { + callback = new Function("" + callback); + } + // Copy function arguments + var args = new Array(arguments.length - 1); + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i + 1]; + } + // Store and register the task + var task = { callback: callback, args: args }; + tasksByHandle[nextHandle] = task; + registerImmediate(nextHandle); + return nextHandle++; + } + + function clearImmediate(handle) { + delete tasksByHandle[handle]; + } + + function run(task) { + var callback = task.callback; + var args = task.args; + switch (args.length) { + case 0: + callback(); + break; + case 1: + callback(args[0]); + break; + case 2: + callback(args[0], args[1]); + break; + case 3: + callback(args[0], args[1], args[2]); + break; + default: + callback.apply(undefined, args); + break; + } + } + + function runIfPresent(handle) { + // From the spec: "Wait until any invocations of this algorithm started before this one have completed." + // So if we're currently running a task, we'll need to delay this invocation. + if (currentlyRunningATask) { + // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a + // "too much recursion" error. + setTimeout(runIfPresent, 0, handle); + } else { + var task = tasksByHandle[handle]; + if (task) { + currentlyRunningATask = true; + try { + run(task); + } finally { + clearImmediate(handle); + currentlyRunningATask = false; + } + } + } + } + + function installNextTickImplementation() { + registerImmediate = function(handle) { + process.nextTick(function () { runIfPresent(handle); }); + }; + } + + function canUsePostMessage() { + // The test against `importScripts` prevents this implementation from being installed inside a web worker, + // where `global.postMessage` means something completely different and can't be used for this purpose. + if (global.postMessage && !global.importScripts) { + var postMessageIsAsynchronous = true; + var oldOnMessage = global.onmessage; + global.onmessage = function() { + postMessageIsAsynchronous = false; + }; + global.postMessage("", "*"); + global.onmessage = oldOnMessage; + return postMessageIsAsynchronous; + } + } + + function installPostMessageImplementation() { + // Installs an event handler on `global` for the `message` event: see + // * https://developer.mozilla.org/en/DOM/window.postMessage + // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages + + var messagePrefix = "setImmediate$" + Math.random() + "$"; + var onGlobalMessage = function(event) { + if (event.source === global && + typeof event.data === "string" && + event.data.indexOf(messagePrefix) === 0) { + runIfPresent(+event.data.slice(messagePrefix.length)); + } + }; + + if (global.addEventListener) { + global.addEventListener("message", onGlobalMessage, false); + } else { + global.attachEvent("onmessage", onGlobalMessage); + } + + registerImmediate = function(handle) { + global.postMessage(messagePrefix + handle, "*"); + }; + } + + function installMessageChannelImplementation() { + var channel = new MessageChannel(); + channel.port1.onmessage = function(event) { + var handle = event.data; + runIfPresent(handle); + }; + + registerImmediate = function(handle) { + channel.port2.postMessage(handle); + }; + } + + function installReadyStateChangeImplementation() { + var html = doc.documentElement; + registerImmediate = function(handle) { + // Create a + + + diff --git a/ui/src/actions/Account/getOrganizations.js b/ui/src/actions/Account/getOrganizations.js new file mode 100644 index 0000000..101a36b --- /dev/null +++ b/ui/src/actions/Account/getOrganizations.js @@ -0,0 +1,3 @@ +export default function getOrganizations() { + this.worker.postMessage(JSON.stringify({ type: 'GET_ORGANIZATIONS' })) +} diff --git a/ui/src/actions/Account/getProfile.js b/ui/src/actions/Account/getProfile.js new file mode 100644 index 0000000..41df7bd --- /dev/null +++ b/ui/src/actions/Account/getProfile.js @@ -0,0 +1,4 @@ +export default function getProfile() { + this.worker.postMessage({ type: 'GET_PROFILE' }) + return null +} diff --git a/ui/src/actions/Account/handleError.js b/ui/src/actions/Account/handleError.js new file mode 100644 index 0000000..c5be55d --- /dev/null +++ b/ui/src/actions/Account/handleError.js @@ -0,0 +1,4 @@ +export default function handleError(error) { + console.error('error', error) + return null +} diff --git a/ui/src/actions/Account/index.js b/ui/src/actions/Account/index.js new file mode 100644 index 0000000..89eb1cf --- /dev/null +++ b/ui/src/actions/Account/index.js @@ -0,0 +1,23 @@ +import Promise, { promisifyAll } from 'bluebird' +import GitHubAPI from 'github-api' + +import worker from './worker' +import getProfile from './getProfile' +import handleError from './handleError' +import metamask from './metamask' +import verifyAccount from './verifyAccount' +import setupStep from './setupStep' +import getOrganizations from './getOrganizations' + +export default class GitTokenAccountActions { + constructor({}) { + this.worker = worker.bind(this) + this.getProfile = getProfile.bind(this) + this.handleError = handleError.bind(this) + this.metamask = metamask.bind(this) + this.verifyAccount = verifyAccount.bind(this) + this.setupStep = setupStep.bind(this) + this.getOrganizations = getOrganizations.bind(this) + } + +} diff --git a/ui/src/actions/Account/metamask.js b/ui/src/actions/Account/metamask.js new file mode 100644 index 0000000..10a5043 --- /dev/null +++ b/ui/src/actions/Account/metamask.js @@ -0,0 +1,30 @@ +import Promise, { promisifyAll } from 'bluebird' + +export default function metamask() { + return (dispatch) => { + if (typeof window.web3 !== 'undefined') { + this.web3 = new Web3(window.web3.currentProvider) + this.web3.eth = promisifyAll(this.web3.eth) + this.web3.version = promisifyAll(this.web3.version) + this.web3.eth.getAccountsAsync().then((accounts) => { + dispatch({ type: 'SET_ACCOUNT_DETAILS', id: 'metaMaskInstalled', value: true }) + if (!accounts.length) { + dispatch({ type: 'SET_ACCOUNT_DETAILS', id: 'setupStep', value: 'unlockMetamask' }) + dispatch({ type: 'SET_ACCOUNT_DETAILS', id: 'metaMaskLocked', value: true }) + } else { + dispatch({ type: 'SET_ACCOUNT_DETAILS', id: 'address', value: accounts[0] }) + dispatch({ type: 'SET_ACCOUNT_DETAILS', id: 'metaMaskLocked', value: false }) + return this.web3.version.getNetworkAsync() + } + }).then((network) => { + dispatch({ type: 'SET_ACCOUNT_DETAILS', id: 'network', value: network }) + }).catch((error) => { + console.log('error', error) + }) + } else { + dispatch({ type: 'SET_ACCOUNT_DETAILS', id: 'setupStep', value: 'installMetamask' }) + dispatch({ type: 'SET_ACCOUNT_DETAILS', id: 'metaMaskInstalled', value: false }) + dispatch({ type: 'SET_ACCOUNT_DETAILS', id: 'metaMaskLocked', value: true }) + } + } +} diff --git a/ui/src/actions/Account/setupStep.js b/ui/src/actions/Account/setupStep.js new file mode 100644 index 0000000..83c8f54 --- /dev/null +++ b/ui/src/actions/Account/setupStep.js @@ -0,0 +1,11 @@ +export default function setupStep({ step }) { + return (dispatch) => { + dispatch({ + type: 'SET_ACCOUNT_SETUP_DETAILS', + id: 'activeStep', + value: step + }) + + location.href = `/account/setup/${step}` + } +} diff --git a/ui/src/actions/Account/verifyAccount.js b/ui/src/actions/Account/verifyAccount.js new file mode 100644 index 0000000..2dd9831 --- /dev/null +++ b/ui/src/actions/Account/verifyAccount.js @@ -0,0 +1,40 @@ +import axios from 'axios' + +export default function verifyAccount({ address, username, termsOfService }) { + return (dispatch) => { + const msgParams = [{ + type: 'address', + name: 'address', + value: address + }, { + type: 'string', + name: 'username', + value: username + },{ + type: 'string', + name: 'eula', + value: termsOfService + },{ + type: 'bool', + name: 'agreement', + value: 'true' + }] + + this.web3.currentProvider.sendAsync({ + method: 'eth_signTypedData', + params: [msgParams, address], + from: address + }, (error, sig) => { + if (error) { + // TODO: Handle Signature Error + console.error(error) + console.error(new Error('Signature Error')) + } else { + this.worker.postMessage(JSON.stringify({ + type: 'VERIFY_ACCOUNT', + value: { username, address, msgParams, sig } + })) + } + }) + } +} diff --git a/ui/src/actions/Account/worker.js b/ui/src/actions/Account/worker.js new file mode 100644 index 0000000..edbe722 --- /dev/null +++ b/ui/src/actions/Account/worker.js @@ -0,0 +1,32 @@ +import AccountWorker from '../../workers/Account/Account.worker.js' +import { push } from 'react-router-redux' + +export default function worker() { + return (dispatch) => { + this.worker = AccountWorker() + this.worker.onerror = this.handleError + this.worker.addEventListener('message', ({ data }) => { + try { + const { type, id, value } = JSON.parse(data) + switch (type) { + case 'SET_PROFILE': + dispatch({ type, id, value }) + dispatch(push('/account')) + break; + case 'SET_ACCOUNT_VERIFIED': + dispatch({ type, id, value }) + dispatch(push('/account/setup')) + break; + case 'SET_ACCOUNT_SETUP_DETAILS': + if (id == 'activeStep') { dispatch(push(`/account/setup/${value}`)) } + dispatch({ type, id, value }) + break; + default: + dispatch({ type, id, value }) + } + } catch (error) { + console.log('error', error) + } + }) + } +} diff --git a/ui/src/actions/RegistryActions.js b/ui/src/actions/RegistryActions.js new file mode 100644 index 0000000..e69de29 diff --git a/ui/src/actions/index.js b/ui/src/actions/index.js new file mode 100644 index 0000000..1ebe115 --- /dev/null +++ b/ui/src/actions/index.js @@ -0,0 +1,7 @@ +import Account from './Account/index' +import RegistryActions from './RegistryActions' + +export { + Account, + RegistryActions +} diff --git a/ui/src/components/Account/Auth.js b/ui/src/components/Account/Auth.js new file mode 100644 index 0000000..7ffac1e --- /dev/null +++ b/ui/src/components/Account/Auth.js @@ -0,0 +1,35 @@ +import React, { Component } from 'react' +import { connect } from 'react-redux' + +class AuthComponent extends Component { + constructor(opts) { + super(opts) + } + + componentDidMount() { + const { dispatch, Actions: { account } } = this.props + console.log('Retrieve GitToken Profile') + dispatch(account.worker()) + setTimeout(() => { + account.getProfile() + }, 100) + + } + + render() { + const { Account: { profile } } = this.props + + return null + } +} + +const mapStoreToProps = (store, props) => { + return { + Account: store.Account, + Actions: store.Actions + } +} + +const Auth = connect(mapStoreToProps)(AuthComponent) + +export default Auth diff --git a/ui/src/components/Account/Header.js b/ui/src/components/Account/Header.js new file mode 100644 index 0000000..d01af41 --- /dev/null +++ b/ui/src/components/Account/Header.js @@ -0,0 +1,65 @@ +import React, { Component } from 'react' +import { connect } from 'react-redux' + +import { + Row, + Col, + Nav, + Navbar, + NavDropdown, + NavItem, + MenuItem, + Image +} from 'react-bootstrap' + +import FaBars from 'react-icons/lib/fa/bars' +import MainLogo from 'gittoken-svg-icons/dist/MainLogo' +import NavBarLogo from '../Logos/NavBarLogo' + +class HeaderComponent extends Component { + constructor(opts) { + super(opts) + } + + render() { + const { Account: { profile: { username, _json: { avatar_url } } } } = this.props + + return ( + + + + + + + + + + + + + + + + ); + } +} + +const mapStoreToProps = (store, props) => { + return { + Account: store.Account + } +} + +const Header = connect(mapStoreToProps)(HeaderComponent) + +export default Header diff --git a/ui/src/components/Account/Main.js b/ui/src/components/Account/Main.js new file mode 100644 index 0000000..812cf63 --- /dev/null +++ b/ui/src/components/Account/Main.js @@ -0,0 +1,48 @@ +import React, { Component } from 'react' +import { connect } from 'react-redux' +import { Switch, Router, Route } from 'react-router-dom' + +import { + Row, + Col +} from 'react-bootstrap' + +import Header from './Header' +import Welcome from './Welcome' +import * as Setup from './Setup' + +class MainComponent extends Component { + constructor(opts) { + super(opts) + } + + componentDidMount() { + const { dispatch, Account: { account } } = this.props + + } + + render() { + const { Account: { profile } } = this.props + + return ( +
+
+ + + + +
+ ) + } +} + +const mapStoreToProps = (store, props) => { + return { + Account: store.Account, + Actions: store.Actions + } +} + +const Main = connect(mapStoreToProps)(MainComponent) + +export default Main diff --git a/ui/src/components/Account/Setup/Main.js b/ui/src/components/Account/Setup/Main.js new file mode 100644 index 0000000..dd57a15 --- /dev/null +++ b/ui/src/components/Account/Setup/Main.js @@ -0,0 +1,224 @@ +import Promise, { promisifyAll } from 'bluebird' +import React, { Component } from 'react' +import { connect } from 'react-redux' +import { Switch, BrowserRouter, Route } from 'react-router-dom' +import { push } from 'react-router-redux' + +import { + Row, + Col, + Breadcrumb, + Button, + Jumbotron, + Panel +} from 'react-bootstrap' + +import Welcome from './Welcome' +import RegisterAccount from './RegisterAccount' +import MetaMask from './MetaMask' +import SetupOrganization from './SetupOrganization' +import TermsOfService from 'gittoken-react-components/dist/components/Legal/TermsOfService' + +class MainComponent extends Component { + constructor() { + super() + } + + componentDidMount() { + const { dispatch, Actions: { account } } = this.props + dispatch(account.metamask()) + + + // NOTE: The following sets the activeStep for the sidenav + const path = location.pathname.replace('/account/setup/', '') + const activeStep = path.length ? path : 'welcome' + + dispatch({ + type: 'SET_ACCOUNT_SETUP_DETAILS', + id: 'activeStep', + value: activeStep + }) + } + + nodes() { + const { AccountSetup: { steps, activeStep } } = this.props + + + const x = 500 + const y = 500 + const distance = 320 + const lineLength = 270 + + return Object.keys(steps).map((step, i) => { + const { title } = steps[step] + + const active = step == activeStep ? true : false + const d = `M ${x} ${25 + y + (distance*(i))} L ${x} ${25 + y + (distance*(i)) + lineLength}` + + return ( + + + + + + + + + + { active ? : null } + + + + + + + {title} + + + {/* */} + + ) + }) + } + + setupNode() { + + + return ( + + + + + + + + + + + + + + + + + + + + + + {this.nodes()} + + + + + + + + + + ) + } + + + render() { + const { dispatch, AccountSetup: { steps, activeStep } } = this.props + + return ( +
+ + + +
+ {/* + {this.steps({ steps, activeStep })} + */} + {this.setupNode()} +
+ + +
+
+ + + + { + return ( + { + dispatch({ type: 'SET_ACCOUNT_SETUP_DETAILS', id: 'activeStep', value: 'metamask' }) + dispatch(push('/account/setup/metamask')) + }} + organizationLink={'https://github.com/git-token'} + tokenDetails={{ + name: 'GitToken', + symbol: 'GTK', + address: '0x0' + }} + /> + ) + }}/> + + + + + + + +
+
+ ) + } +} + + +const mapStoreToProps = (store, props) => { + return { + Actions: store.Actions, + Account: store.Account, + AccountSetup: store.AccountSetup + } +} + +const Main = connect(mapStoreToProps)(MainComponent) + +export default Main diff --git a/ui/src/components/Account/Setup/MetaMask.js b/ui/src/components/Account/Setup/MetaMask.js new file mode 100644 index 0000000..b1ea997 --- /dev/null +++ b/ui/src/components/Account/Setup/MetaMask.js @@ -0,0 +1,165 @@ +import Promise, { promisifyAll } from 'bluebird' +import React, { Component } from 'react' +import { connect } from 'react-redux' +import { push } from 'react-router-redux' + +import { + Row, + Col, + Button +} from 'react-bootstrap' + +import ModelViewer from 'metamask-logo' + +class MetaMaskComponent extends Component { + constructor() { + super() + + } + + componentDidMount() { + + // To render with fixed dimensions: + this.viewer = ModelViewer({ + + // Dictates whether width & height are px or multiplied + pxNotRatio: true, + width: 500, + height: 400, + // pxNotRatio: false, + // width: 0.9, + // height: 0.9, + + // To make the face follow the mouse. + followMouse: true, + + // head should slowly drift (overrides lookAt) + slowDrift: false, + + }) + + // add viewer to DOM + this.metaMaskLogo.appendChild(this.viewer.container) + + // look at something on the page + this.viewer.lookAt({ x: 950, y: 750 }) + } + + unlockMetaMask() { + const { dispatch, Actions: { account } } = this.props + + return ( +
+

Please Unlock MetaMask & Click 'Refresh MetaMask'

+ +
+ ) + } + + installMetaMask() { + const { dispatch, Account: { refreshMetaMask } } = this.props + + return (
+ { !refreshMetaMask ? + : + + } +
) + } + + next() { + const { dispatch, Account: { metaMaskInstalled, metaMaskLocked, address } } = this.props + if (metaMaskInstalled && !metaMaskLocked) { + return (
+ +
) + } else { + return null + } + } + + render() { + const { dispatch, Account: { metaMaskInstalled, metaMaskLocked, address } } = this.props + + return ( +
+ + +
+ { !metaMaskInstalled ?

Install MetaMask

: null } + { metaMaskLocked && metaMaskInstalled ?

Unlock MetaMask

: null } + { metaMaskInstalled && !metaMaskLocked ?

MetaMask Ready!

: null } +
+ +
+ + + { !metaMaskInstalled ?
+

GitToken requires MetaMask to interact with Ethereum.

+
+ {this.installMetaMask()} +
: null } + { metaMaskLocked && metaMaskInstalled ? this.unlockMetaMask() : null } + { metaMaskInstalled && !metaMaskLocked ? this.next() : null } + +
+
+ ) + + } +} + + +const mapStoreToProps = (store, props) => { + return { + Account: store.Account, + Actions: store.Actions + } +} + +const MetaMask = connect(mapStoreToProps)(MetaMaskComponent) + +export default MetaMask diff --git a/ui/src/components/Account/Setup/RegisterAccount.js b/ui/src/components/Account/Setup/RegisterAccount.js new file mode 100644 index 0000000..d4c8474 --- /dev/null +++ b/ui/src/components/Account/Setup/RegisterAccount.js @@ -0,0 +1,115 @@ +import Promise, { promisifyAll } from 'bluebird' +import React, { Component } from 'react' +import { connect } from 'react-redux' +import ModelViewer from 'metamask-logo' +import { + Row, + Col, + Button, + Panel +} from 'react-bootstrap' +import FaCheck from 'react-icons/lib/fa/check' + +class RegisterAccountComponent extends Component { + constructor() { + super() + } + + verify() { + const { + dispatch, + Actions: { account }, + AccountSetup: { termsOfService }, + Account: { + address, + profile: { username } + } + } = this.props + + dispatch(account.verifyAccount({ username, address, termsOfService })) + dispatch({ + type: 'SET_ACCOUNT_SETUP_DETAILS', + id: 'verificationStatus', + value: 'verifying' + }) + } + + verificationStatus() { + const { dispatch, AccountSetup: { verificationStatus }, } = this.props + + switch(verificationStatus) { + case 'verifying': + return (

Verifying Account...

) + break; + case 'verified': + return (

Account Verified!

) + break; + default: return null + } + } + + + render() { + const { Account: { address, profile } } = this.props + const { username, _json: { avatar_url } } = profile + + return ( +
+ + +
+

Register Account

+
+ +
+
+ + +
+ +
+ + + Ethereum Address +

{address}

+ GitHub Username: +

{username}

+ Agree to GitToken Terms of Service: +

+ +
+
+ +
+ {this.verificationStatus()} +
+
+
+ + + + + +
+ ) + } +} + + +const mapStoreToProps = (store, props) => { + return { + Account: store.Account, + Actions: store.Actions, + AccountSetup: store.AccountSetup + } +} + +const RegisterAccount = connect(mapStoreToProps)(RegisterAccountComponent) + +export default RegisterAccount diff --git a/ui/src/components/Account/Setup/SelectProvider.js b/ui/src/components/Account/Setup/SelectProvider.js new file mode 100644 index 0000000..db67741 --- /dev/null +++ b/ui/src/components/Account/Setup/SelectProvider.js @@ -0,0 +1,70 @@ +import Promise, { promisifyAll } from 'bluebird' +import React, { Component } from 'react' +import { connect } from 'react-redux' + +import { + Row, + Col, + Breadcrumb, + Button, + Jumbotron +} from 'react-bootstrap' + +class MainComponent extends Component { + constructor() { + super() + + + } + + selectProvider({ provider }) { + const { dispatch, Actions: { account } } = this.props + + + switch(provider) { + case 'metamask': + location.href = '/setup' + break; + default: + return null + } + } + + render() { + return ( +
+

Select Ethereum Wallet

+
+ + +
+ ) + } +} + + +const mapStoreToProps = (store, props) => { + return { + Actions: store.Actions, + Account: store.Account + } +} + +const Main = connect(mapStoreToProps)(MainComponent) + +export default Main diff --git a/ui/src/components/Account/Setup/SetupOrganization.js b/ui/src/components/Account/Setup/SetupOrganization.js new file mode 100644 index 0000000..9d87ac7 --- /dev/null +++ b/ui/src/components/Account/Setup/SetupOrganization.js @@ -0,0 +1,53 @@ +import Promise, { promisifyAll } from 'bluebird' +import React, { Component } from 'react' +import { connect } from 'react-redux' +import { push } from 'react-router-redux' + +import { + Row, + Col, + Button +} from 'react-bootstrap' + +class SetupOrganizationComponent extends Component { + constructor() { + super() + } + + componentDidMount() { + const { dispatch, Actions: { account } } = this.props + account.getOrganizations() + } + + render() { + const { dispatch, Account: { organizations } } = this.props + + return ( +
+ + +

Select Organization

+ {organizations.map((organization, i) => { + const { login } = organization + return ( +

{login}

+ ) + })} + +
+
+ ) + } +} + + +const mapStoreToProps = (store, props) => { + return { + Actions: store.Actions, + Account: store.Account + } +} + +const SetupOrganization = connect(mapStoreToProps)(SetupOrganizationComponent) + +export default SetupOrganization diff --git a/ui/src/components/Account/Setup/Welcome.js b/ui/src/components/Account/Setup/Welcome.js new file mode 100644 index 0000000..78d8746 --- /dev/null +++ b/ui/src/components/Account/Setup/Welcome.js @@ -0,0 +1,61 @@ +import Promise, { promisifyAll } from 'bluebird' +import React, { Component } from 'react' +import { connect } from 'react-redux' +import { push } from 'react-router-redux' + +import { + Row, + Col, + Button +} from 'react-bootstrap' + +class WelcomeComponent extends Component { + constructor() { + super() + + + } + + render() { + const { dispatch, Actions: { account }, Account: { profile: { username } } } = this.props + + return ( +
+ + +
+

Welcome, {username}!

+

Thank You for using GitToken!

+
+

The following guide will help you get started.

+
+
+ + + +
+
+ ) + } +} + + +const mapStoreToProps = (store, props) => { + return { + Actions: store.Actions, + Account: store.Account + } +} + +const Welcome = connect(mapStoreToProps)(WelcomeComponent) + +export default Welcome diff --git a/ui/src/components/Account/Setup/index.js b/ui/src/components/Account/Setup/index.js new file mode 100644 index 0000000..50e3b87 --- /dev/null +++ b/ui/src/components/Account/Setup/index.js @@ -0,0 +1,9 @@ +import Main from './Main' +import MetaMask from './MetaMask' +import SelectProvider from './SelectProvider' + +export { + Main, + MetaMask, + SelectProvider +} diff --git a/ui/src/components/Account/Welcome.js b/ui/src/components/Account/Welcome.js new file mode 100644 index 0000000..78cc735 --- /dev/null +++ b/ui/src/components/Account/Welcome.js @@ -0,0 +1,48 @@ +import React, { Component } from 'react' +import { connect } from 'react-redux' +import { Switch, Router, Route } from 'react-router-dom' + +import { + Row, + Col, + Jumbotron +} from 'react-bootstrap' + + +class WelcomeComponent extends Component { + constructor(opts) { + super(opts) + } + + componentDidMount() { + const { dispatch, Account: { verified } } = this.props + + } + + render() { + const { Account: { verified, profile: { displayName } } } = this.props + + return ( +
+ + + +

Welcome back, {displayName}!

+
+ +
+
+ ) + } +} + +const mapStoreToProps = (store, props) => { + return { + Account: store.Account, + Actions: store.Actions + } +} + +const Welcome = connect(mapStoreToProps)(WelcomeComponent) + +export default Welcome diff --git a/ui/src/components/Account/index.js b/ui/src/components/Account/index.js new file mode 100644 index 0000000..bd1b057 --- /dev/null +++ b/ui/src/components/Account/index.js @@ -0,0 +1,9 @@ +import Auth from './Auth' +import Main from './Main' +import Welcome from './Welcome' + +export { + Auth, + Main, + Welcome +} diff --git a/ui/src/components/LandingPage/Footer.js b/ui/src/components/LandingPage/Footer.js new file mode 100644 index 0000000..e69de29 diff --git a/ui/src/components/LandingPage/Header.js b/ui/src/components/LandingPage/Header.js new file mode 100644 index 0000000..3dc3b63 --- /dev/null +++ b/ui/src/components/LandingPage/Header.js @@ -0,0 +1,52 @@ +import React, { Component } from 'react' +import { connect } from 'react-redux' + +import { + Row, + Col, + Nav, + Navbar, + NavDropdown, + NavItem, + MenuItem +} from 'react-bootstrap' + +import FaBars from 'react-icons/lib/fa/bars' +import MainLogo from 'gittoken-svg-icons/dist/MainLogo' +import NavBarLogo from '../Logos/NavBarLogo' + +class HeaderComponent extends Component { + constructor(opts) { + super(opts) + } + + render() { + return ( + + + + + + + + + + + + + ); + } +} + +const mapStoreToProps = (store, props) => { + return { + main: store.main + } +} + +const Header = connect(mapStoreToProps)(HeaderComponent) + +export default Header diff --git a/ui/src/components/LandingPage/Main.js b/ui/src/components/LandingPage/Main.js new file mode 100644 index 0000000..bbf4b59 --- /dev/null +++ b/ui/src/components/LandingPage/Main.js @@ -0,0 +1,35 @@ +import React, { Component } from 'react' +import { connect } from 'react-redux' + + +import Header from './Header' +import Welcome from './Welcome' + +class MainComponent extends Component { + constructor(opts) { + super(opts) + } + + componentDidMount() {} + + render() { + + return ( +
+
+ +
+ ); + } +} + +const mapStoreToProps = (store, props) => { + return { + Account: store.Account, + Actions: store.Actions + } +} + +const Main = connect(mapStoreToProps)(MainComponent) + +export default Main diff --git a/ui/src/components/LandingPage/Welcome.js b/ui/src/components/LandingPage/Welcome.js new file mode 100644 index 0000000..ac2a805 --- /dev/null +++ b/ui/src/components/LandingPage/Welcome.js @@ -0,0 +1,114 @@ +import React, { Component } from 'react' +import { connect } from 'react-redux' + +import { + Grid, + Row, + Col, + Panel, + ButtonGroup, + Button +} from 'react-bootstrap' + +import MainLogo from 'gittoken-svg-icons/dist/MainLogo' +import GitHubIcon from 'react-icons/lib/fa/github' + +class WelcomeComponent extends Component { + constructor(opts) { + super(opts) + } + + signup() { + location.href = "/auth/github" + } + + render() { + + return ( +
+ + +
+

Issue Reward Points for GitHub Contributions

+

+ Developers, + Project Managers, and + Users earn Ethereum ERC20 tokens when contributing to GitToken enabled organizations +

+
+
+ + + + + {/* {this.gif()} */} + + + + + + + + + + + + + + + + + + + +
+
+ ); + } +} + +const mapStoreToProps = (store, props) => { + return { + // main: store.main + } +} + +const Welcome = connect(mapStoreToProps)(WelcomeComponent) + +export default Welcome diff --git a/ui/src/components/LandingPage/index.js b/ui/src/components/LandingPage/index.js new file mode 100644 index 0000000..5cf061c --- /dev/null +++ b/ui/src/components/LandingPage/index.js @@ -0,0 +1,7 @@ +import Welcome from './Welcome' +import Main from './Main' + +export { + Main, + Welcome +} diff --git a/ui/src/components/Logos/NavBarLogo.js b/ui/src/components/Logos/NavBarLogo.js new file mode 100644 index 0000000..3a947a6 --- /dev/null +++ b/ui/src/components/Logos/NavBarLogo.js @@ -0,0 +1,73 @@ +import React, { Component } from 'react' +import { connect } from 'react-redux' + +class NavBarLogoComponent extends Component { + constructor(opts) { + super(opts) + } + + render() { + let { width, style } = this.props + + width = width ? width : "50%" + + return ( + + + + + + + + + GitToken + + + ); + } +} + +const mapStoreToProps = (store, props) => { + return { + main: store.main + } +} + +const NavBarLogo = connect(mapStoreToProps)(NavBarLogoComponent) + +export default NavBarLogo + + +// +// +// +// +// +// +// +// GitToken +// diff --git a/ui/src/components/index.js b/ui/src/components/index.js new file mode 100644 index 0000000..de8b3dd --- /dev/null +++ b/ui/src/components/index.js @@ -0,0 +1,7 @@ +import * as LandingPage from './LandingPage' +import * as Account from './Account' + +export { + LandingPage, + Account +} diff --git a/ui/src/index.js b/ui/src/index.js new file mode 100644 index 0000000..cbec53e --- /dev/null +++ b/ui/src/index.js @@ -0,0 +1,31 @@ +import React from 'react' +import ReactDOM from 'react-dom' +import { Provider } from 'react-redux' +import { Switch, Router, Route } from 'react-router-dom' +import { push } from 'react-router-redux' +import { store, history } from './store' + +import { + Account, + LandingPage +} from './components' + +import { + Grid +} from 'react-bootstrap' + + +ReactDOM.render( + + + + + + + + + + + , + document.getElementById('app') +) diff --git a/ui/src/reducers/Account.js b/ui/src/reducers/Account.js new file mode 100644 index 0000000..63c5c46 --- /dev/null +++ b/ui/src/reducers/Account.js @@ -0,0 +1,49 @@ +const DEFAULT_STATE = { + metaMaskInstalled: false, + metaMaskLocked: true, + address: '', + profile: {}, + email: '', + verified: false, + menu: [{ + key: 'register', + title: 'Register Organization', + link: '/register' + }, { + key: 'contributions', + title: 'Contribution Activity', + link: '/contributions' + }], + organizations: [] +} + +const Account = function(state=DEFAULT_STATE, action) { + const { type, id, value } = action + switch(type) { + case 'SET_PROFILE': + return { + ...state, + profile: value + } + break; + case 'SET_PROFILE_DETAILS': + return { + ...state, + profile: { + ...state['profile'], + [id]: value + } + } + break; + case 'SET_ACCOUNT_DETAILS': + return { + ...state, + [id]: value + } + break; + default: + return state; + } +} + +export default Account diff --git a/ui/src/reducers/AccountSetup.js b/ui/src/reducers/AccountSetup.js new file mode 100644 index 0000000..9fe73fd --- /dev/null +++ b/ui/src/reducers/AccountSetup.js @@ -0,0 +1,158 @@ +const DEFAULT_STATE = { + activeStep: 'welcome', + steps: { + welcome: { + title: 'Welcome', + link: '/account/setup/' + }, + terms: { + title: 'Terms of Service', + link: '/account/setup/terms' + }, + metamask: { + title: 'Setup MetaMask', + link: '/account/setup/metamask' + }, + register: { + title: 'Register Account', + link: '/account/setup/register' + }, + organization: { + title: 'Register Organization', + link: '/account/setup/organization' + }, + finish: { + title: 'Finish', + link: '/account/setup/finish' + }, + }, + termsOfService: ` + GitToken ("GTK") uses GitToken products and services ("Services"). These Services are provided as open-source software by contributors at the GitHub organization Uniform Resource Locator ("URL") https://github.com/git-token. + + In addition to these Terms of Service ("ToS"), there may be other GitToken Services with specific ToS. Those ToS extend to this ToS agreement, and this ToS agreement extends to those specific ToS between GitToken and you when you use those Services. + + GitToken provides these Services in hopes that they will enable organizations, like GTK, to better incentivize and reward contributors, automatically manage Ethereum token distributions, and provide new access to funding for software development. + + By using GitToken Services you are agreeing to these terms. + + Please read the following ToS carefully before using any GitToken service. + + Versions of this ToS can be found at https://github.com/git-token/documentation/blob/master/tos/terms_of_services.md. + + + Use of GitToken Services + + GitToken provides software for automating Ethereum token issuances, distributions, and offerings that correspond to GitHub contribution events, such as a pull request or milestone being reached. + + GitToken token offerings may only take place on GitToken provided user interfaces. The purpose of GitToken is to better incentivize and reward contributors, automatically manage Ethereum token distributions, and provide new access to funding for software development. + + + GitHub Account Information + + GitToken is not affiliated with GitHub. + + GitToken Services requests access to your public GitHub information using Open Authorization ("OAuth"). This information is used by the GitToken software to verify your identity with the following contract, 0x0, ("Contract") and map token distributions to your Ethereum public address based on your GitHub username. + + By using GitToken software, your GitHub contributions, username, and email are made public in the Ethereum blockchain. You agree to not impersonate or misrepresent your GitHub identity. + + If your organization uses private repositories, this may violate your organization's policies as a result of some information being made public. + + Consult with your organization before using GitToken. + + + Organizations Using GitToken + + All organizations using GitToken Services retain intellectual property rights over their software. + + GitToken provides software that enables organizations to issue nominal amounts of Ethereum tokens in exchange for contributions in organizations' GitHub repositories. + + Organizations may set custom values for token distributions corresponding to GitHub events, or alternatively can use the default values. + + In cases where the organization may wish to watch only certain repostories or events, they may select those options using the GitHub organization settings webpage on the GitHub official website. + + If you are using GitToken Services as an agent on behalf of an organization, the organization in which you represent thereby accepts these terms. + + It will hold harmless and indemnify GitToken and its contributors from any claim, suit or action arising from or related to the use of the Services or violation of these ToS, including any liability or expense arising from claims, losses, damages, suits, judgments, litigation costs and attorneys’ fees. + + + Modifying and Cancellation of Services + + GitToken retains the right to modify and cancel our services. GitToken service changes can be found in the change log for the service release. Any features can be requested by opening an issue on GitToken's GitHub repository pages. + + GitToken will make public announcements and provide an adequate period of time for you to retrieve any personal data that may be lost or compromised in the event of a service cancellation. + + + Regulatory Compliance + + GitToken asserts tokens issued using GitToken Services are not financial securities. + + GitTokens are reward points issued to GitHub users when contributions are made toward an organizations' GitHub repositories. + + Any benefit flowing to the contributor or organization is done so in the direct renumeration of tokens given to the contributor in exchange for work rendered. + + Tokens issued reflect intellectual property contributed to an organization, but do not reflect intellectual property rights, royalties, or guarantees of any future profit or benefit. + + GitToken does not restrict issued tokens from being interchanged using third party contracts and services. GitToken does not restrict the organization using the software from ascribing additional properties to the token. + + Any additional ascribed value, monetary or otherwise, is derived from the utility of the token and the features integrated with the token. + + Any additional features added or integrated into the organization's software that may alter the characteristics of the token are completed at the sole discretion and liability of the organization using the Services. + + GitToken, and its contributors, will not be held accountable for any claim, damage, implied warranties, or fine for any token resembling a financial security for any reason. + + In the event that GitToken receives notice pertaining to the determination of GitToken issued tokens resembling financial securities from financial regulation authorities (e.g. Securities & Exchange Commission), GitToken contributors will determine next steps, including ceasing access to parties in affected jurisdictions and applying for exemption where its reasonable to continue operations. + + GitToken is obligated to comply and aid in the enforcement of all applicable laws. In the event that law enforcement requests help in investigating illegal activity, GitToken will support such investigations. + + + Copyright, Services Liabilities & Limitations + + In most cases, GitToken software is provided under the MIT license: + + Copyright 2017 GitToken + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + Extended Limited Liability + + WHEN PERMITTED BY LAW, GITTOKEN, AND GITTOKEN CONTRIBUTORS, WILL NOT BE RESPONSIBLE FOR LOST PROFITS, REVENUES, OR DATA, FINANCIAL LOSSES OR INDIRECT, SPECIAL, CONSEQUENTIAL, EXEMPLARY, OR PUNITIVE DAMAGES. + + TO THE EXTENT PERMITTED BY LAW, GITTOKEN, AND ITS CONTRIBUTORS, WILL NOT BE RESPONSIBLE FOR ANY CLAIM, DAMAGE, IMPLIED WARRANTIES, OR FINE FOR ANY TOKEN RESEMEBLING A FINANCIAL SECURITY FOR ANY REASON. + + TO THE EXTENT PERMITTED BY LAW, THE TOTAL LIABILITY OF GITTOKEN, AND ITS CONTRIBUTORS, FOR ANY CLAIMS UNDER THESE TERMS, INCLUDING FOR ANY IMPLIED WARRANTIES, IS LIMITED TO THE AMOUNT YOU PAID US TO USE THE SERVICES (OR, IF WE CHOOSE, TO SUPPLYING YOU THE SERVICES AGAIN). + + IN ALL CASES, GITTOKEN, AND ITS CONTRIBUTORS, WILL NOT BE LIABLE FOR ANY LOSS OR DAMAGE. + + + Acceptance of Terms of Services + By accepting these ToS and using these Services, you agree to: + + be at least 18 years old (or at least 13 years old with parent consent) and to have full capacity to enter contract under applicable law; + only use GitToken Services using accounts associated with your GitHub account and not impersonate or misrepresent your identity; + only use GitToken Services with tokens or Ethereum (ETH) legally obtained and owned or authorized to be managed by you; + not undertaking or abetting any unlawful activity through use of GitToken Services and comply with all applicable laws; + assume liability of all financial risk of using GitToken Services, including complete loss of ETH, tokens, or any digital asset used in GitToken Services; + our right to terminate these Services to you for any reason; + `, + verificationStatus: 'unverified' +} + +const AccountSetup = function(state=DEFAULT_STATE, action) { + const { type, id, value } = action + switch(type) { + case 'SET_ACCOUNT_SETUP_DETAILS': + return { + ...state, + [id]: value + } + break; + default: + return state; + } +} + +export default AccountSetup diff --git a/ui/src/reducers/Actions.js b/ui/src/reducers/Actions.js new file mode 100644 index 0000000..9999d90 --- /dev/null +++ b/ui/src/reducers/Actions.js @@ -0,0 +1,13 @@ +import { Account } from '../actions/index' + +const DEFAULT_STATE = { + account: new Account({}) +} + +export default function Actions(state=DEFAULT_STATE, action) { + const { type, id, value } = action + switch(type) { + default: + return state; + } +} diff --git a/ui/src/reducers/Admin.js b/ui/src/reducers/Admin.js new file mode 100644 index 0000000..339c505 --- /dev/null +++ b/ui/src/reducers/Admin.js @@ -0,0 +1,20 @@ +const DEFAULT_STATE = { + address: '0x0', + signer: '0x0' +} + + const Admin = function(state=DEFAULT_STATE, action) { + const { type, id, value } = action + switch(type) { + case 'SET_ADMIN_DETAILS': + return { + ...state, + [id]: value + } + break; + default: + return state; + } +} + +export default Admin diff --git a/ui/src/reducers/Layout.js b/ui/src/reducers/Layout.js new file mode 100644 index 0000000..9ca6a59 --- /dev/null +++ b/ui/src/reducers/Layout.js @@ -0,0 +1,22 @@ +const DEFAULT_STATE = { + expandLeftSideNav: true, + expandRightSideNav: true, + expandHeader: true, + expandFooter: true +} + +const Layout = function(state=DEFAULT_STATE, action) { + const { type, id, value } = action + switch(type) { + case 'SET_LAYOUT_DETAILS': + return { + ...state, + [id]: value + } + break; + default: + return state; + } +} + +export default Layout diff --git a/ui/src/reducers/Media.js b/ui/src/reducers/Media.js new file mode 100644 index 0000000..c98f481 --- /dev/null +++ b/ui/src/reducers/Media.js @@ -0,0 +1,20 @@ +const DEFAULT_STATE = { + streamUrl: 'https://livestream.gittoken.io/live/gittoken.m3u8', + streamLive: true +} + +const Media = function(state=DEFAULT_STATE, action) { + const { type, id, value } = action + switch(type) { + case 'SET_MEDIA_DETAILS': + return { + ...state, + [id]: value + } + break; + default: + return state; + } +} + +export default Media diff --git a/ui/src/reducers/Register.js b/ui/src/reducers/Register.js new file mode 100644 index 0000000..e4d07b3 --- /dev/null +++ b/ui/src/reducers/Register.js @@ -0,0 +1,27 @@ +const DEFAULT_STATE = { + organization: '', + adminAddress: '0x0', + adminUsername: '', + authToken: '', + decimals: 8, + symbol: '', + tokenName: '', + registered: false, + showRegistration: true +} + +const Registry = function(state=DEFAULT_STATE, action) { + const { type, id, value } = action + switch(type) { + case 'SET_REGISTRATION_DETAILS': + return { + ...state, + [id]: value + } + break; + default: + return state; + } +} + +export default Registry diff --git a/ui/src/reducers/Registry.js b/ui/src/reducers/Registry.js new file mode 100644 index 0000000..7094630 --- /dev/null +++ b/ui/src/reducers/Registry.js @@ -0,0 +1,30 @@ +const DEFAULT_STATE = { + address: '0x9083a3e544ae9ee0d6d33869df1b071a3e77f5d8', + organizations: {} +} + +const Registry = function(state=DEFAULT_STATE, action) { + const { type, id, value } = action + switch(type) { + case 'SET_REGISTRY_DETAILS': + return { + ...state, + [id]: value + } + break; + case 'SET_REGISTRY_ORGANIZATION_DETAILS': + return { + ...state, + organizations: { + ...state['organizations'], + [id]: value + } + } + break; + default: + return state; + } +} + + +export default Registry diff --git a/ui/src/reducers/index.js b/ui/src/reducers/index.js new file mode 100644 index 0000000..667b7a7 --- /dev/null +++ b/ui/src/reducers/index.js @@ -0,0 +1,21 @@ +import Account from './Account' +import AccountSetup from './AccountSetup' +import Registry from './Registry' +import Register from './Register' +import Admin from './Admin' +import Layout from './Layout' +import Actions from './Actions' +import Media from './Media' + +const modules = { + Account, + AccountSetup, + Register, + Registry, + Admin, + Layout, + Actions, + Media +} + +export default modules diff --git a/ui/src/store.js b/ui/src/store.js new file mode 100644 index 0000000..bcd35a5 --- /dev/null +++ b/ui/src/store.js @@ -0,0 +1,29 @@ +import thunk from 'redux-thunk' +import createHistory from 'history/createBrowserHistory' + +import { createStore, combineReducers, applyMiddleware } from 'redux' +import { routerReducer, routerMiddleware } from 'react-router-redux' + +import Reducers from './reducers/index' + +// Create a history of your choosing (we're using a browser history in this case) +const history = createHistory() + +// Build the middleware for intercepting and dispatching navigation actions +const middleware = routerMiddleware(history) + +// Add the reducer to your store on the `router` key +// Also apply our middleware for navigating +const store = createStore( + combineReducers({ + ...Reducers, + router: routerReducer + }), + applyMiddleware(middleware), + applyMiddleware(thunk), +) + +export { + store, + history +} diff --git a/ui/src/workers/Account/Account.worker.js b/ui/src/workers/Account/Account.worker.js new file mode 100644 index 0000000..6a264f4 --- /dev/null +++ b/ui/src/workers/Account/Account.worker.js @@ -0,0 +1,50 @@ +import accountVerified from './accountVerified' +import getProfile from './getProfile' +import verifyAccount from './verifyAccount' +import getOrganizations from './getOrganizations' + +class GitTokenAccountWorker { + constructor({ accountApiUrl }) { + this.accountApiUrl = accountApiUrl + + /* Bind Methods */ + this.getOrganizations = getOrganizations.bind(this) + this.accountVerified = accountVerified.bind(this) + this.verifyAccount = verifyAccount.bind(this) + this.getProfile = getProfile.bind(this) + + this.listen() + } + + listen() { + console.log('GitToken Account Web Worker Listening for Events') + addEventListener('message', (msg) => { + console.log('msg', msg) + const { type, value } = typeof msg.data == 'string' ? JSON.parse(msg.data) : msg.data + + if (type) { + switch(type) { + case 'VERIFY_ACCOUNT': + const { username, address, msgParams, sig } = value + return this.verifyAccount({ username, address, msgParams, sig }) + break; + case 'GET_PROFILE': + return this.getProfile() + break; + case 'GET_ORGANIZATIONS': + return this.getOrganizations() + break; + // webpackOk is emitted by dev server? + case 'webpackOk': + break; + default: + console.error(new Error(`Invalid Type for Web Worker: ${type}`)) + } + } + }) + } +} + +const worker = new GitTokenAccountWorker({ accountApiUrl: `/api/account` }) + +export default worker diff --git a/ui/src/workers/Account/accountVerified.js b/ui/src/workers/Account/accountVerified.js new file mode 100644 index 0000000..2a2f1c5 --- /dev/null +++ b/ui/src/workers/Account/accountVerified.js @@ -0,0 +1,3 @@ +export default function accountVerified({ username }) { + console.log('Check if the account is verified') +} diff --git a/ui/src/workers/Account/getOrganizations.js b/ui/src/workers/Account/getOrganizations.js new file mode 100644 index 0000000..7f6eaa1 --- /dev/null +++ b/ui/src/workers/Account/getOrganizations.js @@ -0,0 +1,27 @@ +import axios from 'axios' + +export default function getOrganizations() { + axios({ + url: `${this.accountApiUrl}/organizations`, + method: 'GET', + json: true + }).then(({ data }) => { + + postMessage(JSON.stringify({ + type: 'SET_ACCOUNT_DETAILS', + id: 'organizations', + value: data + })) + + postMessage(JSON.stringify({ + type: 'SET_ACCOUNT_SETUP_DETAILS', + id: 'activeStep', + value: 'organization' + })) + + return null + }).catch((error) => { + console.log('error', error) + return null + }) +} diff --git a/ui/src/workers/Account/getProfile.js b/ui/src/workers/Account/getProfile.js new file mode 100644 index 0000000..fc8f8a2 --- /dev/null +++ b/ui/src/workers/Account/getProfile.js @@ -0,0 +1,40 @@ +import Promise, { join } from 'bluebird' +import axios from 'axios' + +export default function getProfile() { + join( + axios({ method: 'GET', url: `${this.accountApiUrl}/profile` }), + axios({ method: 'GET', url: `${this.accountApiUrl}/verified` }) + ).then((response) => { + + postMessage(JSON.stringify({ + type: 'SET_PROFILE', + id: 'profile', + value: response[0].data + })) + + postMessage(JSON.stringify({ + type: 'SET_ACCOUNT_VERIFIED', + id: 'verified', + value: response[1].data + })) + + postMessage(JSON.stringify({ + type: 'SET_ACCOUNT_SETUP_DETAILS', + id: 'activeStep', + value: 'welcome' + })) + + return null + }).catch((error) => { + console.log('error', error) + const { status } = error.response + switch(status) { + case 401: + console.warn('Unauthorized! Please Register with GitHub') + return null + default: + console.error(error) + } + }) +} diff --git a/ui/src/workers/Account/verifyAccount.js b/ui/src/workers/Account/verifyAccount.js new file mode 100644 index 0000000..b115252 --- /dev/null +++ b/ui/src/workers/Account/verifyAccount.js @@ -0,0 +1,39 @@ +import axios from 'axios' + +export default function verifyAccount({ username, address, msgParams, sig }) { + axios({ + url: `${this.accountApiUrl}/verify`, + method: 'POST', + data: { + username, + address, + msgParams, + sig: sig.result + }, + json: true + }).then((verified) => { + + postMessage(JSON.stringify({ + type: 'SET_ACCOUNT_SETUP_DETAILS', + id: 'verificationStatus', + value: verified ? 'verified' : 'unverified' + })) + + postMessage(JSON.stringify({ + type: 'SET_ACCOUNT_DETAILS', + id: 'verified', + value: verified + })) + + postMessage(JSON.stringify({ + type: 'SET_ACCOUNT_SETUP_DETAILS', + id: 'activeStep', + value: 'organization' + })) + + return null + }).catch((error) => { + console.log('error', error) + return null + }) +} diff --git a/ui/src/workers/Admin.worker.js b/ui/src/workers/Admin.worker.js new file mode 100644 index 0000000..fec3599 --- /dev/null +++ b/ui/src/workers/Admin.worker.js @@ -0,0 +1,27 @@ +export default class GitTokenAdminWorker { + constructor({ }) { + this.listen() + } + + listen() { + console.log('GitToken Admin Web Worker Listening for Events') + addEventListener('message', (msg) => { + const { event, values } = JSON.parse(msg.data) + switch(event) { + default: + this.handleErrorMessage({ + error: `Invalid Event: ${event}` + }) + } + }) + } + + handleErrorMessage({ error }) { + postMessage(JSON.stringify({ + error: error ? error : 'Unhandled Error' + })) + } + +} + +const worker = new GitTokenAdminWorker({}) diff --git a/ui/src/workers/Auction.worker.js b/ui/src/workers/Auction.worker.js new file mode 100644 index 0000000..74f2183 --- /dev/null +++ b/ui/src/workers/Auction.worker.js @@ -0,0 +1,36 @@ +export default class GitTokenAuctionWorker { + constructor({ }) { + this.listen() + } + + listen() { + console.log('GitToken Auction Web Worker Listening for Events') + addEventListener('message', (msg) => { + const { event, values } = JSON.parse(msg.data) + switch(event) { + case 'highestBid': + this.highestBid({ bids: values }) + break; + default: + this.handleErrorMessage({ + error: `Invalid Event: ${event}` + }) + } + }) + } + + handleErrorMessage({ error }) { + postMessage(JSON.stringify({ + error: error ? error : 'Unhandled Error' + })) + } + + + highestBid({ bids }) { + console.log('highestBid::bids', bids) + } + +} + + +const auction = new GitTokenAuctionWorker({}) diff --git a/ui/src/workers/Registry.worker.js b/ui/src/workers/Registry.worker.js new file mode 100644 index 0000000..6e7430c --- /dev/null +++ b/ui/src/workers/Registry.worker.js @@ -0,0 +1,98 @@ +import Promise, { promisifyAll } from 'bluebird' +import Registry from 'gittoken-contracts/build/contracts/Registry.json' +import GitHubAPI from 'github-api' +import request from 'browser-request' + +// import Web3 from 'web3' + +export default class GitTokenRegistryWorker { + constructor({ }) { + + this.listen() + } + + listen() { + console.log('GitToken Registry Web Worker Listening for Events') + addEventListener('message', (msg) => { + const { event, payload } = JSON.parse(msg.data) + switch(event) { + case 'verify_organization': + return this.verifyOrganization(payload) + break; + case 'configure': + return this.setConfig(payload) + break; + default: + this.handleErrorMessage({ + error: `Invalid Event: ${event}` + }) + } + }) + } + + setConfig({ registryAPI }) { + this.registryAPI = this.registryAPI + postMessage(JSON.stringify({ + event: 'configured', + payload: { configured: true } + })) + } + + validateAdmin({ username, token, organization }) { + return new Promise((resolve, reject) => { + // console.log('username, token, organization', username, token, organization) + const github = new GitHubAPI({ username, token }) + const user = github.getUser() + const org = github.getOrganization(organization) + let profile + Promise.resolve(user.getProfile()).then(({ data }) => { + profile = data + return org.listMembers({ role: 'admin' }) + }).then(({ data }) => { + return data + }).map((member) => { + if (member.login == profile.login) { + resolve(true) + } else { + return null + } + }).then(() => { + resolve(false) + }).catch((error) => { + reject(error) + }) + }) + } + + verifyOrganization(details) { + console.log('verifyOrganization::details', details) + const { username, token, organization, uri } = details + this.validateAdmin({ username, token, organization }).then((validated) => { + console.log('validated', validated) + return request({ + method: 'POST', + uri, + body: details, + json: true + }, (error, result) => { + if (error) { throw error; } + console.log('result', result) + postMessage(JSON.stringify({ + event: 'organization_verified', + payload: result + })) + }) + }).catch((error) => { + console.log('error', error) + }) + } + + handleErrorMessage({ error }) { + postMessage(JSON.stringify({ + error: error ? error : 'Unhandled Error' + })) + } + +} + +const worker = new GitTokenRegistryWorker({}) diff --git a/ui/src/workers/Voting.worker.js b/ui/src/workers/Voting.worker.js new file mode 100644 index 0000000..daf0564 --- /dev/null +++ b/ui/src/workers/Voting.worker.js @@ -0,0 +1,27 @@ +export default class GitTokenVotingWorker { + constructor({ }) { + this.listen() + } + + listen() { + console.log('GitToken Voting Web Worker Listening for Events') + addEventListener('message', (msg) => { + const { event, values } = JSON.parse(msg.data) + switch(event) { + default: + this.handleErrorMessage({ + error: `Invalid Event: ${event}` + }) + } + }) + } + + handleErrorMessage({ error }) { + postMessage(JSON.stringify({ + error: error ? error : 'Unhandled Error' + })) + } + +} + +const worker = new GitTokenVotingWorker({}) diff --git a/ui/src/workers/Wallet.worker.js b/ui/src/workers/Wallet.worker.js new file mode 100644 index 0000000..df5f540 --- /dev/null +++ b/ui/src/workers/Wallet.worker.js @@ -0,0 +1,93 @@ +import Promise, { promisifyAll } from 'bluebird' + +import request from 'browser-request' +import PouchDB from 'pouchdb' + + +export default class GitTokenWalletWorker { + constructor({ ethereumProvider, torvaldsProvider }) { + this.db = new PouchDB('gittoken_wallet') + + this.db.info().then((info) => { + console.log('info', info) + }).catch((error) => { + console.log('error', error) + }) + + + + this.listen() + } + + listen() { + console.log('GitToken Wallet Web Worker Listening for Events') + addEventListener('message', (msg) => { + const { data: { event, payload } } = msg + switch(event) { + case 'SAVE_KEYSTORE': + this.saveKeystore({ ...payload }) + break; + case 'RETRIEVE_KEYSTORE': + this.retrieveKeystore() + break; + default: + this.handleErrorMessage({ + error: `Invalid Event: ${event}` + }) + } + }) + } + + saveKeystore({ serialized }) { + this.db.put({ + _id: 'keystore', + serialized: serialized + }).then(() => { + return this.db.get('keystore') + }).then((ks) => { + postMessage({ + event: 'KEYSTORE_SAVED', + payload: { keystore: ks } + }) + return null + }).catch((error) => { + this.handleErrorMessage({ error }) + }) + } + + retrieveKeystore() { + this.db.get('keystore').then((ks) => { + postMessage({ + event: 'SERIALIZED_KEYSTORE', + payload: { + serialized: ks + } + }) + return null + }).catch((error) => { + this.handleErrorMessage({ error }) + }) + } + + setConfig(config) { + console.log('GitTokenWalletWorker::setConfig::config', config) + postMessage({ + event: 'configured', + payload: { configured: true } + }) + } + + handleErrorMessage({ error }) { + console.log('error', error) + postMessage({ + event: 'WALLET_WORKER_ERROR', + payload: { + error: error ? error : 'Unhandled Error' + } + }) + return null + } + +} + +const worker = new GitTokenWalletWorker({}) diff --git a/ui/src/workers/index.js b/ui/src/workers/index.js new file mode 100644 index 0000000..43f2187 --- /dev/null +++ b/ui/src/workers/index.js @@ -0,0 +1,13 @@ +import AccountWorker from './Account/Account.worker.js' +import AdminWorker from './Admin.worker.js' +import VotingWorker from './Voting.worker.js' +import RegistryWorker from './Registry.worker.js' +import WalletWorker from './Wallet.worker.js' + +export { + AccountWorker, + AdminWorker, + VotingWorker, + WalletWorker, + RegistryWorker +} diff --git a/webpack.config.js b/webpack.config.js new file mode 100644 index 0000000..c308f96 --- /dev/null +++ b/webpack.config.js @@ -0,0 +1,58 @@ +const path = require('path') +const webpack = require('webpack') + +module.exports = { + devtool: 'cheap-module-source-map', + entry: [ + "babel-polyfill", + "./ui/src/index.js" + ], + output: { + path: path.join(__dirname, '/ui/'), + filename: 'gittoken-ui.dist.js', + publicPath: '/' + }, + devServer: { + historyApiFallback: true, + disableHostCheck: true + }, + module: { + loaders: [ + { + test: /\.(js|jsx)?$/, + loader: 'babel-loader', + exclude: /node_modules/, + query: { + plugins: ['transform-runtime'], + presets: ['env', 'react', 'stage-0'] + } + }, { + test : /.json?$/, + loader : "json-loader" + },{ + test: /\.worker\.js$/, + use: { + loader: 'worker-loader' + } + },{ + // test: /\.(woff2|woff|ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, + test: /\.(woff2|woff|ttf|eot|svg)(\?.*$|$)/, + loader: 'file-loader?name=fonts/[name].[ext]', + include: [ + path.join(process.cwd(), 'ui/src'), + path.join(process.cwd(), 'node_modules'), + ], + } + ] + }, + plugins: [ + // new webpack.optimize.UglifyJsPlugin({ + // compress: { + // warnings: false + // } + // }), + new webpack.DefinePlugin({ + 'process.env.NODE_ENV': '"development"' + }) + ] +} From 0ba27439f7f4a3aa40b48645be5d3f4543e4774e Mon Sep 17 00:00:00 2001 From: Ryan Tate Date: Thu, 11 Jan 2018 17:42:12 -0800 Subject: [PATCH 09/10] Removing extraneous dependencies --- package-lock.json | 4082 +- package.json | 9 +- ui/gittoken-ui.dist.js | 109585 +++++++-------- ui/gittoken-ui.dist.js.map | 2 +- ui/src/components/Account/Setup/Main.js | 9 +- .../Account/Setup/RegisterAccount.js | 10 + .../Account/Setup/TermsOfService.js | 252 + 7 files changed, 48017 insertions(+), 65932 deletions(-) create mode 100644 ui/src/components/Account/Setup/TermsOfService.js diff --git a/package-lock.json b/package-lock.json index 24f1b4d..597597b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,24 +1,9 @@ { "name": "gittoken-server", - "version": "0.0.1", + "version": "0.0.2", "lockfileVersion": 1, "requires": true, "dependencies": { - "abstract-leveldown": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.4.tgz", - "integrity": "sha1-KeGOYy5g5OIh1YECR4UqY9ey5BA=", - "requires": { - "xtend": "3.0.0" - }, - "dependencies": { - "xtend": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-3.0.0.tgz", - "integrity": "sha1-XM50B7r2Qsunvs2laBEcST9ZZlo=" - } - } - }, "accepts": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", @@ -48,14 +33,6 @@ } } }, - "aes-decrypter": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/aes-decrypter/-/aes-decrypter-1.0.3.tgz", - "integrity": "sha1-nAa4pUNaWtCduTP4oBSvzxhMw04=", - "requires": { - "pkcs7": "0.2.3" - } - }, "ajv": { "version": "5.5.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", @@ -85,7 +62,8 @@ "ansi-html": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=" + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", + "dev": true }, "ansi-regex": { "version": "2.1.1", @@ -98,11 +76,6 @@ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "dev": true }, - "any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" - }, "anymatch": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", @@ -126,11 +99,6 @@ "readable-stream": "2.3.3" } }, - "argsarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/argsarray/-/argsarray-0.0.1.tgz", - "integrity": "sha1-bnIHtOzbObCviDA/pa4ivajfYcs=" - }, "arr-diff": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", @@ -147,12 +115,14 @@ "arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true }, "array-flatten": { "version": "1.1.1", @@ -163,6 +133,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", + "dev": true, "requires": { "define-properties": "1.1.2", "es-abstract": "1.10.0" @@ -172,6 +143,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, "requires": { "array-uniq": "1.0.3" } @@ -179,7 +151,8 @@ "array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true }, "array-unique": { "version": "0.2.1", @@ -214,15 +187,11 @@ "util": "0.10.3" } }, - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=" - }, "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true }, "async": { "version": "2.6.0", @@ -237,11 +206,6 @@ "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=" }, - "async-limiter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", - "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==" - }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -250,17 +214,8 @@ "atob": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/atob/-/atob-2.0.3.tgz", - "integrity": "sha1-GcenYEc3dEaPILLS0DNyrX1Mv10=" - }, - "attempt-x": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/attempt-x/-/attempt-x-1.1.1.tgz", - "integrity": "sha512-hIp37ojJRRW8ExWSxxLpkDHUufk/DFfsb7/cUC1cVbBg7JV4gJTkCTRa44dlL9e5jx1P3VNrjL7QOQfi4MyltA==" - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=" + "integrity": "sha1-GcenYEc3dEaPILLS0DNyrX1Mv10=", + "dev": true }, "aws4": { "version": "1.6.0", @@ -546,6 +501,7 @@ "version": "7.1.2", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-7.1.2.tgz", "integrity": "sha512-jRwlFbINAeyDStqK6Dd5YuY0k5YuzQUvlz2ZamuXrXmxav3pNqe9vfJ402+2G+OmlJSXxCOpB6Uz0INM7RQe2A==", + "dev": true, "requires": { "find-cache-dir": "1.0.0", "loader-utils": "1.1.0", @@ -1016,14 +972,6 @@ "babel-runtime": "6.26.0" } }, - "babel-plugin-transform-react-constant-elements": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-constant-elements/-/babel-plugin-transform-react-constant-elements-6.23.0.tgz", - "integrity": "sha1-LxGb9NLN1F65uqrldAU8YE9hR90=", - "requires": { - "babel-runtime": "6.26.0" - } - }, "babel-plugin-transform-react-display-name": { "version": "6.25.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz", @@ -1096,6 +1044,7 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "dev": true, "requires": { "babel-runtime": "6.26.0", "core-js": "2.5.3", @@ -1105,7 +1054,8 @@ "regenerator-runtime": { "version": "0.10.5", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=" + "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "dev": true } } }, @@ -1309,6 +1259,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, "requires": { "cache-base": "1.0.1", "class-utils": "0.3.5", @@ -1322,18 +1273,11 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, - "base-x": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.4.tgz", - "integrity": "sha512-UYOadoSIkEI/VrRGSG6qp93rp2WdokiAiNYDfGW5qURAY8GiAQkvMbwNNSDYiVJopqv4gCna7xqf4rrNGp+5AA==", - "requires": { - "safe-buffer": "5.1.1" - } - }, "base64-js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", @@ -1342,7 +1286,8 @@ "batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=" + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true }, "bcrypt-pbkdf": { "version": "1.0.1", @@ -1401,101 +1346,6 @@ "safe-buffer": "5.1.1" } }, - "bitcore-lib": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/bitcore-lib/-/bitcore-lib-0.14.0.tgz", - "integrity": "sha1-IcsjWf57mXo7e3c+t9cnWuN9ZE4=", - "requires": { - "bn.js": "2.0.4", - "bs58": "2.0.0", - "buffer-compare": "1.0.0", - "elliptic": "3.0.3", - "inherits": "2.0.1", - "lodash": "3.10.1" - }, - "dependencies": { - "bn.js": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-2.0.4.tgz", - "integrity": "sha1-Igp81nf38b+pNif/QZN3b+eBlIA=" - }, - "bs58": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-2.0.0.tgz", - "integrity": "sha1-crcTvtIjoKxRi72g484/SBfznrU=" - }, - "buffer-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-compare/-/buffer-compare-1.0.0.tgz", - "integrity": "sha1-rKp6lm6Y7un64Usxw5pfFY+zxKI=" - }, - "elliptic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-3.0.3.tgz", - "integrity": "sha1-hlybQgv75VAGuflp+XoNLESWZZU=", - "requires": { - "bn.js": "2.0.4", - "brorand": "1.0.5", - "hash.js": "1.0.3", - "inherits": "2.0.1" - }, - "dependencies": { - "brorand": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.0.5.tgz", - "integrity": "sha1-B7VMowKGq9Fxig4qgwgD79yb+gQ=" - }, - "hash.js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.0.3.tgz", - "integrity": "sha1-EzL/ABVsCg/92CNgE9B7d6BFFXM=", - "requires": { - "inherits": "2.0.1" - } - } - } - }, - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" - }, - "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=" - } - } - }, - "bitcore-mnemonic": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bitcore-mnemonic/-/bitcore-mnemonic-1.5.0.tgz", - "integrity": "sha512-sbeP4xwkindLMfIQhVxj6rZSDMwtiKmfc1DqvwpR6Yg+Qo4I4WHO5pvzb12Y04uDh1N3zgD45esHhfH0HHmE4g==", - "requires": { - "bitcore-lib": "0.15.0", - "unorm": "1.4.1" - }, - "dependencies": { - "bitcore-lib": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/bitcore-lib/-/bitcore-lib-0.15.0.tgz", - "integrity": "sha512-AeXLWhiivF6CDFzrABZHT4jJrflyylDWTi32o30rF92HW9msfuKpjzrHtFKYGa9w0kNVv5HABQjCB3OEav4PhQ==", - "requires": { - "bn.js": "4.11.8", - "bs58": "4.0.1", - "buffer-compare": "1.1.1", - "elliptic": "6.4.0", - "inherits": "2.0.1", - "lodash": "4.17.4" - } - }, - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" - } - } - }, "bl": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", @@ -1504,14 +1354,6 @@ "readable-stream": "2.3.3" } }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "requires": { - "inherits": "2.0.3" - } - }, "bluebird": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", @@ -1553,6 +1395,7 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, "requires": { "array-flatten": "2.1.1", "deep-equal": "1.0.1", @@ -1565,23 +1408,17 @@ "array-flatten": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.1.tgz", - "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=" + "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=", + "dev": true }, "deep-equal": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=" + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true } } }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "requires": { - "hoek": "2.16.3" - } - }, "brace-expansion": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", @@ -1606,11 +1443,6 @@ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" }, - "browser-request": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/browser-request/-/browser-request-0.3.3.tgz", - "integrity": "sha1-ns5bWsqJopkyJC4Yv5M975h2zBc=" - }, "browser-stdout": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz", @@ -1698,14 +1530,6 @@ "electron-to-chromium": "1.3.30" } }, - "bs58": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", - "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=", - "requires": { - "base-x": "3.0.4" - } - }, "buffer": { "version": "4.9.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", @@ -1716,36 +1540,11 @@ "isarray": "1.0.0" } }, - "buffer-compare": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-compare/-/buffer-compare-1.1.1.tgz", - "integrity": "sha1-W+e+hTr4kZjR9N3AkNHWakiu9ZY=" - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" - }, - "buffer-from": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-0.1.1.tgz", - "integrity": "sha1-V7GLHaChnsBvM4N6UnWiQjUb114=", - "requires": { - "is-array-buffer-x": "1.7.0" - } - }, "buffer-indexof": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==" - }, - "buffer-to-arraybuffer": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.2.tgz", - "integrity": "sha1-0NgFZNwxhmoZdlFUh7OrYg23yEk=", - "requires": { - "tape": "3.6.1" - } + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", + "dev": true }, "buffer-xor": { "version": "1.0.3", @@ -1771,6 +1570,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, "requires": { "collection-visit": "1.0.0", "component-emitter": "1.2.1", @@ -1786,15 +1586,11 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, - "cached-constructors-x": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cached-constructors-x/-/cached-constructors-x-1.0.0.tgz", - "integrity": "sha512-JVP0oilYlPgBTD8bkQ+of7hSIJRtydCCJiMtzdRMXVQ98gdj0NyrJTZzbu5wtlO26Ev/1HXRTtbBNsVlLJ3+3A==" - }, "camelcase": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", @@ -1804,6 +1600,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, "requires": { "camelcase": "2.1.1", "map-obj": "1.0.1" @@ -1812,7 +1609,8 @@ "camelcase": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true } } }, @@ -1896,6 +1694,7 @@ "version": "0.3.5", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.5.tgz", "integrity": "sha1-F+eTEDdQ+WJ7IXbqNM/RtWWQPIA=", + "dev": true, "requires": { "arr-union": "3.1.0", "define-property": "0.2.5", @@ -1908,6 +1707,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "0.1.6" } @@ -1916,6 +1716,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -1924,6 +1725,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -1934,6 +1736,7 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -1942,6 +1745,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -1952,6 +1756,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, "requires": { "is-accessor-descriptor": "0.1.6", "is-data-descriptor": "0.1.4", @@ -1961,17 +1766,20 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true }, "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true }, "lazy-cache": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", "integrity": "sha1-uRkKT5EzVGlIQIWfio9whNiCImQ=", + "dev": true, "requires": { "set-getter": "0.1.0" } @@ -1993,11 +1801,6 @@ "wordwrap": "0.0.2" } }, - "clone-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", - "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=" - }, "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -2012,6 +1815,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, "requires": { "map-visit": "1.0.0", "object-visit": "1.0.1" @@ -2036,17 +1840,20 @@ "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true }, "component-emitter": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true }, "compressible": { "version": "2.0.12", "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.12.tgz", "integrity": "sha1-xZpcmdt2dn6YdlAOJx72OzSTvWY=", + "dev": true, "requires": { "mime-db": "1.30.0" } @@ -2055,6 +1862,7 @@ "version": "1.7.1", "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.1.tgz", "integrity": "sha1-7/JgPvwuIs+G810uuTWJ+YdTc9s=", + "dev": true, "requires": { "accepts": "1.3.4", "bytes": "3.0.0", @@ -2069,6 +1877,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -2093,7 +1902,8 @@ "connect-history-api-fallback": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", - "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=" + "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=", + "dev": true }, "console-browserify": { "version": "1.1.0", @@ -2156,7 +1966,8 @@ "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true }, "core-js": { "version": "2.5.3", @@ -2177,11 +1988,6 @@ "vary": "1.1.2" } }, - "countdown": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/countdown/-/countdown-2.6.0.tgz", - "integrity": "sha1-Z3+446nUzE52QVkBuiU7UYrzQXc=" - }, "crc": { "version": "3.4.4", "resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz", @@ -2220,16 +2026,6 @@ "sha.js": "2.4.9" } }, - "create-react-class": { - "version": "15.6.2", - "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.2.tgz", - "integrity": "sha1-zx7RXxKq1/FO9fLf4F5sQvke8Co=", - "requires": { - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1" - } - }, "cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", @@ -2240,14 +2036,6 @@ "which": "1.3.0" } }, - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "requires": { - "boom": "2.10.1" - } - }, "crypto-browserify": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", @@ -2283,6 +2071,7 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, "requires": { "array-find-index": "1.0.2" } @@ -2295,89 +2084,6 @@ "es5-ext": "0.10.37" } }, - "d3-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.1.tgz", - "integrity": "sha512-CyINJQ0SOUHojDdFDH4JEM0552vCR1utGyLHegJHyYH0JyCpSeTPxi4OBqHMA2jJZq4NH782LtaJWBImqI/HBw==" - }, - "d3-collection": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.4.tgz", - "integrity": "sha1-NC39EoN8kJdPM/HMCnha6lcNzcI=" - }, - "d3-color": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.0.3.tgz", - "integrity": "sha1-vHZD/KjlOoNH4vva/6I2eWtYUJs=" - }, - "d3-ease": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.3.tgz", - "integrity": "sha1-aL+8NJM4o4DETYrMT7wzBKotjA4=" - }, - "d3-format": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.2.1.tgz", - "integrity": "sha512-U4zRVLDXW61bmqoo+OJ/V687e1T5nVd3TAKAJKgtpZ/P1JsMgyod0y9br+mlQOryTAACdiXI3wCjuERHFNp91w==" - }, - "d3-interpolate": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.1.6.tgz", - "integrity": "sha512-mOnv5a+pZzkNIHtw/V6I+w9Lqm9L5bG3OTXPM5A+QO0yyVMQ4W1uZhR+VOJmazaOZXri2ppbiZ5BUNWT0pFM9A==", - "requires": { - "d3-color": "1.0.3" - } - }, - "d3-path": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.5.tgz", - "integrity": "sha1-JB6xhJvZ6egCHA0KeZ+KDo5EF2Q=" - }, - "d3-scale": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-1.0.7.tgz", - "integrity": "sha512-KvU92czp2/qse5tUfGms6Kjig0AhHOwkzXG0+PqIJB3ke0WUv088AHMZI0OssO9NCkXt4RP8yju9rpH8aGB7Lw==", - "requires": { - "d3-array": "1.2.1", - "d3-collection": "1.0.4", - "d3-color": "1.0.3", - "d3-format": "1.2.1", - "d3-interpolate": "1.1.6", - "d3-time": "1.0.8", - "d3-time-format": "2.1.1" - } - }, - "d3-shape": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.2.0.tgz", - "integrity": "sha1-RdAVOPBkuv0F6j1tLLdI/YxB93c=", - "requires": { - "d3-path": "1.0.5" - } - }, - "d3-time": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.0.8.tgz", - "integrity": "sha512-YRZkNhphZh3KcnBfitvF3c6E0JOFGikHZ4YqD+Lzv83ZHn1/u6yGenRU1m+KAk9J1GnZMnKcrtfvSktlA1DXNQ==" - }, - "d3-time-format": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.1.tgz", - "integrity": "sha512-8kAkymq2WMfzW7e+s/IUNAtN/y3gZXGRrdGfo6R8NKPAA85UBTxZg5E61bR6nLwjPjj4d3zywSQe1CkYLPFyrw==", - "requires": { - "d3-time": "1.0.8" - } - }, - "d3-timer": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.7.tgz", - "integrity": "sha512-vMZXR88XujmG/L5oB96NNKH5lCWwiLM/S2HyyAQLcjWJCloK5shxta4CwOFYLZoY3AWX73v8Lgv4cCAdWtRmOA==" - }, - "d3-voronoi": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/d3-voronoi/-/d3-voronoi-1.1.2.tgz", - "integrity": "sha1-Fodmfo8TotFYyAwUgMWinLDYlzw=" - }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", @@ -2414,141 +2120,19 @@ "decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "decompress": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.0.tgz", - "integrity": "sha1-eu3YVCflqS2s/lVnSnxQXpbQH50=", - "requires": { - "decompress-tar": "4.1.1", - "decompress-tarbz2": "4.1.1", - "decompress-targz": "4.1.1", - "decompress-unzip": "4.0.1", - "graceful-fs": "4.1.11", - "make-dir": "1.1.0", - "pify": "2.3.0", - "strip-dirs": "2.1.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - } - } - }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "requires": { - "mimic-response": "1.0.0" - } - }, - "decompress-tar": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", - "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", - "requires": { - "file-type": "5.2.0", - "is-stream": "1.1.0", - "tar-stream": "1.5.5" - } - }, - "decompress-tarbz2": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", - "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", - "requires": { - "decompress-tar": "4.1.1", - "file-type": "6.2.0", - "is-stream": "1.1.0", - "seek-bzip": "1.0.5", - "unbzip2-stream": "1.2.5" - }, - "dependencies": { - "file-type": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", - "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==" - } - } - }, - "decompress-targz": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", - "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", - "requires": { - "decompress-tar": "4.1.1", - "file-type": "5.2.0", - "is-stream": "1.1.0" - } - }, - "decompress-unzip": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", - "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", - "requires": { - "file-type": "3.9.0", - "get-stream": "2.3.1", - "pify": "2.3.0", - "yauzl": "2.9.1" - }, - "dependencies": { - "file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" - }, - "get-stream": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", - "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", - "requires": { - "object-assign": "4.1.1", - "pinkie-promise": "2.0.1" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - } - } - }, - "deep-equal": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-0.2.2.tgz", - "integrity": "sha1-hLdFiW80xoTpjyzg5Cq69Du6AX0=" + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true }, "deep-extend": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" }, - "deferred-leveldown": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-2.0.3.tgz", - "integrity": "sha512-8c2Hv+vIwKNc7qqy4zE3t5DIsln+FQnudcyjLYstHwLFg7XnXZT/H8gQb8lj6xi8xqGM0Bz633ZWcCkonycBTA==", - "requires": { - "abstract-leveldown": "3.0.0" - }, - "dependencies": { - "abstract-leveldown": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-3.0.0.tgz", - "integrity": "sha512-KUWx9UWGQD12zsmLNj64/pndaz4iJh/Pj7nopgkfDG6RlCcbMZvT6+9l7dchK4idog2Is8VdC/PvNbFuFmalIQ==", - "requires": { - "xtend": "4.0.1" - } - } - } - }, "define-properties": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", + "dev": true, "requires": { "foreach": "2.0.5", "object-keys": "1.0.11" @@ -2557,7 +2141,8 @@ "object-keys": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", - "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=" + "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", + "dev": true } } }, @@ -2565,19 +2150,16 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, "requires": { "is-descriptor": "1.0.2" } }, - "defined": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/defined/-/defined-0.0.0.tgz", - "integrity": "sha1-817qfXBekzuvE7LwOz+D2SFAOz4=" - }, "del": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", + "dev": true, "requires": { "globby": "6.1.0", "is-path-cwd": "1.0.0", @@ -2628,7 +2210,8 @@ "detect-node": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.3.tgz", - "integrity": "sha1-ogM8CcyOFY03dI+951B4Mr1s4Sc=" + "integrity": "sha1-ogM8CcyOFY03dI+951B4Mr1s4Sc=", + "dev": true }, "diff": { "version": "3.2.0", @@ -2648,12 +2231,14 @@ "dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=" + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true }, "dns-packet": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.2.2.tgz", "integrity": "sha512-kN+DjfGF7dJGUL7nWRktL9Z18t1rWP3aQlyZdY8XlpvU3Nc6GeFTQApftcjtWKxAZfiggZSGrCEoszNgvnpwDg==", + "dev": true, "requires": { "ip": "1.1.5", "safe-buffer": "5.1.1" @@ -2663,6 +2248,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "dev": true, "requires": { "buffer-indexof": "1.1.1" } @@ -2672,11 +2258,6 @@ "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.3.1.tgz", "integrity": "sha512-2Sm+JaYn74OiTM2wHvxJOo3roiq/h25Yi69Fqk269cNUwIXsCvATB6CRSFC9Am/20G2b28hGv/+7NiWydIrPvg==" }, - "dom-walk": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", - "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=" - }, "domain-browser": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", @@ -2687,11 +2268,6 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=" }, - "double-ended-queue": { - "version": "2.1.0-0", - "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", - "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=" - }, "drbg.js": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", @@ -2702,11 +2278,6 @@ "create-hmac": "1.1.6" } }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" - }, "ecc-jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", @@ -2768,31 +2339,6 @@ "iconv-lite": "0.4.19" } }, - "encoding-down": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/encoding-down/-/encoding-down-3.0.1.tgz", - "integrity": "sha512-uvx+39YNqiPLqhXAvOSGBVy/oYBh4p2ShwG9YFCipwgfOhnVIOxuOPE3R9dEGM44bn0VHIrC3ojXq6lNf2ulwg==", - "requires": { - "abstract-leveldown": "3.0.0", - "level-codec": "8.0.0", - "level-errors": "1.1.2" - }, - "dependencies": { - "abstract-leveldown": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-3.0.0.tgz", - "integrity": "sha512-KUWx9UWGQD12zsmLNj64/pndaz4iJh/Pj7nopgkfDG6RlCcbMZvT6+9l7dchK4idog2Is8VdC/PvNbFuFmalIQ==", - "requires": { - "xtend": "4.0.1" - } - }, - "level-codec": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-8.0.0.tgz", - "integrity": "sha512-gNZlo1HRHz0BWxzGCyNf7xntAs2HKOPvvRBWtXsoDvEX4vMYnSTBS6ZnxoaiX7nhxSBPpegRa8CQ/hnfGBKk3Q==" - } - } - }, "end-of-stream": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", @@ -2801,14 +2347,6 @@ "once": "1.4.0" } }, - "end-stream": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/end-stream/-/end-stream-0.1.0.tgz", - "integrity": "sha1-MgA/P0OKKwFDFoE3+PpumGbIHtU=", - "requires": { - "write-stream": "0.4.3" - } - }, "enhanced-resolve": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz", @@ -2840,6 +2378,7 @@ "version": "1.10.0", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.10.0.tgz", "integrity": "sha512-/uh/DhdqIOSkAWifU+8nG78vlQxdLckUdI/sPgy0VhuXi2qJ7T8czBmqIYtLQVpCIFYafChnsRsB5pyb1JdmCQ==", + "dev": true, "requires": { "es-to-primitive": "1.1.1", "function-bind": "1.1.1", @@ -2852,6 +2391,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", + "dev": true, "requires": { "is-callable": "1.1.3", "is-date-object": "1.0.1", @@ -2867,11 +2407,6 @@ "es6-symbol": "3.1.1" } }, - "es5-shim": { - "version": "4.5.10", - "resolved": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.5.10.tgz", - "integrity": "sha512-vmryBdqKRO8Ei9LJ4yyEk/EOmAOGIagcHDYPpTAi6pot4IMHS1AC2q5cTKPmydpijg2iX8DVmCuqgrNxIWj8Yg==" - }, "es6-iterator": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", @@ -2973,68 +2508,6 @@ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, - "eth-lib": { - "version": "0.1.27", - "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.27.tgz", - "integrity": "sha512-B8czsfkJYzn2UIEMwjc7Mbj+Cy72V+/OXH/tb44LV8jhrjizQJJ325xMOMyk3+ETa6r6oi0jsUY14+om8mQMWA==", - "requires": { - "bn.js": "4.11.8", - "elliptic": "6.4.0", - "keccakjs": "0.2.1", - "nano-json-stream-parser": "0.1.2", - "servify": "0.1.12", - "ws": "3.3.3", - "xhr-request-promise": "0.1.2" - } - }, - "eth-lightwallet": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/eth-lightwallet/-/eth-lightwallet-2.5.6.tgz", - "integrity": "sha1-bxDxNMqXUx5PA6GUAI0xQyJQDBM=", - "requires": { - "bitcore-lib": "0.14.0", - "bitcore-mnemonic": "1.5.0", - "buffer": "4.9.1", - "crypto-js": "3.1.8", - "elliptic": "3.1.0", - "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.3", - "rlp": "2.0.0", - "scrypt-async": "1.3.1", - "tweetnacl": "0.13.2", - "web3": "0.19.1" - }, - "dependencies": { - "bn.js": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-2.2.0.tgz", - "integrity": "sha1-EhYrwq5x/EClYmwzQ486h1zTdiU=" - }, - "elliptic": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-3.1.0.tgz", - "integrity": "sha1-whaC73YnabVqdCAWCRBdoR1fYMw=", - "requires": { - "bn.js": "2.2.0", - "brorand": "1.1.0", - "hash.js": "1.1.3", - "inherits": "2.0.3" - } - }, - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, "eth-sig-util": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/eth-sig-util/-/eth-sig-util-1.4.1.tgz", @@ -3101,22 +2574,6 @@ "secp256k1": "3.4.0" } }, - "ethjs-unit": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", - "integrity": "sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=", - "requires": { - "bn.js": "4.11.6", - "number-to-bn": "1.7.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" - } - } - }, "ethjs-util": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.4.tgz", @@ -3138,7 +2595,8 @@ "eventemitter3": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.1.1.tgz", - "integrity": "sha1-R3hr2qCHyvext15zq8XH1UAVjNA=" + "integrity": "sha1-R3hr2qCHyvext15zq8XH1UAVjNA=", + "dev": true }, "events": { "version": "1.1.1", @@ -3149,6 +2607,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-0.1.6.tgz", "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", + "dev": true, "requires": { "original": "1.0.0" } @@ -3289,6 +2748,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, "requires": { "is-extendable": "0.1.1" } @@ -3311,11 +2771,6 @@ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=" }, - "fast-future": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fast-future/-/fast-future-1.0.2.tgz", - "integrity": "sha1-hDWpqqAteSSNF9cE52JZMB2ZKAo=" - }, "fast-json-stable-stringify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", @@ -3361,19 +2816,6 @@ } } }, - "fd-slicer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", - "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", - "requires": { - "pend": "1.2.0" - } - }, - "file-type": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", - "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=" - }, "filename-regex": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", @@ -3424,6 +2866,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, "requires": { "commondir": "1.0.1", "make-dir": "1.1.0", @@ -3456,14 +2899,6 @@ } } }, - "for-each": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.2.tgz", - "integrity": "sha1-LEBFC5NI6X8oEyJZO6lnBLmr1NQ=", - "requires": { - "is-function": "1.0.1" - } - }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -3480,23 +2915,14 @@ "foreach": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" }, - "form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.17" - } - }, "forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", @@ -3506,6 +2932,7 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, "requires": { "map-cache": "0.2.2" } @@ -3527,28 +2954,6 @@ "rimraf": "2.6.2" } }, - "fs-promise": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/fs-promise/-/fs-promise-2.0.3.tgz", - "integrity": "sha1-9k5PhUvPaJqovdy6JokW2z20aFQ=", - "requires": { - "any-promise": "1.3.0", - "fs-extra": "2.1.2", - "mz": "2.7.0", - "thenify-all": "1.6.0" - }, - "dependencies": { - "fs-extra": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-2.1.2.tgz", - "integrity": "sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU=", - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0" - } - } - } - }, "fs-readdir-recursive": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", @@ -4349,21 +3754,11 @@ } } }, - "fstream": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", - "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", - "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.2" - } - }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, "gauge": { "version": "2.7.4", @@ -4400,7 +3795,8 @@ "get-stdin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true }, "get-stream": { "version": "3.0.0", @@ -4410,7 +3806,8 @@ "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true }, "getpass": { "version": "0.1.7", @@ -4490,63 +3887,6 @@ } } }, - "gittoken-account-ui": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/gittoken-account-ui/-/gittoken-account-ui-0.0.7.tgz", - "integrity": "sha512-DG1VKMRK7vvb6a7/Jc7HNZ+nQCE/TWtYNv9dC6Krw2WLUF/PCBkocQICzbiEwKygvGWaYCjm2qVL6D3Dg7u+hw==", - "requires": { - "gittoken-react-components": "0.0.16", - "gittoken-reducers": "0.0.57", - "history": "4.7.2", - "react": "16.2.0", - "react-dom": "16.2.0", - "react-icons": "2.2.7", - "react-redux": "5.0.6", - "react-router-dom": "4.2.2", - "react-router-redux": "4.0.8", - "redux": "3.7.2", - "redux-thunk": "2.2.0", - "worker-loader": "1.1.0" - }, - "dependencies": { - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "requires": { - "follow-redirects": "1.3.0", - "is-buffer": "1.1.6" - } - }, - "follow-redirects": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", - "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", - "requires": { - "debug": "3.1.0" - } - }, - "gittoken-reducers": { - "version": "0.0.57", - "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.57.tgz", - "integrity": "sha512-99iGDT+eflbk7yFECxKChUZT6VvLhyGunIGkWiF2YX7mxJJBl8xEMbqvMU/dtsVDfI21G1vPidnfKHGHo6iRmA==", - "requires": { - "gittoken-redux-actions": "0.0.40" - } - }, - "gittoken-redux-actions": { - "version": "0.0.40", - "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.40.tgz", - "integrity": "sha512-8Ui18X5aAKn7OToPmkieA/gN+szoAmeoQ320dixQrQhFU7PVqiYrA+WdA4m4i/SXb3Y3N6HzNW6svAc+7jeP4w==", - "requires": { - "axios": "0.17.1", - "bluebird": "3.5.1", - "github-api": "3.0.0", - "gittoken-web-workers": "0.0.71" - } - } - } - }, "gittoken-contracts": { "version": "0.0.59", "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.59.tgz", @@ -4597,907 +3937,23 @@ } } }, - "gittoken-landing-page": { - "version": "0.0.19", - "resolved": "https://registry.npmjs.org/gittoken-landing-page/-/gittoken-landing-page-0.0.19.tgz", - "integrity": "sha512-aS8r0u/r6rJxRcdQxtNSr4mNaU7+bQI2AcRsAFDCPAYN1fYbjVmlH9eycJc1Q3Y+2M55nAp+K7ezHN7E/EnNSA==", - "requires": { - "axios": "0.17.1", - "countdown": "2.6.0", - "gittoken-react-components": "0.0.15", - "gittoken-reducers": "0.0.28", - "gittoken-svg-icons": "0.0.8", - "hls.js": "0.8.9", - "react": "15.6.2", - "react-bootstrap": "0.31.5", - "react-dom": "15.6.2", - "react-highlight": "0.10.0", - "react-icons": "2.2.7", - "react-redux": "5.0.6", - "react-router": "4.2.0", - "react-router-bootstrap": "0.24.4", - "react-router-dom": "4.2.2", - "react-router-redux": "5.0.0-alpha.9", - "redux": "3.7.2", - "redux-thunk": "2.2.0" - }, - "dependencies": { - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "requires": { - "follow-redirects": "1.3.0", - "is-buffer": "1.1.6" - } - }, - "follow-redirects": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", - "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", - "requires": { - "debug": "3.1.0" - } - }, - "gittoken-contracts": { - "version": "0.0.46", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.46.tgz", - "integrity": "sha1-03Ei7BJJV2v7iCVRmxgqOzigRrc=", - "requires": { - "bluebird": "3.5.1", - "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.19", - "truffle": "3.4.11", - "web3": "0.19.1" - }, - "dependencies": { - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, - "gittoken-react-components": { - "version": "0.0.15", - "resolved": "https://registry.npmjs.org/gittoken-react-components/-/gittoken-react-components-0.0.15.tgz", - "integrity": "sha512-L9Fj+fsB+5ns3e8WJpTPIeECQOF3qoo74qCwq/mPFbhoUjQ6FFB5ZBHxID2PKNN1HpZAD7Ti30NLj6nzLUgLoA==", - "requires": { - "babel-loader": "7.1.2", - "babel-polyfill": "6.26.0", - "ethereumjs-tx": "1.3.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.46", - "gittoken-reducers": "0.0.28", - "gittoken-registry-ui": "0.0.13", - "gittoken-svg-icons": "0.0.9", - "gittoken-web-workers": "0.0.60", - "history": "4.7.2", - "hls.js": "0.8.9", - "react": "16.2.0", - "react-bootstrap": "0.31.5", - "react-dom": "16.2.0", - "react-draggable": "3.0.4", - "react-hls": "0.0.7", - "react-icons": "2.2.7", - "react-redux": "5.0.6", - "react-router-dom": "4.2.2", - "react-router-redux": "4.0.8", - "redux": "3.7.2", - "redux-thunk": "2.2.0", - "victory": "0.24.3", - "video.js": "6.6.0", - "videojs-contrib-hls": "5.12.2", - "videojs-hlsjs": "1.4.8", - "web3": "0.20.3" - }, - "dependencies": { - "gittoken-svg-icons": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.9.tgz", - "integrity": "sha512-dOIn5aU8nmH2gIAmRQ65x2swk8xVqNrKiBj3WBZ3B7bXxUtfjWJuGFKAA9aJKt1SCJscGCNyACm8UXktaDzJmw==", - "requires": { - "react": "16.2.0", - "react-dom": "16.2.0" - } - }, - "gittoken-web-workers": { - "version": "0.0.60", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.60.tgz", - "integrity": "sha512-T4ArP/TdX481umkp4Aue7HfsY8XQHaAj9XW1sIb7kg35rksr57zkko5RT4gLiEtR6SEfDpp6r8rNSQerklKQ3w==", - "requires": { - "axios": "0.17.1", - "babel-plugin-transform-react-constant-elements": "6.23.0", - "bluebird": "3.5.1", - "browser-request": "0.3.3", - "eth-lightwallet": "2.5.6", - "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.56", - "level-js": "2.2.4", - "levelup": "2.0.1", - "pouchdb": "6.4.1" - }, - "dependencies": { - "gittoken-contracts": { - "version": "0.0.56", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", - "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", - "requires": { - "bluebird": "3.5.1", - "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.19", - "truffle": "3.4.11", - "web3": "0.19.1" - } - }, - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, - "react": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.2.0.tgz", - "integrity": "sha512-ZmIomM7EE1DvPEnSFAHZn9Vs9zJl5A9H7el0EGTE6ZbW9FKe/14IYAlPbC8iH25YarEQxZL+E8VW7Mi7kfQrDQ==", - "requires": { - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - }, - "react-dom": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.2.0.tgz", - "integrity": "sha512-zpGAdwHVn9K0091d+hr+R0qrjoJ84cIBFL2uU60KvWBPfZ7LPSrfqviTxGHWN0sjPZb2hxWzMexwrvJdKePvjg==", - "requires": { - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - }, - "react-router-redux": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-4.0.8.tgz", - "integrity": "sha1-InQDWWtRUeGCN32rg1tdRfD4BU4=" - } - } - }, - "gittoken-reducers": { - "version": "0.0.28", - "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.28.tgz", - "integrity": "sha512-R5HY35f6MMMRtmC/xGKgSHWCQaybZHrVNkBhTtBCvuA5LlcqVSydeozJqPOfu3jxAwK6FCD0HA3JitxTg0LZzQ==", - "requires": { - "gittoken-redux-actions": "0.0.16" - } - }, - "gittoken-redux-actions": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.16.tgz", - "integrity": "sha512-V/e6FYG6GFzapCGBXkYB7eiRR0F2zdAa+dEaZtoIcUm1W6VsBXB5MocpfhIHvuZyMzeK6FNlobEhjwLRBNi6vw==", - "requires": { - "bluebird": "3.5.1", - "github-api": "3.0.0", - "gittoken-web-workers": "0.0.70" - }, - "dependencies": { - "gittoken-contracts": { - "version": "0.0.56", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", - "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", - "requires": { - "bluebird": "3.5.1", - "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.19", - "truffle": "3.4.11", - "web3": "0.19.1" - } - }, - "gittoken-web-workers": { - "version": "0.0.70", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.70.tgz", - "integrity": "sha512-er5UwfDErd7VrHfl1nCgYV9od9xMhIkm1jqiwiVjiaX+BPJ3Acu1Ad7zl1lse4K/KTuve/6IEQjs7slqNKDviA==", - "requires": { - "axios": "0.17.1", - "babel-plugin-transform-react-constant-elements": "6.23.0", - "bluebird": "3.5.1", - "browser-request": "0.3.3", - "eth-lightwallet": "2.5.6", - "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.56", - "level-js": "2.2.4", - "levelup": "2.0.1", - "pouchdb": "6.4.1" - } - }, - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, - "gittoken-svg-icons": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.8.tgz", - "integrity": "sha512-+gqOhmDcmeuhSFu5Y1wGDoeO+pOzcNLuFzEsozaU9hIxrSGInGJUPOePZzRR0MIKu/bC5BhyIN2oHNAB6NhJSA==", - "requires": { - "react": "16.2.0", - "react-dom": "16.2.0" - }, - "dependencies": { - "react": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.2.0.tgz", - "integrity": "sha512-ZmIomM7EE1DvPEnSFAHZn9Vs9zJl5A9H7el0EGTE6ZbW9FKe/14IYAlPbC8iH25YarEQxZL+E8VW7Mi7kfQrDQ==", - "requires": { - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - }, - "react-dom": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.2.0.tgz", - "integrity": "sha512-zpGAdwHVn9K0091d+hr+R0qrjoJ84cIBFL2uU60KvWBPfZ7LPSrfqviTxGHWN0sjPZb2hxWzMexwrvJdKePvjg==", - "requires": { - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - } - } - }, - "react": { - "version": "15.6.2", - "resolved": "https://registry.npmjs.org/react/-/react-15.6.2.tgz", - "integrity": "sha1-26BDSrQ5z+gvEI8PURZjkIF5qnI=", - "requires": { - "create-react-class": "15.6.2", - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - }, - "react-bootstrap": { - "version": "0.31.5", - "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.5.tgz", - "integrity": "sha512-xgDihgX4QvYHmHzL87faDBMDnGfYyqcrqV0TEbWY+JizePOG1vfb8M3xJN+6MJ3kUYqDtQSZ7v/Q6Y5YDrkMdA==", - "requires": { - "babel-runtime": "6.26.0", - "classnames": "2.2.5", - "dom-helpers": "3.3.1", - "invariant": "2.2.2", - "keycode": "2.1.9", - "prop-types": "15.6.0", - "prop-types-extra": "1.0.1", - "react-overlays": "0.7.4", - "uncontrollable": "4.1.0", - "warning": "3.0.0" - } - }, - "react-dom": { - "version": "15.6.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-15.6.2.tgz", - "integrity": "sha1-Qc+t9pO3V/rycIRDodH9WgK+9zA=", - "requires": { - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - }, - "react-overlays": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz", - "integrity": "sha512-7vsooMx3siLAuEfTs8FYeP/lAORWWFXTO8PON3KgX0Htq1Oa+po6ioSjGyO0/GO5CVSMNhpWt6V2opeexHgBuQ==", - "requires": { - "classnames": "2.2.5", - "dom-helpers": "3.3.1", - "prop-types": "15.6.0", - "prop-types-extra": "1.0.1", - "warning": "3.0.0" - } - }, - "react-router-redux": { - "version": "5.0.0-alpha.9", - "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-5.0.0-alpha.9.tgz", - "integrity": "sha512-euSgNIANnRXr4GydIuwA7RZCefrLQzIw5WdXspS8NPYbV+FxrKSS9MKG7U9vb6vsKHONnA4VxrVNWfnMUnUQAw==", - "requires": { - "history": "4.7.2", - "prop-types": "15.6.0", - "react-router": "4.2.0" - } - } + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } }, - "gittoken-react-components": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/gittoken-react-components/-/gittoken-react-components-0.0.16.tgz", - "integrity": "sha512-wPh8dRa9WlNG9u6W64ic8ewT4SQd0p7g7zkS+fNWORwopk28hUaRLgOC4+j+uyPRU+HgfJMUeYtCqhI6p25FZw==", - "requires": { - "babel-loader": "7.1.2", - "babel-polyfill": "6.26.0", - "ethereumjs-tx": "1.3.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.46", - "gittoken-reducers": "0.0.53", - "gittoken-registry-ui": "0.0.13", - "gittoken-svg-icons": "0.0.9", - "gittoken-web-workers": "0.0.60", - "history": "4.7.2", - "hls.js": "0.8.9", - "metamask-logo": "2.1.3", - "react": "16.2.0", - "react-bootstrap": "0.31.5", - "react-dom": "16.2.0", - "react-draggable": "3.0.4", - "react-hls": "0.0.7", - "react-icons": "2.2.7", - "react-redux": "5.0.6", - "react-router-dom": "4.2.2", - "react-router-redux": "4.0.8", - "redux": "3.7.2", - "redux-thunk": "2.2.0", - "victory": "0.24.3", - "video.js": "6.6.0", - "videojs-contrib-hls": "5.12.2", - "videojs-hlsjs": "1.4.8", - "web3": "0.20.3" - }, - "dependencies": { - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "requires": { - "follow-redirects": "1.3.0", - "is-buffer": "1.1.6" - } - }, - "follow-redirects": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", - "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", - "requires": { - "debug": "3.1.0" - } - }, - "gittoken-contracts": { - "version": "0.0.46", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.46.tgz", - "integrity": "sha1-03Ei7BJJV2v7iCVRmxgqOzigRrc=", - "requires": { - "bluebird": "3.5.1", - "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.19", - "truffle": "3.4.11", - "web3": "0.19.1" - }, - "dependencies": { - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, - "gittoken-reducers": { - "version": "0.0.53", - "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.53.tgz", - "integrity": "sha512-aM6lSbOaCRIq3r8Go3XR62cASAztVxA8OHbt7YkuErb2b4XcSMlhGRadLbZsEiSF5UCrzGJ5l+ByoUStx2iw1A==", - "requires": { - "gittoken-redux-actions": "0.0.38" - } - }, - "gittoken-web-workers": { - "version": "0.0.60", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.60.tgz", - "integrity": "sha512-T4ArP/TdX481umkp4Aue7HfsY8XQHaAj9XW1sIb7kg35rksr57zkko5RT4gLiEtR6SEfDpp6r8rNSQerklKQ3w==", - "requires": { - "axios": "0.17.1", - "babel-plugin-transform-react-constant-elements": "6.23.0", - "bluebird": "3.5.1", - "browser-request": "0.3.3", - "eth-lightwallet": "2.5.6", - "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.56", - "level-js": "2.2.4", - "levelup": "2.0.1", - "pouchdb": "6.4.1" - }, - "dependencies": { - "gittoken-contracts": { - "version": "0.0.56", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", - "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", - "requires": { - "bluebird": "3.5.1", - "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.19", - "truffle": "3.4.11", - "web3": "0.19.1" - } - }, - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, - "react-bootstrap": { - "version": "0.31.5", - "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.5.tgz", - "integrity": "sha512-xgDihgX4QvYHmHzL87faDBMDnGfYyqcrqV0TEbWY+JizePOG1vfb8M3xJN+6MJ3kUYqDtQSZ7v/Q6Y5YDrkMdA==", - "requires": { - "babel-runtime": "6.26.0", - "classnames": "2.2.5", - "dom-helpers": "3.3.1", - "invariant": "2.2.2", - "keycode": "2.1.9", - "prop-types": "15.6.0", - "prop-types-extra": "1.0.1", - "react-overlays": "0.7.4", - "uncontrollable": "4.1.0", - "warning": "3.0.0" - } - }, - "react-overlays": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz", - "integrity": "sha512-7vsooMx3siLAuEfTs8FYeP/lAORWWFXTO8PON3KgX0Htq1Oa+po6ioSjGyO0/GO5CVSMNhpWt6V2opeexHgBuQ==", - "requires": { - "classnames": "2.2.5", - "dom-helpers": "3.3.1", - "prop-types": "15.6.0", - "prop-types-extra": "1.0.1", - "warning": "3.0.0" - } - } - } - }, - "gittoken-reducers": { - "version": "0.0.59", - "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.59.tgz", - "integrity": "sha512-8+sJqOZJIuW7Cw5ZDeitaLW4282DZ2Yn26SMcVIBqYwPXM3RHZhw2tTDxynEHIbDYjPERyIHlJm4vL/2iLyvaw==", - "requires": { - "gittoken-redux-actions": "0.0.42" - }, - "dependencies": { - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "requires": { - "follow-redirects": "1.3.0", - "is-buffer": "1.1.6" - } - }, - "follow-redirects": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", - "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", - "requires": { - "debug": "3.1.0" - } - }, - "gittoken-contracts": { - "version": "0.0.56", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", - "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", - "requires": { - "bluebird": "3.5.1", - "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.19", - "truffle": "3.4.11", - "web3": "0.19.1" - } - }, - "gittoken-redux-actions": { - "version": "0.0.42", - "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.42.tgz", - "integrity": "sha512-PRvC/sLx2Tr72k6KTV0tYb0eHJ6KOp8Qg8ivI+M12EhmjESBGCfu2ivUEnHCvopTlied2u3H4bmIWZCYdtJHow==", - "requires": { - "axios": "0.17.1", - "bluebird": "3.5.1", - "github-api": "3.0.0", - "gittoken-web-workers": "0.0.72" - } - }, - "gittoken-web-workers": { - "version": "0.0.72", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.72.tgz", - "integrity": "sha512-yn78jOfZfU0eW+D9/W+Q3BbNvzgiwoCGTFKHR07pirFowTGv0A1cQax2ehibFO4BvKRevdApiMEPMF2JQp+26g==", - "requires": { - "axios": "0.17.1", - "babel-plugin-transform-react-constant-elements": "6.23.0", - "bluebird": "3.5.1", - "browser-request": "0.3.3", - "eth-lightwallet": "2.5.6", - "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.56", - "level-js": "2.2.4", - "levelup": "2.0.1", - "pouchdb": "6.4.1" - } - }, - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, - "gittoken-redux-actions": { - "version": "0.0.38", - "resolved": "https://registry.npmjs.org/gittoken-redux-actions/-/gittoken-redux-actions-0.0.38.tgz", - "integrity": "sha512-bvE2xrf2Nu4XWQimMy5dtv8no94zdNndvUpl/odiY7CI5u/HO+5G4DYE9Qj1mZV7BUy6+QwDEE0nnoKInDNeiA==", - "requires": { - "axios": "0.17.1", - "bluebird": "3.5.1", - "github-api": "3.0.0", - "gittoken-web-workers": "0.0.71" - }, - "dependencies": { - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "requires": { - "follow-redirects": "1.3.0", - "is-buffer": "1.1.6" - } - }, - "follow-redirects": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", - "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", - "requires": { - "debug": "3.1.0" - } - }, - "gittoken-contracts": { - "version": "0.0.56", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", - "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", - "requires": { - "bluebird": "3.5.1", - "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.19", - "truffle": "3.4.11", - "web3": "0.19.1" - } - }, - "gittoken-web-workers": { - "version": "0.0.71", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.71.tgz", - "integrity": "sha512-ehFSssZVyOGgzFrUUDXqxdh+7tYeyFbHsMkBkqO9BoZ4jnqkVsfwZqk+cg8j0EbEtphxWGpmeDDSFS4DnqlhIw==", - "requires": { - "axios": "0.17.1", - "babel-plugin-transform-react-constant-elements": "6.23.0", - "bluebird": "3.5.1", - "browser-request": "0.3.3", - "eth-lightwallet": "2.5.6", - "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.56", - "level-js": "2.2.4", - "levelup": "2.0.1", - "pouchdb": "6.4.1" - } - }, - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, - "gittoken-registry-ui": { - "version": "0.0.13", - "resolved": "https://registry.npmjs.org/gittoken-registry-ui/-/gittoken-registry-ui-0.0.13.tgz", - "integrity": "sha512-R7iPUSmcWZt1YFTyIlNjkxfsznoPouzcBKmDxhJEOArXg2ZI/qjrwjJOGBt5HjBcGKjp/O0qgw0nMIfuHp0hYw==", - "requires": { - "axios": "0.17.1", - "babel-loader": "7.1.2", - "babel-polyfill": "6.26.0", - "ethereumjs-tx": "1.3.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.48", - "gittoken-reducers": "0.0.3", - "gittoken-svg-icons": "0.0.8", - "gittoken-web-workers": "0.0.13", - "history": "4.7.2", - "react": "16.2.0", - "react-bootstrap": "0.31.5", - "react-dom": "16.2.0", - "react-redux": "5.0.6", - "react-router-dom": "4.2.2", - "react-router-redux": "4.0.8", - "redux": "3.7.2", - "redux-thunk": "2.2.0", - "victory": "0.24.3", - "web3": "1.0.0-beta.27", - "webpack": "3.10.0", - "webpack-dev-server": "2.10.0" - }, - "dependencies": { - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "requires": { - "follow-redirects": "1.3.0", - "is-buffer": "1.1.6" - } - }, - "follow-redirects": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", - "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", - "requires": { - "debug": "3.1.0" - } - }, - "gittoken-contracts": { - "version": "0.0.48", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.48.tgz", - "integrity": "sha512-1bK4oxp30YOac8xU01x2wgQbb47fULHMwfZz4alMW8WC53RDb9dGt43wEvdHG8EbO987RyFmrQ+59hqyM9OWrw==", - "requires": { - "bluebird": "3.5.1", - "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.19", - "truffle": "3.4.11", - "web3": "0.19.1" - }, - "dependencies": { - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, - "gittoken-reducers": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/gittoken-reducers/-/gittoken-reducers-0.0.3.tgz", - "integrity": "sha512-tKDrz8/rJRXoFSCYVCa1suLfBaBLbs1LR4eov2SpSBrz/Nu+y6EbBXJKRjpbPPt7dpn7OvU14nPF2amN9HWzHA==" - }, - "gittoken-svg-icons": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.8.tgz", - "integrity": "sha512-+gqOhmDcmeuhSFu5Y1wGDoeO+pOzcNLuFzEsozaU9hIxrSGInGJUPOePZzRR0MIKu/bC5BhyIN2oHNAB6NhJSA==", - "requires": { - "react": "16.2.0", - "react-dom": "16.2.0" - } - }, - "gittoken-web-workers": { - "version": "0.0.13", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.13.tgz", - "integrity": "sha512-nPj6hrw10vWjctcus1xMEs/rDelPbHnsC2rPlqlE3uDPFy5D8iX+MLncBWlPsq7ZqCFV6njYUkfo52o6vP/ZdA==", - "requires": { - "bluebird": "3.5.1", - "browser-request": "0.3.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.48" - } - }, - "react-bootstrap": { - "version": "0.31.5", - "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.5.tgz", - "integrity": "sha512-xgDihgX4QvYHmHzL87faDBMDnGfYyqcrqV0TEbWY+JizePOG1vfb8M3xJN+6MJ3kUYqDtQSZ7v/Q6Y5YDrkMdA==", - "requires": { - "babel-runtime": "6.26.0", - "classnames": "2.2.5", - "dom-helpers": "3.3.1", - "invariant": "2.2.2", - "keycode": "2.1.9", - "prop-types": "15.6.0", - "prop-types-extra": "1.0.1", - "react-overlays": "0.7.4", - "uncontrollable": "4.1.0", - "warning": "3.0.0" - } - }, - "react-overlays": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz", - "integrity": "sha512-7vsooMx3siLAuEfTs8FYeP/lAORWWFXTO8PON3KgX0Htq1Oa+po6ioSjGyO0/GO5CVSMNhpWt6V2opeexHgBuQ==", - "requires": { - "classnames": "2.2.5", - "dom-helpers": "3.3.1", - "prop-types": "15.6.0", - "prop-types-extra": "1.0.1", - "warning": "3.0.0" - } - }, - "web3": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3/-/web3-1.0.0-beta.27.tgz", - "integrity": "sha1-2afJVr7JgbC6knvbkd0PEnXrNHk=", - "requires": { - "web3-bzz": "1.0.0-beta.27", - "web3-core": "1.0.0-beta.27", - "web3-eth": "1.0.0-beta.27", - "web3-eth-personal": "1.0.0-beta.27", - "web3-net": "1.0.0-beta.27", - "web3-shh": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - } - } - } - }, - "gittoken-svg-icons": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/gittoken-svg-icons/-/gittoken-svg-icons-0.0.9.tgz", - "integrity": "sha512-dOIn5aU8nmH2gIAmRQ65x2swk8xVqNrKiBj3WBZ3B7bXxUtfjWJuGFKAA9aJKt1SCJscGCNyACm8UXktaDzJmw==", - "requires": { - "react": "16.2.0", - "react-dom": "16.2.0" - } - }, - "gittoken-web-workers": { - "version": "0.0.71", - "resolved": "https://registry.npmjs.org/gittoken-web-workers/-/gittoken-web-workers-0.0.71.tgz", - "integrity": "sha512-ehFSssZVyOGgzFrUUDXqxdh+7tYeyFbHsMkBkqO9BoZ4jnqkVsfwZqk+cg8j0EbEtphxWGpmeDDSFS4DnqlhIw==", - "requires": { - "axios": "0.17.1", - "babel-plugin-transform-react-constant-elements": "6.23.0", - "bluebird": "3.5.1", - "browser-request": "0.3.3", - "eth-lightwallet": "2.5.6", - "ethereumjs-tx": "1.3.3", - "ethereumjs-util": "5.1.3", - "github-api": "3.0.0", - "gittoken-contracts": "0.0.56", - "level-js": "2.2.4", - "levelup": "2.0.1", - "pouchdb": "6.4.1" - }, - "dependencies": { - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "requires": { - "follow-redirects": "1.3.0", - "is-buffer": "1.1.6" - } - }, - "follow-redirects": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.3.0.tgz", - "integrity": "sha1-9oSHH8EW0uMp/aVe9naH9Pq8kFw=", - "requires": { - "debug": "3.1.0" - } - }, - "gittoken-contracts": { - "version": "0.0.56", - "resolved": "https://registry.npmjs.org/gittoken-contracts/-/gittoken-contracts-0.0.56.tgz", - "integrity": "sha512-TnyGyWytlbn3XEyDWT+wY4oARpqNbN+gQ5bfI1auRy5E9S2YWcfQN0zMiYOmO/XjGDPuGrZ6l2y5AbSQXzgCBg==", - "requires": { - "bluebird": "3.5.1", - "ethereumjs-testrpc": "4.1.3", - "solc": "0.4.19", - "truffle": "3.4.11", - "web3": "0.19.1" - } - }, - "web3": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/web3/-/web3-0.19.1.tgz", - "integrity": "sha1-52PVsRB8S8JKvU+MvuG6Nlnm6zE=", - "requires": { - "bignumber.js": "4.1.0", - "crypto-js": "3.1.8", - "utf8": "2.1.2", - "xhr2": "0.1.4", - "xmlhttprequest": "1.8.0" - } - } - } - }, - "gl-mat4": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/gl-mat4/-/gl-mat4-1.1.4.tgz", - "integrity": "sha1-HolbVYkuVqiWhnq9g30483oXgIY=" - }, - "gl-vec3": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/gl-vec3/-/gl-vec3-1.0.3.tgz", - "integrity": "sha1-EQ/Yl9Byn2OYMHOBVn0JRJQb8is=" - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", "requires": { "glob-parent": "2.0.0", "is-glob": "2.0.1" @@ -5511,22 +3967,6 @@ "is-glob": "2.0.1" } }, - "global": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz", - "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", - "requires": { - "min-document": "2.19.0", - "process": "0.5.2" - }, - "dependencies": { - "process": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", - "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=" - } - } - }, "globals": { "version": "9.18.0", "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", @@ -5537,6 +3977,7 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, "requires": { "array-union": "1.0.2", "glob": "7.1.2", @@ -5548,31 +3989,11 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true } } }, - "got": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", - "requires": { - "decompress-response": "3.3.0", - "duplexer3": "0.1.4", - "get-stream": "3.0.0", - "is-plain-obj": "1.1.0", - "is-retry-allowed": "1.1.0", - "is-stream": "1.1.0", - "isurl": "1.0.0", - "lowercase-keys": "1.0.0", - "p-cancelable": "0.3.0", - "p-timeout": "1.2.1", - "safe-buffer": "5.1.1", - "timed-out": "4.0.1", - "url-parse-lax": "1.0.0", - "url-to-options": "1.0.1" - } - }, "graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", @@ -5599,37 +4020,14 @@ "handle-thing": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz", - "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" - }, - "har-schema": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", - "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=" - }, - "har-validator": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", - "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", - "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" - }, - "dependencies": { - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - } - } + "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=", + "dev": true }, "has": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", + "dev": true, "requires": { "function-bind": "1.1.1" } @@ -5648,29 +4046,6 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=" }, - "has-own-property-x": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/has-own-property-x/-/has-own-property-x-3.2.0.tgz", - "integrity": "sha512-HtRQTYpRFz/YVaQ7jh2mU5iorMAxFcML9FNOLMI1f8VNJ2K0hpOlXoi1a+nmVl6oUcGnhd6zYOFAVe7NUFStyQ==", - "requires": { - "cached-constructors-x": "1.0.0", - "to-object-x": "1.5.0", - "to-property-key-x": "2.0.2" - } - }, - "has-symbol-support-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz", - "integrity": "sha512-JkaetveU7hFbqnAC1EV1sF4rlojU2D4Usc5CmS69l6NfmPDnpnFUegzFg33eDkkpNCxZ0mQp65HwUDrNFS/8MA==" - }, - "has-to-string-tag-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", - "requires": { - "has-symbol-support-x": "1.4.1" - } - }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -5680,6 +4055,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, "requires": { "get-value": "2.0.6", "has-values": "1.0.0", @@ -5689,7 +4065,8 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -5697,6 +4074,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, "requires": { "is-number": "3.0.0", "kind-of": "4.0.0" @@ -5706,6 +4084,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -5714,6 +4093,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -5724,6 +4104,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -5747,27 +4128,11 @@ "minimalistic-assert": "1.0.0" } }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" - } - }, "he": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=" }, - "highlight.js": { - "version": "9.12.0", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.12.0.tgz", - "integrity": "sha1-5tnb5Xy+/mB1HwKvM2GVhwyQwB4=" - }, "history": { "version": "4.7.2", "resolved": "https://registry.npmjs.org/history/-/history-4.7.2.tgz", @@ -5780,14 +4145,6 @@ "warning": "3.0.0" } }, - "hls.js": { - "version": "0.8.9", - "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-0.8.9.tgz", - "integrity": "sha1-2zZ8yZzlsJduo+BZodBE17B5Bpc=", - "requires": { - "url-toolkit": "2.1.2" - } - }, "hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", @@ -5798,11 +4155,6 @@ "minimalistic-crypto-utils": "1.0.1" } }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" - }, "hoist-non-react-statics": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.3.1.tgz", @@ -5827,6 +4179,7 @@ "version": "2.1.6", "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, "requires": { "inherits": "2.0.3", "obuf": "1.1.1", @@ -5837,12 +4190,14 @@ "html-entities": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=" + "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "dev": true }, "http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true }, "http-errors": { "version": "1.6.2", @@ -5855,11 +4210,6 @@ "statuses": "1.4.0" } }, - "http-https": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", - "integrity": "sha1-L5CN1fHbQGjAWM1ubUzjkskTOJs=" - }, "http-parser-js": { "version": "0.4.9", "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.9.tgz", @@ -5869,6 +4219,7 @@ "version": "1.16.2", "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.16.2.tgz", "integrity": "sha1-Bt/ykpUr9k2+hHH6nfcwZtTzd0I=", + "dev": true, "requires": { "eventemitter3": "1.1.1", "requires-port": "1.0.0" @@ -5878,6 +4229,7 @@ "version": "0.17.4", "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz", "integrity": "sha1-ZC6ISIUdZvCdTxJJEoRtuutBuDM=", + "dev": true, "requires": { "http-proxy": "1.16.2", "is-glob": "3.1.0", @@ -5888,28 +4240,20 @@ "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true }, "is-glob": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, "requires": { "is-extglob": "2.1.1" } } } }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.1", - "sshpk": "1.13.1" - } - }, "https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", @@ -5920,25 +4264,16 @@ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" }, - "idb-wrapper": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/idb-wrapper/-/idb-wrapper-1.7.2.tgz", - "integrity": "sha512-zfNREywMuf0NzDo9mVsL0yegjsirJxHpKHvWcyRozIqQy89g0a3U+oBPOCN4cc0oCiOuYgZHimzaW/R46G1Mpg==" - }, "ieee754": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=" }, - "immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=" - }, "import-local": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz", "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==", + "dev": true, "requires": { "pkg-dir": "2.0.0", "resolve-cwd": "2.0.0" @@ -5948,6 +4283,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, "requires": { "repeating": "2.0.1" } @@ -5957,16 +4293,6 @@ "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" }, - "individual": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/individual/-/individual-2.0.0.tgz", - "integrity": "sha1-gzsJfa0jKU52EXqY+zjg2a1hu5c=" - }, - "infinity-x": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/infinity-x/-/infinity-x-1.0.0.tgz", - "integrity": "sha512-wjy2TupBtZ+aAniKt+xs/PO0xOkuaL6wBysUKbgD7aL1PMW/qY5xXDG59zXZ7dU+gk3zwXOu4yIEWPCEFBTgHQ==" - }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -5990,6 +4316,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-1.2.0.tgz", "integrity": "sha1-rp+/k7mEh4eF1QqN4bNWlWBYz1w=", + "dev": true, "requires": { "meow": "3.7.0" } @@ -6015,7 +4342,8 @@ "ip": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true }, "ipaddr.js": { "version": "1.5.2", @@ -6026,6 +4354,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, "requires": { "kind-of": "6.0.2" }, @@ -6033,22 +4362,11 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true } } }, - "is-array-buffer-x": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/is-array-buffer-x/-/is-array-buffer-x-1.7.0.tgz", - "integrity": "sha512-ufSZRMY2WZX5xyNvk0NOZAG7cgi35B/sGQDGqv8w0X7MoQ2GC9vedanJhuYTPaC4PUCqLQsda1w7NF+dPZmAJw==", - "requires": { - "attempt-x": "1.1.1", - "has-to-string-tag-x": "1.4.1", - "is-object-like-x": "1.6.0", - "object-get-own-property-descriptor-x": "3.2.0", - "to-string-tag-x": "1.4.2" - } - }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -6078,12 +4396,14 @@ "is-callable": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", - "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=" + "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=", + "dev": true }, "is-data-descriptor": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, "requires": { "kind-of": "6.0.2" }, @@ -6091,19 +4411,22 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true } } }, "is-date-object": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=" + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true }, "is-descriptor": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, "requires": { "is-accessor-descriptor": "1.0.0", "is-data-descriptor": "1.0.0", @@ -6113,7 +4436,8 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true } } }, @@ -6140,31 +4464,15 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" }, - "is-falsey-x": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-falsey-x/-/is-falsey-x-1.0.1.tgz", - "integrity": "sha512-XWNZC4A+3FX1ECoMjspuEFgSdio82IWjqY/suE0gZ10QA7nzHd/KraRq7Tc5VEHtFRgTRyTdY6W+ykPrDnyoAQ==", - "requires": { - "to-boolean-x": "1.0.1" - } - }, "is-finite": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, "requires": { "number-is-nan": "1.0.1" } }, - "is-finite-x": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-finite-x/-/is-finite-x-3.0.2.tgz", - "integrity": "sha512-HyFrxJZsgmP5RtR1PVlVvHSP4VslZOqr4uoq4x3rDrSOFaYp4R9tfmiWtAzQxPzixXhac3cYEno3NuVn0OHk2Q==", - "requires": { - "infinity-x": "1.0.0", - "is-nan-x": "1.0.1" - } - }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", @@ -6173,26 +4481,6 @@ "number-is-nan": "1.0.1" } }, - "is-function": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.1.tgz", - "integrity": "sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU=" - }, - "is-function-x": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/is-function-x/-/is-function-x-3.3.0.tgz", - "integrity": "sha512-SreSSU1dlgYaXR5c0mm4qJHKYHIiGiEY+7Cd8/aRLLoMP/VvofD2XcWgBnP833ajpU5XzXbUSpfysnfKZLJFlg==", - "requires": { - "attempt-x": "1.1.1", - "has-to-string-tag-x": "1.4.1", - "is-falsey-x": "1.0.1", - "is-primitive": "2.0.0", - "normalize-space-x": "3.0.0", - "replace-comments-x": "2.0.0", - "to-boolean-x": "1.0.1", - "to-string-tag-x": "1.4.2" - } - }, "is-glob": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", @@ -6206,37 +4494,6 @@ "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=" }, - "is-index-x": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-index-x/-/is-index-x-1.1.0.tgz", - "integrity": "sha512-qULKLMepQLGC8rSVdi8uF2vI4LiDrU9XSDg1D+Aa657GIB7GV1jHpga7uXgQvkt/cpQ5mVBHUFTpSehYSqT6+A==", - "requires": { - "math-clamp-x": "1.2.0", - "max-safe-integer": "1.0.1", - "to-integer-x": "3.0.0", - "to-number-x": "2.0.0", - "to-string-symbols-supported-x": "1.0.0" - } - }, - "is-nan-x": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-nan-x/-/is-nan-x-1.0.1.tgz", - "integrity": "sha512-VfNJgfuT8USqKCYQss8g7sFvCzDnL+OOVMQoXhVoulZAyp0ZTj3oyZaaPrn2dxepAkKSQI2BiKHbBabX1DqVtw==" - }, - "is-natural-number": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", - "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" - }, - "is-nil-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/is-nil-x/-/is-nil-x-1.4.1.tgz", - "integrity": "sha512-cfTKWI5iSR04SSCzzugTH5tS2rYG7kwI8yl/AqWkyuxZ7k55cbA47Y7Lezdg1N9aaELd+UxLg628bdQeNQ6BUw==", - "requires": { - "lodash.isnull": "3.0.0", - "validate.io-undefined": "1.0.3" - } - }, "is-number": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", @@ -6245,24 +4502,11 @@ "kind-of": "3.2.2" } }, - "is-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", - "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=" - }, - "is-object-like-x": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/is-object-like-x/-/is-object-like-x-1.6.0.tgz", - "integrity": "sha512-mc3dBMv1jEOdk0f1i2RkJFsZDux0MuHqGwHOoRo770ShUOf4VE6tWThAW8dAZARr9a5RN+iNX1yzMDA5ad1clQ==", - "requires": { - "is-function-x": "3.3.0", - "is-primitive": "2.0.0" - } - }, "is-odd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-1.0.0.tgz", "integrity": "sha1-O4qTLrAos3dcObsJ6RdnrM22kIg=", + "dev": true, "requires": { "is-number": "3.0.0" }, @@ -6271,6 +4515,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, "requires": { "kind-of": "3.2.2" } @@ -6280,12 +4525,14 @@ "is-path-cwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=" + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true }, "is-path-in-cwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", + "dev": true, "requires": { "is-path-inside": "1.0.1" } @@ -6294,19 +4541,16 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, "requires": { "path-is-inside": "1.0.2" } }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" - }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, "requires": { "isobject": "3.0.1" }, @@ -6314,7 +4558,8 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -6332,29 +4577,21 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, "requires": { "has": "1.0.1" } }, - "is-retry-allowed": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" - }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, - "is-string": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.4.tgz", - "integrity": "sha1-zDqbaYV9Yh6WNyWiTK7shzuCbmQ=" - }, "is-symbol": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", - "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=" + "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", + "dev": true }, "is-typedarray": { "version": "1.0.0", @@ -6369,18 +4606,14 @@ "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, - "isbuffer": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/isbuffer/-/isbuffer-0.0.0.tgz", - "integrity": "sha1-OMFG2d9Si4v5sHAcPUPPEt8/w5s=" - }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -6408,15 +4641,6 @@ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, - "isurl": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", - "requires": { - "has-to-string-tag-x": "1.4.1", - "is-object": "1.0.1" - } - }, "iterall": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.1.3.tgz", @@ -6464,14 +4688,6 @@ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "requires": { - "jsonify": "0.0.0" - } - }, "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", @@ -6495,11 +4711,6 @@ "graceful-fs": "4.1.11" } }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" - }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -6590,7 +4801,8 @@ "killable": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.0.tgz", - "integrity": "sha1-2ouEvUfeU5WHj5XWTQLyRJ/gXms=" + "integrity": "sha1-2ouEvUfeU5WHj5XWTQLyRJ/gXms=", + "dev": true }, "kind-of": { "version": "3.2.2", @@ -6605,133 +4817,20 @@ "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", "requires": { - "graceful-fs": "4.1.11" - } - }, - "lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" - }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "requires": { - "invert-kv": "1.0.0" - } - }, - "level": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/level/-/level-2.1.1.tgz", - "integrity": "sha512-jhsItEs/L5bf5ctKsvIPcMzeh4nwXxnL3Tsxm4E9My07jcFfqEYwKP57Y9AZu7tmtECdyK6bvCqoClwuOBuY9w==", - "requires": { - "level-packager": "2.1.0", - "leveldown": "2.1.1" - } - }, - "level-codec": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", - "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==" - }, - "level-errors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.1.2.tgz", - "integrity": "sha512-Sw/IJwWbPKF5Ai4Wz60B52yj0zYeqzObLh8k1Tk88jVmD51cJSKWSYpRyhVIvFzZdvsPqlH5wfhp/yxdsaQH4w==", - "requires": { - "errno": "0.1.6" - } - }, - "level-iterator-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-2.0.0.tgz", - "integrity": "sha512-TWOYw8HR5mhj6xwoVLo0yu26RPL6v28KgvhK1kY1CJf9LyL+rJXjx99zhORTYhN9ysOBIH+iaxAiqRteA+C1/g==", - "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.3", - "xtend": "4.0.1" - } - }, - "level-js": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/level-js/-/level-js-2.2.4.tgz", - "integrity": "sha1-vAVfQYBjXUSJtWHJSG+jcOjBFpc=", - "requires": { - "abstract-leveldown": "0.12.4", - "idb-wrapper": "1.7.2", - "isbuffer": "0.0.0", - "ltgt": "2.2.0", - "typedarray-to-buffer": "1.0.4", - "xtend": "2.1.2" - }, - "dependencies": { - "xtend": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", - "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", - "requires": { - "object-keys": "0.4.0" - } - } - } - }, - "level-packager": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/level-packager/-/level-packager-2.1.0.tgz", - "integrity": "sha512-I97zvGOZ6fJ9OFfYv+QmgBpDWbC+UaP5ERJ3oraTyk1v+ABAL4tazris5ym5qL2iLe+qNjXNM/iP8LQcoZMEWw==", - "requires": { - "encoding-down": "3.0.1", - "levelup": "2.0.1" - } - }, - "level-write-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/level-write-stream/-/level-write-stream-1.0.0.tgz", - "integrity": "sha1-P3+7Z5pVE3wP6zA97nZuEu4Twdw=", - "requires": { - "end-stream": "0.1.0" - } - }, - "leveldown": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-2.1.1.tgz", - "integrity": "sha512-JNMCTSchq1YtQLMGePmT07UE7hIIYR4GHpZI7+nUXbM9XgNtRAwcBGhnyJyITwpTILTkUcNPBKZ9lZmTUj2E3g==", - "requires": { - "abstract-leveldown": "3.0.0", - "bindings": "1.3.0", - "fast-future": "1.0.2", - "nan": "2.8.0", - "prebuild-install": "2.4.1" - }, - "dependencies": { - "abstract-leveldown": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-3.0.0.tgz", - "integrity": "sha512-KUWx9UWGQD12zsmLNj64/pndaz4iJh/Pj7nopgkfDG6RlCcbMZvT6+9l7dchK4idog2Is8VdC/PvNbFuFmalIQ==", - "requires": { - "xtend": "4.0.1" - } - } - } - }, - "levelup": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-2.0.1.tgz", - "integrity": "sha1-PckbPmMtN8nlRiOchkEYsATJ+GA=", - "requires": { - "deferred-leveldown": "2.0.3", - "level-errors": "1.1.2", - "level-iterator-stream": "2.0.0", - "xtend": "4.0.1" + "graceful-fs": "4.1.11" } }, - "lie": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", - "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", "requires": { - "immediate": "3.0.6" + "invert-kv": "1.0.0" } }, "load-json-file": { @@ -6840,11 +4939,6 @@ "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=" }, - "lodash.isnull": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash.isnull/-/lodash.isnull-3.0.0.tgz", - "integrity": "sha1-+vvlnqHcon7teGU0A53YTC4HxW4=" - }, "lodash.keys": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", @@ -6858,7 +4952,8 @@ "loglevel": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.0.tgz", - "integrity": "sha1-rgyqVhERSYxboTcj1vtjHSQAOTQ=" + "integrity": "sha1-rgyqVhERSYxboTcj1vtjHSQAOTQ=", + "dev": true }, "longest": { "version": "1.0.1", @@ -6877,16 +4972,12 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, "requires": { "currently-unhandled": "0.4.1", "signal-exit": "3.0.2" } }, - "lowercase-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" - }, "lru-cache": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", @@ -6896,20 +4987,11 @@ "yallist": "2.1.2" } }, - "ltgt": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.0.tgz", - "integrity": "sha1-tlul/LNJopkkyOMz98alVi8uSEI=" - }, - "m3u8-parser": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/m3u8-parser/-/m3u8-parser-2.1.0.tgz", - "integrity": "sha1-yBcDKewc1RXQ1Yu4t2LamJbLA2g=" - }, "make-dir": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.1.0.tgz", "integrity": "sha512-0Pkui4wLJ7rxvmfUvs87skoEaxmu0hCUApF8nonzpl7q//FWp9zu8W61Scz4sd/kUiqDxvUhtoam2efDyiBzcA==", + "dev": true, "requires": { "pify": "3.0.0" } @@ -6917,43 +4999,24 @@ "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true }, "map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true }, "map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, "requires": { "object-visit": "1.0.1" } }, - "math-clamp-x": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/math-clamp-x/-/math-clamp-x-1.2.0.tgz", - "integrity": "sha512-tqpjpBcIf9UulApz3EjWXqTZpMlr2vLN9PryC9ghoyCuRmqZaf3JJhPddzgQpJnKLi2QhoFnvKBFtJekAIBSYg==", - "requires": { - "to-number-x": "2.0.0" - } - }, - "math-sign-x": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/math-sign-x/-/math-sign-x-3.0.0.tgz", - "integrity": "sha512-OzPas41Pn4d16KHnaXmGxxY3/l3zK4OIXtmIwdhgZsxz4FDDcNnbrABYPg2vGfxIkaT9ezGnzDviRH7RfF44jQ==", - "requires": { - "is-nan-x": "1.0.1", - "to-number-x": "2.0.0" - } - }, - "max-safe-integer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/max-safe-integer/-/max-safe-integer-1.0.1.tgz", - "integrity": "sha1-84BgvixWPYwC5tSK85Ei/YO29BA=" - }, "md5.js": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", @@ -7005,6 +5068,7 @@ "version": "3.7.0", "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, "requires": { "camelcase-keys": "2.1.0", "decamelize": "1.2.0", @@ -7022,6 +5086,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, "requires": { "path-exists": "2.1.0", "pinkie-promise": "2.0.1" @@ -7031,6 +5096,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, "requires": { "graceful-fs": "4.1.11", "parse-json": "2.2.0", @@ -7042,12 +5108,14 @@ "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true }, "path-exists": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, "requires": { "pinkie-promise": "2.0.1" } @@ -7056,6 +5124,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, "requires": { "graceful-fs": "4.1.11", "pify": "2.3.0", @@ -7065,12 +5134,14 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true }, "read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, "requires": { "load-json-file": "1.1.0", "normalize-package-data": "2.4.0", @@ -7081,6 +5152,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, "requires": { "find-up": "1.1.2", "read-pkg": "1.1.0" @@ -7090,6 +5162,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, "requires": { "is-utf8": "0.2.1" } @@ -7101,15 +5174,6 @@ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, - "metamask-logo": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/metamask-logo/-/metamask-logo-2.1.3.tgz", - "integrity": "sha1-F1zleuUMc0Szsdwy0v0LCOOXj9A=", - "requires": { - "gl-mat4": "1.1.4", - "gl-vec3": "1.0.3" - } - }, "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", @@ -7167,19 +5231,6 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=" }, - "mimic-response": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz", - "integrity": "sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4=" - }, - "min-document": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", - "requires": { - "dom-walk": "0.1.1" - } - }, "minimalistic-assert": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", @@ -7207,6 +5258,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.0.tgz", "integrity": "sha512-dgaCvoh6i1nosAUBKb0l0pfJ78K8+S9fluyIR2YvAeUD/QuMahnFnF3xYty5eYXMjhGSsB0DsW6A0uAZyetoAg==", + "dev": true, "requires": { "for-in": "1.0.2", "is-extendable": "1.0.1" @@ -7216,6 +5268,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, "requires": { "is-plain-object": "2.0.4" } @@ -7230,14 +5283,6 @@ "minimist": "0.0.8" } }, - "mkdirp-promise": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", - "integrity": "sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE=", - "requires": { - "mkdirp": "0.5.1" - } - }, "mocha": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.5.3.tgz", @@ -7293,16 +5338,6 @@ } } }, - "mock-fs": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.4.2.tgz", - "integrity": "sha512-dF+yxZSojSiI8AXGoxj5qdFWpucndc54Ug+TwlpHFaV7j22MGG+OML2+FVa6xAZtjb/OFFQhOC37Jegx2GbEwA==" - }, - "mout": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/mout/-/mout-0.11.1.tgz", - "integrity": "sha1-ujYR318OWx/7/QEWa48C0fX6K5k=" - }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -7312,6 +5347,7 @@ "version": "6.2.1", "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.1.tgz", "integrity": "sha512-uV3/ckdsffHx9IrGQrx613mturMdMqQ06WTq+C09NsStJ9iNG6RcUWgPKs1Rfjy+idZT6tfQoXEusGNnEZhT3w==", + "dev": true, "requires": { "dns-packet": "1.2.2", "thunky": "0.1.0" @@ -7320,12 +5356,8 @@ "multicast-dns-service-types": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" - }, - "mux.js": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/mux.js/-/mux.js-4.3.2.tgz", - "integrity": "sha512-g0q6DPdvb3yYcoK7ElBGobdSSrhY/RjPt19U7uUc733aqvc5bCS/aCvL9z+448y+IoCZnYDwyZfQBBXMSmGOaQ==" + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true }, "mysql": { "version": "2.15.0", @@ -7345,35 +5377,16 @@ } } }, - "mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "requires": { - "any-promise": "1.3.0", - "object-assign": "4.1.1", - "thenify-all": "1.6.0" - } - }, "nan": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" }, - "nan-x": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/nan-x/-/nan-x-1.0.0.tgz", - "integrity": "sha512-yw4Fhe2/UTzanQ4f0yHWkRnfTuHZFAi4GZDjXS4G+qv5BqXTqPJBbSxpa7MyyW9v4Y4ZySZQik1vcbNkhdnIOg==" - }, - "nano-json-stream-parser": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", - "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" - }, "nanomatch": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.7.tgz", "integrity": "sha512-/5ldsnyurvEw7wNpxLFgjVvBLMta43niEYOy0CJ4ntcYSbx6bugRUTQeFb4BR/WanEL1o3aQgHuVLHQaB6tOqg==", + "dev": true, "requires": { "arr-diff": "4.0.0", "array-unique": "0.3.2", @@ -7391,17 +5404,20 @@ "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true }, "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true } } }, @@ -7430,7 +5446,8 @@ "node-forge": { "version": "0.6.33", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.6.33.tgz", - "integrity": "sha1-RjgRh59XPUUVWtap9D3ClujoXrw=" + "integrity": "sha1-RjgRh59XPUUVWtap9D3ClujoXrw=", + "dev": true }, "node-gitter": { "version": "2.1.0", @@ -7516,16 +5533,6 @@ "remove-trailing-separator": "1.1.0" } }, - "normalize-space-x": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-space-x/-/normalize-space-x-3.0.0.tgz", - "integrity": "sha512-tbCJerqZCCHPst4rRKgsTanLf45fjOyeAU5zE3mhDxJtFJKt66q39g2XArWhXelgTFVib8mNBUm6Wrd0LxYcfQ==", - "requires": { - "cached-constructors-x": "1.0.0", - "trim-x": "3.0.0", - "white-space-x": "3.0.0" - } - }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", @@ -7550,22 +5557,6 @@ "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, - "number-to-bn": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", - "integrity": "sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=", - "requires": { - "bn.js": "4.11.6", - "strip-hex-prefix": "1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" - } - } - }, "oauth": { "version": "0.9.15", "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", @@ -7585,6 +5576,7 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, "requires": { "copy-descriptor": "0.1.1", "define-property": "0.2.5", @@ -7595,6 +5587,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "0.1.6" } @@ -7603,6 +5596,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, "requires": { "kind-of": "3.2.2" } @@ -7611,6 +5605,7 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, "requires": { "kind-of": "3.2.2" } @@ -7619,6 +5614,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, "requires": { "is-accessor-descriptor": "0.1.6", "is-data-descriptor": "0.1.4", @@ -7628,43 +5624,18 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true } } } } }, - "object-get-own-property-descriptor-x": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/object-get-own-property-descriptor-x/-/object-get-own-property-descriptor-x-3.2.0.tgz", - "integrity": "sha512-Z/0fIrptD9YuzN+SNK/1kxAEaBcPQM4gSrtOSMSi9eplnL/AbyQcAyAlreAoAzmBon+DQ1Z+AdhxyQSvav5Fyg==", - "requires": { - "attempt-x": "1.1.1", - "has-own-property-x": "3.2.0", - "has-symbol-support-x": "1.4.1", - "is-falsey-x": "1.0.1", - "is-index-x": "1.1.0", - "is-primitive": "2.0.0", - "is-string": "1.0.4", - "property-is-enumerable-x": "1.1.0", - "to-object-x": "1.5.0", - "to-property-key-x": "2.0.2" - } - }, - "object-inspect": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-0.4.0.tgz", - "integrity": "sha1-9RV8EWwUVbJDsG7pdwM5LFrYn+w=" - }, - "object-keys": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", - "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" - }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, "requires": { "isobject": "3.0.1" }, @@ -7672,7 +5643,8 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -7689,6 +5661,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, "requires": { "isobject": "3.0.1" }, @@ -7696,22 +5669,16 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, - "oboe": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.3.tgz", - "integrity": "sha1-K0hl29Rr6BIlcT9Om/5Lz09oCk8=", - "requires": { - "http-https": "1.0.0" - } - }, "obuf": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.1.tgz", - "integrity": "sha1-EEEktsYCxnlogaBCVB0220OlJk4=" + "integrity": "sha1-EEEktsYCxnlogaBCVB0220OlJk4=", + "dev": true }, "on-finished": { "version": "2.3.0", @@ -7738,6 +5705,7 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.1.0.tgz", "integrity": "sha512-iPNl7SyM8L30Rm1sjGdLLheyHVw5YXVfi3SKWJzBI7efxRwHojfRFjwE/OLM6qp9xJYMgab8WicTU1cPoY+Hpg==", + "dev": true, "requires": { "is-wsl": "1.1.0" } @@ -7746,6 +5714,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/original/-/original-1.0.0.tgz", "integrity": "sha1-kUf5P6FpbQS+YeAb1QuurKZWvTs=", + "dev": true, "requires": { "url-parse": "1.0.5" }, @@ -7754,6 +5723,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.0.5.tgz", "integrity": "sha1-CFSGBCKv3P7+tsllxmLUgAFpkns=", + "dev": true, "requires": { "querystringify": "0.0.4", "requires-port": "1.0.0" @@ -7803,11 +5773,6 @@ "object-assign": "4.1.1" } }, - "p-cancelable": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==" - }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", @@ -7832,15 +5797,8 @@ "p-map": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", - "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==" - }, - "p-timeout": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", - "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", - "requires": { - "p-finally": "1.0.0" - } + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", + "dev": true }, "p-try": { "version": "1.0.0", @@ -7875,26 +5833,6 @@ "is-glob": "2.0.1" } }, - "parse-headers": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.1.tgz", - "integrity": "sha1-aug6eqJanZtwCswoaYzR8e1+lTY=", - "requires": { - "for-each": "0.3.2", - "trim": "0.0.1" - } - }, - "parse-int-x": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-int-x/-/parse-int-x-2.0.0.tgz", - "integrity": "sha512-NIMm52gmd1+0qxJK8lV3OZ4zzWpRH1xcz9xCHXl+DNzddwUdS4NEtd7BmTeK7iCIXoaK5e6BoDMHgieH2eNIhg==", - "requires": { - "cached-constructors-x": "1.0.0", - "nan-x": "1.0.0", - "to-string-x": "1.4.2", - "trim-left-x": "3.0.0" - } - }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", @@ -7911,7 +5849,8 @@ "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true }, "passport": { "version": "0.3.2", @@ -7962,7 +5901,8 @@ "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true }, "path-exists": { "version": "3.0.0", @@ -7983,7 +5923,8 @@ "path-is-inside": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true }, "path-key": { "version": "2.0.1", @@ -8027,20 +5968,11 @@ "sha.js": "2.4.9" } }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" - }, - "performance-now": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", - "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=" - }, "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true }, "pinkie": { "version": "2.0.4", @@ -8055,15 +5987,11 @@ "pinkie": "2.0.4" } }, - "pkcs7": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/pkcs7/-/pkcs7-0.2.3.tgz", - "integrity": "sha1-ItYGZtAQZcXyRDkJjkpIMEUic74=" - }, "pkg-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, "requires": { "find-up": "2.1.0" } @@ -8072,6 +6000,7 @@ "version": "1.0.13", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.13.tgz", "integrity": "sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek=", + "dev": true, "requires": { "async": "1.5.2", "debug": "2.6.9", @@ -8081,12 +6010,14 @@ "async": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -8096,103 +6027,8 @@ "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" - }, - "pouchdb": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/pouchdb/-/pouchdb-6.4.1.tgz", - "integrity": "sha512-7YrhsBXbQh/iPA8O5Nzixi9QigaQJjqbbCFr+D7Kc258oeXNW9a0t/tOME1Lh84TJiFRuN9982FGVnrBrUhLiA==", - "requires": { - "argsarray": "0.0.1", - "buffer-from": "0.1.1", - "clone-buffer": "1.0.0", - "debug": "3.0.1", - "double-ended-queue": "2.1.0-0", - "immediate": "3.0.6", - "inherits": "2.0.3", - "level": "2.1.1", - "level-codec": "7.0.1", - "level-write-stream": "1.0.0", - "leveldown": "2.1.1", - "levelup": "2.0.1", - "lie": "3.1.1", - "ltgt": "2.2.0", - "readable-stream": "1.0.33", - "request": "2.80.0", - "spark-md5": "3.0.0", - "through2": "2.0.3", - "uuid": "3.1.0", - "vuvuzela": "1.0.3" - }, - "dependencies": { - "debug": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.0.1.tgz", - "integrity": "sha512-6nVc6S36qbt/mutyt+UGMnawAMrPDZUPQjRZI3FS9tCtDRhvxJbK79unYBLPi+z5SLXQ3ftoVBFCblQtNSls8w==", - "requires": { - "ms": "2.0.0" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "qs": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", - "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=" - }, - "readable-stream": { - "version": "1.0.33", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33.tgz", - "integrity": "sha1-OjYN1mwbHX/UcFOJhg7aHQ9hEmw=", - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "0.0.1", - "string_decoder": "0.10.31" - } - }, - "request": { - "version": "2.80.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.80.0.tgz", - "integrity": "sha1-jMFi1215OBze/dNQXXa4C2BYm9A=", - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.17", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.3.2", - "stringstream": "0.0.5", - "tough-cookie": "2.3.3", - "tunnel-agent": "0.4.3", - "uuid": "3.1.0" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, - "tunnel-agent": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=" - } - } + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true }, "prebuild-install": { "version": "2.4.1", @@ -8222,11 +6058,6 @@ } } }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" - }, "preserve": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", @@ -8274,15 +6105,6 @@ "warning": "3.0.0" } }, - "property-is-enumerable-x": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/property-is-enumerable-x/-/property-is-enumerable-x-1.1.0.tgz", - "integrity": "sha512-22cKy3w3OpRswU6to9iKWDDlg+F9vF2REcwGlGW23jyLjHb1U/jJEWA44sWupOnkhGfDgotU6Lw+N2oyhNi+5A==", - "requires": { - "to-object-x": "1.5.0", - "to-property-key-x": "2.0.2" - } - }, "proxy-addr": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz", @@ -8338,14 +6160,6 @@ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" }, - "query-string": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-2.4.2.tgz", - "integrity": "sha1-fbBmZCCAS6qSrp8miWKFWnYUPfs=", - "requires": { - "strict-uri-encode": "1.1.0" - } - }, "querystring": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", @@ -8359,7 +6173,8 @@ "querystringify": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-0.0.4.tgz", - "integrity": "sha1-DPf4T5Rj/wrlHExLFC2VvjdyTZw=" + "integrity": "sha1-DPf4T5Rj/wrlHExLFC2VvjdyTZw=", + "dev": true }, "random-bytes": { "version": "1.0.0", @@ -8420,11 +6235,6 @@ "safe-buffer": "5.1.1" } }, - "randomhex": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/randomhex/-/randomhex-0.1.5.tgz", - "integrity": "sha1-us7vmCMpCRQA8qKRLGzQLxCU9YU=" - }, "range-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", @@ -8500,91 +6310,6 @@ "prop-types": "15.6.0" } }, - "react-draggable": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-draggable/-/react-draggable-3.0.4.tgz", - "integrity": "sha512-SZwi2WpMzU9A4oZUglm/T4+N4pbAQSBooBSQXeEzR171KhWmgh6333Pq72rbLj8mgpyJmrmjw9I8pfXwLm5uZw==", - "requires": { - "classnames": "2.2.5", - "prop-types": "15.6.0" - } - }, - "react-highlight": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/react-highlight/-/react-highlight-0.10.0.tgz", - "integrity": "sha1-04b53Oq4Z9wNzCNkFT+xzHZF0EY=", - "requires": { - "highlight.js": "9.12.0", - "react": "15.6.2", - "react-dom": "15.6.2" - }, - "dependencies": { - "react": { - "version": "15.6.2", - "resolved": "https://registry.npmjs.org/react/-/react-15.6.2.tgz", - "integrity": "sha1-26BDSrQ5z+gvEI8PURZjkIF5qnI=", - "requires": { - "create-react-class": "15.6.2", - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - }, - "react-dom": { - "version": "15.6.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-15.6.2.tgz", - "integrity": "sha1-Qc+t9pO3V/rycIRDodH9WgK+9zA=", - "requires": { - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - } - } - }, - "react-hls": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/react-hls/-/react-hls-0.0.7.tgz", - "integrity": "sha1-nq6PaU2T2lII/NO7rJ9lqSdIrbA=", - "requires": { - "hls.js": "0.6.21", - "prop-types": "15.6.0", - "react": "15.6.2", - "react-dom": "15.6.2" - }, - "dependencies": { - "hls.js": { - "version": "0.6.21", - "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-0.6.21.tgz", - "integrity": "sha1-nZEAgCmXTEc34IoVGj9PDdQIupM=" - }, - "react": { - "version": "15.6.2", - "resolved": "https://registry.npmjs.org/react/-/react-15.6.2.tgz", - "integrity": "sha1-26BDSrQ5z+gvEI8PURZjkIF5qnI=", - "requires": { - "create-react-class": "15.6.2", - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - }, - "react-dom": { - "version": "15.6.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-15.6.2.tgz", - "integrity": "sha1-Qc+t9pO3V/rycIRDodH9WgK+9zA=", - "requires": { - "fbjs": "0.8.16", - "loose-envify": "1.3.1", - "object-assign": "4.1.1", - "prop-types": "15.6.0" - } - } - } - }, "react-icon-base": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/react-icon-base/-/react-icon-base-2.1.0.tgz", @@ -8661,14 +6386,6 @@ } } }, - "react-router-bootstrap": { - "version": "0.24.4", - "resolved": "https://registry.npmjs.org/react-router-bootstrap/-/react-router-bootstrap-0.24.4.tgz", - "integrity": "sha512-kEwk3ml4wvE3IbJvRVjx0zBBBxW4JLhD0wyy0hBdlWSdfjvgoHVvlxx9gBPxvEs5VwWlbFvNRyUghLZ2AMcmzg==", - "requires": { - "prop-types": "15.6.0" - } - }, "react-router-dom": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.2.2.tgz", @@ -8748,6 +6465,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, "requires": { "indent-string": "2.1.0", "strip-indent": "1.0.1" @@ -8803,6 +6521,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.0.tgz", "integrity": "sha1-Qvg+OXcWIt+CawKvF2Ul1qXxV/k=", + "dev": true, "requires": { "extend-shallow": "2.0.1" } @@ -8860,19 +6579,11 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, "requires": { "is-finite": "1.0.2" } }, - "replace-comments-x": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/replace-comments-x/-/replace-comments-x-2.0.0.tgz", - "integrity": "sha512-+vMP4jqU+8HboLWms6YMNEiaZG5hh1oR6ENCnGYDF/UQ7aYiJUK/8tcl3+KZAHRCKKa3gqzrfiarlUBHQSgRlg==", - "requires": { - "require-coercible-to-string-x": "1.0.0", - "to-string-x": "1.4.2" - } - }, "request": { "version": "2.83.0", "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", @@ -9017,18 +6728,9 @@ "request-promise-core": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", - "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", - "requires": { - "lodash": "4.17.4" - } - }, - "require-coercible-to-string-x": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/require-coercible-to-string-x/-/require-coercible-to-string-x-1.0.0.tgz", - "integrity": "sha512-Rpfd4sMdflPAKecdKhfAtQHlZzzle4UMUgxJ01hXtTcNWMV8w9GeZnKhEyrT73kgrflBOP1zg41amUPZGcNspA==", + "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", "requires": { - "require-object-coercible-x": "1.4.1", - "to-string-x": "1.4.2" + "lodash": "4.17.4" } }, "require-directory": { @@ -9046,14 +6748,6 @@ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" }, - "require-object-coercible-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/require-object-coercible-x/-/require-object-coercible-x-1.4.1.tgz", - "integrity": "sha512-0YHa2afepsLfQvwQ1P2XvDZnGOUia5sC07ZijIRU2dnsRxnuilXWF6B2CFaKGDA9eZl39lJHrXCDsnfgroRd6Q==", - "requires": { - "is-nil-x": "1.4.1" - } - }, "require-resolve": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/require-resolve/-/require-resolve-0.0.2.tgz", @@ -9066,12 +6760,14 @@ "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true }, "resolve-cwd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, "requires": { "resolve-from": "3.0.0" } @@ -9079,7 +6775,8 @@ "resolve-from": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true }, "resolve-pathname": { "version": "2.2.0", @@ -9089,15 +6786,8 @@ "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" - }, - "resumer": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", - "integrity": "sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k=", - "requires": { - "through": "2.3.8" - } + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true }, "right-align": { "version": "0.1.3", @@ -9129,65 +6819,20 @@ "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.0.0.tgz", "integrity": "sha1-nbOE/0uJqPYVY9kjldhiWxjzr7A=" }, - "rust-result": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/rust-result/-/rust-result-1.0.0.tgz", - "integrity": "sha1-NMdbLm3Dn+WHXlveyFteD5FTb3I=", - "requires": { - "individual": "2.0.0" - } - }, "safe-buffer": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" }, - "safe-json-parse": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-4.0.0.tgz", - "integrity": "sha1-fA9XjPzNEtM6ccDgVBPi7KFx6qw=", - "requires": { - "rust-result": "1.0.0" - } - }, "schema-utils": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", + "dev": true, "requires": { "ajv": "5.5.2" } }, - "scrypt": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/scrypt/-/scrypt-6.0.3.tgz", - "integrity": "sha1-BOAUpWgrU/pQwtXM4WfXGcBthw0=", - "requires": { - "nan": "2.8.0" - } - }, - "scrypt-async": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/scrypt-async/-/scrypt-async-1.3.1.tgz", - "integrity": "sha1-oR/W+smBtLgj7gHe4CIRaVAN2uk=" - }, - "scrypt.js": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/scrypt.js/-/scrypt.js-0.2.0.tgz", - "integrity": "sha1-r40UZbcemZARC+38WTuUeeA6ito=", - "requires": { - "scrypt": "6.0.3", - "scryptsy": "1.2.1" - } - }, - "scryptsy": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-1.2.1.tgz", - "integrity": "sha1-oyJfpLJST4AnAHYeKFW987LZIWM=", - "requires": { - "pbkdf2": "3.0.14" - } - }, "secp256k1": { "version": "3.4.0", "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.4.0.tgz", @@ -9203,33 +6848,17 @@ "safe-buffer": "5.1.1" } }, - "seek-bzip": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", - "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", - "requires": { - "commander": "2.8.1" - }, - "dependencies": { - "commander": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", - "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", - "requires": { - "graceful-readlink": "1.0.1" - } - } - } - }, "select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true }, "selfsigned": { "version": "1.10.1", "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.1.tgz", "integrity": "sha1-v4y3uDJWxFUeMTR8YxF3jbme7FI=", + "dev": true, "requires": { "node-forge": "0.6.33" } @@ -9283,6 +6912,7 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, "requires": { "accepts": "1.3.4", "batch": "0.6.1", @@ -9297,6 +6927,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -9314,18 +6945,6 @@ "send": "0.16.1" } }, - "servify": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", - "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", - "requires": { - "body-parser": "1.18.2", - "cors": "2.8.4", - "express": "4.16.2", - "request": "2.83.0", - "xhr": "2.4.1" - } - }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -9335,6 +6954,7 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/set-getter/-/set-getter-0.1.0.tgz", "integrity": "sha1-12nBgsnVpR9AkUXy+6guXoboA3Y=", + "dev": true, "requires": { "to-object-path": "0.3.0" } @@ -9348,6 +6968,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "dev": true, "requires": { "extend-shallow": "2.0.1", "is-extendable": "0.1.1", @@ -9395,11 +7016,6 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" }, - "sigmund": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=" - }, "signal-exit": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", @@ -9430,6 +7046,7 @@ "version": "0.8.1", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.1.tgz", "integrity": "sha1-4StUh/re0+PeoKyR6UAL91tAE3A=", + "dev": true, "requires": { "base": "0.11.2", "debug": "2.6.9", @@ -9445,6 +7062,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -9453,6 +7071,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "0.1.6" } @@ -9461,6 +7080,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -9469,6 +7089,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -9479,6 +7100,7 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -9487,6 +7109,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -9497,6 +7120,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, "requires": { "is-accessor-descriptor": "0.1.6", "is-data-descriptor": "0.1.4", @@ -9506,7 +7130,8 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true } } }, @@ -9514,6 +7139,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, "requires": { "define-property": "1.0.0", "isobject": "3.0.1", @@ -9523,7 +7149,8 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -9531,22 +7158,16 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, "requires": { "kind-of": "3.2.2" } }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "requires": { - "hoek": "2.16.3" - } - }, "sockjs": { "version": "0.3.19", "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", + "dev": true, "requires": { "faye-websocket": "0.10.0", "uuid": "3.1.0" @@ -9556,6 +7177,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.1.4.tgz", "integrity": "sha1-W6vjhrd15M8U51IJEUUmVAFsixI=", + "dev": true, "requires": { "debug": "2.6.9", "eventsource": "0.1.6", @@ -9569,6 +7191,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -9577,6 +7200,7 @@ "version": "0.11.1", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", + "dev": true, "requires": { "websocket-driver": "0.7.0" } @@ -9786,6 +7410,7 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.1.tgz", "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==", + "dev": true, "requires": { "atob": "2.0.3", "decode-uri-component": "0.2.0", @@ -9806,12 +7431,8 @@ "source-map-url": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" - }, - "spark-md5": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.0.tgz", - "integrity": "sha1-NyIifFTi+vJLHcbZM8wUTm9xv+8=" + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true }, "spdx-correct": { "version": "1.0.2", @@ -9835,6 +7456,7 @@ "version": "3.4.7", "resolved": "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz", "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=", + "dev": true, "requires": { "debug": "2.6.9", "handle-thing": "1.2.5", @@ -9848,6 +7470,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -9858,6 +7481,7 @@ "version": "2.0.20", "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.0.20.tgz", "integrity": "sha1-c15yBUxIayNU/onnAiVgBKOazk0=", + "dev": true, "requires": { "debug": "2.6.9", "detect-node": "2.0.3", @@ -9872,6 +7496,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -9882,6 +7507,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, "requires": { "extend-shallow": "3.0.2" }, @@ -9890,6 +7516,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, "requires": { "assign-symbols": "1.0.0", "is-extendable": "1.0.1" @@ -9899,6 +7526,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, "requires": { "is-plain-object": "2.0.4" } @@ -9942,6 +7570,7 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, "requires": { "define-property": "0.2.5", "object-copy": "0.1.0" @@ -9951,6 +7580,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "0.1.6" } @@ -9959,6 +7589,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -9967,6 +7598,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -9977,6 +7609,7 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -9985,6 +7618,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -9995,6 +7629,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, "requires": { "is-accessor-descriptor": "0.1.6", "is-data-descriptor": "0.1.4", @@ -10004,7 +7639,8 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true } } }, @@ -10039,11 +7675,6 @@ "xtend": "4.0.1" } }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" - }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -10099,14 +7730,6 @@ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" }, - "strip-dirs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", - "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", - "requires": { - "is-natural-number": "4.0.1" - } - }, "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", @@ -10124,6 +7747,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, "requires": { "get-stdin": "4.0.1" } @@ -10141,46 +7765,6 @@ "has-flag": "2.0.0" } }, - "swarm-js": { - "version": "0.1.37", - "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.37.tgz", - "integrity": "sha512-G8gi5fcXP/2upwiuOShJ258sIufBVztekgobr3cVgYXObZwJ5AXLqZn52AI+/ffft29pJexF9WNdUxjlkVehoQ==", - "requires": { - "bluebird": "3.5.1", - "buffer": "5.0.8", - "decompress": "4.2.0", - "eth-lib": "0.1.27", - "fs-extra": "2.1.2", - "fs-promise": "2.0.3", - "got": "7.1.0", - "mime-types": "2.1.17", - "mkdirp-promise": "5.0.1", - "mock-fs": "4.4.2", - "setimmediate": "1.0.5", - "tar.gz": "1.0.7", - "xhr-request-promise": "0.1.2" - }, - "dependencies": { - "buffer": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.0.8.tgz", - "integrity": "sha512-xXvjQhVNz50v2nPeoOsNqWCLGfiv4ji/gXZM28jnVwdLJxH4mFyqgqCKfaK9zf1KUbG6zTkjLOy7ou+jSMarGA==", - "requires": { - "base64-js": "1.2.1", - "ieee754": "1.1.8" - } - }, - "fs-extra": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-2.1.2.tgz", - "integrity": "sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU=", - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0" - } - } - } - }, "symbol-observable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.1.0.tgz", @@ -10191,55 +7775,6 @@ "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.8.tgz", "integrity": "sha1-mTcqXJmb8t8WCvwNdL7U9HlIzSI=" }, - "tape": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/tape/-/tape-3.6.1.tgz", - "integrity": "sha1-SJPdU+KApfWMDOswwsDrs7zVHh8=", - "requires": { - "deep-equal": "0.2.2", - "defined": "0.0.0", - "glob": "3.2.11", - "inherits": "2.0.3", - "object-inspect": "0.4.0", - "resumer": "0.0.0", - "through": "2.3.8" - }, - "dependencies": { - "glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz", - "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=", - "requires": { - "inherits": "2.0.3", - "minimatch": "0.3.0" - } - }, - "lru-cache": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", - "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=" - }, - "minimatch": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz", - "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=", - "requires": { - "lru-cache": "2.7.3", - "sigmund": "1.0.1" - } - } - } - }, - "tar": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", - "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", - "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" - } - }, "tar-fs": { "version": "1.16.0", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.0.tgz", @@ -10262,69 +7797,17 @@ "xtend": "4.0.1" } }, - "tar.gz": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/tar.gz/-/tar.gz-1.0.7.tgz", - "integrity": "sha512-uhGatJvds/3diZrETqMj4RxBR779LKlIE74SsMcn5JProZsfs9j0QBwWO1RW+IWNJxS2x8Zzra1+AW6OQHWphg==", - "requires": { - "bluebird": "2.11.0", - "commander": "2.9.0", - "fstream": "1.0.11", - "mout": "0.11.1", - "tar": "2.2.1" - }, - "dependencies": { - "bluebird": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz", - "integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=" - } - } - }, - "thenify": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz", - "integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=", - "requires": { - "any-promise": "1.3.0" - } - }, - "thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", - "requires": { - "thenify": "3.3.0" - } - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "through2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", - "requires": { - "readable-stream": "2.3.3", - "xtend": "4.0.1" - } - }, "thunky": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-0.1.0.tgz", - "integrity": "sha1-vzAUaCTituZ7Dy16Ssi+smkIaE4=" + "integrity": "sha1-vzAUaCTituZ7Dy16Ssi+smkIaE4=", + "dev": true }, "time-stamp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-2.0.0.tgz", - "integrity": "sha1-lcakRTDhW6jW9KPsuMOj+sRto1c=" - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" + "integrity": "sha1-lcakRTDhW6jW9KPsuMOj+sRto1c=", + "dev": true }, "timers-browserify": { "version": "2.0.4", @@ -10339,86 +7822,26 @@ "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" }, - "to-boolean-x": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-boolean-x/-/to-boolean-x-1.0.1.tgz", - "integrity": "sha512-PstxY3K6hVEHnY3FITs8XBoJbt0RI1e4MLIhAL9hWa3BtVLCrb86vU5z6lEKh7uZZjiPiLqIKMmfMro1nNgtXQ==" - }, "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", "dev": true }, - "to-integer-x": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/to-integer-x/-/to-integer-x-3.0.0.tgz", - "integrity": "sha512-794L2Lpwjtynm7RxahJi2YdbRY75gTxUW27TMuN26UgwPkmJb/+HPhkFEFbz+E4vNoiP0dxq5tq5fkXoXLaK/w==", - "requires": { - "is-finite-x": "3.0.2", - "is-nan-x": "1.0.1", - "math-sign-x": "3.0.0", - "to-number-x": "2.0.0" - } - }, - "to-number-x": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-number-x/-/to-number-x-2.0.0.tgz", - "integrity": "sha512-lGOnCoccUoSzjZ/9Uen8TC4+VFaQcFGhTroWTv2tYWxXgyJV1zqAZ8hEIMkez/Eo790fBMOjidTnQ/OJSCvAoQ==", - "requires": { - "cached-constructors-x": "1.0.0", - "nan-x": "1.0.0", - "parse-int-x": "2.0.0", - "to-primitive-x": "1.1.0", - "trim-x": "3.0.0" - } - }, "to-object-path": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, "requires": { "kind-of": "3.2.2" } }, - "to-object-x": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/to-object-x/-/to-object-x-1.5.0.tgz", - "integrity": "sha512-AKn5GQcdWky+s20vjWkt+Wa6y3dxQH3yQyMBhOfBOPldUwqwhgvlqcIg5H092ntNc+TX8/Cxzs1kMHH19pyCnA==", - "requires": { - "cached-constructors-x": "1.0.0", - "require-object-coercible-x": "1.4.1" - } - }, - "to-primitive-x": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/to-primitive-x/-/to-primitive-x-1.1.0.tgz", - "integrity": "sha512-gyMY0gi3wjK3e4MUBKqv9Zl8QGcWguIkaUr2VJmoBEsOpDcpDZSEyljR773eVG4maS48uX7muLkoQoh/BA82OQ==", - "requires": { - "has-symbol-support-x": "1.4.1", - "is-date-object": "1.0.1", - "is-function-x": "3.3.0", - "is-nil-x": "1.4.1", - "is-primitive": "2.0.0", - "is-symbol": "1.0.1", - "require-object-coercible-x": "1.4.1", - "validate.io-undefined": "1.0.3" - } - }, - "to-property-key-x": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/to-property-key-x/-/to-property-key-x-2.0.2.tgz", - "integrity": "sha512-YISLpZFYIazNm0P8hLsKEEUEZ3m8U3+eDysJZqTu3+B9tQp+2TrMpaEGT8Agh4fZ5LSoums60/glNEzk5ozqrg==", - "requires": { - "has-symbol-support-x": "1.4.1", - "to-primitive-x": "1.1.0", - "to-string-x": "1.4.2" - } - }, "to-regex": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.1.tgz", "integrity": "sha1-FTWL7kosg712N3uh3ASdDxiDeq4=", + "dev": true, "requires": { "define-property": "0.2.5", "extend-shallow": "2.0.1", @@ -10429,6 +7852,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "0.1.6" } @@ -10437,6 +7861,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -10445,6 +7870,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -10455,6 +7881,7 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -10463,6 +7890,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -10473,6 +7901,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, "requires": { "is-accessor-descriptor": "0.1.6", "is-data-descriptor": "0.1.4", @@ -10482,7 +7911,8 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true } } }, @@ -10490,6 +7920,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, "requires": { "is-number": "3.0.0", "repeat-string": "1.6.1" @@ -10499,39 +7930,13 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, "requires": { "kind-of": "3.2.2" } } } }, - "to-string-symbols-supported-x": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-string-symbols-supported-x/-/to-string-symbols-supported-x-1.0.0.tgz", - "integrity": "sha512-HbVH673pybrUmhzESGHUm17BBJvqb7BU8HciOvuEYm9ipuDyjmddhvkVqpVW6sM/C5/zhJo17n7O7I/24loJIQ==", - "requires": { - "cached-constructors-x": "1.0.0", - "has-symbol-support-x": "1.4.1", - "is-symbol": "1.0.1" - } - }, - "to-string-tag-x": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/to-string-tag-x/-/to-string-tag-x-1.4.2.tgz", - "integrity": "sha512-ytO9eLigxsQQLGuab0C1iSSTzKdJNVSlBg0Spg4J/rGAVrQJ5y774mo0SSzgGeTT4RJGGyJNfObXaTMzX0XDOQ==", - "requires": { - "lodash.isnull": "3.0.0", - "validate.io-undefined": "1.0.3" - } - }, - "to-string-x": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/to-string-x/-/to-string-x-1.4.2.tgz", - "integrity": "sha512-/WP5arlwtCpAAexCCHiQBW0eXwse84osWyP1Qtaz71nsYSuUpOkT6tBm8nQ4IIUfSh5hji0hDupUCD2xbbOL6A==", - "requires": { - "is-symbol": "1.0.1" - } - }, "tough-cookie": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", @@ -10540,25 +7945,11 @@ "punycode": "1.4.1" } }, - "trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=" - }, - "trim-left-x": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/trim-left-x/-/trim-left-x-3.0.0.tgz", - "integrity": "sha512-+m6cqkppI+CxQBTwWEZliOHpOBnCArGyMnS1WCLb6IRgukhTkiQu/TNEN5Lj2eM9jk8ewJsc7WxFZfmwNpRXWQ==", - "requires": { - "cached-constructors-x": "1.0.0", - "require-coercible-to-string-x": "1.0.0", - "white-space-x": "3.0.0" - } - }, "trim-newlines": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true }, "trim-right": { "version": "1.0.1", @@ -10566,25 +7957,6 @@ "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", "dev": true }, - "trim-right-x": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/trim-right-x/-/trim-right-x-3.0.0.tgz", - "integrity": "sha512-iIqEsWEbWVodqdixJHi4FoayJkUxhoL4AvSNGp4FF4FfQKRPGizt8++/RnyC9od75y7P/S6EfONoVqP+NddiKA==", - "requires": { - "cached-constructors-x": "1.0.0", - "require-coercible-to-string-x": "1.0.0", - "white-space-x": "3.0.0" - } - }, - "trim-x": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/trim-x/-/trim-x-3.0.0.tgz", - "integrity": "sha512-w8s38RAUScQ6t3XqMkS75iz5ZkIYLQpVnv2lp3IuTS36JdlVzC54oe6okOf4Wz3UH4rr3XAb2xR3kR5Xei82fw==", - "requires": { - "trim-left-x": "3.0.0", - "trim-right-x": "3.0.0" - } - }, "truffle": { "version": "3.4.11", "resolved": "https://registry.npmjs.org/truffle/-/truffle-3.4.11.tgz", @@ -10753,11 +8125,6 @@ } } }, - "tsml": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tsml/-/tsml-1.0.1.tgz", - "integrity": "sha1-ifghi52eJX9H1/a1bQHFpNLGj8M=" - }, "tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", @@ -10771,11 +8138,6 @@ "safe-buffer": "5.1.1" } }, - "tweetnacl": { - "version": "0.13.2", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.13.2.tgz", - "integrity": "sha1-RTFhdwRp1FzSZsNkBOK8maj6mUQ=" - }, "type-is": { "version": "1.6.15", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", @@ -10790,11 +8152,6 @@ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, - "typedarray-to-buffer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-1.0.4.tgz", - "integrity": "sha1-m7i6DoQfs/TPH+fCRenz+opf6Zw=" - }, "ua-parser-js": { "version": "0.7.17", "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", @@ -10852,37 +8209,6 @@ "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=" }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" - }, - "unbzip2-stream": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.2.5.tgz", - "integrity": "sha512-izD3jxT8xkzwtXRUZjtmRwKnZoeECrfZ8ra/ketwOcusbZEp4mjULMnJOCfTDZBgGQAAY1AJ/IgxcwkavcX9Og==", - "requires": { - "buffer": "3.6.0", - "through": "2.3.8" - }, - "dependencies": { - "base64-js": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz", - "integrity": "sha1-EQHpVE9KdrG8OybUUsqW16NeeXg=" - }, - "buffer": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-3.6.0.tgz", - "integrity": "sha1-pyyTb3e5a/UvX357RnGAYoVR3vs=", - "requires": { - "base64-js": "0.0.8", - "ieee754": "1.1.8", - "isarray": "1.0.0" - } - } - } - }, "uncontrollable": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-4.1.0.tgz", @@ -10891,15 +8217,11 @@ "invariant": "2.2.2" } }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" - }, "union-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "dev": true, "requires": { "arr-union": "3.1.0", "get-value": "2.0.6", @@ -10911,6 +8233,7 @@ "version": "0.4.3", "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "dev": true, "requires": { "extend-shallow": "2.0.1", "is-extendable": "0.1.1", @@ -10934,6 +8257,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, "requires": { "has-value": "0.3.1", "isobject": "3.0.1" @@ -10943,6 +8267,7 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, "requires": { "get-value": "2.0.6", "has-values": "0.1.4", @@ -10953,6 +8278,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, "requires": { "isarray": "1.0.0" } @@ -10962,12 +8288,14 @@ "has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -10979,7 +8307,8 @@ "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true }, "url": { "version": "0.11.0", @@ -11001,6 +8330,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.2.0.tgz", "integrity": "sha512-DT1XbYAfmQP65M/mE6OALxmXzZ/z1+e5zk2TcSKe/KiYbNGZxgtttzC0mR/sjopbpOXcbniq7eIKmocJnUWlEw==", + "dev": true, "requires": { "querystringify": "1.0.0", "requires-port": "1.0.0" @@ -11009,37 +8339,16 @@ "querystringify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-1.0.0.tgz", - "integrity": "sha1-YoYkIRLFtxL6ZU5SZlK/ahP/Bcs=" + "integrity": "sha1-YoYkIRLFtxL6ZU5SZlK/ahP/Bcs=", + "dev": true } } }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "requires": { - "prepend-http": "1.0.4" - } - }, - "url-set-query": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", - "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=" - }, - "url-to-options": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", - "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" - }, - "url-toolkit": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/url-toolkit/-/url-toolkit-2.1.2.tgz", - "integrity": "sha512-CO1kimvdn+t8FtlVconJnp8LqxyXdThbWGuLKs/mfz3ipA8ZbOWaHQB8SPWf3WFIStDHPxKKlauwkXFLq1VK/g==" - }, "use": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/use/-/use-2.0.2.tgz", "integrity": "sha1-riig1y+TvyJCKhii43mZMRLeyOg=", + "dev": true, "requires": { "define-property": "0.2.5", "isobject": "3.0.1", @@ -11050,6 +8359,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "0.1.6" } @@ -11058,6 +8368,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -11066,6 +8377,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -11076,6 +8388,7 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -11084,6 +8397,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -11094,6 +8408,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, "requires": { "is-accessor-descriptor": "0.1.6", "is-data-descriptor": "0.1.4", @@ -11103,17 +8418,20 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true }, "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true }, "lazy-cache": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", "integrity": "sha1-uRkKT5EzVGlIQIWfio9whNiCImQ=", + "dev": true, "requires": { "set-getter": "0.1.0" } @@ -11179,11 +8497,6 @@ "spdx-expression-parse": "1.0.4" } }, - "validate.io-undefined": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/validate.io-undefined/-/validate.io-undefined-1.0.3.tgz", - "integrity": "sha1-fif8uzFbhB54JDQxiXZxkp4gt/Q=" - }, "value-equal": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-0.4.0.tgz", @@ -11211,248 +8524,6 @@ } } }, - "victory": { - "version": "0.24.3", - "resolved": "https://registry.npmjs.org/victory/-/victory-0.24.3.tgz", - "integrity": "sha512-wD4Mlx86nm+YFL7KQ4tMcRrU9ha3OEZjBA8lebNS45ACgM8ZeFFbauSNcK4Vu5Zbn3NMULbHu5TQUFEhJbQBAw==", - "requires": { - "victory-chart": "24.6.0", - "victory-core": "20.6.0", - "victory-pie": "13.3.1" - } - }, - "victory-chart": { - "version": "24.6.0", - "resolved": "https://registry.npmjs.org/victory-chart/-/victory-chart-24.6.0.tgz", - "integrity": "sha512-FgHuWWXVOKgFf4HvemDtQnSxVx2/tEKiGpEplIFK7BNC7L5r50I4B6UCAIWazrwqwOv0fuKpCAY2t8IYywmy9g==", - "requires": { - "d3-voronoi": "1.1.2", - "lodash": "4.17.4", - "victory-core": "20.6.0" - } - }, - "victory-core": { - "version": "20.6.0", - "resolved": "https://registry.npmjs.org/victory-core/-/victory-core-20.6.0.tgz", - "integrity": "sha512-ucE3AWR3HaQIWLfAl/vQI+QfYbwgIFSgai2VnfxPZFoeyZ1QjR7qJC3AyhrHaE1r1K8Wcl3XeWtDT42Bu6yYEw==", - "requires": { - "d3-ease": "1.0.3", - "d3-interpolate": "1.1.6", - "d3-scale": "1.0.7", - "d3-shape": "1.2.0", - "d3-timer": "1.0.7", - "lodash": "4.17.4" - } - }, - "victory-pie": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/victory-pie/-/victory-pie-13.3.1.tgz", - "integrity": "sha512-17M9Y5o+OqfdS8Ok4rFKyb9CsTln5ids77SwombqwLvHCCb73rXodiAOk1N7MR8XFFyviZVmTBPq47OE6fVCYw==", - "requires": { - "d3-shape": "1.2.0", - "lodash": "4.17.4", - "victory-core": "20.6.0" - } - }, - "video.js": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/video.js/-/video.js-6.6.0.tgz", - "integrity": "sha512-jtMn0PqQSGGes5Lcb5Ste0fG4HrcOIr51LYX57wrQbbrUhj/56U8c9LGhVeGAgpi1XBebw/R16xyENxh5yPllw==", - "requires": { - "babel-runtime": "6.26.0", - "global": "4.3.2", - "safe-json-parse": "4.0.0", - "tsml": "1.0.1", - "videojs-font": "2.1.0", - "videojs-ie8": "1.1.2", - "videojs-vtt.js": "0.12.4", - "xhr": "2.4.0" - }, - "dependencies": { - "xhr": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.4.0.tgz", - "integrity": "sha1-4W5mpF+GmGHu76tBbV7/ci3ECZM=", - "requires": { - "global": "4.3.2", - "is-function": "1.0.1", - "parse-headers": "2.0.1", - "xtend": "4.0.1" - } - } - } - }, - "videojs-contrib-hls": { - "version": "5.12.2", - "resolved": "https://registry.npmjs.org/videojs-contrib-hls/-/videojs-contrib-hls-5.12.2.tgz", - "integrity": "sha512-rUz+NXfYumNwyNtSvmba0tibZCpddfRrkgkuxv8jLu0tKjWUudClBfXrqB+rEr0WX9Wu1LOstEandE3fXVZ5jw==", - "requires": { - "aes-decrypter": "1.0.3", - "global": "4.3.2", - "m3u8-parser": "2.1.0", - "mux.js": "4.3.2", - "url-toolkit": "1.0.9", - "video.js": "6.6.0", - "videojs-contrib-media-sources": "4.6.2", - "webworkify": "1.0.2" - }, - "dependencies": { - "url-toolkit": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/url-toolkit/-/url-toolkit-1.0.9.tgz", - "integrity": "sha1-ZkfIT5McVOHmH6OzPhCtNBYe1Nk=" - } - } - }, - "videojs-contrib-media-sources": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/videojs-contrib-media-sources/-/videojs-contrib-media-sources-4.6.2.tgz", - "integrity": "sha512-DSfAK0s4wB+lYD6w59bwalchdWzlUm7fbn+tGuzfZ4YZtTjIIkEnymyjhsLoeEnjNjAuG/p7Ri/6xeoaMhme9Q==", - "requires": { - "global": "4.3.2", - "mux.js": "4.3.2", - "video.js": "5.20.4", - "webworkify": "1.0.2" - }, - "dependencies": { - "process": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", - "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=" - }, - "video.js": { - "version": "5.20.4", - "resolved": "https://registry.npmjs.org/video.js/-/video.js-5.20.4.tgz", - "integrity": "sha512-DkwZcYDN5+qNp3c1y+9N6cQ3XSoFin1dEsEstIRGmALtmh71M8JIPage0S/AC5HzCc7QdUBeeTYHLKZectB2TA==", - "requires": { - "babel-runtime": "6.26.0", - "global": "4.3.0", - "safe-json-parse": "4.0.0", - "tsml": "1.0.1", - "videojs-font": "2.0.0", - "videojs-ie8": "1.1.2", - "videojs-swf": "5.4.1", - "videojs-vtt.js": "0.12.4", - "xhr": "2.2.2" - }, - "dependencies": { - "global": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.3.0.tgz", - "integrity": "sha1-737EvurVebRU9evV5/MD21T0Kis=", - "requires": { - "min-document": "2.19.0", - "process": "0.5.2" - } - } - } - }, - "videojs-font": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/videojs-font/-/videojs-font-2.0.0.tgz", - "integrity": "sha1-r3Rh751LleAzS/+3iy8v8DZKkDQ=" - }, - "xhr": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.2.2.tgz", - "integrity": "sha1-LuclcYafhobUFVmp6ihsGJcUNf8=", - "requires": { - "global": "4.3.2", - "is-function": "1.0.1", - "parse-headers": "2.0.1", - "xtend": "4.0.1" - } - } - } - }, - "videojs-font": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/videojs-font/-/videojs-font-2.1.0.tgz", - "integrity": "sha1-olkwpn9snPvyu4jay4xrRR8JM3k=" - }, - "videojs-hlsjs": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/videojs-hlsjs/-/videojs-hlsjs-1.4.8.tgz", - "integrity": "sha1-PpxsuitfEaihrbC4KTOPREJKenk=", - "requires": { - "hls.js": "0.7.11", - "video.js": "5.20.4" - }, - "dependencies": { - "global": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.3.0.tgz", - "integrity": "sha1-737EvurVebRU9evV5/MD21T0Kis=", - "requires": { - "min-document": "2.19.0", - "process": "0.5.2" - } - }, - "hls.js": { - "version": "0.7.11", - "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-0.7.11.tgz", - "integrity": "sha1-6ESL41okNbrSS4uT2ef5wFZZuyg=" - }, - "process": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", - "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=" - }, - "video.js": { - "version": "5.20.4", - "resolved": "https://registry.npmjs.org/video.js/-/video.js-5.20.4.tgz", - "integrity": "sha512-DkwZcYDN5+qNp3c1y+9N6cQ3XSoFin1dEsEstIRGmALtmh71M8JIPage0S/AC5HzCc7QdUBeeTYHLKZectB2TA==", - "requires": { - "babel-runtime": "6.26.0", - "global": "4.3.0", - "safe-json-parse": "4.0.0", - "tsml": "1.0.1", - "videojs-font": "2.0.0", - "videojs-ie8": "1.1.2", - "videojs-swf": "5.4.1", - "videojs-vtt.js": "0.12.4", - "xhr": "2.2.2" - } - }, - "videojs-font": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/videojs-font/-/videojs-font-2.0.0.tgz", - "integrity": "sha1-r3Rh751LleAzS/+3iy8v8DZKkDQ=" - }, - "xhr": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.2.2.tgz", - "integrity": "sha1-LuclcYafhobUFVmp6ihsGJcUNf8=", - "requires": { - "global": "4.3.0", - "is-function": "1.0.1", - "parse-headers": "2.0.1", - "xtend": "4.0.1" - } - } - } - }, - "videojs-ie8": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/videojs-ie8/-/videojs-ie8-1.1.2.tgz", - "integrity": "sha1-oj09hgitcZK2nGB3/E64SJmNNdk=", - "requires": { - "es5-shim": "4.5.10" - } - }, - "videojs-swf": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/videojs-swf/-/videojs-swf-5.4.1.tgz", - "integrity": "sha1-IHfvccdJ8seCPvSbq65N0qywj4c=" - }, - "videojs-vtt.js": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.12.4.tgz", - "integrity": "sha1-OPJJnjHvs/qTWQ3a1MtmMnWksWE=", - "requires": { - "global": "4.3.2" - } - }, "vm-browserify": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", @@ -11461,11 +8532,6 @@ "indexof": "0.0.1" } }, - "vuvuzela": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/vuvuzela/-/vuvuzela-1.0.3.tgz", - "integrity": "sha1-O+FF5YJxxzylUnndhR8SpoIRSws=" - }, "warning": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", @@ -11488,6 +8554,7 @@ "version": "1.7.2", "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.2.tgz", "integrity": "sha1-1pe5nx9ZUS3ydRvkJ2nBWAtYAf4=", + "dev": true, "requires": { "minimalistic-assert": "1.0.0" } @@ -11509,275 +8576,6 @@ } } }, - "web3-bzz": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.0.0-beta.27.tgz", - "integrity": "sha1-Tmggpc/nOqsG2CV59FBFD76YIqM=", - "requires": { - "got": "7.1.0", - "swarm-js": "0.1.37", - "underscore": "1.8.3" - } - }, - "web3-core": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.0.0-beta.27.tgz", - "integrity": "sha1-TQCb9x5Yt5F2E0EpF+/5ERO0N8M=", - "requires": { - "web3-core-helpers": "1.0.0-beta.27", - "web3-core-method": "1.0.0-beta.27", - "web3-core-requestmanager": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - } - }, - "web3-core-helpers": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.0.0-beta.27.tgz", - "integrity": "sha1-6wlPrTfJ3B1wZt11Zimi1u+6B6I=", - "requires": { - "underscore": "1.8.3", - "web3-eth-iban": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - } - }, - "web3-core-method": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.0.0-beta.27.tgz", - "integrity": "sha1-3hTlQL1qdTfXBGcLSeY/BSYgG6o=", - "requires": { - "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.27", - "web3-core-promievent": "1.0.0-beta.27", - "web3-core-subscriptions": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - } - }, - "web3-core-promievent": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.0.0-beta.27.tgz", - "integrity": "sha1-0lx9e75NU9+/3KBJ+e1LCmlUvrw=", - "requires": { - "bluebird": "3.3.1", - "eventemitter3": "1.1.1" - }, - "dependencies": { - "bluebird": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.3.1.tgz", - "integrity": "sha1-+Xrhlw9B2FF3KDBT6aEgFg5mxh0=" - } - } - }, - "web3-core-requestmanager": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.0.0-beta.27.tgz", - "integrity": "sha1-Vk7uJEoxCq5abGgyzeLA49wwHpg=", - "requires": { - "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.27", - "web3-providers-http": "1.0.0-beta.27", - "web3-providers-ipc": "1.0.0-beta.27", - "web3-providers-ws": "1.0.0-beta.27" - } - }, - "web3-core-subscriptions": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.0.0-beta.27.tgz", - "integrity": "sha1-VvKRy1Sn7PgNRzTXL1Sky8uJdzc=", - "requires": { - "eventemitter3": "1.1.1", - "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.27" - } - }, - "web3-eth": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.0.0-beta.27.tgz", - "integrity": "sha1-hV3Q4BqU1Xhx/9j0n22eyqMXIas=", - "requires": { - "underscore": "1.8.3", - "web3-core": "1.0.0-beta.27", - "web3-core-helpers": "1.0.0-beta.27", - "web3-core-method": "1.0.0-beta.27", - "web3-core-subscriptions": "1.0.0-beta.27", - "web3-eth-abi": "1.0.0-beta.27", - "web3-eth-accounts": "1.0.0-beta.27", - "web3-eth-contract": "1.0.0-beta.27", - "web3-eth-iban": "1.0.0-beta.27", - "web3-eth-personal": "1.0.0-beta.27", - "web3-net": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - } - }, - "web3-eth-abi": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.0.0-beta.27.tgz", - "integrity": "sha1-RS6dk3YVYL4yNE7juJddD7JLvb4=", - "requires": { - "bn.js": "4.11.6", - "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - }, - "dependencies": { - "bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" - } - } - }, - "web3-eth-accounts": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.0.0-beta.27.tgz", - "integrity": "sha1-mUDCjl48kg1nz2iH6pxS8c3Re3k=", - "requires": { - "bluebird": "3.3.1", - "crypto-browserify": "3.12.0", - "eth-lib": "0.2.5", - "scrypt.js": "0.2.0", - "underscore": "1.8.3", - "uuid": "2.0.1", - "web3-core": "1.0.0-beta.27", - "web3-core-helpers": "1.0.0-beta.27", - "web3-core-method": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - }, - "dependencies": { - "bluebird": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.3.1.tgz", - "integrity": "sha1-+Xrhlw9B2FF3KDBT6aEgFg5mxh0=" - }, - "eth-lib": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.5.tgz", - "integrity": "sha512-pXs4ryU+7S8MPpkQpNqG4JlXEec87kbXowQbYzRVV+c5XUccrO6WOxVPDicxql1AXSBzfmBSFVkvvG+H4htuxg==", - "requires": { - "bn.js": "4.11.8", - "elliptic": "6.4.0", - "xhr-request-promise": "0.1.2" - } - }, - "uuid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", - "integrity": "sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w=" - } - } - }, - "web3-eth-contract": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.0.0-beta.27.tgz", - "integrity": "sha1-AS96XVnaZ+KWxzWo8pcK7N0gfn0=", - "requires": { - "underscore": "1.8.3", - "web3-core": "1.0.0-beta.27", - "web3-core-helpers": "1.0.0-beta.27", - "web3-core-method": "1.0.0-beta.27", - "web3-core-promievent": "1.0.0-beta.27", - "web3-core-subscriptions": "1.0.0-beta.27", - "web3-eth-abi": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - } - }, - "web3-eth-iban": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.0.0-beta.27.tgz", - "integrity": "sha1-RDPCj0F8Oa+WMzoGpK+h/NSqaEI=", - "requires": { - "bn.js": "4.11.8", - "web3-utils": "1.0.0-beta.27" - } - }, - "web3-eth-personal": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.0.0-beta.27.tgz", - "integrity": "sha1-ukiaNIdkpKswOItcwcblm9bq7Ks=", - "requires": { - "web3-core": "1.0.0-beta.27", - "web3-core-helpers": "1.0.0-beta.27", - "web3-core-method": "1.0.0-beta.27", - "web3-net": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - } - }, - "web3-net": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.0.0-beta.27.tgz", - "integrity": "sha1-eulTbsOf7Rou6zjALm48jt/oq30=", - "requires": { - "web3-core": "1.0.0-beta.27", - "web3-core-method": "1.0.0-beta.27", - "web3-utils": "1.0.0-beta.27" - } - }, - "web3-providers-http": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.0.0-beta.27.tgz", - "integrity": "sha1-LwrhYJvF5KNb4lgYzX/HfeBitqY=", - "requires": { - "web3-core-helpers": "1.0.0-beta.27", - "xhr2": "0.1.4" - } - }, - "web3-providers-ipc": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.0.0-beta.27.tgz", - "integrity": "sha1-oFwkIe/+TEfxX0efeSUTWtCUJ2I=", - "requires": { - "oboe": "2.1.3", - "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.27" - } - }, - "web3-providers-ws": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.0.0-beta.27.tgz", - "integrity": "sha1-bUZ4Geoi3foba6FJjTHZVU4rBt0=", - "requires": { - "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.27", - "websocket": "git://github.com/frozeman/WebSocket-Node.git#7004c39c42ac98875ab61126e5b4a925430f592c" - } - }, - "web3-shh": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.0.0-beta.27.tgz", - "integrity": "sha1-b3bW6yoma769zwqjDFo62J82e38=", - "requires": { - "web3-core": "1.0.0-beta.27", - "web3-core-method": "1.0.0-beta.27", - "web3-core-subscriptions": "1.0.0-beta.27", - "web3-net": "1.0.0-beta.27" - } - }, - "web3-utils": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.0.0-beta.27.tgz", - "integrity": "sha1-0JfVwzaha59sqbYK9o3RXAZDIUs=", - "requires": { - "bn.js": "4.11.6", - "eth-lib": "0.1.27", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randomhex": "0.1.5", - "underscore": "1.8.3", - "utf8": "2.1.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" - }, - "utf8": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-2.1.1.tgz", - "integrity": "sha1-LgHbAvfY0JRPdxBPFgnrDDBM92g=" - } - } - }, "webpack": { "version": "3.10.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.10.0.tgz", @@ -11811,6 +8609,7 @@ "version": "1.12.2", "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz", "integrity": "sha512-FCrqPy1yy/sN6U/SaEZcHKRXGlqU0DUaEBL45jkUYoB8foVb6wCnbIJ1HKIx+qUFTW+3JpVcCJCxZ8VATL4e+A==", + "dev": true, "requires": { "memory-fs": "0.4.1", "mime": "1.6.0", @@ -11822,7 +8621,8 @@ "mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true } } }, @@ -11830,6 +8630,7 @@ "version": "2.10.0", "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-2.10.0.tgz", "integrity": "sha512-mFq5S5Sg6nbiGXry+nRlaUoaCcl0IH/LVP60kwwJKBT/8IcwK/ZKduOSBK8bsLwRBh1yFoUYJMKfCo6oeP07+g==", + "dev": true, "requires": { "ansi-html": "0.0.7", "array-includes": "3.0.3", @@ -11863,12 +8664,14 @@ "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true }, "anymatch": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, "requires": { "micromatch": "3.1.5", "normalize-path": "2.1.1" @@ -11877,17 +8680,20 @@ "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true }, "braces": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.0.tgz", "integrity": "sha512-P4O8UQRdGiMLWSizsApmXVQDBS6KCt7dSexgLKBmH5Hr1CZq7vsnscFh8oR1sP1ab1Zj0uCHCEzZeV6SfUf3rA==", + "dev": true, "requires": { "arr-flatten": "1.1.0", "array-unique": "0.3.2", @@ -11905,12 +8711,14 @@ "camelcase": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true }, "chokidar": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.0.tgz", "integrity": "sha512-OgXCNv2U6TnG04D3tth0gsvdbV4zdbxFG3sYUqcoQMoEFVd1j1pZR6TZ8iknC45o9IJ6PeQI/J6wT/+cHcniAw==", + "dev": true, "requires": { "anymatch": "2.0.0", "async-each": "1.0.1", @@ -11929,6 +8737,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, "requires": { "string-width": "1.0.2", "strip-ansi": "3.0.1", @@ -11938,12 +8747,14 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, "requires": { "code-point-at": "1.1.0", "is-fullwidth-code-point": "1.0.0", @@ -11954,6 +8765,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, "requires": { "ansi-regex": "2.1.1" } @@ -11964,6 +8776,7 @@ "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, "requires": { "debug": "2.6.9", "define-property": "0.2.5", @@ -11978,6 +8791,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -11986,6 +8800,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "0.1.6" } @@ -11996,6 +8811,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.3.tgz", "integrity": "sha512-AyptZexgu7qppEPq59DtN/XJGZDrLcVxSHai+4hdgMMS9EpF4GBvygcWWApno8lL9qSjVpYt7Raao28qzJX1ww==", + "dev": true, "requires": { "array-unique": "0.3.2", "define-property": "1.0.0", @@ -12011,6 +8827,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, "requires": { "extend-shallow": "2.0.1", "is-number": "3.0.0", @@ -12022,6 +8839,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, "requires": { "is-glob": "3.1.0", "path-dirname": "1.0.2" @@ -12031,6 +8849,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, "requires": { "is-extglob": "2.1.1" } @@ -12041,6 +8860,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -12049,6 +8869,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -12059,6 +8880,7 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -12067,6 +8889,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -12077,6 +8900,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, "requires": { "is-accessor-descriptor": "0.1.6", "is-data-descriptor": "0.1.4", @@ -12086,19 +8910,22 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true } } }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true }, "is-glob": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "dev": true, "requires": { "is-extglob": "2.1.1" } @@ -12107,6 +8934,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, "requires": { "kind-of": "3.2.2" }, @@ -12115,6 +8943,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "1.1.6" } @@ -12124,17 +8953,20 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true }, "micromatch": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.5.tgz", "integrity": "sha512-ykttrLPQrz1PUJcXjwsTUjGoPJ64StIGNE2lGVD1c9CuguJ+L7/navsE8IcDNndOoCMvYV0qc/exfVbMHkUhvA==", + "dev": true, "requires": { "arr-diff": "4.0.0", "array-unique": "0.3.2", @@ -12155,6 +8987,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, "requires": { "ansi-regex": "3.0.0" } @@ -12163,6 +8996,7 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, "requires": { "has-flag": "2.0.0" } @@ -12171,6 +9005,7 @@ "version": "10.0.3", "resolved": "https://registry.npmjs.org/yargs/-/yargs-10.0.3.tgz", "integrity": "sha512-DqBpQ8NAUX4GyPP/ijDGHsJya4tYqLQrjPr95HNsr1YwL3+daCfvBwg7+gIC6IdJhR2kATh3hb61vjzMWEtjdw==", + "dev": true, "requires": { "cliui": "3.2.0", "decamelize": "1.2.0", @@ -12190,6 +9025,7 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-8.1.0.tgz", "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", + "dev": true, "requires": { "camelcase": "4.1.0" } @@ -12212,33 +9048,6 @@ } } }, - "websocket": { - "version": "git://github.com/frozeman/WebSocket-Node.git#7004c39c42ac98875ab61126e5b4a925430f592c", - "requires": { - "debug": "2.6.9", - "nan": "2.8.0", - "typedarray-to-buffer": "3.1.2", - "yaeti": "0.0.6" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "typedarray-to-buffer": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.2.tgz", - "integrity": "sha1-EBezLZhP9VbroQD1AViauhrOLgQ=", - "requires": { - "is-typedarray": "1.0.0" - } - } - } - }, "websocket-driver": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", @@ -12253,11 +9062,6 @@ "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==" }, - "webworkify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.0.2.tgz", - "integrity": "sha1-thapWmIlJJvyWpHpbglCxmUVWZU=" - }, "whatwg-fetch": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", @@ -12276,11 +9080,6 @@ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" }, - "white-space-x": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/white-space-x/-/white-space-x-3.0.0.tgz", - "integrity": "sha512-nMPVXGMdi/jQepXKryxqzEh/vCwdOYY/u6NZy40glMHvZfEr7/+vQKnDhEq4rZ1nniOFq9GWohQYB30uW/5Olg==" - }, "wide-align": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", @@ -12315,6 +9114,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/worker-loader/-/worker-loader-1.1.0.tgz", "integrity": "sha512-W91q8Wi1JxbzFQZuLJlFK4x8UuWjKgeOX9IMMyng007K0UkP6I8lOejckoCWY61QmnJq2x9qZ/Viru+uF8g6nA==", + "dev": true, "requires": { "loader-utils": "1.1.0", "schema-utils": "0.3.0" @@ -12346,31 +9146,6 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, - "write-stream": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/write-stream/-/write-stream-0.4.3.tgz", - "integrity": "sha1-g8yMA0fQr2BXqThitOOuAd5cgcE=", - "requires": { - "readable-stream": "0.0.4" - }, - "dependencies": { - "readable-stream": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-0.0.4.tgz", - "integrity": "sha1-8y124/uGM0SlSNeZIwBxc2ZbO40=" - } - } - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "requires": { - "async-limiter": "1.0.0", - "safe-buffer": "5.1.1", - "ultron": "1.1.1" - } - }, "x-path": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/x-path/-/x-path-0.0.2.tgz", @@ -12380,51 +9155,6 @@ "path-extra": "1.0.3" } }, - "xhr": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.4.1.tgz", - "integrity": "sha512-pAIU5vBr9Hiy5cpFIbPnwf0C18ZF86DBsZKrlsf87N5De/JbA6RJ83UP/cv+aljl4S40iRVMqP4pr4sF9Dnj0A==", - "requires": { - "global": "4.3.2", - "is-function": "1.0.1", - "parse-headers": "2.0.1", - "xtend": "4.0.1" - } - }, - "xhr-request": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.0.1.tgz", - "integrity": "sha1-g/CKSyC+7Geowcco6BAvTJ7svdo=", - "requires": { - "buffer-to-arraybuffer": "0.0.2", - "object-assign": "3.0.0", - "query-string": "2.4.2", - "simple-get": "1.4.3", - "timed-out": "2.0.0", - "url-set-query": "1.0.0", - "xhr": "2.4.1" - }, - "dependencies": { - "object-assign": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", - "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=" - }, - "timed-out": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-2.0.0.tgz", - "integrity": "sha1-84sK6B03R9YoAB9B2vxlKs5nHAo=" - } - } - }, - "xhr-request-promise": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.2.tgz", - "integrity": "sha1-NDxE0e53JrhkgGloLQ+EDIO0Jh0=", - "requires": { - "xhr-request": "1.0.1" - } - }, "xhr2": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/xhr2/-/xhr2-0.1.4.tgz", @@ -12445,11 +9175,6 @@ "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" }, - "yaeti": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", - "integrity": "sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc=" - }, "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", @@ -12518,15 +9243,6 @@ "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" } } - }, - "yauzl": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.1.tgz", - "integrity": "sha1-qBmB6nCleUYTOIPwKcWCGok1mn8=", - "requires": { - "buffer-crc32": "0.2.13", - "fd-slicer": "1.0.1" - } } } } diff --git a/package.json b/package.json index 70d4054..4bbe563 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gittoken-server", - "version": "0.0.1", + "version": "0.0.3", "description": "Configurable GitToken Server", "main": "./src/index.js", "scripts": { @@ -28,17 +28,14 @@ "express": "^4.15.3", "express-session": "^1.15.3", "github-api": "^3.0.0", - "gittoken-account-ui": "0.0.7", "gittoken-contracts": "0.0.59", "gittoken-keystore-generator": "0.0.20", - "gittoken-landing-page": "0.0.19", - "gittoken-reducers": "0.0.59", - "gittoken-registry-ui": "0.0.13", - "gittoken-web-workers": "0.0.71", + "gittoken-svg-icons": "0.0.9", "graphql": "^0.10.4", "history": "^4.7.2", "keccak": "^1.3.0", "keythereum": "^1.0.1", + "metamask-logo": "^2.1.3", "mysql": "^2.15.0", "node-gitter": "^2.1.0", "passport": "^0.3.2", diff --git a/ui/gittoken-ui.dist.js b/ui/gittoken-ui.dist.js index 2a7489c..3e4e4ca 100644 --- a/ui/gittoken-ui.dist.js +++ b/ui/gittoken-ui.dist.js @@ -60,7 +60,7 @@ /******/ __webpack_require__.p = "/"; /******/ /******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 368); +/******/ return __webpack_require__(__webpack_require__.s = 321); /******/ }) /************************************************************************/ /******/ ([ @@ -73,7 +73,7 @@ if (false) { module.exports = require('./cjs/react.production.min.js'); } else { - module.exports = __webpack_require__(572); + module.exports = __webpack_require__(525); } @@ -81,6 +81,55 @@ if (false) { /* 1 */ /***/ (function(module, exports, __webpack_require__) { +var global = __webpack_require__(11); +var core = __webpack_require__(44); +var hide = __webpack_require__(32); +var redefine = __webpack_require__(33); +var ctx = __webpack_require__(40); +var PROTOTYPE = 'prototype'; + +var $export = function (type, name, source) { + var IS_FORCED = type & $export.F; + var IS_GLOBAL = type & $export.G; + var IS_STATIC = type & $export.S; + var IS_PROTO = type & $export.P; + var IS_BIND = type & $export.B; + var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]; + var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); + var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {}); + var key, own, out, exp; + if (IS_GLOBAL) source = name; + for (key in source) { + // contains in native + own = !IS_FORCED && target && target[key] !== undefined; + // export native or passed + out = (own ? target : source)[key]; + // bind timers to global for call from export context + exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; + // extend global + if (target) redefine(target, key, out, type & $export.U); + // export + if (exports[key] != out) hide(exports, key, exp); + if (IS_PROTO && expProto[key] != out) expProto[key] = out; + } +}; +global.core = core; +// type bitmap +$export.F = 1; // forced +$export.G = 2; // global +$export.S = 4; // static +$export.P = 8; // proto +$export.B = 16; // bind +$export.W = 32; // wrap +$export.U = 64; // safe +$export.R = 128; // real proto method for `library` +module.exports = $export; + + +/***/ }), +/* 2 */ +/***/ (function(module, exports, __webpack_require__) { + "use strict"; @@ -93,7 +142,7 @@ exports.default = function (instance, Constructor) { }; /***/ }), -/* 2 */ +/* 3 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -101,7 +150,7 @@ exports.default = function (instance, Constructor) { exports.__esModule = true; -var _typeof2 = __webpack_require__(139); +var _typeof2 = __webpack_require__(182); var _typeof3 = _interopRequireDefault(_typeof2); @@ -116,7 +165,7 @@ exports.default = function (self, call) { }; /***/ }), -/* 3 */ +/* 4 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -124,15 +173,15 @@ exports.default = function (self, call) { exports.__esModule = true; -var _setPrototypeOf = __webpack_require__(728); +var _setPrototypeOf = __webpack_require__(681); var _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf); -var _create = __webpack_require__(732); +var _create = __webpack_require__(685); var _create2 = _interopRequireDefault(_create); -var _typeof2 = __webpack_require__(139); +var _typeof2 = __webpack_require__(182); var _typeof3 = _interopRequireDefault(_typeof2); @@ -155,7 +204,7 @@ exports.default = function (subClass, superClass) { }; /***/ }), -/* 4 */ +/* 5 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -163,7 +212,7 @@ exports.default = function (subClass, superClass) { exports.__esModule = true; -var _assign = __webpack_require__(192); +var _assign = __webpack_require__(258); var _assign2 = _interopRequireDefault(_assign); @@ -184,7 +233,7 @@ exports.default = _assign2.default || function (target) { }; /***/ }), -/* 5 */ +/* 6 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -209,7 +258,7 @@ if (true) { // By explicitly using `prop-types` you are opting into new development behavior. // http://fb.me/prop-types-in-prod var throwOnDirectAccess = true; - module.exports = __webpack_require__(587)(isValidElement, throwOnDirectAccess); + module.exports = __webpack_require__(540)(isValidElement, throwOnDirectAccess); } else { // By explicitly using `prop-types` you are opting into new production behavior. // http://fb.me/prop-types-in-prod @@ -218,7 +267,7 @@ if (true) { /***/ }), -/* 6 */ +/* 7 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -239,7 +288,7 @@ exports.default = function (obj, keys) { }; /***/ }), -/* 7 */ +/* 8 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! @@ -293,55 +342,6 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! }()); -/***/ }), -/* 8 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(14); -var core = __webpack_require__(50); -var hide = __webpack_require__(36); -var redefine = __webpack_require__(37); -var ctx = __webpack_require__(46); -var PROTOTYPE = 'prototype'; - -var $export = function (type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]; - var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {}); - var key, own, out, exp; - if (IS_GLOBAL) source = name; - for (key in source) { - // contains in native - own = !IS_FORCED && target && target[key] !== undefined; - // export native or passed - out = (own ? target : source)[key]; - // bind timers to global for call from export context - exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; - // extend global - if (target) redefine(target, key, out, type & $export.U); - // export - if (exports[key] != out) hide(exports, key, exp); - if (IS_PROTO && expProto[key] != out) expProto[key] = out; - } -}; -global.core = core; -// type bitmap -$export.F = 1; // forced -$export.G = 2; // global -$export.S = 4; // static -$export.P = 8; // proto -$export.B = 16; // bind -$export.W = 32; // wrap -$export.U = 64; // safe -$export.R = 128; // real proto method for `library` -module.exports = $export; - - /***/ }), /* 9 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { @@ -357,15 +357,15 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); /* harmony export (immutable) */ __webpack_exports__["splitBsPropsAndOmit"] = splitBsPropsAndOmit; /* harmony export (immutable) */ __webpack_exports__["addStyle"] = addStyle; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_curry", function() { return _curry; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__ = __webpack_require__(140); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__ = __webpack_require__(283); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_invariant__ = __webpack_require__(24); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_invariant__ = __webpack_require__(23); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_invariant__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__StyleConfig__ = __webpack_require__(27); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__StyleConfig__ = __webpack_require__(24); // TODO: The publicly exposed parts of this should be in lib/BootstrapUtils. @@ -564,266 +564,51 @@ var _curry = curry; /***/ }), /* 10 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); -/* harmony export (immutable) */ __webpack_exports__["prefix"] = prefix; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bsClass", function() { return bsClass; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bsStyles", function() { return bsStyles; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bsSizes", function() { return bsSizes; }); -/* harmony export (immutable) */ __webpack_exports__["getClassSet"] = getClassSet; -/* harmony export (immutable) */ __webpack_exports__["splitBsProps"] = splitBsProps; -/* harmony export (immutable) */ __webpack_exports__["splitBsPropsAndOmit"] = splitBsPropsAndOmit; -/* harmony export (immutable) */ __webpack_exports__["addStyle"] = addStyle; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_curry", function() { return _curry; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__ = __webpack_require__(140); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_invariant__ = __webpack_require__(24); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_invariant__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__StyleConfig__ = __webpack_require__(28); - - -// TODO: The publicly exposed parts of this should be in lib/BootstrapUtils. - - - - - - -function curry(fn) { - return function () { - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - - var last = args[args.length - 1]; - if (typeof last === 'function') { - return fn.apply(undefined, args); - } - return function (Component) { - return fn.apply(undefined, args.concat([Component])); - }; - }; -} - -function prefix(props, variant) { - !(props.bsClass != null) ? true ? __WEBPACK_IMPORTED_MODULE_2_invariant___default()(false, 'A `bsClass` prop is required for this component') : invariant(false) : void 0; - return props.bsClass + (variant ? '-' + variant : ''); -} - -var bsClass = curry(function (defaultClass, Component) { - var propTypes = Component.propTypes || (Component.propTypes = {}); - var defaultProps = Component.defaultProps || (Component.defaultProps = {}); - - propTypes.bsClass = __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.string; - defaultProps.bsClass = defaultClass; - - return Component; -}); - -var bsStyles = curry(function (styles, defaultStyle, Component) { - if (typeof defaultStyle !== 'string') { - Component = defaultStyle; - defaultStyle = undefined; - } - - var existing = Component.STYLES || []; - var propTypes = Component.propTypes || {}; - - styles.forEach(function (style) { - if (existing.indexOf(style) === -1) { - existing.push(style); - } - }); - - var propType = __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.oneOf(existing); - - // expose the values on the propType function for documentation - Component.STYLES = existing; - propType._values = existing; - - Component.propTypes = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()({}, propTypes, { - bsStyle: propType - }); - - if (defaultStyle !== undefined) { - var defaultProps = Component.defaultProps || (Component.defaultProps = {}); - defaultProps.bsStyle = defaultStyle; - } - - return Component; -}); - -var bsSizes = curry(function (sizes, defaultSize, Component) { - if (typeof defaultSize !== 'string') { - Component = defaultSize; - defaultSize = undefined; - } - - var existing = Component.SIZES || []; - var propTypes = Component.propTypes || {}; - - sizes.forEach(function (size) { - if (existing.indexOf(size) === -1) { - existing.push(size); - } - }); - - var values = []; - existing.forEach(function (size) { - var mappedSize = __WEBPACK_IMPORTED_MODULE_4__StyleConfig__["b" /* SIZE_MAP */][size]; - if (mappedSize && mappedSize !== size) { - values.push(mappedSize); - } - - values.push(size); - }); - - var propType = __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.oneOf(values); - propType._values = values; - - // expose the values on the propType function for documentation - Component.SIZES = existing; - - Component.propTypes = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()({}, propTypes, { - bsSize: propType - }); - - if (defaultSize !== undefined) { - if (!Component.defaultProps) { - Component.defaultProps = {}; - } - Component.defaultProps.bsSize = defaultSize; - } - - return Component; -}); - -function getClassSet(props) { - var _classes; - - var classes = (_classes = {}, _classes[prefix(props)] = true, _classes); - - if (props.bsSize) { - var bsSize = __WEBPACK_IMPORTED_MODULE_4__StyleConfig__["b" /* SIZE_MAP */][props.bsSize] || props.bsSize; - classes[prefix(props, bsSize)] = true; - } - - if (props.bsStyle) { - classes[prefix(props, props.bsStyle)] = true; - } - - return classes; -} - -function getBsProps(props) { - return { - bsClass: props.bsClass, - bsSize: props.bsSize, - bsStyle: props.bsStyle, - bsRole: props.bsRole - }; -} - -function isBsProp(propName) { - return propName === 'bsClass' || propName === 'bsSize' || propName === 'bsStyle' || propName === 'bsRole'; -} - -function splitBsProps(props) { - var elementProps = {}; - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries___default()(props).forEach(function (_ref) { - var propName = _ref[0], - propValue = _ref[1]; - - if (!isBsProp(propName)) { - elementProps[propName] = propValue; - } - }); - - return [getBsProps(props), elementProps]; -} - -function splitBsPropsAndOmit(props, omittedPropNames) { - var isOmittedProp = {}; - omittedPropNames.forEach(function (propName) { - isOmittedProp[propName] = true; - }); - - var elementProps = {}; - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries___default()(props).forEach(function (_ref2) { - var propName = _ref2[0], - propValue = _ref2[1]; - - if (!isBsProp(propName) && !isOmittedProp[propName]) { - elementProps[propName] = propValue; - } - }); - - return [getBsProps(props), elementProps]; -} - -/** - * Add a style variant to a Component. Mutates the propTypes of the component - * in order to validate the new variant. - */ -function addStyle(Component) { - for (var _len2 = arguments.length, styleVariant = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { - styleVariant[_key2 - 1] = arguments[_key2]; - } +/***/ (function(module, exports, __webpack_require__) { - bsStyles(styleVariant, Component); -} +var isObject = __webpack_require__(13); +module.exports = function (it) { + if (!isObject(it)) throw TypeError(it + ' is not an object!'); + return it; +}; -var _curry = curry; /***/ }), /* 11 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - -var _react = __webpack_require__(0); - -var _react2 = _interopRequireDefault(_react); - -var _createChainableTypeChecker = __webpack_require__(115); +/***/ (function(module, exports) { -var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); +// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 +var global = module.exports = typeof window != 'undefined' && window.Math == Math + ? window : typeof self != 'undefined' && self.Math == Math ? self + // eslint-disable-next-line no-new-func + : Function('return this')(); +if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -function elementType(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue); +/***/ }), +/* 12 */ +/***/ (function(module, exports) { - if (_react2.default.isValidElement(propValue)) { - return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).'); +module.exports = function (exec) { + try { + return !!exec(); + } catch (e) { + return true; } +}; - if (propType !== 'function' && propType !== 'string') { - return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).'); - } - return null; -} +/***/ }), +/* 13 */ +/***/ (function(module, exports) { + +module.exports = function (it) { + return typeof it === 'object' ? it !== null : typeof it === 'function'; +}; -exports.default = (0, _createChainableTypeChecker2.default)(elementType); -module.exports = exports['default']; /***/ }), -/* 12 */ +/* 14 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -890,102 +675,53 @@ module.exports = warning; /***/ }), -/* 13 */ +/* 15 */ /***/ (function(module, exports, __webpack_require__) { -var isObject = __webpack_require__(16); -module.exports = function (it) { - if (!isObject(it)) throw TypeError(it + ' is not an object!'); - return it; -}; - - -/***/ }), -/* 14 */ -/***/ (function(module, exports) { - -// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 -var global = module.exports = typeof window != 'undefined' && window.Math == Math - ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : Function('return this')(); -if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef - +"use strict"; -/***/ }), -/* 15 */ -/***/ (function(module, exports) { -module.exports = function (exec) { - try { - return !!exec(); - } catch (e) { - return true; - } -}; +Object.defineProperty(exports, "__esModule", { + value: true +}); +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; -/***/ }), -/* 16 */ -/***/ (function(module, exports) { +var _react = __webpack_require__(0); -module.exports = function (it) { - return typeof it === 'object' ? it !== null : typeof it === 'function'; -}; +var _react2 = _interopRequireDefault(_react); +var _createChainableTypeChecker = __webpack_require__(125); -/***/ }), -/* 17 */ -/***/ (function(module, exports, __webpack_require__) { +var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); -"use strict"; +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +function elementType(props, propName, componentName, location, propFullName) { + var propValue = props[propName]; + var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue); -function checkDCE() { - /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */ - if ( - typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' || - typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function' - ) { - return; - } - if (true) { - // This branch is unreachable because this function is only called - // in production, but the condition is true only in development. - // Therefore if the branch is still here, dead code elimination wasn't - // properly applied. - // Don't change the message. React DevTools relies on it. Also make sure - // this message doesn't occur elsewhere in this function, or it will cause - // a false positive. - throw new Error('^_^'); + if (_react2.default.isValidElement(propValue)) { + return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).'); } - try { - // Verify that the code above has been dead code eliminated (DCE'd). - __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE); - } catch (err) { - // DevTools shouldn't crash React, no matter what. - // We should still report in case we break this code. - console.error(err); + + if (propType !== 'function' && propType !== 'string') { + return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).'); } -} -if (false) { - // DCE check should happen before ReactDOM bundle executes so that - // DevTools can report bad minification during injection. - checkDCE(); - module.exports = require('./cjs/react-dom.production.min.js'); -} else { - module.exports = __webpack_require__(573); + return null; } +exports.default = (0, _createChainableTypeChecker2.default)(elementType); +module.exports = exports['default']; /***/ }), -/* 18 */ +/* 16 */ /***/ (function(module, exports, __webpack_require__) { -var store = __webpack_require__(120)('wks'); -var uid = __webpack_require__(75); -var Symbol = __webpack_require__(14).Symbol; +var store = __webpack_require__(106)('wks'); +var uid = __webpack_require__(63); +var Symbol = __webpack_require__(11).Symbol; var USE_SYMBOL = typeof Symbol == 'function'; var $exports = module.exports = function (name) { @@ -997,25 +733,25 @@ $exports.store = store; /***/ }), -/* 19 */ +/* 17 */ /***/ (function(module, exports, __webpack_require__) { // Thank's IE8 for his funny defineProperty -module.exports = !__webpack_require__(15)(function () { +module.exports = !__webpack_require__(12)(function () { return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), -/* 20 */ +/* 18 */ /***/ (function(module, exports, __webpack_require__) { -var anObject = __webpack_require__(13); -var IE8_DOM_DEFINE = __webpack_require__(225); -var toPrimitive = __webpack_require__(51); +var anObject = __webpack_require__(10); +var IE8_DOM_DEFINE = __webpack_require__(201); +var toPrimitive = __webpack_require__(45); var dP = Object.defineProperty; -exports.f = __webpack_require__(19) ? Object.defineProperty : function defineProperty(O, P, Attributes) { +exports.f = __webpack_require__(17) ? Object.defineProperty : function defineProperty(O, P, Attributes) { anObject(O); P = toPrimitive(P, true); anObject(Attributes); @@ -1029,11 +765,11 @@ exports.f = __webpack_require__(19) ? Object.defineProperty : function definePro /***/ }), -/* 21 */ +/* 19 */ /***/ (function(module, exports, __webpack_require__) { // 7.1.15 ToLength -var toInteger = __webpack_require__(53); +var toInteger = __webpack_require__(47); var min = Math.min; module.exports = function (it) { return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 @@ -1041,7 +777,18 @@ module.exports = function (it) { /***/ }), -/* 22 */ +/* 20 */ +/***/ (function(module, exports, __webpack_require__) { + +// 7.1.13 ToObject(argument) +var defined = __webpack_require__(46); +module.exports = function (it) { + return Object(defined(it)); +}; + + +/***/ }), +/* 21 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -1084,18 +831,26 @@ function createChainedFunction() { /* harmony default export */ __webpack_exports__["a"] = (createChainedFunction); /***/ }), -/* 23 */ -/***/ (function(module, exports, __webpack_require__) { +/* 22 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_Provider__ = __webpack_require__(539); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_connectAdvanced__ = __webpack_require__(238); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__connect_connect__ = __webpack_require__(542); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Provider", function() { return __WEBPACK_IMPORTED_MODULE_0__components_Provider__["b"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "createProvider", function() { return __WEBPACK_IMPORTED_MODULE_0__components_Provider__["a"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "connectAdvanced", function() { return __WEBPACK_IMPORTED_MODULE_1__components_connectAdvanced__["a"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "connect", function() { return __WEBPACK_IMPORTED_MODULE_2__connect_connect__["a"]; }); + + + -// 7.1.13 ToObject(argument) -var defined = __webpack_require__(52); -module.exports = function (it) { - return Object(defined(it)); -}; /***/ }), -/* 24 */ +/* 23 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1153,69 +908,7 @@ module.exports = invariant; /***/ }), -/* 25 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/** - * Safe chained function - * - * Will only create a new function if needed, - * otherwise will pass back existing functions or null. - * - * @param {function} functions to chain - * @returns {function|null} - */ -function createChainedFunction() { - for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) { - funcs[_key] = arguments[_key]; - } - - return funcs.filter(function (f) { - return f != null; - }).reduce(function (acc, f) { - if (typeof f !== 'function') { - throw new Error('Invalid Argument Type, must only provide functions, undefined, or null.'); - } - - if (acc === null) { - return f; - } - - return function chainedFunction() { - for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { - args[_key2] = arguments[_key2]; - } - - acc.apply(this, args); - f.apply(this, args); - }; - }, null); -} - -/* harmony default export */ __webpack_exports__["a"] = (createChainedFunction); - -/***/ }), -/* 26 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_Provider__ = __webpack_require__(586); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_connectAdvanced__ = __webpack_require__(262); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__connect_connect__ = __webpack_require__(589); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Provider", function() { return __WEBPACK_IMPORTED_MODULE_0__components_Provider__["b"]; }); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "createProvider", function() { return __WEBPACK_IMPORTED_MODULE_0__components_Provider__["a"]; }); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "connectAdvanced", function() { return __WEBPACK_IMPORTED_MODULE_1__components_connectAdvanced__["a"]; }); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "connect", function() { return __WEBPACK_IMPORTED_MODULE_2__connect_connect__["a"]; }); - - - - - - -/***/ }), -/* 27 */ +/* 24 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -1258,60 +951,62 @@ var Style = { }; /***/ }), -/* 28 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* 25 */ +/***/ (function(module, exports) { -"use strict"; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return Size; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return SIZE_MAP; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return DEVICE_SIZES; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return State; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return Style; }); -var Size = { - LARGE: 'large', - SMALL: 'small', - XSMALL: 'xsmall' +module.exports = function (it) { + if (typeof it != 'function') throw TypeError(it + ' is not a function!'); + return it; }; -var SIZE_MAP = { - large: 'lg', - medium: 'md', - small: 'sm', - xsmall: 'xs', - lg: 'lg', - md: 'md', - sm: 'sm', - xs: 'xs' -}; -var DEVICE_SIZES = ['lg', 'md', 'sm', 'xs']; +/***/ }), +/* 26 */ +/***/ (function(module, exports, __webpack_require__) { -var State = { - SUCCESS: 'success', - WARNING: 'warning', - DANGER: 'danger', - INFO: 'info' -}; +"use strict"; -var Style = { - DEFAULT: 'default', - PRIMARY: 'primary', - LINK: 'link', - INVERSE: 'inverse' -}; -/***/ }), -/* 29 */ -/***/ (function(module, exports) { +function checkDCE() { + /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */ + if ( + typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' || + typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function' + ) { + return; + } + if (true) { + // This branch is unreachable because this function is only called + // in production, but the condition is true only in development. + // Therefore if the branch is still here, dead code elimination wasn't + // properly applied. + // Don't change the message. React DevTools relies on it. Also make sure + // this message doesn't occur elsewhere in this function, or it will cause + // a false positive. + throw new Error('^_^'); + } + try { + // Verify that the code above has been dead code eliminated (DCE'd). + __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE); + } catch (err) { + // DevTools shouldn't crash React, no matter what. + // We should still report in case we break this code. + console.error(err); + } +} -module.exports = function (it) { - if (typeof it != 'function') throw TypeError(it + ' is not a function!'); - return it; -}; +if (false) { + // DCE check should happen before ReactDOM bundle executes so that + // DevTools can report bad minification during injection. + checkDCE(); + module.exports = require('./cjs/react-dom.production.min.js'); +} else { + module.exports = __webpack_require__(526); +} /***/ }), -/* 30 */ +/* 27 */ /***/ (function(module, exports) { var core = module.exports = { version: '2.5.3' }; @@ -1319,13 +1014,13 @@ if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef /***/ }), -/* 31 */ +/* 28 */ /***/ (function(module, exports, __webpack_require__) { -module.exports = { "default": __webpack_require__(706), __esModule: true }; +module.exports = { "default": __webpack_require__(659), __esModule: true }; /***/ }), -/* 32 */ +/* 29 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1333,7 +1028,7 @@ module.exports = { "default": __webpack_require__(706), __esModule: true }; exports.__esModule = true; -var _defineProperty = __webpack_require__(287); +var _defineProperty = __webpack_require__(264); var _defineProperty2 = _interopRequireDefault(_defineProperty); @@ -1358,198 +1053,7 @@ exports.default = function () { }(); /***/ }), -/* 33 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__); -// TODO: This module should be ElementChildren, and should use named exports. - - - -/** - * Iterates through children that are typically specified as `props.children`, - * but only maps over children that are "valid components". - * - * The mapFunction provided index will be normalised to the components mapped, - * so an invalid component would not increase the index. - * - * @param {?*} children Children tree container. - * @param {function(*, int)} func. - * @param {*} context Context for func. - * @return {object} Object containing the ordered map of results. - */ -function map(children, func, context) { - var index = 0; - - return __WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.map(children, function (child) { - if (!__WEBPACK_IMPORTED_MODULE_0_react___default.a.isValidElement(child)) { - return child; - } - - return func.call(context, child, index++); - }); -} - -/** - * Iterates through children that are "valid components". - * - * The provided forEachFunc(child, index) will be called for each - * leaf child with the index reflecting the position relative to "valid components". - * - * @param {?*} children Children tree container. - * @param {function(*, int)} func. - * @param {*} context Context for context. - */ -function forEach(children, func, context) { - var index = 0; - - __WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.forEach(children, function (child) { - if (!__WEBPACK_IMPORTED_MODULE_0_react___default.a.isValidElement(child)) { - return; - } - - func.call(context, child, index++); - }); -} - -/** - * Count the number of "valid components" in the Children container. - * - * @param {?*} children Children tree container. - * @returns {number} - */ -function count(children) { - var result = 0; - - __WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.forEach(children, function (child) { - if (!__WEBPACK_IMPORTED_MODULE_0_react___default.a.isValidElement(child)) { - return; - } - - ++result; - }); - - return result; -} - -/** - * Finds children that are typically specified as `props.children`, - * but only iterates over children that are "valid components". - * - * The provided forEachFunc(child, index) will be called for each - * leaf child with the index reflecting the position relative to "valid components". - * - * @param {?*} children Children tree container. - * @param {function(*, int)} func. - * @param {*} context Context for func. - * @returns {array} of children that meet the func return statement - */ -function filter(children, func, context) { - var index = 0; - var result = []; - - __WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.forEach(children, function (child) { - if (!__WEBPACK_IMPORTED_MODULE_0_react___default.a.isValidElement(child)) { - return; - } - - if (func.call(context, child, index++)) { - result.push(child); - } - }); - - return result; -} - -function find(children, func, context) { - var index = 0; - var result = void 0; - - __WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.forEach(children, function (child) { - if (result) { - return; - } - if (!__WEBPACK_IMPORTED_MODULE_0_react___default.a.isValidElement(child)) { - return; - } - - if (func.call(context, child, index++)) { - result = child; - } - }); - - return result; -} - -function every(children, func, context) { - var index = 0; - var result = true; - - __WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.forEach(children, function (child) { - if (!result) { - return; - } - if (!__WEBPACK_IMPORTED_MODULE_0_react___default.a.isValidElement(child)) { - return; - } - - if (!func.call(context, child, index++)) { - result = false; - } - }); - - return result; -} - -function some(children, func, context) { - var index = 0; - var result = false; - - __WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.forEach(children, function (child) { - if (result) { - return; - } - if (!__WEBPACK_IMPORTED_MODULE_0_react___default.a.isValidElement(child)) { - return; - } - - if (func.call(context, child, index++)) { - result = true; - } - }); - - return result; -} - -function toArray(children) { - var result = []; - - __WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.forEach(children, function (child) { - if (!__WEBPACK_IMPORTED_MODULE_0_react___default.a.isValidElement(child)) { - return; - } - - result.push(child); - }); - - return result; -} - -/* harmony default export */ __webpack_exports__["a"] = ({ - map: map, - forEach: forEach, - count: count, - find: find, - filter: filter, - every: every, - some: some, - toArray: toArray -}); - -/***/ }), -/* 34 */ +/* 30 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -1740,7 +1244,7 @@ function toArray(children) { }); /***/ }), -/* 35 */ +/* 31 */ /***/ (function(module, exports) { var hasOwnProperty = {}.hasOwnProperty; @@ -1750,12 +1254,12 @@ module.exports = function (it, key) { /***/ }), -/* 36 */ +/* 32 */ /***/ (function(module, exports, __webpack_require__) { -var dP = __webpack_require__(20); -var createDesc = __webpack_require__(74); -module.exports = __webpack_require__(19) ? function (object, key, value) { +var dP = __webpack_require__(18); +var createDesc = __webpack_require__(62); +module.exports = __webpack_require__(17) ? function (object, key, value) { return dP.f(object, key, createDesc(1, value)); } : function (object, key, value) { object[key] = value; @@ -1764,18 +1268,18 @@ module.exports = __webpack_require__(19) ? function (object, key, value) { /***/ }), -/* 37 */ +/* 33 */ /***/ (function(module, exports, __webpack_require__) { -var global = __webpack_require__(14); -var hide = __webpack_require__(36); -var has = __webpack_require__(35); -var SRC = __webpack_require__(75)('src'); +var global = __webpack_require__(11); +var hide = __webpack_require__(32); +var has = __webpack_require__(31); +var SRC = __webpack_require__(63)('src'); var TO_STRING = 'toString'; var $toString = Function[TO_STRING]; var TPL = ('' + $toString).split(TO_STRING); -__webpack_require__(50).inspectSource = function (it) { +__webpack_require__(44).inspectSource = function (it) { return $toString.call(it); }; @@ -1801,12 +1305,12 @@ __webpack_require__(50).inspectSource = function (it) { /***/ }), -/* 38 */ +/* 34 */ /***/ (function(module, exports, __webpack_require__) { -var $export = __webpack_require__(8); -var fails = __webpack_require__(15); -var defined = __webpack_require__(52); +var $export = __webpack_require__(1); +var fails = __webpack_require__(12); +var defined = __webpack_require__(46); var quot = /"/g; // B.2.3.2.1 CreateHTML(string, tag, attribute, value) var createHTML = function (string, tag, attribute, value) { @@ -1826,144 +1330,431 @@ module.exports = function (NAME, exec) { /***/ }), -/* 39 */ -/***/ (function(module, exports, __webpack_require__) { +/* 35 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { -// to indexed object, toObject with fallback for non-array-like ES3 strings -var IObject = __webpack_require__(103); -var defined = __webpack_require__(52); -module.exports = function (it) { - return IObject(defined(it)); -}; +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Accordion__ = __webpack_require__(688); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Accordion", function() { return __WEBPACK_IMPORTED_MODULE_0__Accordion__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Alert__ = __webpack_require__(693); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Alert", function() { return __WEBPACK_IMPORTED_MODULE_1__Alert__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Badge__ = __webpack_require__(696); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Badge", function() { return __WEBPACK_IMPORTED_MODULE_2__Badge__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Breadcrumb__ = __webpack_require__(697); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Breadcrumb", function() { return __WEBPACK_IMPORTED_MODULE_3__Breadcrumb__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__BreadcrumbItem__ = __webpack_require__(286); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "BreadcrumbItem", function() { return __WEBPACK_IMPORTED_MODULE_4__BreadcrumbItem__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__Button__ = __webpack_require__(104); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Button", function() { return __WEBPACK_IMPORTED_MODULE_5__Button__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ButtonGroup__ = __webpack_require__(189); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ButtonGroup", function() { return __WEBPACK_IMPORTED_MODULE_6__ButtonGroup__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ButtonToolbar__ = __webpack_require__(698); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ButtonToolbar", function() { return __WEBPACK_IMPORTED_MODULE_7__ButtonToolbar__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__Carousel__ = __webpack_require__(699); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Carousel", function() { return __WEBPACK_IMPORTED_MODULE_8__Carousel__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__CarouselItem__ = __webpack_require__(287); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "CarouselItem", function() { return __WEBPACK_IMPORTED_MODULE_9__CarouselItem__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Checkbox__ = __webpack_require__(709); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Checkbox", function() { return __WEBPACK_IMPORTED_MODULE_10__Checkbox__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__Clearfix__ = __webpack_require__(710); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Clearfix", function() { return __WEBPACK_IMPORTED_MODULE_11__Clearfix__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__CloseButton__ = __webpack_require__(188); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "CloseButton", function() { return __WEBPACK_IMPORTED_MODULE_12__CloseButton__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__ControlLabel__ = __webpack_require__(711); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ControlLabel", function() { return __WEBPACK_IMPORTED_MODULE_13__ControlLabel__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__Col__ = __webpack_require__(712); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Col", function() { return __WEBPACK_IMPORTED_MODULE_14__Col__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__Collapse__ = __webpack_require__(192); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Collapse", function() { return __WEBPACK_IMPORTED_MODULE_15__Collapse__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__Dropdown__ = __webpack_require__(127); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Dropdown", function() { return __WEBPACK_IMPORTED_MODULE_16__Dropdown__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__DropdownButton__ = __webpack_require__(724); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "DropdownButton", function() { return __WEBPACK_IMPORTED_MODULE_17__DropdownButton__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__Fade__ = __webpack_require__(130); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Fade", function() { return __WEBPACK_IMPORTED_MODULE_18__Fade__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__Form__ = __webpack_require__(725); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Form", function() { return __WEBPACK_IMPORTED_MODULE_19__Form__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__FormControl__ = __webpack_require__(726); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "FormControl", function() { return __WEBPACK_IMPORTED_MODULE_20__FormControl__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__FormGroup__ = __webpack_require__(729); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "FormGroup", function() { return __WEBPACK_IMPORTED_MODULE_21__FormGroup__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__Glyphicon__ = __webpack_require__(191); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Glyphicon", function() { return __WEBPACK_IMPORTED_MODULE_22__Glyphicon__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__Grid__ = __webpack_require__(295); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Grid", function() { return __WEBPACK_IMPORTED_MODULE_23__Grid__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__HelpBlock__ = __webpack_require__(730); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "HelpBlock", function() { return __WEBPACK_IMPORTED_MODULE_24__HelpBlock__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_25__Image__ = __webpack_require__(731); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Image", function() { return __WEBPACK_IMPORTED_MODULE_25__Image__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_26__InputGroup__ = __webpack_require__(732); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "InputGroup", function() { return __WEBPACK_IMPORTED_MODULE_26__InputGroup__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27__Jumbotron__ = __webpack_require__(735); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Jumbotron", function() { return __WEBPACK_IMPORTED_MODULE_27__Jumbotron__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_28__Label__ = __webpack_require__(736); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Label", function() { return __WEBPACK_IMPORTED_MODULE_28__Label__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_29__ListGroup__ = __webpack_require__(737); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ListGroup", function() { return __WEBPACK_IMPORTED_MODULE_29__ListGroup__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_30__ListGroupItem__ = __webpack_require__(296); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ListGroupItem", function() { return __WEBPACK_IMPORTED_MODULE_30__ListGroupItem__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_31__Media__ = __webpack_require__(131); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Media", function() { return __WEBPACK_IMPORTED_MODULE_31__Media__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_32__MenuItem__ = __webpack_require__(744); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MenuItem", function() { return __WEBPACK_IMPORTED_MODULE_32__MenuItem__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_33__Modal__ = __webpack_require__(745); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Modal", function() { return __WEBPACK_IMPORTED_MODULE_33__Modal__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_34__ModalBody__ = __webpack_require__(301); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ModalBody", function() { return __WEBPACK_IMPORTED_MODULE_34__ModalBody__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_35__ModalFooter__ = __webpack_require__(302); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ModalFooter", function() { return __WEBPACK_IMPORTED_MODULE_35__ModalFooter__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_36__ModalHeader__ = __webpack_require__(303); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ModalHeader", function() { return __WEBPACK_IMPORTED_MODULE_36__ModalHeader__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_37__ModalTitle__ = __webpack_require__(304); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ModalTitle", function() { return __WEBPACK_IMPORTED_MODULE_37__ModalTitle__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_38__Nav__ = __webpack_require__(305); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Nav", function() { return __WEBPACK_IMPORTED_MODULE_38__Nav__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_39__Navbar__ = __webpack_require__(761); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Navbar", function() { return __WEBPACK_IMPORTED_MODULE_39__Navbar__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_40__NavbarBrand__ = __webpack_require__(306); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "NavbarBrand", function() { return __WEBPACK_IMPORTED_MODULE_40__NavbarBrand__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_41__NavDropdown__ = __webpack_require__(765); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "NavDropdown", function() { return __WEBPACK_IMPORTED_MODULE_41__NavDropdown__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_42__NavItem__ = __webpack_require__(307); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "NavItem", function() { return __WEBPACK_IMPORTED_MODULE_42__NavItem__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_43__Overlay__ = __webpack_require__(308); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Overlay", function() { return __WEBPACK_IMPORTED_MODULE_43__Overlay__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_44__OverlayTrigger__ = __webpack_require__(772); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "OverlayTrigger", function() { return __WEBPACK_IMPORTED_MODULE_44__OverlayTrigger__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_45__PageHeader__ = __webpack_require__(773); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "PageHeader", function() { return __WEBPACK_IMPORTED_MODULE_45__PageHeader__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_46__PageItem__ = __webpack_require__(774); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "PageItem", function() { return __WEBPACK_IMPORTED_MODULE_46__PageItem__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_47__Pager__ = __webpack_require__(776); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Pager", function() { return __WEBPACK_IMPORTED_MODULE_47__Pager__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_48__Pagination__ = __webpack_require__(777); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Pagination", function() { return __WEBPACK_IMPORTED_MODULE_48__Pagination__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_49__Panel__ = __webpack_require__(779); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Panel", function() { return __WEBPACK_IMPORTED_MODULE_49__Panel__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_50__PanelGroup__ = __webpack_require__(282); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "PanelGroup", function() { return __WEBPACK_IMPORTED_MODULE_50__PanelGroup__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_51__Popover__ = __webpack_require__(785); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Popover", function() { return __WEBPACK_IMPORTED_MODULE_51__Popover__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_52__ProgressBar__ = __webpack_require__(786); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ProgressBar", function() { return __WEBPACK_IMPORTED_MODULE_52__ProgressBar__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_53__Radio__ = __webpack_require__(787); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Radio", function() { return __WEBPACK_IMPORTED_MODULE_53__Radio__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_54__ResponsiveEmbed__ = __webpack_require__(788); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ResponsiveEmbed", function() { return __WEBPACK_IMPORTED_MODULE_54__ResponsiveEmbed__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_55__Row__ = __webpack_require__(789); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Row", function() { return __WEBPACK_IMPORTED_MODULE_55__Row__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_56__SafeAnchor__ = __webpack_require__(43); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "SafeAnchor", function() { return __WEBPACK_IMPORTED_MODULE_56__SafeAnchor__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_57__SplitButton__ = __webpack_require__(790); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "SplitButton", function() { return __WEBPACK_IMPORTED_MODULE_57__SplitButton__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_58__Tab__ = __webpack_require__(792); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Tab", function() { return __WEBPACK_IMPORTED_MODULE_58__Tab__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_59__TabContainer__ = __webpack_require__(197); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "TabContainer", function() { return __WEBPACK_IMPORTED_MODULE_59__TabContainer__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_60__TabContent__ = __webpack_require__(198); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "TabContent", function() { return __WEBPACK_IMPORTED_MODULE_60__TabContent__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_61__Table__ = __webpack_require__(793); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Table", function() { return __WEBPACK_IMPORTED_MODULE_61__Table__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_62__TabPane__ = __webpack_require__(314); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "TabPane", function() { return __WEBPACK_IMPORTED_MODULE_62__TabPane__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_63__Tabs__ = __webpack_require__(794); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Tabs", function() { return __WEBPACK_IMPORTED_MODULE_63__Tabs__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_64__Thumbnail__ = __webpack_require__(795); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Thumbnail", function() { return __WEBPACK_IMPORTED_MODULE_64__Thumbnail__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_65__ToggleButton__ = __webpack_require__(315); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ToggleButton", function() { return __WEBPACK_IMPORTED_MODULE_65__ToggleButton__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_66__ToggleButtonGroup__ = __webpack_require__(796); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ToggleButtonGroup", function() { return __WEBPACK_IMPORTED_MODULE_66__ToggleButtonGroup__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_67__Tooltip__ = __webpack_require__(797); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Tooltip", function() { return __WEBPACK_IMPORTED_MODULE_67__Tooltip__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_68__Well__ = __webpack_require__(798); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Well", function() { return __WEBPACK_IMPORTED_MODULE_68__Well__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_69__utils__ = __webpack_require__(799); +/* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "utils", function() { return __WEBPACK_IMPORTED_MODULE_69__utils__; }); -/***/ }), -/* 40 */ -/***/ (function(module, exports, __webpack_require__) { -var pIE = __webpack_require__(104); -var createDesc = __webpack_require__(74); -var toIObject = __webpack_require__(39); -var toPrimitive = __webpack_require__(51); -var has = __webpack_require__(35); -var IE8_DOM_DEFINE = __webpack_require__(225); -var gOPD = Object.getOwnPropertyDescriptor; -exports.f = __webpack_require__(19) ? gOPD : function getOwnPropertyDescriptor(O, P) { - O = toIObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) try { - return gOPD(O, P); - } catch (e) { /* empty */ } - if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); -}; -/***/ }), -/* 41 */ -/***/ (function(module, exports, __webpack_require__) { -// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) -var has = __webpack_require__(35); -var toObject = __webpack_require__(23); -var IE_PROTO = __webpack_require__(157)('IE_PROTO'); -var ObjectProto = Object.prototype; -module.exports = Object.getPrototypeOf || function (O) { - O = toObject(O); - if (has(O, IE_PROTO)) return O[IE_PROTO]; - if (typeof O.constructor == 'function' && O instanceof O.constructor) { - return O.constructor.prototype; - } return O instanceof Object ? ObjectProto : null; -}; -/***/ }), -/* 42 */ -/***/ (function(module, exports, __webpack_require__) { -"use strict"; -var bind = __webpack_require__(289); -/*global toString:true*/ -// utils is a library of generic helper functions non-specific to axios -var toString = Object.prototype.toString; -/** - * Determine if a value is an Array - * - * @param {Object} val The value to test - * @returns {boolean} True if value is an Array, otherwise false - */ -function isArray(val) { - return toString.call(val) === '[object Array]'; -} -/** - * Determine if a value is an ArrayBuffer - * - * @param {Object} val The value to test - * @returns {boolean} True if value is an ArrayBuffer, otherwise false - */ -function isArrayBuffer(val) { - return toString.call(val) === '[object ArrayBuffer]'; -} -/** - * Determine if a value is a FormData - * - * @param {Object} val The value to test - * @returns {boolean} True if value is an FormData, otherwise false - */ -function isFormData(val) { - return (typeof FormData !== 'undefined') && (val instanceof FormData); -} -/** - * Determine if a value is a view on an ArrayBuffer - * - * @param {Object} val The value to test - * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false - */ -function isArrayBufferView(val) { - var result; - if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) { - result = ArrayBuffer.isView(val); - } else { - result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer); - } - return result; -} -/** - * Determine if a value is a String - * - * @param {Object} val The value to test - * @returns {boolean} True if value is a String, otherwise false - */ -function isString(val) { - return typeof val === 'string'; -} -/** - * Determine if a value is a Number - * - * @param {Object} val The value to test - * @returns {boolean} True if value is a Number, otherwise false - */ -function isNumber(val) { - return typeof val === 'number'; -} -/** - * Determine if a value is undefined - * - * @param {Object} val The value to test - * @returns {boolean} True if the value is undefined, otherwise false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +/***/ }), +/* 36 */ +/***/ (function(module, exports, __webpack_require__) { + +// to indexed object, toObject with fallback for non-array-like ES3 strings +var IObject = __webpack_require__(92); +var defined = __webpack_require__(46); +module.exports = function (it) { + return IObject(defined(it)); +}; + + +/***/ }), +/* 37 */ +/***/ (function(module, exports, __webpack_require__) { + +var pIE = __webpack_require__(93); +var createDesc = __webpack_require__(62); +var toIObject = __webpack_require__(36); +var toPrimitive = __webpack_require__(45); +var has = __webpack_require__(31); +var IE8_DOM_DEFINE = __webpack_require__(201); +var gOPD = Object.getOwnPropertyDescriptor; + +exports.f = __webpack_require__(17) ? gOPD : function getOwnPropertyDescriptor(O, P) { + O = toIObject(O); + P = toPrimitive(P, true); + if (IE8_DOM_DEFINE) try { + return gOPD(O, P); + } catch (e) { /* empty */ } + if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); +}; + + +/***/ }), +/* 38 */ +/***/ (function(module, exports, __webpack_require__) { + +// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) +var has = __webpack_require__(31); +var toObject = __webpack_require__(20); +var IE_PROTO = __webpack_require__(137)('IE_PROTO'); +var ObjectProto = Object.prototype; + +module.exports = Object.getPrototypeOf || function (O) { + O = toObject(O); + if (has(O, IE_PROTO)) return O[IE_PROTO]; + if (typeof O.constructor == 'function' && O instanceof O.constructor) { + return O.constructor.prototype; + } return O instanceof Object ? ObjectProto : null; +}; + + +/***/ }), +/* 39 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var bind = __webpack_require__(266); + +/*global toString:true*/ + +// utils is a library of generic helper functions non-specific to axios + +var toString = Object.prototype.toString; + +/** + * Determine if a value is an Array + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an Array, otherwise false + */ +function isArray(val) { + return toString.call(val) === '[object Array]'; +} + +/** + * Determine if a value is an ArrayBuffer + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an ArrayBuffer, otherwise false + */ +function isArrayBuffer(val) { + return toString.call(val) === '[object ArrayBuffer]'; +} + +/** + * Determine if a value is a FormData + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an FormData, otherwise false + */ +function isFormData(val) { + return (typeof FormData !== 'undefined') && (val instanceof FormData); +} + +/** + * Determine if a value is a view on an ArrayBuffer + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false + */ +function isArrayBufferView(val) { + var result; + if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) { + result = ArrayBuffer.isView(val); + } else { + result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer); + } + return result; +} + +/** + * Determine if a value is a String + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a String, otherwise false + */ +function isString(val) { + return typeof val === 'string'; +} + +/** + * Determine if a value is a Number + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Number, otherwise false + */ +function isNumber(val) { + return typeof val === 'number'; +} + +/** + * Determine if a value is undefined + * + * @param {Object} val The value to test + * @returns {boolean} True if the value is undefined, otherwise false */ function isUndefined(val) { return typeof val === 'undefined'; @@ -2185,341 +1976,11 @@ module.exports = { /***/ }), -/* 43 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Accordion__ = __webpack_require__(735); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Accordion", function() { return __WEBPACK_IMPORTED_MODULE_0__Accordion__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Alert__ = __webpack_require__(740); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Alert", function() { return __WEBPACK_IMPORTED_MODULE_1__Alert__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Badge__ = __webpack_require__(743); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Badge", function() { return __WEBPACK_IMPORTED_MODULE_2__Badge__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Breadcrumb__ = __webpack_require__(744); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Breadcrumb", function() { return __WEBPACK_IMPORTED_MODULE_3__Breadcrumb__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__BreadcrumbItem__ = __webpack_require__(308); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "BreadcrumbItem", function() { return __WEBPACK_IMPORTED_MODULE_4__BreadcrumbItem__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__Button__ = __webpack_require__(116); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Button", function() { return __WEBPACK_IMPORTED_MODULE_5__Button__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__ButtonGroup__ = __webpack_require__(209); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ButtonGroup", function() { return __WEBPACK_IMPORTED_MODULE_6__ButtonGroup__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__ButtonToolbar__ = __webpack_require__(745); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ButtonToolbar", function() { return __WEBPACK_IMPORTED_MODULE_7__ButtonToolbar__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__Carousel__ = __webpack_require__(746); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Carousel", function() { return __WEBPACK_IMPORTED_MODULE_8__Carousel__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__CarouselItem__ = __webpack_require__(309); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "CarouselItem", function() { return __WEBPACK_IMPORTED_MODULE_9__CarouselItem__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Checkbox__ = __webpack_require__(756); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Checkbox", function() { return __WEBPACK_IMPORTED_MODULE_10__Checkbox__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__Clearfix__ = __webpack_require__(757); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Clearfix", function() { return __WEBPACK_IMPORTED_MODULE_11__Clearfix__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__CloseButton__ = __webpack_require__(208); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "CloseButton", function() { return __WEBPACK_IMPORTED_MODULE_12__CloseButton__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__ControlLabel__ = __webpack_require__(758); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ControlLabel", function() { return __WEBPACK_IMPORTED_MODULE_13__ControlLabel__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__Col__ = __webpack_require__(759); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Col", function() { return __WEBPACK_IMPORTED_MODULE_14__Col__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__Collapse__ = __webpack_require__(211); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Collapse", function() { return __WEBPACK_IMPORTED_MODULE_15__Collapse__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__Dropdown__ = __webpack_require__(142); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Dropdown", function() { return __WEBPACK_IMPORTED_MODULE_16__Dropdown__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__DropdownButton__ = __webpack_require__(770); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "DropdownButton", function() { return __WEBPACK_IMPORTED_MODULE_17__DropdownButton__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__Fade__ = __webpack_require__(146); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Fade", function() { return __WEBPACK_IMPORTED_MODULE_18__Fade__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__Form__ = __webpack_require__(771); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Form", function() { return __WEBPACK_IMPORTED_MODULE_19__Form__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__FormControl__ = __webpack_require__(772); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "FormControl", function() { return __WEBPACK_IMPORTED_MODULE_20__FormControl__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__FormGroup__ = __webpack_require__(775); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "FormGroup", function() { return __WEBPACK_IMPORTED_MODULE_21__FormGroup__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__Glyphicon__ = __webpack_require__(210); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Glyphicon", function() { return __WEBPACK_IMPORTED_MODULE_22__Glyphicon__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__Grid__ = __webpack_require__(317); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Grid", function() { return __WEBPACK_IMPORTED_MODULE_23__Grid__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__HelpBlock__ = __webpack_require__(776); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "HelpBlock", function() { return __WEBPACK_IMPORTED_MODULE_24__HelpBlock__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_25__Image__ = __webpack_require__(777); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Image", function() { return __WEBPACK_IMPORTED_MODULE_25__Image__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_26__InputGroup__ = __webpack_require__(778); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "InputGroup", function() { return __WEBPACK_IMPORTED_MODULE_26__InputGroup__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27__Jumbotron__ = __webpack_require__(781); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Jumbotron", function() { return __WEBPACK_IMPORTED_MODULE_27__Jumbotron__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_28__Label__ = __webpack_require__(782); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Label", function() { return __WEBPACK_IMPORTED_MODULE_28__Label__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_29__ListGroup__ = __webpack_require__(783); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ListGroup", function() { return __WEBPACK_IMPORTED_MODULE_29__ListGroup__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_30__ListGroupItem__ = __webpack_require__(318); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ListGroupItem", function() { return __WEBPACK_IMPORTED_MODULE_30__ListGroupItem__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_31__Media__ = __webpack_require__(147); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Media", function() { return __WEBPACK_IMPORTED_MODULE_31__Media__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_32__MenuItem__ = __webpack_require__(790); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MenuItem", function() { return __WEBPACK_IMPORTED_MODULE_32__MenuItem__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_33__Modal__ = __webpack_require__(791); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Modal", function() { return __WEBPACK_IMPORTED_MODULE_33__Modal__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_34__ModalBody__ = __webpack_require__(325); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ModalBody", function() { return __WEBPACK_IMPORTED_MODULE_34__ModalBody__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_35__ModalFooter__ = __webpack_require__(326); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ModalFooter", function() { return __WEBPACK_IMPORTED_MODULE_35__ModalFooter__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_36__ModalHeader__ = __webpack_require__(327); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ModalHeader", function() { return __WEBPACK_IMPORTED_MODULE_36__ModalHeader__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_37__ModalTitle__ = __webpack_require__(328); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ModalTitle", function() { return __WEBPACK_IMPORTED_MODULE_37__ModalTitle__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_38__Nav__ = __webpack_require__(329); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Nav", function() { return __WEBPACK_IMPORTED_MODULE_38__Nav__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_39__Navbar__ = __webpack_require__(804); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Navbar", function() { return __WEBPACK_IMPORTED_MODULE_39__Navbar__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_40__NavbarBrand__ = __webpack_require__(330); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "NavbarBrand", function() { return __WEBPACK_IMPORTED_MODULE_40__NavbarBrand__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_41__NavDropdown__ = __webpack_require__(808); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "NavDropdown", function() { return __WEBPACK_IMPORTED_MODULE_41__NavDropdown__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_42__NavItem__ = __webpack_require__(331); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "NavItem", function() { return __WEBPACK_IMPORTED_MODULE_42__NavItem__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_43__Overlay__ = __webpack_require__(332); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Overlay", function() { return __WEBPACK_IMPORTED_MODULE_43__Overlay__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_44__OverlayTrigger__ = __webpack_require__(814); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "OverlayTrigger", function() { return __WEBPACK_IMPORTED_MODULE_44__OverlayTrigger__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_45__PageHeader__ = __webpack_require__(815); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "PageHeader", function() { return __WEBPACK_IMPORTED_MODULE_45__PageHeader__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_46__PageItem__ = __webpack_require__(816); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "PageItem", function() { return __WEBPACK_IMPORTED_MODULE_46__PageItem__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_47__Pager__ = __webpack_require__(818); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Pager", function() { return __WEBPACK_IMPORTED_MODULE_47__Pager__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_48__Pagination__ = __webpack_require__(819); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Pagination", function() { return __WEBPACK_IMPORTED_MODULE_48__Pagination__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_49__Panel__ = __webpack_require__(821); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Panel", function() { return __WEBPACK_IMPORTED_MODULE_49__Panel__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_50__PanelGroup__ = __webpack_require__(305); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "PanelGroup", function() { return __WEBPACK_IMPORTED_MODULE_50__PanelGroup__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_51__Popover__ = __webpack_require__(827); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Popover", function() { return __WEBPACK_IMPORTED_MODULE_51__Popover__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_52__ProgressBar__ = __webpack_require__(828); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ProgressBar", function() { return __WEBPACK_IMPORTED_MODULE_52__ProgressBar__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_53__Radio__ = __webpack_require__(829); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Radio", function() { return __WEBPACK_IMPORTED_MODULE_53__Radio__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_54__ResponsiveEmbed__ = __webpack_require__(830); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ResponsiveEmbed", function() { return __WEBPACK_IMPORTED_MODULE_54__ResponsiveEmbed__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_55__Row__ = __webpack_require__(831); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Row", function() { return __WEBPACK_IMPORTED_MODULE_55__Row__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_56__SafeAnchor__ = __webpack_require__(49); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "SafeAnchor", function() { return __WEBPACK_IMPORTED_MODULE_56__SafeAnchor__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_57__SplitButton__ = __webpack_require__(832); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "SplitButton", function() { return __WEBPACK_IMPORTED_MODULE_57__SplitButton__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_58__Tab__ = __webpack_require__(834); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Tab", function() { return __WEBPACK_IMPORTED_MODULE_58__Tab__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_59__TabContainer__ = __webpack_require__(215); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "TabContainer", function() { return __WEBPACK_IMPORTED_MODULE_59__TabContainer__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_60__TabContent__ = __webpack_require__(216); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "TabContent", function() { return __WEBPACK_IMPORTED_MODULE_60__TabContent__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_61__Table__ = __webpack_require__(835); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Table", function() { return __WEBPACK_IMPORTED_MODULE_61__Table__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_62__TabPane__ = __webpack_require__(337); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "TabPane", function() { return __WEBPACK_IMPORTED_MODULE_62__TabPane__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_63__Tabs__ = __webpack_require__(836); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Tabs", function() { return __WEBPACK_IMPORTED_MODULE_63__Tabs__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_64__Thumbnail__ = __webpack_require__(837); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Thumbnail", function() { return __WEBPACK_IMPORTED_MODULE_64__Thumbnail__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_65__ToggleButton__ = __webpack_require__(338); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ToggleButton", function() { return __WEBPACK_IMPORTED_MODULE_65__ToggleButton__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_66__ToggleButtonGroup__ = __webpack_require__(838); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "ToggleButtonGroup", function() { return __WEBPACK_IMPORTED_MODULE_66__ToggleButtonGroup__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_67__Tooltip__ = __webpack_require__(839); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Tooltip", function() { return __WEBPACK_IMPORTED_MODULE_67__Tooltip__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_68__Well__ = __webpack_require__(840); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Well", function() { return __WEBPACK_IMPORTED_MODULE_68__Well__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_69__utils__ = __webpack_require__(841); -/* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "utils", function() { return __WEBPACK_IMPORTED_MODULE_69__utils__; }); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -/***/ }), -/* 44 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.__esModule = true; - -var _createUncontrollable = __webpack_require__(736); - -var _createUncontrollable2 = _interopRequireDefault(_createUncontrollable); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var mixin = { - shouldComponentUpdate: function shouldComponentUpdate() { - //let the forceUpdate trigger the update - return !this._notifying; - } -}; - -function set(component, propName, handler, value, args) { - if (handler) { - component._notifying = true; - handler.call.apply(handler, [component, value].concat(args)); - component._notifying = false; - } - - component._values[propName] = value; - - if (!component.unmounted) component.forceUpdate(); -} - -exports.default = (0, _createUncontrollable2.default)(mixin, set); -module.exports = exports['default']; - -/***/ }), -/* 45 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = { "default": __webpack_require__(741), __esModule: true }; - -/***/ }), -/* 46 */ +/* 40 */ /***/ (function(module, exports, __webpack_require__) { // optional / simple context binding -var aFunction = __webpack_require__(29); +var aFunction = __webpack_require__(25); module.exports = function (fn, that, length) { aFunction(fn); if (that === undefined) return fn; @@ -2541,7 +2002,7 @@ module.exports = function (fn, that, length) { /***/ }), -/* 47 */ +/* 41 */ /***/ (function(module, exports) { var toString = {}.toString; @@ -2552,12 +2013,12 @@ module.exports = function (it) { /***/ }), -/* 48 */ +/* 42 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var fails = __webpack_require__(15); +var fails = __webpack_require__(12); module.exports = function (method, arg) { return !!method && fails(function () { @@ -2568,27 +2029,27 @@ module.exports = function (method, arg) { /***/ }), -/* 49 */ +/* 43 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__ = __webpack_require__(11); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__ = __webpack_require__(15); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_createChainedFunction__ = __webpack_require__(25); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_createChainedFunction__ = __webpack_require__(21); @@ -2704,7 +2165,7 @@ SafeAnchor.defaultProps = defaultProps; /* harmony default export */ __webpack_exports__["a"] = (SafeAnchor); /***/ }), -/* 50 */ +/* 44 */ /***/ (function(module, exports) { var core = module.exports = { version: '2.5.3' }; @@ -2712,11 +2173,11 @@ if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef /***/ }), -/* 51 */ +/* 45 */ /***/ (function(module, exports, __webpack_require__) { // 7.1.1 ToPrimitive(input [, PreferredType]) -var isObject = __webpack_require__(16); +var isObject = __webpack_require__(13); // instead of the ES6 spec version, we didn't implement @@toPrimitive case // and the second argument - flag - preferred type is a string module.exports = function (it, S) { @@ -2730,7 +2191,7 @@ module.exports = function (it, S) { /***/ }), -/* 52 */ +/* 46 */ /***/ (function(module, exports) { // 7.2.1 RequireObjectCoercible(argument) @@ -2741,7 +2202,7 @@ module.exports = function (it) { /***/ }), -/* 53 */ +/* 47 */ /***/ (function(module, exports) { // 7.1.4 ToInteger @@ -2753,13 +2214,13 @@ module.exports = function (it) { /***/ }), -/* 54 */ +/* 48 */ /***/ (function(module, exports, __webpack_require__) { // most Object methods by ES6 should accept primitives -var $export = __webpack_require__(8); -var core = __webpack_require__(50); -var fails = __webpack_require__(15); +var $export = __webpack_require__(1); +var core = __webpack_require__(44); +var fails = __webpack_require__(12); module.exports = function (KEY, exec) { var fn = (core.Object || {})[KEY] || Object[KEY]; var exp = {}; @@ -2769,7 +2230,7 @@ module.exports = function (KEY, exec) { /***/ }), -/* 55 */ +/* 49 */ /***/ (function(module, exports, __webpack_require__) { // 0 -> Array#forEach @@ -2779,11 +2240,11 @@ module.exports = function (KEY, exec) { // 4 -> Array#every // 5 -> Array#find // 6 -> Array#findIndex -var ctx = __webpack_require__(46); -var IObject = __webpack_require__(103); -var toObject = __webpack_require__(23); -var toLength = __webpack_require__(21); -var asc = __webpack_require__(174); +var ctx = __webpack_require__(40); +var IObject = __webpack_require__(92); +var toObject = __webpack_require__(20); +var toLength = __webpack_require__(19); +var asc = __webpack_require__(154); module.exports = function (TYPE, $create) { var IS_MAP = TYPE == 1; var IS_FILTER = TYPE == 2; @@ -2819,13 +2280,13 @@ module.exports = function (TYPE, $create) { /***/ }), -/* 56 */ +/* 50 */ /***/ (function(module, exports, __webpack_require__) { -var global = __webpack_require__(68); -var core = __webpack_require__(30); -var ctx = __webpack_require__(193); -var hide = __webpack_require__(95); +var global = __webpack_require__(58); +var core = __webpack_require__(27); +var ctx = __webpack_require__(172); +var hide = __webpack_require__(83); var PROTOTYPE = 'prototype'; var $export = function (type, name, source) { @@ -2886,7 +2347,7 @@ module.exports = $export; /***/ }), -/* 57 */ +/* 51 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2896,15 +2357,15 @@ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol 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 _axios = __webpack_require__(288); +var _axios = __webpack_require__(265); var _axios2 = _interopRequireDefault(_axios); -var _debug = __webpack_require__(113); +var _debug = __webpack_require__(102); var _debug2 = _interopRequireDefault(_debug); -var _jsBase = __webpack_require__(294); +var _jsBase = __webpack_require__(271); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } @@ -3281,12 +2742,12 @@ function callbackErrorOrThrow(cb, path) { /***/ }), -/* 58 */ +/* 52 */ /***/ (function(module, exports, __webpack_require__) { -var store = __webpack_require__(199)('wks'); -var uid = __webpack_require__(137); -var Symbol = __webpack_require__(68).Symbol; +var store = __webpack_require__(178)('wks'); +var uid = __webpack_require__(123); +var Symbol = __webpack_require__(58).Symbol; var USE_SYMBOL = typeof Symbol == 'function'; var $exports = module.exports = function (name) { @@ -3298,196 +2759,7 @@ $exports.store = store; /***/ }), -/* 59 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = !!(typeof window !== 'undefined' && window.document && window.document.createElement); -module.exports = exports['default']; - -/***/ }), -/* 60 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _inDOM = __webpack_require__(59); - -var _inDOM2 = _interopRequireDefault(_inDOM); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = function () { - // HTML DOM and SVG DOM may have different support levels, - // so we need to check on context instead of a document root element. - return _inDOM2.default ? function (context, node) { - if (context.contains) { - return context.contains(node); - } else if (context.compareDocumentPosition) { - return context === node || !!(context.compareDocumentPosition(node) & 16); - } else { - return fallback(context, node); - } - } : fallback; -}(); - -function fallback(context, node) { - if (node) do { - if (node === context) return true; - } while (node = node.parentNode); - - return false; -} -module.exports = exports['default']; - -/***/ }), -/* 61 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__ = __webpack_require__(11); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_createChainedFunction__ = __webpack_require__(22); - - - - - - - - - - - -var propTypes = { - href: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, - onClick: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - onKeyDown: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - disabled: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, - role: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, - tabIndex: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.number, __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string]), - /** - * this is sort of silly but needed for Button - */ - componentClass: __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default.a -}; - -var defaultProps = { - componentClass: 'a' -}; - -function isTrivialHref(href) { - return !href || href.trim() === '#'; -} - -/** - * There are situations due to browser quirks or Bootstrap CSS where - * an anchor tag is needed, when semantically a button tag is the - * better choice. SafeAnchor ensures that when an anchor is used like a - * button its accessible. It also emulates input `disabled` behavior for - * links, which is usually desirable for Buttons, NavItems, MenuItems, etc. - */ - -var SafeAnchor = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(SafeAnchor, _React$Component); - - function SafeAnchor(props, context) { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, SafeAnchor); - - var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call(this, props, context)); - - _this.handleClick = _this.handleClick.bind(_this); - _this.handleKeyDown = _this.handleKeyDown.bind(_this); - return _this; - } - - SafeAnchor.prototype.handleClick = function handleClick(event) { - var _props = this.props, - disabled = _props.disabled, - href = _props.href, - onClick = _props.onClick; - - - if (disabled || isTrivialHref(href)) { - event.preventDefault(); - } - - if (disabled) { - event.stopPropagation(); - return; - } - - if (onClick) { - onClick(event); - } - }; - - SafeAnchor.prototype.handleKeyDown = function handleKeyDown(event) { - if (event.key === ' ') { - event.preventDefault(); - this.handleClick(event); - } - }; - - SafeAnchor.prototype.render = function render() { - var _props2 = this.props, - Component = _props2.componentClass, - disabled = _props2.disabled, - onKeyDown = _props2.onKeyDown, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props2, ['componentClass', 'disabled', 'onKeyDown']); - - if (isTrivialHref(props.href)) { - props.role = props.role || 'button'; - // we want to make sure there is a href attribute on the node - // otherwise, the cursor incorrectly styled (except with role='button') - props.href = props.href || '#'; - } - - if (disabled) { - props.tabIndex = -1; - props.style = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({ pointerEvents: 'none' }, props.style); - } - - return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(Component, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, { - onClick: this.handleClick, - onKeyDown: Object(__WEBPACK_IMPORTED_MODULE_8__utils_createChainedFunction__["a" /* default */])(this.handleKeyDown, onKeyDown) - })); - }; - - return SafeAnchor; -}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.Component); - -SafeAnchor.propTypes = propTypes; -SafeAnchor.defaultProps = defaultProps; - -/* harmony default export */ __webpack_exports__["a"] = (SafeAnchor); - -/***/ }), -/* 62 */ +/* 53 */ /***/ (function(module, exports) { var g; @@ -3514,50 +2786,50 @@ module.exports = g; /***/ }), -/* 63 */ +/* 54 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -if (__webpack_require__(19)) { - var LIBRARY = __webpack_require__(76); - var global = __webpack_require__(14); - var fails = __webpack_require__(15); - var $export = __webpack_require__(8); - var $typed = __webpack_require__(130); - var $buffer = __webpack_require__(180); - var ctx = __webpack_require__(46); - var anInstance = __webpack_require__(82); - var propertyDesc = __webpack_require__(74); - var hide = __webpack_require__(36); - var redefineAll = __webpack_require__(84); - var toInteger = __webpack_require__(53); - var toLength = __webpack_require__(21); - var toIndex = __webpack_require__(251); - var toAbsoluteIndex = __webpack_require__(78); - var toPrimitive = __webpack_require__(51); - var has = __webpack_require__(35); - var classof = __webpack_require__(105); - var isObject = __webpack_require__(16); - var toObject = __webpack_require__(23); - var isArrayIter = __webpack_require__(171); - var create = __webpack_require__(79); - var getPrototypeOf = __webpack_require__(41); - var gOPN = __webpack_require__(80).f; - var getIterFn = __webpack_require__(173); - var uid = __webpack_require__(75); - var wks = __webpack_require__(18); - var createArrayMethod = __webpack_require__(55); - var createArrayIncludes = __webpack_require__(121); - var speciesConstructor = __webpack_require__(128); - var ArrayIterators = __webpack_require__(176); - var Iterators = __webpack_require__(93); - var $iterDetect = __webpack_require__(125); - var setSpecies = __webpack_require__(81); - var arrayFill = __webpack_require__(175); - var arrayCopyWithin = __webpack_require__(241); - var $DP = __webpack_require__(20); - var $GOPD = __webpack_require__(40); +if (__webpack_require__(17)) { + var LIBRARY = __webpack_require__(64); + var global = __webpack_require__(11); + var fails = __webpack_require__(12); + var $export = __webpack_require__(1); + var $typed = __webpack_require__(116); + var $buffer = __webpack_require__(160); + var ctx = __webpack_require__(40); + var anInstance = __webpack_require__(70); + var propertyDesc = __webpack_require__(62); + var hide = __webpack_require__(32); + var redefineAll = __webpack_require__(72); + var toInteger = __webpack_require__(47); + var toLength = __webpack_require__(19); + var toIndex = __webpack_require__(227); + var toAbsoluteIndex = __webpack_require__(66); + var toPrimitive = __webpack_require__(45); + var has = __webpack_require__(31); + var classof = __webpack_require__(94); + var isObject = __webpack_require__(13); + var toObject = __webpack_require__(20); + var isArrayIter = __webpack_require__(151); + var create = __webpack_require__(67); + var getPrototypeOf = __webpack_require__(38); + var gOPN = __webpack_require__(68).f; + var getIterFn = __webpack_require__(153); + var uid = __webpack_require__(63); + var wks = __webpack_require__(16); + var createArrayMethod = __webpack_require__(49); + var createArrayIncludes = __webpack_require__(107); + var speciesConstructor = __webpack_require__(114); + var ArrayIterators = __webpack_require__(156); + var Iterators = __webpack_require__(81); + var $iterDetect = __webpack_require__(111); + var setSpecies = __webpack_require__(69); + var arrayFill = __webpack_require__(155); + var arrayCopyWithin = __webpack_require__(217); + var $DP = __webpack_require__(18); + var $GOPD = __webpack_require__(37); var dP = $DP.f; var gOPD = $GOPD.f; var RangeError = global.RangeError; @@ -4001,13 +3273,13 @@ if (__webpack_require__(19)) { /***/ }), -/* 64 */ +/* 55 */ /***/ (function(module, exports, __webpack_require__) { -var Map = __webpack_require__(246); -var $export = __webpack_require__(8); -var shared = __webpack_require__(120)('metadata'); -var store = shared.store || (shared.store = new (__webpack_require__(249))()); +var Map = __webpack_require__(222); +var $export = __webpack_require__(1); +var shared = __webpack_require__(106)('metadata'); +var store = shared.store || (shared.store = new (__webpack_require__(225))()); var getOrCreateMetadataMap = function (target, targetKey, create) { var targetMetadata = store.get(target); @@ -4058,34 +3330,18 @@ module.exports = { /***/ }), -/* 65 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = ownerDocument; -function ownerDocument(node) { - return node && node.ownerDocument || document; -} -module.exports = exports["default"]; - -/***/ }), -/* 66 */ +/* 56 */ /***/ (function(module, exports, __webpack_require__) { -var META = __webpack_require__(75)('meta'); -var isObject = __webpack_require__(16); -var has = __webpack_require__(35); -var setDesc = __webpack_require__(20).f; +var META = __webpack_require__(63)('meta'); +var isObject = __webpack_require__(13); +var has = __webpack_require__(31); +var setDesc = __webpack_require__(18).f; var id = 0; var isExtensible = Object.isExtensible || function () { return true; }; -var FREEZE = !__webpack_require__(15)(function () { +var FREEZE = !__webpack_require__(12)(function () { return isExtensible(Object.preventExtensions({})); }); var setMeta = function (it) { @@ -4133,20 +3389,20 @@ var meta = module.exports = { /***/ }), -/* 67 */ +/* 57 */ /***/ (function(module, exports, __webpack_require__) { // 22.1.3.31 Array.prototype[@@unscopables] -var UNSCOPABLES = __webpack_require__(18)('unscopables'); +var UNSCOPABLES = __webpack_require__(16)('unscopables'); var ArrayProto = Array.prototype; -if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(36)(ArrayProto, UNSCOPABLES, {}); +if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(32)(ArrayProto, UNSCOPABLES, {}); module.exports = function (key) { ArrayProto[UNSCOPABLES][key] = true; }; /***/ }), -/* 68 */ +/* 58 */ /***/ (function(module, exports) { // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 @@ -4158,15 +3414,15 @@ if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef /***/ }), -/* 69 */ +/* 59 */ /***/ (function(module, exports, __webpack_require__) { -var anObject = __webpack_require__(96); -var IE8_DOM_DEFINE = __webpack_require__(282); -var toPrimitive = __webpack_require__(194); +var anObject = __webpack_require__(84); +var IE8_DOM_DEFINE = __webpack_require__(259); +var toPrimitive = __webpack_require__(173); var dP = Object.defineProperty; -exports.f = __webpack_require__(86) ? Object.defineProperty : function defineProperty(O, P, Attributes) { +exports.f = __webpack_require__(74) ? Object.defineProperty : function defineProperty(O, P, Attributes) { anObject(O); P = toPrimitive(P, true); anObject(Attributes); @@ -4180,7 +3436,7 @@ exports.f = __webpack_require__(86) ? Object.defineProperty : function definePro /***/ }), -/* 70 */ +/* 60 */ /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process, global, setImmediate) {/* @preserve @@ -9806,87 +9062,10 @@ module.exports = ret; },{"./es5":13}]},{},[4])(4) }); ;if (typeof window !== 'undefined' && window !== null) { window.P = window.Promise; } else if (typeof self !== 'undefined' && self !== null) { self.P = self.Promise; } -/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(138), __webpack_require__(62), __webpack_require__(657).setImmediate)) +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(124), __webpack_require__(53), __webpack_require__(610).setImmediate)) /***/ }), -/* 71 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = all; - -var _createChainableTypeChecker = __webpack_require__(115); - -var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function all() { - for (var _len = arguments.length, validators = Array(_len), _key = 0; _key < _len; _key++) { - validators[_key] = arguments[_key]; - } - - function allPropTypes() { - for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { - args[_key2] = arguments[_key2]; - } - - var error = null; - - validators.forEach(function (validator) { - if (error != null) { - return; - } - - var result = validator.apply(undefined, args); - if (result != null) { - error = result; - } - }); - - return error; - } - - return (0, _createChainableTypeChecker2.default)(allPropTypes); -} -module.exports = exports['default']; - -/***/ }), -/* 72 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isRequiredForA11y; -function isRequiredForA11y(validator) { - return function validate(props, propName, componentName, location, propFullName) { - var componentNameSafe = componentName || '<>'; - var propFullNameSafe = propFullName || propName; - - if (props[propName] == null) { - return new Error('The ' + location + ' `' + propFullNameSafe + '` is required to make ' + ('`' + componentNameSafe + '` accessible for users of assistive ') + 'technologies such as screen readers.'); - } - - for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) { - args[_key - 5] = arguments[_key]; - } - - return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args)); - }; -} -module.exports = exports['default']; - -/***/ }), -/* 73 */ +/* 61 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9895,39 +9074,11 @@ module.exports = exports['default']; Object.defineProperty(exports, "__esModule", { value: true }); - -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - -var _react = __webpack_require__(0); - -var _react2 = _interopRequireDefault(_react); - -var _createChainableTypeChecker = __webpack_require__(115); - -var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue); - - if (_react2.default.isValidElement(propValue)) { - return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement. You can usually obtain a ReactComponent or DOMElement ' + 'from a ReactElement by attaching a ref to it.'); - } - - if ((propType !== 'object' || typeof propValue.render !== 'function') && propValue.nodeType !== 1) { - return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement.'); - } - - return null; -} - -exports.default = (0, _createChainableTypeChecker2.default)(validate); +exports.default = !!(typeof window !== 'undefined' && window.document && window.document.createElement); module.exports = exports['default']; /***/ }), -/* 74 */ +/* 62 */ /***/ (function(module, exports) { module.exports = function (bitmap, value) { @@ -9941,7 +9092,7 @@ module.exports = function (bitmap, value) { /***/ }), -/* 75 */ +/* 63 */ /***/ (function(module, exports) { var id = 0; @@ -9952,19 +9103,19 @@ module.exports = function (key) { /***/ }), -/* 76 */ +/* 64 */ /***/ (function(module, exports) { module.exports = false; /***/ }), -/* 77 */ +/* 65 */ /***/ (function(module, exports, __webpack_require__) { // 19.1.2.14 / 15.2.3.14 Object.keys(O) -var $keys = __webpack_require__(227); -var enumBugKeys = __webpack_require__(158); +var $keys = __webpack_require__(203); +var enumBugKeys = __webpack_require__(138); module.exports = Object.keys || function keys(O) { return $keys(O, enumBugKeys); @@ -9972,10 +9123,10 @@ module.exports = Object.keys || function keys(O) { /***/ }), -/* 78 */ +/* 66 */ /***/ (function(module, exports, __webpack_require__) { -var toInteger = __webpack_require__(53); +var toInteger = __webpack_require__(47); var max = Math.max; var min = Math.min; module.exports = function (index, length) { @@ -9985,27 +9136,27 @@ module.exports = function (index, length) { /***/ }), -/* 79 */ +/* 67 */ /***/ (function(module, exports, __webpack_require__) { // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -var anObject = __webpack_require__(13); -var dPs = __webpack_require__(228); -var enumBugKeys = __webpack_require__(158); -var IE_PROTO = __webpack_require__(157)('IE_PROTO'); +var anObject = __webpack_require__(10); +var dPs = __webpack_require__(204); +var enumBugKeys = __webpack_require__(138); +var IE_PROTO = __webpack_require__(137)('IE_PROTO'); var Empty = function () { /* empty */ }; var PROTOTYPE = 'prototype'; // Create object with fake `null` prototype: use iframe Object with cleared prototype var createDict = function () { // Thrash, waste and sodomy: IE GC bug - var iframe = __webpack_require__(155)('iframe'); + var iframe = __webpack_require__(135)('iframe'); var i = enumBugKeys.length; var lt = '<'; var gt = '>'; var iframeDocument; iframe.style.display = 'none'; - __webpack_require__(159).appendChild(iframe); + __webpack_require__(139).appendChild(iframe); iframe.src = 'javascript:'; // eslint-disable-line no-script-url // createDict = iframe.contentWindow.Object; // html.removeChild(iframe); @@ -10032,12 +9183,12 @@ module.exports = Object.create || function create(O, Properties) { /***/ }), -/* 80 */ +/* 68 */ /***/ (function(module, exports, __webpack_require__) { // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) -var $keys = __webpack_require__(227); -var hiddenKeys = __webpack_require__(158).concat('length', 'prototype'); +var $keys = __webpack_require__(203); +var hiddenKeys = __webpack_require__(138).concat('length', 'prototype'); exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { return $keys(O, hiddenKeys); @@ -10045,15 +9196,15 @@ exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { /***/ }), -/* 81 */ +/* 69 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var global = __webpack_require__(14); -var dP = __webpack_require__(20); -var DESCRIPTORS = __webpack_require__(19); -var SPECIES = __webpack_require__(18)('species'); +var global = __webpack_require__(11); +var dP = __webpack_require__(18); +var DESCRIPTORS = __webpack_require__(17); +var SPECIES = __webpack_require__(16)('species'); module.exports = function (KEY) { var C = global[KEY]; @@ -10065,7 +9216,7 @@ module.exports = function (KEY) { /***/ }), -/* 82 */ +/* 70 */ /***/ (function(module, exports) { module.exports = function (it, Constructor, name, forbiddenField) { @@ -10076,15 +9227,15 @@ module.exports = function (it, Constructor, name, forbiddenField) { /***/ }), -/* 83 */ +/* 71 */ /***/ (function(module, exports, __webpack_require__) { -var ctx = __webpack_require__(46); -var call = __webpack_require__(239); -var isArrayIter = __webpack_require__(171); -var anObject = __webpack_require__(13); -var toLength = __webpack_require__(21); -var getIterFn = __webpack_require__(173); +var ctx = __webpack_require__(40); +var call = __webpack_require__(215); +var isArrayIter = __webpack_require__(151); +var anObject = __webpack_require__(10); +var toLength = __webpack_require__(19); +var getIterFn = __webpack_require__(153); var BREAK = {}; var RETURN = {}; var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) { @@ -10107,10 +9258,10 @@ exports.RETURN = RETURN; /***/ }), -/* 84 */ +/* 72 */ /***/ (function(module, exports, __webpack_require__) { -var redefine = __webpack_require__(37); +var redefine = __webpack_require__(33); module.exports = function (target, src, safe) { for (var key in src) redefine(target, key, src[key], safe); return target; @@ -10118,7 +9269,7 @@ module.exports = function (target, src, safe) { /***/ }), -/* 85 */ +/* 73 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10129,7 +9280,7 @@ Object.defineProperty(exports, "__esModule", { }); exports.routerMiddleware = exports.routerActions = exports.goForward = exports.goBack = exports.go = exports.replace = exports.push = exports.CALL_HISTORY_METHOD = exports.routerReducer = exports.LOCATION_CHANGE = exports.syncHistoryWithStore = undefined; -var _reducer = __webpack_require__(280); +var _reducer = __webpack_require__(256); Object.defineProperty(exports, 'LOCATION_CHANGE', { enumerable: true, @@ -10144,7 +9295,7 @@ Object.defineProperty(exports, 'routerReducer', { } }); -var _actions = __webpack_require__(281); +var _actions = __webpack_require__(257); Object.defineProperty(exports, 'CALL_HISTORY_METHOD', { enumerable: true, @@ -10189,11 +9340,11 @@ Object.defineProperty(exports, 'routerActions', { } }); -var _sync = __webpack_require__(634); +var _sync = __webpack_require__(587); var _sync2 = _interopRequireDefault(_sync); -var _middleware = __webpack_require__(635); +var _middleware = __webpack_require__(588); var _middleware2 = _interopRequireDefault(_middleware); @@ -10203,17 +9354,17 @@ exports.syncHistoryWithStore = _sync2['default']; exports.routerMiddleware = _middleware2['default']; /***/ }), -/* 86 */ +/* 74 */ /***/ (function(module, exports, __webpack_require__) { // Thank's IE8 for his funny defineProperty -module.exports = !__webpack_require__(98)(function () { +module.exports = !__webpack_require__(86)(function () { return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), -/* 87 */ +/* 75 */ /***/ (function(module, exports) { var hasOwnProperty = {}.hasOwnProperty; @@ -10223,19 +9374,19 @@ module.exports = function (it, key) { /***/ }), -/* 88 */ +/* 76 */ /***/ (function(module, exports, __webpack_require__) { // to indexed object, toObject with fallback for non-array-like ES3 strings -var IObject = __webpack_require__(285); -var defined = __webpack_require__(196); +var IObject = __webpack_require__(262); +var defined = __webpack_require__(175); module.exports = function (it) { return IObject(defined(it)); }; /***/ }), -/* 89 */ +/* 77 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10243,7 +9394,7 @@ module.exports = function (it) { exports.__esModule = true; -var _defineProperty = __webpack_require__(287); +var _defineProperty = __webpack_require__(264); var _defineProperty2 = _interopRequireDefault(_defineProperty); @@ -10265,80 +9416,49 @@ exports.default = function (obj, key, value) { }; /***/ }), -/* 90 */ +/* 78 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = style; - -var _camelizeStyle = __webpack_require__(310); - -var _camelizeStyle2 = _interopRequireDefault(_camelizeStyle); - -var _hyphenateStyle = __webpack_require__(751); - -var _hyphenateStyle2 = _interopRequireDefault(_hyphenateStyle); - -var _getComputedStyle2 = __webpack_require__(753); - -var _getComputedStyle3 = _interopRequireDefault(_getComputedStyle2); - -var _removeStyle = __webpack_require__(754); - -var _removeStyle2 = _interopRequireDefault(_removeStyle); - -var _properties = __webpack_require__(141); +exports.__esModule = true; -var _isTransform = __webpack_require__(755); +var _createUncontrollable = __webpack_require__(689); -var _isTransform2 = _interopRequireDefault(_isTransform); +var _createUncontrollable2 = _interopRequireDefault(_createUncontrollable); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -function style(node, property, value) { - var css = ''; - var transforms = ''; - var props = property; - - if (typeof property === 'string') { - if (value === undefined) { - return node.style[(0, _camelizeStyle2.default)(property)] || (0, _getComputedStyle3.default)(node).getPropertyValue((0, _hyphenateStyle2.default)(property)); - } else { - (props = {})[property] = value; - } +var mixin = { + shouldComponentUpdate: function shouldComponentUpdate() { + //let the forceUpdate trigger the update + return !this._notifying; } +}; - Object.keys(props).forEach(function (key) { - var value = props[key]; - if (!value && value !== 0) { - (0, _removeStyle2.default)(node, (0, _hyphenateStyle2.default)(key)); - } else if ((0, _isTransform2.default)(key)) { - transforms += key + '(' + value + ') '; - } else { - css += (0, _hyphenateStyle2.default)(key) + ': ' + value + ';'; - } - }); - - if (transforms) { - css += _properties.transform + ': ' + transforms + ';'; +function set(component, propName, handler, value, args) { + if (handler) { + component._notifying = true; + handler.call.apply(handler, [component, value].concat(args)); + component._notifying = false; } - node.style.cssText += ';' + css; + component._values[propName] = value; + + if (!component.unmounted) component.forceUpdate(); } + +exports.default = (0, _createUncontrollable2.default)(mixin, set); module.exports = exports['default']; /***/ }), -/* 91 */ +/* 79 */ /***/ (function(module, exports, __webpack_require__) { -var def = __webpack_require__(20).f; -var has = __webpack_require__(35); -var TAG = __webpack_require__(18)('toStringTag'); +var def = __webpack_require__(18).f; +var has = __webpack_require__(31); +var TAG = __webpack_require__(16)('toStringTag'); module.exports = function (it, tag, stat) { if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); @@ -10346,13 +9466,13 @@ module.exports = function (it, tag, stat) { /***/ }), -/* 92 */ +/* 80 */ /***/ (function(module, exports, __webpack_require__) { -var $export = __webpack_require__(8); -var defined = __webpack_require__(52); -var fails = __webpack_require__(15); -var spaces = __webpack_require__(161); +var $export = __webpack_require__(1); +var defined = __webpack_require__(46); +var fails = __webpack_require__(12); +var spaces = __webpack_require__(141); var space = '[' + spaces + ']'; var non = '\u200b\u0085'; var ltrim = RegExp('^' + space + space + '*'); @@ -10382,17 +9502,17 @@ module.exports = exporter; /***/ }), -/* 93 */ +/* 81 */ /***/ (function(module, exports) { module.exports = {}; /***/ }), -/* 94 */ +/* 82 */ /***/ (function(module, exports, __webpack_require__) { -var isObject = __webpack_require__(16); +var isObject = __webpack_require__(13); module.exports = function (it, TYPE) { if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!'); return it; @@ -10400,12 +9520,12 @@ module.exports = function (it, TYPE) { /***/ }), -/* 95 */ +/* 83 */ /***/ (function(module, exports, __webpack_require__) { -var dP = __webpack_require__(69); -var createDesc = __webpack_require__(110); -module.exports = __webpack_require__(86) ? function (object, key, value) { +var dP = __webpack_require__(59); +var createDesc = __webpack_require__(99); +module.exports = __webpack_require__(74) ? function (object, key, value) { return dP.f(object, key, createDesc(1, value)); } : function (object, key, value) { object[key] = value; @@ -10414,10 +9534,10 @@ module.exports = __webpack_require__(86) ? function (object, key, value) { /***/ }), -/* 96 */ +/* 84 */ /***/ (function(module, exports, __webpack_require__) { -var isObject = __webpack_require__(97); +var isObject = __webpack_require__(85); module.exports = function (it) { if (!isObject(it)) throw TypeError(it + ' is not an object!'); return it; @@ -10425,7 +9545,7 @@ module.exports = function (it) { /***/ }), -/* 97 */ +/* 85 */ /***/ (function(module, exports) { module.exports = function (it) { @@ -10434,7 +9554,7 @@ module.exports = function (it) { /***/ }), -/* 98 */ +/* 86 */ /***/ (function(module, exports) { module.exports = function (exec) { @@ -10447,12 +9567,12 @@ module.exports = function (exec) { /***/ }), -/* 99 */ +/* 87 */ /***/ (function(module, exports, __webpack_require__) { // 19.1.2.14 / 15.2.3.14 Object.keys(O) -var $keys = __webpack_require__(284); -var enumBugKeys = __webpack_require__(200); +var $keys = __webpack_require__(261); +var enumBugKeys = __webpack_require__(179); module.exports = Object.keys || function keys(O) { return $keys(O, enumBugKeys); @@ -10460,184 +9580,69 @@ module.exports = Object.keys || function keys(O) { /***/ }), -/* 100 */ -/***/ (function(module, exports) { - -// Source: http://jsfiddle.net/vWx8V/ -// http://stackoverflow.com/questions/5603195/full-list-of-javascript-keycodes - -/** - * Conenience method returns corresponding value for given keyName or keyCode. - * - * @param {Mixed} keyCode {Number} or keyName {String} - * @return {Mixed} - * @api public - */ - -exports = module.exports = function(searchInput) { - // Keyboard Events - if (searchInput && 'object' === typeof searchInput) { - var hasKeyCode = searchInput.which || searchInput.keyCode || searchInput.charCode - if (hasKeyCode) searchInput = hasKeyCode - } - - // Numbers - if ('number' === typeof searchInput) return names[searchInput] - - // Everything else (cast to string) - var search = String(searchInput) - - // check codes - var foundNamedKey = codes[search.toLowerCase()] - if (foundNamedKey) return foundNamedKey - - // check aliases - var foundNamedKey = aliases[search.toLowerCase()] - if (foundNamedKey) return foundNamedKey - - // weird character? - if (search.length === 1) return search.charCodeAt(0) - - return undefined -} - -/** - * Get by name - * - * exports.code['enter'] // => 13 - */ - -var codes = exports.code = exports.codes = { - 'backspace': 8, - 'tab': 9, - 'enter': 13, - 'shift': 16, - 'ctrl': 17, - 'alt': 18, - 'pause/break': 19, - 'caps lock': 20, - 'esc': 27, - 'space': 32, - 'page up': 33, - 'page down': 34, - 'end': 35, - 'home': 36, - 'left': 37, - 'up': 38, - 'right': 39, - 'down': 40, - 'insert': 45, - 'delete': 46, - 'command': 91, - 'left command': 91, - 'right command': 93, - 'numpad *': 106, - 'numpad +': 107, - 'numpad -': 109, - 'numpad .': 110, - 'numpad /': 111, - 'num lock': 144, - 'scroll lock': 145, - 'my computer': 182, - 'my calculator': 183, - ';': 186, - '=': 187, - ',': 188, - '-': 189, - '.': 190, - '/': 191, - '`': 192, - '[': 219, - '\\': 220, - ']': 221, - "'": 222 -} - -// Helper aliases - -var aliases = exports.aliases = { - 'windows': 91, - '⇧': 16, - '⌥': 18, - '⌃': 17, - '⌘': 91, - 'ctl': 17, - 'control': 17, - 'option': 18, - 'pause': 19, - 'break': 19, - 'caps': 20, - 'return': 13, - 'escape': 27, - 'spc': 32, - 'pgup': 33, - 'pgdn': 34, - 'ins': 45, - 'del': 46, - 'cmd': 91 -} - - -/*! - * Programatically add the following - */ - -// lower case chars -for (i = 97; i < 123; i++) codes[String.fromCharCode(i)] = i - 32 - -// numbers -for (var i = 48; i < 58; i++) codes[i - 48] = i - -// function keys -for (i = 1; i < 13; i++) codes['f'+i] = i + 111 +/* 88 */ +/***/ (function(module, exports, __webpack_require__) { -// numpad keys -for (i = 0; i < 10; i++) codes['numpad '+i] = i + 96 +module.exports = { "default": __webpack_require__(694), __esModule: true }; -/** - * Get by code - * - * exports.name[13] // => 'Enter' - */ +/***/ }), +/* 89 */ +/***/ (function(module, exports, __webpack_require__) { -var names = exports.names = exports.title = {} // title for backward compat +"use strict"; -// Create reverse mapping -for (i in codes) names[codes[i]] = i -// Add aliases -for (var alias in aliases) { - codes[alias] = aliases[alias] +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = ownerDocument; +function ownerDocument(node) { + return node && node.ownerDocument || document; } - +module.exports = exports["default"]; /***/ }), -/* 101 */ +/* 90 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -exports.__esModule = true; - -exports.default = function (componentOrElement) { - return (0, _ownerDocument2.default)(_reactDom2.default.findDOMNode(componentOrElement)); -}; +Object.defineProperty(exports, "__esModule", { + value: true +}); -var _reactDom = __webpack_require__(17); +var _inDOM = __webpack_require__(61); -var _reactDom2 = _interopRequireDefault(_reactDom); +var _inDOM2 = _interopRequireDefault(_inDOM); -var _ownerDocument = __webpack_require__(65); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -var _ownerDocument2 = _interopRequireDefault(_ownerDocument); +exports.default = function () { + // HTML DOM and SVG DOM may have different support levels, + // so we need to check on context instead of a document root element. + return _inDOM2.default ? function (context, node) { + if (context.contains) { + return context.contains(node); + } else if (context.compareDocumentPosition) { + return context === node || !!(context.compareDocumentPosition(node) & 16); + } else { + return fallback(context, node); + } + } : fallback; +}(); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +function fallback(context, node) { + if (node) do { + if (node === context) return true; + } while (node = node.parentNode); + return false; +} module.exports = exports['default']; /***/ }), -/* 102 */ +/* 91 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10649,11 +9654,11 @@ exports.default = function (componentOrElement) { return (0, _ownerDocument2.default)(_reactDom2.default.findDOMNode(componentOrElement)); }; -var _reactDom = __webpack_require__(17); +var _reactDom = __webpack_require__(26); var _reactDom2 = _interopRequireDefault(_reactDom); -var _ownerDocument = __webpack_require__(65); +var _ownerDocument = __webpack_require__(89); var _ownerDocument2 = _interopRequireDefault(_ownerDocument); @@ -10662,11 +9667,11 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de module.exports = exports['default']; /***/ }), -/* 103 */ +/* 92 */ /***/ (function(module, exports, __webpack_require__) { // fallback for non-array-like ES3 and non-enumerable old V8 strings -var cof = __webpack_require__(47); +var cof = __webpack_require__(41); // eslint-disable-next-line no-prototype-builtins module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { return cof(it) == 'String' ? it.split('') : Object(it); @@ -10674,19 +9679,19 @@ module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { /***/ }), -/* 104 */ +/* 93 */ /***/ (function(module, exports) { exports.f = {}.propertyIsEnumerable; /***/ }), -/* 105 */ +/* 94 */ /***/ (function(module, exports, __webpack_require__) { // getting tag from 19.1.3.6 Object.prototype.toString() -var cof = __webpack_require__(47); -var TAG = __webpack_require__(18)('toStringTag'); +var cof = __webpack_require__(41); +var TAG = __webpack_require__(16)('toStringTag'); // ES3 wrong here var ARG = cof(function () { return arguments; }()) == 'Arguments'; @@ -10710,7 +9715,7 @@ module.exports = function (it) { /***/ }), -/* 106 */ +/* 95 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10752,36 +9757,36 @@ emptyFunction.thatReturnsArgument = function (arg) { module.exports = emptyFunction; /***/ }), -/* 107 */ +/* 96 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__BrowserRouter__ = __webpack_require__(610); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__BrowserRouter__ = __webpack_require__(563); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "BrowserRouter", function() { return __WEBPACK_IMPORTED_MODULE_0__BrowserRouter__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__HashRouter__ = __webpack_require__(611); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__HashRouter__ = __webpack_require__(564); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "HashRouter", function() { return __WEBPACK_IMPORTED_MODULE_1__HashRouter__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Link__ = __webpack_require__(276); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Link__ = __webpack_require__(252); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Link", function() { return __WEBPACK_IMPORTED_MODULE_2__Link__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__MemoryRouter__ = __webpack_require__(613); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__MemoryRouter__ = __webpack_require__(566); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MemoryRouter", function() { return __WEBPACK_IMPORTED_MODULE_3__MemoryRouter__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__NavLink__ = __webpack_require__(616); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__NavLink__ = __webpack_require__(569); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "NavLink", function() { return __WEBPACK_IMPORTED_MODULE_4__NavLink__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__Prompt__ = __webpack_require__(619); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__Prompt__ = __webpack_require__(572); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Prompt", function() { return __WEBPACK_IMPORTED_MODULE_5__Prompt__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__Redirect__ = __webpack_require__(621); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__Redirect__ = __webpack_require__(574); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Redirect", function() { return __WEBPACK_IMPORTED_MODULE_6__Redirect__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__Route__ = __webpack_require__(277); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__Route__ = __webpack_require__(253); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Route", function() { return __WEBPACK_IMPORTED_MODULE_7__Route__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__Router__ = __webpack_require__(188); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__Router__ = __webpack_require__(168); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Router", function() { return __WEBPACK_IMPORTED_MODULE_8__Router__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__StaticRouter__ = __webpack_require__(627); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__StaticRouter__ = __webpack_require__(580); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "StaticRouter", function() { return __WEBPACK_IMPORTED_MODULE_9__StaticRouter__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Switch__ = __webpack_require__(629); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Switch__ = __webpack_require__(582); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Switch", function() { return __WEBPACK_IMPORTED_MODULE_10__Switch__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__matchPath__ = __webpack_require__(631); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__matchPath__ = __webpack_require__(584); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "matchPath", function() { return __WEBPACK_IMPORTED_MODULE_11__matchPath__["a"]; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__withRouter__ = __webpack_require__(632); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__withRouter__ = __webpack_require__(585); /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "withRouter", function() { return __WEBPACK_IMPORTED_MODULE_12__withRouter__["a"]; }); @@ -10811,7 +9816,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); /***/ }), -/* 108 */ +/* 97 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10878,7 +9883,7 @@ var createPath = exports.createPath = function createPath(location) { }; /***/ }), -/* 109 */ +/* 98 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -10949,7 +9954,7 @@ var createPath = function createPath(location) { }; /***/ }), -/* 110 */ +/* 99 */ /***/ (function(module, exports) { module.exports = function (bitmap, value) { @@ -10963,25 +9968,25 @@ module.exports = function (bitmap, value) { /***/ }), -/* 111 */ +/* 100 */ /***/ (function(module, exports) { exports.f = {}.propertyIsEnumerable; /***/ }), -/* 112 */ +/* 101 */ /***/ (function(module, exports, __webpack_require__) { // 7.1.13 ToObject(argument) -var defined = __webpack_require__(196); +var defined = __webpack_require__(175); module.exports = function (it) { return Object(defined(it)); }; /***/ }), -/* 113 */ +/* 102 */ /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -10990,7 +9995,7 @@ module.exports = function (it) { * Expose `debug()` as the module. */ -exports = module.exports = __webpack_require__(678); +exports = module.exports = __webpack_require__(631); exports.log = log; exports.formatArgs = formatArgs; exports.save = save; @@ -11170,92 +10175,43 @@ function localstorage() { } catch (e) {} } -/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(138))) +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(124))) /***/ }), -/* 114 */ +/* 103 */ /***/ (function(module, exports) { module.exports = {}; /***/ }), -/* 115 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = createChainableTypeChecker; -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - */ - -// Mostly taken from ReactPropTypes. - -function createChainableTypeChecker(validate) { - function checkType(isRequired, props, propName, componentName, location, propFullName) { - var componentNameSafe = componentName || '<>'; - var propFullNameSafe = propFullName || propName; - - if (props[propName] == null) { - if (isRequired) { - return new Error('Required ' + location + ' `' + propFullNameSafe + '` was not specified ' + ('in `' + componentNameSafe + '`.')); - } - - return null; - } - - for (var _len = arguments.length, args = Array(_len > 6 ? _len - 6 : 0), _key = 6; _key < _len; _key++) { - args[_key - 6] = arguments[_key]; - } - - return validate.apply(undefined, [props, propName, componentNameSafe, location, propFullNameSafe].concat(args)); - } - - var chainedCheckType = checkType.bind(null, false); - chainedCheckType.isRequired = checkType.bind(null, true); - - return chainedCheckType; -} -module.exports = exports['default']; - -/***/ }), -/* 116 */ +/* 104 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values__ = __webpack_require__(45); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values__ = __webpack_require__(88); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_classnames__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types_extra_lib_elementType__ = __webpack_require__(11); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types_extra_lib_elementType__ = __webpack_require__(15); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types_extra_lib_elementType__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__ = __webpack_require__(9); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__ = __webpack_require__(27); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__SafeAnchor__ = __webpack_require__(49); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__ = __webpack_require__(24); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__SafeAnchor__ = __webpack_require__(43); @@ -11353,44 +10309,7 @@ Button.defaultProps = defaultProps; /* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsClass"])('btn', Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsSizes"])([__WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["c" /* Size */].LARGE, __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["c" /* Size */].SMALL, __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["c" /* Size */].XSMALL], Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsStyles"])([].concat(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values___default()(__WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["d" /* State */]), [__WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["e" /* Style */].DEFAULT, __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["e" /* Style */].PRIMARY, __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["e" /* Style */].LINK]), __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["e" /* Style */].DEFAULT, Button)))); /***/ }), -/* 117 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _inDOM = __webpack_require__(59); - -var _inDOM2 = _interopRequireDefault(_inDOM); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var on = function on() {}; -if (_inDOM2.default) { - on = function () { - - if (document.addEventListener) return function (node, eventName, handler, capture) { - return node.addEventListener(eventName, handler, capture || false); - };else if (document.attachEvent) return function (node, eventName, handler) { - return node.attachEvent('on' + eventName, function (e) { - e = e || window.event; - e.target = e.target || e.srcElement; - e.currentTarget = node; - handler.call(node, e); - }); - }; - }(); -} - -exports.default = on; -module.exports = exports['default']; - -/***/ }), -/* 118 */ +/* 105 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11399,141 +10318,69 @@ module.exports = exports['default']; Object.defineProperty(exports, "__esModule", { value: true }); -exports.default = getWindow; -function getWindow(node) { - return node === node.window ? node : node.nodeType === 9 ? node.defaultView || node.parentWindow : false; -} -module.exports = exports["default"]; - -/***/ }), -/* 119 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values__ = __webpack_require__(45); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types_extra_lib_elementType__ = __webpack_require__(11); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_prop_types_extra_lib_elementType__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__ = __webpack_require__(10); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__ = __webpack_require__(28); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__SafeAnchor__ = __webpack_require__(61); - - - - - - +exports.default = style; +var _camelizeStyle = __webpack_require__(288); +var _camelizeStyle2 = _interopRequireDefault(_camelizeStyle); +var _hyphenateStyle = __webpack_require__(704); +var _hyphenateStyle2 = _interopRequireDefault(_hyphenateStyle); +var _getComputedStyle2 = __webpack_require__(706); +var _getComputedStyle3 = _interopRequireDefault(_getComputedStyle2); +var _removeStyle = __webpack_require__(707); +var _removeStyle2 = _interopRequireDefault(_removeStyle); +var _properties = __webpack_require__(190); -var propTypes = { - active: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - disabled: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - block: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - onClick: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - componentClass: __WEBPACK_IMPORTED_MODULE_9_prop_types_extra_lib_elementType___default.a, - href: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, - /** - * Defines HTML button type attribute - * @defaultValue 'button' - */ - type: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOf(['button', 'reset', 'submit']) -}; +var _isTransform = __webpack_require__(708); -var defaultProps = { - active: false, - block: false, - disabled: false -}; +var _isTransform2 = _interopRequireDefault(_isTransform); -var Button = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(Button, _React$Component); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - function Button() { - __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, Button); +function style(node, property, value) { + var css = ''; + var transforms = ''; + var props = property; - return __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); + if (typeof property === 'string') { + if (value === undefined) { + return node.style[(0, _camelizeStyle2.default)(property)] || (0, _getComputedStyle3.default)(node).getPropertyValue((0, _hyphenateStyle2.default)(property)); + } else { + (props = {})[property] = value; + } } - Button.prototype.renderAnchor = function renderAnchor(elementProps, className) { - return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_12__SafeAnchor__["a" /* default */], __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({}, elementProps, { - className: __WEBPACK_IMPORTED_MODULE_6_classnames___default()(className, elementProps.disabled && 'disabled') - })); - }; - - Button.prototype.renderButton = function renderButton(_ref, className) { - var componentClass = _ref.componentClass, - elementProps = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_ref, ['componentClass']); - - var Component = componentClass || 'button'; - - return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(Component, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({}, elementProps, { - type: elementProps.type || 'button', - className: className - })); - }; - - Button.prototype.render = function render() { - var _extends2; - - var _props = this.props, - active = _props.active, - block = _props.block, - className = _props.className, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['active', 'block', 'className']); - - var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["splitBsProps"])(props), - bsProps = _splitBsProps[0], - elementProps = _splitBsProps[1]; - - var classes = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({}, Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["getClassSet"])(bsProps), (_extends2 = { - active: active - }, _extends2[Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["prefix"])(bsProps, 'block')] = block, _extends2)); - var fullClassName = __WEBPACK_IMPORTED_MODULE_6_classnames___default()(className, classes); - - if (elementProps.href) { - return this.renderAnchor(elementProps, fullClassName); + Object.keys(props).forEach(function (key) { + var value = props[key]; + if (!value && value !== 0) { + (0, _removeStyle2.default)(node, (0, _hyphenateStyle2.default)(key)); + } else if ((0, _isTransform2.default)(key)) { + transforms += key + '(' + value + ') '; + } else { + css += (0, _hyphenateStyle2.default)(key) + ': ' + value + ';'; } + }); - return this.renderButton(elementProps, fullClassName); - }; - - return Button; -}(__WEBPACK_IMPORTED_MODULE_7_react___default.a.Component); - -Button.propTypes = propTypes; -Button.defaultProps = defaultProps; + if (transforms) { + css += _properties.transform + ': ' + transforms + ';'; + } -/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsClass"])('btn', Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsSizes"])([__WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["c" /* Size */].LARGE, __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["c" /* Size */].SMALL, __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["c" /* Size */].XSMALL], Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsStyles"])([].concat(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values___default()(__WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["d" /* State */]), [__WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["e" /* Style */].DEFAULT, __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["e" /* Style */].PRIMARY, __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["e" /* Style */].LINK]), __WEBPACK_IMPORTED_MODULE_11__utils_StyleConfig__["e" /* Style */].DEFAULT, Button)))); + node.style.cssText += ';' + css; +} +module.exports = exports['default']; /***/ }), -/* 120 */ +/* 106 */ /***/ (function(module, exports, __webpack_require__) { -var global = __webpack_require__(14); +var global = __webpack_require__(11); var SHARED = '__core-js_shared__'; var store = global[SHARED] || (global[SHARED] = {}); module.exports = function (key) { @@ -11542,14 +10389,14 @@ module.exports = function (key) { /***/ }), -/* 121 */ +/* 107 */ /***/ (function(module, exports, __webpack_require__) { // false -> Array#indexOf // true -> Array#includes -var toIObject = __webpack_require__(39); -var toLength = __webpack_require__(21); -var toAbsoluteIndex = __webpack_require__(78); +var toIObject = __webpack_require__(36); +var toLength = __webpack_require__(19); +var toAbsoluteIndex = __webpack_require__(66); module.exports = function (IS_INCLUDES) { return function ($this, el, fromIndex) { var O = toIObject($this); @@ -11571,31 +10418,31 @@ module.exports = function (IS_INCLUDES) { /***/ }), -/* 122 */ +/* 108 */ /***/ (function(module, exports) { exports.f = Object.getOwnPropertySymbols; /***/ }), -/* 123 */ +/* 109 */ /***/ (function(module, exports, __webpack_require__) { // 7.2.2 IsArray(argument) -var cof = __webpack_require__(47); +var cof = __webpack_require__(41); module.exports = Array.isArray || function isArray(arg) { return cof(arg) == 'Array'; }; /***/ }), -/* 124 */ +/* 110 */ /***/ (function(module, exports, __webpack_require__) { // 7.2.8 IsRegExp(argument) -var isObject = __webpack_require__(16); -var cof = __webpack_require__(47); -var MATCH = __webpack_require__(18)('match'); +var isObject = __webpack_require__(13); +var cof = __webpack_require__(41); +var MATCH = __webpack_require__(16)('match'); module.exports = function (it) { var isRegExp; return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp'); @@ -11603,10 +10450,10 @@ module.exports = function (it) { /***/ }), -/* 125 */ +/* 111 */ /***/ (function(module, exports, __webpack_require__) { -var ITERATOR = __webpack_require__(18)('iterator'); +var ITERATOR = __webpack_require__(16)('iterator'); var SAFE_CLOSING = false; try { @@ -11631,13 +10478,13 @@ module.exports = function (exec, skipClosing) { /***/ }), -/* 126 */ +/* 112 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // 21.2.5.3 get RegExp.prototype.flags -var anObject = __webpack_require__(13); +var anObject = __webpack_require__(10); module.exports = function () { var that = anObject(this); var result = ''; @@ -11651,16 +10498,16 @@ module.exports = function () { /***/ }), -/* 127 */ +/* 113 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var hide = __webpack_require__(36); -var redefine = __webpack_require__(37); -var fails = __webpack_require__(15); -var defined = __webpack_require__(52); -var wks = __webpack_require__(18); +var hide = __webpack_require__(32); +var redefine = __webpack_require__(33); +var fails = __webpack_require__(12); +var defined = __webpack_require__(46); +var wks = __webpack_require__(16); module.exports = function (KEY, length, exec) { var SYMBOL = wks(KEY); @@ -11686,13 +10533,13 @@ module.exports = function (KEY, length, exec) { /***/ }), -/* 128 */ +/* 114 */ /***/ (function(module, exports, __webpack_require__) { // 7.3.20 SpeciesConstructor(O, defaultConstructor) -var anObject = __webpack_require__(13); -var aFunction = __webpack_require__(29); -var SPECIES = __webpack_require__(18)('species'); +var anObject = __webpack_require__(10); +var aFunction = __webpack_require__(25); +var SPECIES = __webpack_require__(16)('species'); module.exports = function (O, D) { var C = anObject(O).constructor; var S; @@ -11701,23 +10548,23 @@ module.exports = function (O, D) { /***/ }), -/* 129 */ +/* 115 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var global = __webpack_require__(14); -var $export = __webpack_require__(8); -var redefine = __webpack_require__(37); -var redefineAll = __webpack_require__(84); -var meta = __webpack_require__(66); -var forOf = __webpack_require__(83); -var anInstance = __webpack_require__(82); -var isObject = __webpack_require__(16); -var fails = __webpack_require__(15); -var $iterDetect = __webpack_require__(125); -var setToStringTag = __webpack_require__(91); -var inheritIfRequired = __webpack_require__(162); +var global = __webpack_require__(11); +var $export = __webpack_require__(1); +var redefine = __webpack_require__(33); +var redefineAll = __webpack_require__(72); +var meta = __webpack_require__(56); +var forOf = __webpack_require__(71); +var anInstance = __webpack_require__(70); +var isObject = __webpack_require__(13); +var fails = __webpack_require__(12); +var $iterDetect = __webpack_require__(111); +var setToStringTag = __webpack_require__(79); +var inheritIfRequired = __webpack_require__(142); module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) { var Base = global[NAME]; @@ -11793,12 +10640,12 @@ module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) { /***/ }), -/* 130 */ +/* 116 */ /***/ (function(module, exports, __webpack_require__) { -var global = __webpack_require__(14); -var hide = __webpack_require__(36); -var uid = __webpack_require__(75); +var global = __webpack_require__(11); +var hide = __webpack_require__(32); +var uid = __webpack_require__(63); var TYPED = uid('typed_array'); var VIEW = uid('view'); var ABV = !!(global.ArrayBuffer && global.DataView); @@ -11827,29 +10674,29 @@ module.exports = { /***/ }), -/* 131 */ +/* 117 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // Forced replacement prototype accessors methods -module.exports = __webpack_require__(76) || !__webpack_require__(15)(function () { +module.exports = __webpack_require__(64) || !__webpack_require__(12)(function () { var K = Math.random(); // In FF throws only define methods // eslint-disable-next-line no-undef, no-useless-call __defineSetter__.call(null, K, function () { /* empty */ }); - delete __webpack_require__(14)[K]; + delete __webpack_require__(11)[K]; }); /***/ }), -/* 132 */ +/* 118 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // https://tc39.github.io/proposal-setmap-offrom/ -var $export = __webpack_require__(8); +var $export = __webpack_require__(1); module.exports = function (COLLECTION) { $export($export.S, COLLECTION, { of: function of() { @@ -11862,16 +10709,16 @@ module.exports = function (COLLECTION) { /***/ }), -/* 133 */ +/* 119 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // https://tc39.github.io/proposal-setmap-offrom/ -var $export = __webpack_require__(8); -var aFunction = __webpack_require__(29); -var ctx = __webpack_require__(46); -var forOf = __webpack_require__(83); +var $export = __webpack_require__(1); +var aFunction = __webpack_require__(25); +var ctx = __webpack_require__(40); +var forOf = __webpack_require__(71); module.exports = function (COLLECTION) { $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) { @@ -11897,7 +10744,7 @@ module.exports = function (COLLECTION) { /***/ }), -/* 134 */ +/* 120 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11956,7 +10803,7 @@ function invariant(condition, format, a, b, c, d, e, f) { module.exports = invariant; /***/ }), -/* 135 */ +/* 121 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11970,7 +10817,7 @@ module.exports = invariant; -var emptyFunction = __webpack_require__(106); +var emptyFunction = __webpack_require__(95); /** * Similar to invariant but only logs a warning if the condition is not met. @@ -12024,15 +10871,15 @@ if (true) { module.exports = warning; /***/ }), -/* 136 */ +/* 122 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return createLocation; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return locationsAreEqual; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_resolve_pathname__ = __webpack_require__(273); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_value_equal__ = __webpack_require__(274); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__PathUtils__ = __webpack_require__(109); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_resolve_pathname__ = __webpack_require__(249); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_value_equal__ = __webpack_require__(250); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__PathUtils__ = __webpack_require__(98); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; @@ -12100,7 +10947,7 @@ var locationsAreEqual = function locationsAreEqual(a, b) { }; /***/ }), -/* 137 */ +/* 123 */ /***/ (function(module, exports) { var id = 0; @@ -12111,7 +10958,7 @@ module.exports = function (key) { /***/ }), -/* 138 */ +/* 124 */ /***/ (function(module, exports) { // shim for using process in browser @@ -12301,40 +11148,56 @@ process.umask = function() { return 0; }; /***/ }), -/* 139 */ +/* 125 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -exports.__esModule = true; - -var _iterator = __webpack_require__(708); +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = createChainableTypeChecker; +/** + * Copyright 2013-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + */ -var _iterator2 = _interopRequireDefault(_iterator); +// Mostly taken from ReactPropTypes. -var _symbol = __webpack_require__(718); +function createChainableTypeChecker(validate) { + function checkType(isRequired, props, propName, componentName, location, propFullName) { + var componentNameSafe = componentName || '<>'; + var propFullNameSafe = propFullName || propName; -var _symbol2 = _interopRequireDefault(_symbol); + if (props[propName] == null) { + if (isRequired) { + return new Error('Required ' + location + ' `' + propFullNameSafe + '` was not specified ' + ('in `' + componentNameSafe + '`.')); + } -var _typeof = typeof _symbol2.default === "function" && typeof _iterator2.default === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj; }; + return null; + } -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + for (var _len = arguments.length, args = Array(_len > 6 ? _len - 6 : 0), _key = 6; _key < _len; _key++) { + args[_key - 6] = arguments[_key]; + } -exports.default = typeof _symbol2.default === "function" && _typeof(_iterator2.default) === "symbol" ? function (obj) { - return typeof obj === "undefined" ? "undefined" : _typeof(obj); -} : function (obj) { - return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj); -}; + return validate.apply(undefined, [props, propName, componentNameSafe, location, propFullNameSafe].concat(args)); + } -/***/ }), -/* 140 */ -/***/ (function(module, exports, __webpack_require__) { + var chainedCheckType = checkType.bind(null, false); + chainedCheckType.isRequired = checkType.bind(null, true); -module.exports = { "default": __webpack_require__(738), __esModule: true }; + return chainedCheckType; +} +module.exports = exports['default']; /***/ }), -/* 141 */ +/* 126 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12343,158 +11206,90 @@ module.exports = { "default": __webpack_require__(738), __esModule: true }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.animationEnd = exports.animationDelay = exports.animationTiming = exports.animationDuration = exports.animationName = exports.transitionEnd = exports.transitionDuration = exports.transitionDelay = exports.transitionTiming = exports.transitionProperty = exports.transform = undefined; +exports.default = all; -var _inDOM = __webpack_require__(59); +var _createChainableTypeChecker = __webpack_require__(125); -var _inDOM2 = _interopRequireDefault(_inDOM); +var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -var transform = 'transform'; -var prefix = void 0, - transitionEnd = void 0, - animationEnd = void 0; -var transitionProperty = void 0, - transitionDuration = void 0, - transitionTiming = void 0, - transitionDelay = void 0; -var animationName = void 0, - animationDuration = void 0, - animationTiming = void 0, - animationDelay = void 0; - -if (_inDOM2.default) { - var _getTransitionPropert = getTransitionProperties(); - - prefix = _getTransitionPropert.prefix; - exports.transitionEnd = transitionEnd = _getTransitionPropert.transitionEnd; - exports.animationEnd = animationEnd = _getTransitionPropert.animationEnd; - - - exports.transform = transform = prefix + '-' + transform; - exports.transitionProperty = transitionProperty = prefix + '-transition-property'; - exports.transitionDuration = transitionDuration = prefix + '-transition-duration'; - exports.transitionDelay = transitionDelay = prefix + '-transition-delay'; - exports.transitionTiming = transitionTiming = prefix + '-transition-timing-function'; - - exports.animationName = animationName = prefix + '-animation-name'; - exports.animationDuration = animationDuration = prefix + '-animation-duration'; - exports.animationTiming = animationTiming = prefix + '-animation-delay'; - exports.animationDelay = animationDelay = prefix + '-animation-timing-function'; -} - -exports.transform = transform; -exports.transitionProperty = transitionProperty; -exports.transitionTiming = transitionTiming; -exports.transitionDelay = transitionDelay; -exports.transitionDuration = transitionDuration; -exports.transitionEnd = transitionEnd; -exports.animationName = animationName; -exports.animationDuration = animationDuration; -exports.animationTiming = animationTiming; -exports.animationDelay = animationDelay; -exports.animationEnd = animationEnd; -exports.default = { - transform: transform, - end: transitionEnd, - property: transitionProperty, - timing: transitionTiming, - delay: transitionDelay, - duration: transitionDuration -}; - - -function getTransitionProperties() { - var style = document.createElement('div').style; +function all() { + for (var _len = arguments.length, validators = Array(_len), _key = 0; _key < _len; _key++) { + validators[_key] = arguments[_key]; + } - var vendorMap = { - O: function O(e) { - return 'o' + e.toLowerCase(); - }, - Moz: function Moz(e) { - return e.toLowerCase(); - }, - Webkit: function Webkit(e) { - return 'webkit' + e; - }, - ms: function ms(e) { - return 'MS' + e; + function allPropTypes() { + for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { + args[_key2] = arguments[_key2]; } - }; - var vendors = Object.keys(vendorMap); + var error = null; - var transitionEnd = void 0, - animationEnd = void 0; - var prefix = ''; + validators.forEach(function (validator) { + if (error != null) { + return; + } - for (var i = 0; i < vendors.length; i++) { - var vendor = vendors[i]; + var result = validator.apply(undefined, args); + if (result != null) { + error = result; + } + }); - if (vendor + 'TransitionProperty' in style) { - prefix = '-' + vendor.toLowerCase(); - transitionEnd = vendorMap[vendor]('TransitionEnd'); - animationEnd = vendorMap[vendor]('AnimationEnd'); - break; - } + return error; } - if (!transitionEnd && 'transitionProperty' in style) transitionEnd = 'transitionend'; - - if (!animationEnd && 'animationName' in style) animationEnd = 'animationend'; - - style = null; - - return { animationEnd: animationEnd, transitionEnd: transitionEnd, prefix: prefix }; + return (0, _createChainableTypeChecker2.default)(allPropTypes); } +module.exports = exports['default']; /***/ }), -/* 142 */ +/* 127 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_activeElement__ = __webpack_require__(143); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_activeElement__ = __webpack_require__(291); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_activeElement___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_dom_helpers_activeElement__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_dom_helpers_query_contains__ = __webpack_require__(60); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_dom_helpers_query_contains__ = __webpack_require__(90); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_dom_helpers_query_contains___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_dom_helpers_query_contains__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_keycode__ = __webpack_require__(100); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_keycode__ = __webpack_require__(193); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_keycode___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_keycode__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_dom__ = __webpack_require__(17); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_dom__ = __webpack_require__(26); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_dom__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_prop_types_extra_lib_all__ = __webpack_require__(71); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_prop_types_extra_lib_all__ = __webpack_require__(126); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_prop_types_extra_lib_all___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_prop_types_extra_lib_all__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_prop_types_extra_lib_elementType__ = __webpack_require__(11); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_prop_types_extra_lib_elementType__ = __webpack_require__(15); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_prop_types_extra_lib_elementType__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_prop_types_extra_lib_isRequiredForA11y__ = __webpack_require__(72); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_prop_types_extra_lib_isRequiredForA11y__ = __webpack_require__(128); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_prop_types_extra_lib_isRequiredForA11y___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_prop_types_extra_lib_isRequiredForA11y__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_uncontrollable__ = __webpack_require__(44); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_uncontrollable__ = __webpack_require__(78); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_uncontrollable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_uncontrollable__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_warning__ = __webpack_require__(12); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_warning__ = __webpack_require__(14); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_16_warning__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__ButtonGroup__ = __webpack_require__(209); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__DropdownMenu__ = __webpack_require__(761); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__DropdownToggle__ = __webpack_require__(316); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__ButtonGroup__ = __webpack_require__(189); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__DropdownMenu__ = __webpack_require__(714); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__DropdownToggle__ = __webpack_require__(294); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__utils_bootstrapUtils__ = __webpack_require__(9); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__utils_createChainedFunction__ = __webpack_require__(25); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__utils_PropTypes__ = __webpack_require__(307); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__utils_ValidComponentChildren__ = __webpack_require__(33); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__utils_createChainedFunction__ = __webpack_require__(21); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__utils_PropTypes__ = __webpack_require__(285); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__utils_ValidComponentChildren__ = __webpack_require__(30); @@ -12856,34 +11651,7 @@ UncontrolledDropdown.Menu = __WEBPACK_IMPORTED_MODULE_18__DropdownMenu__["a" /* /* harmony default export */ __webpack_exports__["a"] = (UncontrolledDropdown); /***/ }), -/* 143 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = activeElement; - -var _ownerDocument = __webpack_require__(65); - -var _ownerDocument2 = _interopRequireDefault(_ownerDocument); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function activeElement() { - var doc = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : (0, _ownerDocument2.default)(); - - try { - return doc.activeElement; - } catch (e) {/* ie throws if no active element */} -} -module.exports = exports['default']; - -/***/ }), -/* 144 */ +/* 128 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12892,34 +11660,32 @@ module.exports = exports['default']; Object.defineProperty(exports, "__esModule", { value: true }); +exports.default = isRequiredForA11y; +function isRequiredForA11y(validator) { + return function validate(props, propName, componentName, location, propFullName) { + var componentNameSafe = componentName || '<>'; + var propFullNameSafe = propFullName || propName; -var _inDOM = __webpack_require__(59); - -var _inDOM2 = _interopRequireDefault(_inDOM); + if (props[propName] == null) { + return new Error('The ' + location + ' `' + propFullNameSafe + '` is required to make ' + ('`' + componentNameSafe + '` accessible for users of assistive ') + 'technologies such as screen readers.'); + } -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) { + args[_key - 5] = arguments[_key]; + } -var off = function off() {}; -if (_inDOM2.default) { - off = function () { - if (document.addEventListener) return function (node, eventName, handler, capture) { - return node.removeEventListener(eventName, handler, capture || false); - };else if (document.attachEvent) return function (node, eventName, handler) { - return node.detachEvent('on' + eventName, handler); - }; - }(); + return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args)); + }; } - -exports.default = off; module.exports = exports['default']; /***/ }), -/* 145 */ +/* 129 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (immutable) */ __webpack_exports__["a"] = splitComponentProps; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__ = __webpack_require__(140); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__ = __webpack_require__(283); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__); function splitComponentProps(props, Component) { @@ -12943,27 +11709,27 @@ function splitComponentProps(props, Component) { } /***/ }), -/* 146 */ +/* 130 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_transition_group_Transition__ = __webpack_require__(312); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_transition_group_Transition__ = __webpack_require__(290); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_transition_group_Transition___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_transition_group_Transition__); @@ -13078,32 +11844,32 @@ Fade.defaultProps = defaultProps; /* harmony default export */ __webpack_exports__["a"] = (Fade); /***/ }), -/* 147 */ +/* 131 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__ = __webpack_require__(11); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__ = __webpack_require__(15); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__MediaBody__ = __webpack_require__(784); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__MediaHeading__ = __webpack_require__(785); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__MediaLeft__ = __webpack_require__(786); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__MediaList__ = __webpack_require__(787); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__MediaListItem__ = __webpack_require__(788); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__MediaRight__ = __webpack_require__(789); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__MediaBody__ = __webpack_require__(738); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__MediaHeading__ = __webpack_require__(739); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__MediaLeft__ = __webpack_require__(740); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__MediaList__ = __webpack_require__(741); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__MediaListItem__ = __webpack_require__(742); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__MediaRight__ = __webpack_require__(743); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__utils_bootstrapUtils__ = __webpack_require__(9); @@ -13170,7 +11936,7 @@ Media.ListItem = __WEBPACK_IMPORTED_MODULE_12__MediaListItem__["a" /* default */ /* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_14__utils_bootstrapUtils__["bsClass"])('media', Media)); /***/ }), -/* 148 */ +/* 132 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13180,38 +11946,54 @@ Object.defineProperty(exports, "__esModule", { value: true }); -exports.default = function (recalc) { - if (!size && size !== 0 || recalc) { - if (_inDOM2.default) { - var scrollDiv = document.createElement('div'); - - scrollDiv.style.position = 'absolute'; - scrollDiv.style.top = '-9999px'; - scrollDiv.style.width = '50px'; - scrollDiv.style.height = '50px'; - scrollDiv.style.overflow = 'scroll'; +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - document.body.appendChild(scrollDiv); - size = scrollDiv.offsetWidth - scrollDiv.clientWidth; - document.body.removeChild(scrollDiv); - } - } +var _react = __webpack_require__(0); - return size; -}; +var _react2 = _interopRequireDefault(_react); -var _inDOM = __webpack_require__(59); +var _createChainableTypeChecker = __webpack_require__(125); -var _inDOM2 = _interopRequireDefault(_inDOM); +var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -var size = void 0; +function validate(props, propName, componentName, location, propFullName) { + var propValue = props[propName]; + var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue); + + if (_react2.default.isValidElement(propValue)) { + return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement. You can usually obtain a ReactComponent or DOMElement ' + 'from a ReactElement by attaching a ref to it.'); + } + + if ((propType !== 'object' || typeof propValue.render !== 'function') && propValue.nodeType !== 1) { + return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement.'); + } + return null; +} + +exports.default = (0, _createChainableTypeChecker2.default)(validate); module.exports = exports['default']; /***/ }), -/* 149 */ +/* 133 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = getWindow; +function getWindow(node) { + return node === node.window ? node : node.nodeType === 9 ? node.defaultView || node.parentWindow : false; +} +module.exports = exports["default"]; + +/***/ }), +/* 134 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13220,7 +12002,7 @@ module.exports = exports['default']; exports.__esModule = true; exports.default = getContainer; -var _reactDom = __webpack_require__(17); +var _reactDom = __webpack_require__(26); var _reactDom2 = _interopRequireDefault(_reactDom); @@ -13233,1119 +12015,461 @@ function getContainer(container, defaultContainer) { module.exports = exports['default']; /***/ }), -/* 150 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_activeElement__ = __webpack_require__(143); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_activeElement___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_dom_helpers_activeElement__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_dom_helpers_query_contains__ = __webpack_require__(60); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_dom_helpers_query_contains___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_dom_helpers_query_contains__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_keycode__ = __webpack_require__(100); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_keycode___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_keycode__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_dom__ = __webpack_require__(17); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_react_dom__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_prop_types_extra_lib_all__ = __webpack_require__(71); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_prop_types_extra_lib_all___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_prop_types_extra_lib_all__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_prop_types_extra_lib_elementType__ = __webpack_require__(11); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_prop_types_extra_lib_elementType__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_prop_types_extra_lib_isRequiredForA11y__ = __webpack_require__(72); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_prop_types_extra_lib_isRequiredForA11y___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_prop_types_extra_lib_isRequiredForA11y__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_uncontrollable__ = __webpack_require__(44); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_uncontrollable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_uncontrollable__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_warning__ = __webpack_require__(12); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_16_warning__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__ButtonGroup__ = __webpack_require__(220); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__DropdownMenu__ = __webpack_require__(880); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__DropdownToggle__ = __webpack_require__(351); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__utils_bootstrapUtils__ = __webpack_require__(10); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__utils_createChainedFunction__ = __webpack_require__(22); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__utils_PropTypes__ = __webpack_require__(881); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__utils_ValidComponentChildren__ = __webpack_require__(34); +/* 135 */ +/***/ (function(module, exports, __webpack_require__) { +var isObject = __webpack_require__(13); +var document = __webpack_require__(11).document; +// typeof document.createElement is 'object' in old IE +var is = isObject(document) && isObject(document.createElement); +module.exports = function (it) { + return is ? document.createElement(it) : {}; +}; +/***/ }), +/* 136 */ +/***/ (function(module, exports, __webpack_require__) { +var global = __webpack_require__(11); +var core = __webpack_require__(44); +var LIBRARY = __webpack_require__(64); +var wksExt = __webpack_require__(202); +var defineProperty = __webpack_require__(18).f; +module.exports = function (name) { + var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); + if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); +}; +/***/ }), +/* 137 */ +/***/ (function(module, exports, __webpack_require__) { +var shared = __webpack_require__(106)('keys'); +var uid = __webpack_require__(63); +module.exports = function (key) { + return shared[key] || (shared[key] = uid(key)); +}; +/***/ }), +/* 138 */ +/***/ (function(module, exports) { +// IE 8- don't enum bug keys +module.exports = ( + 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' +).split(','); +/***/ }), +/* 139 */ +/***/ (function(module, exports, __webpack_require__) { +var document = __webpack_require__(11).document; +module.exports = document && document.documentElement; +/***/ }), +/* 140 */ +/***/ (function(module, exports, __webpack_require__) { +// Works with __proto__ only. Old v8 can't work with null proto objects. +/* eslint-disable no-proto */ +var isObject = __webpack_require__(13); +var anObject = __webpack_require__(10); +var check = function (O, proto) { + anObject(O); + if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!"); +}; +module.exports = { + set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line + function (test, buggy, set) { + try { + set = __webpack_require__(40)(Function.call, __webpack_require__(37).f(Object.prototype, '__proto__').set, 2); + set(test, []); + buggy = !(test instanceof Array); + } catch (e) { buggy = true; } + return function setPrototypeOf(O, proto) { + check(O, proto); + if (buggy) O.__proto__ = proto; + else set(O, proto); + return O; + }; + }({}, false) : undefined), + check: check +}; +/***/ }), +/* 141 */ +/***/ (function(module, exports) { +module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' + + '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; +/***/ }), +/* 142 */ +/***/ (function(module, exports, __webpack_require__) { +var isObject = __webpack_require__(13); +var setPrototypeOf = __webpack_require__(140).set; +module.exports = function (that, target, C) { + var S = target.constructor; + var P; + if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) { + setPrototypeOf(that, P); + } return that; +}; +/***/ }), +/* 143 */ +/***/ (function(module, exports, __webpack_require__) { +"use strict"; -var TOGGLE_ROLE = __WEBPACK_IMPORTED_MODULE_19__DropdownToggle__["a" /* default */].defaultProps.bsRole; -var MENU_ROLE = __WEBPACK_IMPORTED_MODULE_18__DropdownMenu__["a" /* default */].defaultProps.bsRole; +var toInteger = __webpack_require__(47); +var defined = __webpack_require__(46); -var propTypes = { - /** - * The menu will open above the dropdown button, instead of below it. - */ - dropup: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.bool, +module.exports = function repeat(count) { + var str = String(defined(this)); + var res = ''; + var n = toInteger(count); + if (n < 0 || n == Infinity) throw RangeError("Count can't be negative"); + for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str; + return res; +}; - /** - * An html id attribute, necessary for assistive technologies, such as screen readers. - * @type {string|number} - * @required - */ - id: __WEBPACK_IMPORTED_MODULE_14_prop_types_extra_lib_isRequiredForA11y___default()(__WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.number])), - componentClass: __WEBPACK_IMPORTED_MODULE_13_prop_types_extra_lib_elementType___default.a, +/***/ }), +/* 144 */ +/***/ (function(module, exports) { - /** - * The children of a Dropdown may be a `` or a ``. - * @type {node} - */ - children: __WEBPACK_IMPORTED_MODULE_12_prop_types_extra_lib_all___default()(Object(__WEBPACK_IMPORTED_MODULE_22__utils_PropTypes__["b" /* requiredRoles */])(TOGGLE_ROLE, MENU_ROLE), Object(__WEBPACK_IMPORTED_MODULE_22__utils_PropTypes__["a" /* exclusiveRoles */])(MENU_ROLE)), +// 20.2.2.28 Math.sign(x) +module.exports = Math.sign || function sign(x) { + // eslint-disable-next-line no-self-compare + return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1; +}; - /** - * Whether or not component is disabled. - */ - disabled: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.bool, - /** - * Align the menu to the right side of the Dropdown toggle - */ - pullRight: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.bool, +/***/ }), +/* 145 */ +/***/ (function(module, exports) { - /** - * Whether or not the Dropdown is visible. - * - * @controllable onToggle - */ - open: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.bool, +// 20.2.2.14 Math.expm1(x) +var $expm1 = Math.expm1; +module.exports = (!$expm1 + // Old FF bug + || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168 + // Tor Browser bug + || $expm1(-2e-17) != -2e-17 +) ? function expm1(x) { + return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1; +} : $expm1; - defaultOpen: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.bool, - /** - * A callback fired when the Dropdown wishes to change visibility. Called with the requested - * `open` value, the DOM event, and the source that fired it: `'click'`,`'keydown'`,`'rootClose'`, or `'select'`. - * - * ```js - * function(Boolean isOpen, Object event, { String source }) {} - * ``` - * @controllable open - */ - onToggle: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.func, +/***/ }), +/* 146 */ +/***/ (function(module, exports, __webpack_require__) { - /** - * A callback fired when a menu item is selected. - * - * ```js - * (eventKey: any, event: Object) => any - * ``` - */ - onSelect: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.func, +var toInteger = __webpack_require__(47); +var defined = __webpack_require__(46); +// true -> String#at +// false -> String#codePointAt +module.exports = function (TO_STRING) { + return function (that, pos) { + var s = String(defined(that)); + var i = toInteger(pos); + var l = s.length; + var a, b; + if (i < 0 || i >= l) return TO_STRING ? '' : undefined; + a = s.charCodeAt(i); + return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff + ? TO_STRING ? s.charAt(i) : a + : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; + }; +}; - /** - * If `'menuitem'`, causes the dropdown to behave like a menu item rather than - * a menu button. - */ - role: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.string, - /** - * Which event when fired outside the component will cause it to be closed - */ - rootCloseEvent: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.oneOf(['click', 'mousedown']), +/***/ }), +/* 147 */ +/***/ (function(module, exports, __webpack_require__) { - /** - * @private - */ - onMouseEnter: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.func, - /** - * @private - */ - onMouseLeave: __WEBPACK_IMPORTED_MODULE_10_prop_types___default.a.func -}; +"use strict"; -var defaultProps = { - componentClass: __WEBPACK_IMPORTED_MODULE_17__ButtonGroup__["a" /* default */] -}; - -var Dropdown = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(Dropdown, _React$Component); - - function Dropdown(props, context) { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, Dropdown); - - var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call(this, props, context)); - - _this.handleClick = _this.handleClick.bind(_this); - _this.handleKeyDown = _this.handleKeyDown.bind(_this); - _this.handleClose = _this.handleClose.bind(_this); - - _this._focusInDropdown = false; - _this.lastOpenEventType = null; - return _this; - } - - Dropdown.prototype.componentDidMount = function componentDidMount() { - this.focusNextOnOpen(); - }; - - Dropdown.prototype.componentWillUpdate = function componentWillUpdate(nextProps) { - if (!nextProps.open && this.props.open) { - this._focusInDropdown = __WEBPACK_IMPORTED_MODULE_7_dom_helpers_query_contains___default()(__WEBPACK_IMPORTED_MODULE_11_react_dom___default.a.findDOMNode(this.menu), __WEBPACK_IMPORTED_MODULE_6_dom_helpers_activeElement___default()(document)); - } - }; - - Dropdown.prototype.componentDidUpdate = function componentDidUpdate(prevProps) { - var open = this.props.open; - - var prevOpen = prevProps.open; - - if (open && !prevOpen) { - this.focusNextOnOpen(); - } - - if (!open && prevOpen) { - // if focus hasn't already moved from the menu let's return it - // to the toggle - if (this._focusInDropdown) { - this._focusInDropdown = false; - this.focus(); - } - } - }; - - Dropdown.prototype.focus = function focus() { - var toggle = __WEBPACK_IMPORTED_MODULE_11_react_dom___default.a.findDOMNode(this.toggle); - - if (toggle && toggle.focus) { - toggle.focus(); - } - }; - - Dropdown.prototype.focusNextOnOpen = function focusNextOnOpen() { - var menu = this.menu; - - if (!menu.focusNext) { - return; - } - - if (this.lastOpenEventType === 'keydown' || this.props.role === 'menuitem') { - menu.focusNext(); - } - }; - - Dropdown.prototype.handleClick = function handleClick(event) { - if (this.props.disabled) { - return; - } - - this.toggleOpen(event, { source: 'click' }); - }; - - Dropdown.prototype.handleClose = function handleClose(event, eventDetails) { - if (!this.props.open) { - return; - } - - this.toggleOpen(event, eventDetails); - }; - - Dropdown.prototype.handleKeyDown = function handleKeyDown(event) { - if (this.props.disabled) { - return; - } - - switch (event.keyCode) { - case __WEBPACK_IMPORTED_MODULE_8_keycode___default.a.codes.down: - if (!this.props.open) { - this.toggleOpen(event, { source: 'keydown' }); - } else if (this.menu.focusNext) { - this.menu.focusNext(); - } - event.preventDefault(); - break; - case __WEBPACK_IMPORTED_MODULE_8_keycode___default.a.codes.esc: - case __WEBPACK_IMPORTED_MODULE_8_keycode___default.a.codes.tab: - this.handleClose(event, { source: 'keydown' }); - break; - default: - } - }; - - Dropdown.prototype.toggleOpen = function toggleOpen(event, eventDetails) { - var open = !this.props.open; +var LIBRARY = __webpack_require__(64); +var $export = __webpack_require__(1); +var redefine = __webpack_require__(33); +var hide = __webpack_require__(32); +var has = __webpack_require__(31); +var Iterators = __webpack_require__(81); +var $iterCreate = __webpack_require__(148); +var setToStringTag = __webpack_require__(79); +var getPrototypeOf = __webpack_require__(38); +var ITERATOR = __webpack_require__(16)('iterator'); +var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` +var FF_ITERATOR = '@@iterator'; +var KEYS = 'keys'; +var VALUES = 'values'; - if (open) { - this.lastOpenEventType = eventDetails.source; - } +var returnThis = function () { return this; }; - if (this.props.onToggle) { - this.props.onToggle(open, event, eventDetails); - } +module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { + $iterCreate(Constructor, NAME, next); + var getMethod = function (kind) { + if (!BUGGY && kind in proto) return proto[kind]; + switch (kind) { + case KEYS: return function keys() { return new Constructor(this, kind); }; + case VALUES: return function values() { return new Constructor(this, kind); }; + } return function entries() { return new Constructor(this, kind); }; }; - - Dropdown.prototype.renderMenu = function renderMenu(child, _ref) { - var _this2 = this; - - var id = _ref.id, - onSelect = _ref.onSelect, - rootCloseEvent = _ref.rootCloseEvent, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_ref, ['id', 'onSelect', 'rootCloseEvent']); - - var ref = function ref(c) { - _this2.menu = c; - }; - - if (typeof child.ref === 'string') { - true ? __WEBPACK_IMPORTED_MODULE_16_warning___default()(false, 'String refs are not supported on `` components. ' + 'To apply a ref to the component use the callback signature:\n\n ' + 'https://facebook.github.io/react/docs/more-about-refs.html#the-ref-callback-attribute') : void 0; - } else { - ref = Object(__WEBPACK_IMPORTED_MODULE_21__utils_createChainedFunction__["a" /* default */])(child.ref, ref); + var TAG = NAME + ' Iterator'; + var DEF_VALUES = DEFAULT == VALUES; + var VALUES_BUG = false; + var proto = Base.prototype; + var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; + var $default = (!BUGGY && $native) || getMethod(DEFAULT); + var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; + var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; + var methods, key, IteratorPrototype; + // Fix native + if ($anyNative) { + IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); + if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { + // Set @@toStringTag to native iterators + setToStringTag(IteratorPrototype, TAG, true); + // fix for some old engines + if (!LIBRARY && !has(IteratorPrototype, ITERATOR)) hide(IteratorPrototype, ITERATOR, returnThis); } - - return Object(__WEBPACK_IMPORTED_MODULE_9_react__["cloneElement"])(child, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, { - ref: ref, - labelledBy: id, - bsClass: Object(__WEBPACK_IMPORTED_MODULE_20__utils_bootstrapUtils__["prefix"])(props, 'menu'), - onClose: Object(__WEBPACK_IMPORTED_MODULE_21__utils_createChainedFunction__["a" /* default */])(child.props.onClose, this.handleClose), - onSelect: Object(__WEBPACK_IMPORTED_MODULE_21__utils_createChainedFunction__["a" /* default */])(child.props.onSelect, onSelect, function (key, event) { - return _this2.handleClose(event, { source: 'select' }); - }), - rootCloseEvent: rootCloseEvent - })); - }; - - Dropdown.prototype.renderToggle = function renderToggle(child, props) { - var _this3 = this; - - var ref = function ref(c) { - _this3.toggle = c; + } + // fix Array#{values, @@iterator}.name in V8 / FF + if (DEF_VALUES && $native && $native.name !== VALUES) { + VALUES_BUG = true; + $default = function values() { return $native.call(this); }; + } + // Define iterator + if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { + hide(proto, ITERATOR, $default); + } + // Plug for library + Iterators[NAME] = $default; + Iterators[TAG] = returnThis; + if (DEFAULT) { + methods = { + values: DEF_VALUES ? $default : getMethod(VALUES), + keys: IS_SET ? $default : getMethod(KEYS), + entries: $entries }; + if (FORCED) for (key in methods) { + if (!(key in proto)) redefine(proto, key, methods[key]); + } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); + } + return methods; +}; - if (typeof child.ref === 'string') { - true ? __WEBPACK_IMPORTED_MODULE_16_warning___default()(false, 'String refs are not supported on `` components. ' + 'To apply a ref to the component use the callback signature:\n\n ' + 'https://facebook.github.io/react/docs/more-about-refs.html#the-ref-callback-attribute') : void 0; - } else { - ref = Object(__WEBPACK_IMPORTED_MODULE_21__utils_createChainedFunction__["a" /* default */])(child.ref, ref); - } - - return Object(__WEBPACK_IMPORTED_MODULE_9_react__["cloneElement"])(child, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, { - ref: ref, - bsClass: Object(__WEBPACK_IMPORTED_MODULE_20__utils_bootstrapUtils__["prefix"])(props, 'toggle'), - onClick: Object(__WEBPACK_IMPORTED_MODULE_21__utils_createChainedFunction__["a" /* default */])(child.props.onClick, this.handleClick), - onKeyDown: Object(__WEBPACK_IMPORTED_MODULE_21__utils_createChainedFunction__["a" /* default */])(child.props.onKeyDown, this.handleKeyDown) - })); - }; - Dropdown.prototype.render = function render() { - var _classes, - _this4 = this; +/***/ }), +/* 148 */ +/***/ (function(module, exports, __webpack_require__) { - var _props = this.props, - Component = _props.componentClass, - id = _props.id, - dropup = _props.dropup, - disabled = _props.disabled, - pullRight = _props.pullRight, - open = _props.open, - onSelect = _props.onSelect, - role = _props.role, - bsClass = _props.bsClass, - className = _props.className, - rootCloseEvent = _props.rootCloseEvent, - children = _props.children, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['componentClass', 'id', 'dropup', 'disabled', 'pullRight', 'open', 'onSelect', 'role', 'bsClass', 'className', 'rootCloseEvent', 'children']); +"use strict"; - delete props.onToggle; +var create = __webpack_require__(67); +var descriptor = __webpack_require__(62); +var setToStringTag = __webpack_require__(79); +var IteratorPrototype = {}; - var classes = (_classes = {}, _classes[bsClass] = true, _classes.open = open, _classes.disabled = disabled, _classes); +// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() +__webpack_require__(32)(IteratorPrototype, __webpack_require__(16)('iterator'), function () { return this; }); - if (dropup) { - classes[bsClass] = false; - classes.dropup = true; - } +module.exports = function (Constructor, NAME, next) { + Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); + setToStringTag(Constructor, NAME + ' Iterator'); +}; - // This intentionally forwards bsSize and bsStyle (if set) to the - // underlying component, to allow it to render size and style variants. - return __WEBPACK_IMPORTED_MODULE_9_react___default.a.createElement( - Component, - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, { - className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) - }), - __WEBPACK_IMPORTED_MODULE_23__utils_ValidComponentChildren__["a" /* default */].map(children, function (child) { - switch (child.props.bsRole) { - case TOGGLE_ROLE: - return _this4.renderToggle(child, { - id: id, disabled: disabled, open: open, role: role, bsClass: bsClass - }); - case MENU_ROLE: - return _this4.renderMenu(child, { - id: id, open: open, pullRight: pullRight, bsClass: bsClass, onSelect: onSelect, rootCloseEvent: rootCloseEvent - }); - default: - return child; - } - }) - ); - }; +/***/ }), +/* 149 */ +/***/ (function(module, exports, __webpack_require__) { - return Dropdown; -}(__WEBPACK_IMPORTED_MODULE_9_react___default.a.Component); +// helper for String#{startsWith, endsWith, includes} +var isRegExp = __webpack_require__(110); +var defined = __webpack_require__(46); -Dropdown.propTypes = propTypes; -Dropdown.defaultProps = defaultProps; +module.exports = function (that, searchString, NAME) { + if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!"); + return String(defined(that)); +}; -Object(__WEBPACK_IMPORTED_MODULE_20__utils_bootstrapUtils__["bsClass"])('dropdown', Dropdown); -var UncontrolledDropdown = __WEBPACK_IMPORTED_MODULE_15_uncontrollable___default()(Dropdown, { open: 'onToggle' }); +/***/ }), +/* 150 */ +/***/ (function(module, exports, __webpack_require__) { -UncontrolledDropdown.Toggle = __WEBPACK_IMPORTED_MODULE_19__DropdownToggle__["a" /* default */]; -UncontrolledDropdown.Menu = __WEBPACK_IMPORTED_MODULE_18__DropdownMenu__["a" /* default */]; +var MATCH = __webpack_require__(16)('match'); +module.exports = function (KEY) { + var re = /./; + try { + '/./'[KEY](re); + } catch (e) { + try { + re[MATCH] = false; + return !'/./'[KEY](re); + } catch (f) { /* empty */ } + } return true; +}; -/* harmony default export */ __webpack_exports__["a"] = (UncontrolledDropdown); /***/ }), /* 151 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony export (immutable) */ __webpack_exports__["a"] = splitComponentProps; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__ = __webpack_require__(140); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries__); - -function splitComponentProps(props, Component) { - var componentPropTypes = Component.propTypes; - - var parentProps = {}; - var childProps = {}; +/***/ (function(module, exports, __webpack_require__) { - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_entries___default()(props).forEach(function (_ref) { - var propName = _ref[0], - propValue = _ref[1]; +// check on default Array iterator +var Iterators = __webpack_require__(81); +var ITERATOR = __webpack_require__(16)('iterator'); +var ArrayProto = Array.prototype; - if (componentPropTypes[propName]) { - parentProps[propName] = propValue; - } else { - childProps[propName] = propValue; - } - }); +module.exports = function (it) { + return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it); +}; - return [parentProps, childProps]; -} /***/ }), /* 152 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Transition__ = __webpack_require__(348); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Transition___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Transition__); - - - - - - - - - -var propTypes = { - /** - * Show the component; triggers the fade in or fade out animation - */ - in: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, - /** - * Wait until the first "enter" transition to mount the component (add it to the DOM) - */ - mountOnEnter: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, - - /** - * Unmount the component (remove it from the DOM) when it is faded out - */ - unmountOnExit: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, - - /** - * Run the fade in animation when the component mounts, if it is initially - * shown - */ - transitionAppear: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, - - /** - * Duration of the fade animation in milliseconds, to ensure that finishing - * callbacks are fired even if the original browser transition end events are - * canceled - */ - timeout: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.number, +var $defineProperty = __webpack_require__(18); +var createDesc = __webpack_require__(62); - /** - * Callback fired before the component fades in - */ - onEnter: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - /** - * Callback fired after the component starts to fade in - */ - onEntering: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - /** - * Callback fired after the has component faded in - */ - onEntered: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - /** - * Callback fired before the component fades out - */ - onExit: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - /** - * Callback fired after the component starts to fade out - */ - onExiting: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - /** - * Callback fired after the component has faded out - */ - onExited: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func +module.exports = function (object, index, value) { + if (index in object) $defineProperty.f(object, index, createDesc(0, value)); + else object[index] = value; }; -var defaultProps = { - in: false, - timeout: 300, - mountOnEnter: false, - unmountOnExit: false, - transitionAppear: false -}; -var Fade = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Fade, _React$Component); +/***/ }), +/* 153 */ +/***/ (function(module, exports, __webpack_require__) { - function Fade() { - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Fade); +var classof = __webpack_require__(94); +var ITERATOR = __webpack_require__(16)('iterator'); +var Iterators = __webpack_require__(81); +module.exports = __webpack_require__(44).getIteratorMethod = function (it) { + if (it != undefined) return it[ITERATOR] + || it['@@iterator'] + || Iterators[classof(it)]; +}; - return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); - } - Fade.prototype.render = function render() { - return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_7_react_overlays_lib_Transition___default.a, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, this.props, { - className: __WEBPACK_IMPORTED_MODULE_4_classnames___default()(this.props.className, 'fade'), - enteredClassName: 'in', - enteringClassName: 'in' - })); - }; +/***/ }), +/* 154 */ +/***/ (function(module, exports, __webpack_require__) { - return Fade; -}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.Component); +// 9.4.2.3 ArraySpeciesCreate(originalArray, length) +var speciesConstructor = __webpack_require__(414); -Fade.propTypes = propTypes; -Fade.defaultProps = defaultProps; +module.exports = function (original, length) { + return new (speciesConstructor(original))(length); +}; -/* harmony default export */ __webpack_exports__["a"] = (Fade); /***/ }), -/* 153 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* 155 */ +/***/ (function(module, exports, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__ = __webpack_require__(11); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__MediaBody__ = __webpack_require__(896); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__MediaHeading__ = __webpack_require__(897); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__MediaLeft__ = __webpack_require__(898); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__MediaList__ = __webpack_require__(899); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__MediaListItem__ = __webpack_require__(900); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__MediaRight__ = __webpack_require__(901); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__utils_bootstrapUtils__ = __webpack_require__(10); - - - - - - +// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) +var toObject = __webpack_require__(20); +var toAbsoluteIndex = __webpack_require__(66); +var toLength = __webpack_require__(19); +module.exports = function fill(value /* , start = 0, end = @length */) { + var O = toObject(this); + var length = toLength(O.length); + var aLen = arguments.length; + var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length); + var end = aLen > 2 ? arguments[2] : undefined; + var endPos = end === undefined ? length : toAbsoluteIndex(end, length); + while (endPos > index) O[index++] = value; + return O; +}; +/***/ }), +/* 156 */ +/***/ (function(module, exports, __webpack_require__) { +"use strict"; +var addToUnscopables = __webpack_require__(57); +var step = __webpack_require__(218); +var Iterators = __webpack_require__(81); +var toIObject = __webpack_require__(36); +// 22.1.3.4 Array.prototype.entries() +// 22.1.3.13 Array.prototype.keys() +// 22.1.3.29 Array.prototype.values() +// 22.1.3.30 Array.prototype[@@iterator]() +module.exports = __webpack_require__(147)(Array, 'Array', function (iterated, kind) { + this._t = toIObject(iterated); // target + this._i = 0; // next index + this._k = kind; // kind +// 22.1.5.2.1 %ArrayIteratorPrototype%.next() +}, function () { + var O = this._t; + var kind = this._k; + var index = this._i++; + if (!O || index >= O.length) { + this._t = undefined; + return step(1); + } + if (kind == 'keys') return step(0, index); + if (kind == 'values') return step(0, O[index]); + return step(0, [index, O[index]]); +}, 'values'); +// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) +Iterators.Arguments = Iterators.Array; +addToUnscopables('keys'); +addToUnscopables('values'); +addToUnscopables('entries'); +/***/ }), +/* 157 */ +/***/ (function(module, exports, __webpack_require__) { -var propTypes = { - componentClass: __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default.a +var ctx = __webpack_require__(40); +var invoke = __webpack_require__(208); +var html = __webpack_require__(139); +var cel = __webpack_require__(135); +var global = __webpack_require__(11); +var process = global.process; +var setTask = global.setImmediate; +var clearTask = global.clearImmediate; +var MessageChannel = global.MessageChannel; +var Dispatch = global.Dispatch; +var counter = 0; +var queue = {}; +var ONREADYSTATECHANGE = 'onreadystatechange'; +var defer, channel, port; +var run = function () { + var id = +this; + // eslint-disable-next-line no-prototype-builtins + if (queue.hasOwnProperty(id)) { + var fn = queue[id]; + delete queue[id]; + fn(); + } }; - -var defaultProps = { - componentClass: 'div' -}; - -var Media = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(Media, _React$Component); - - function Media() { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, Media); - - return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); - } - - Media.prototype.render = function render() { - var _props = this.props, - Component = _props.componentClass, - className = _props.className, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['componentClass', 'className']); - - var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_14__utils_bootstrapUtils__["splitBsProps"])(props), - bsProps = _splitBsProps[0], - elementProps = _splitBsProps[1]; - - var classes = Object(__WEBPACK_IMPORTED_MODULE_14__utils_bootstrapUtils__["getClassSet"])(bsProps); - - return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(Component, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, elementProps, { - className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) - })); - }; - - return Media; -}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); - -Media.propTypes = propTypes; -Media.defaultProps = defaultProps; - -Media.Heading = __WEBPACK_IMPORTED_MODULE_9__MediaHeading__["a" /* default */]; -Media.Body = __WEBPACK_IMPORTED_MODULE_8__MediaBody__["a" /* default */]; -Media.Left = __WEBPACK_IMPORTED_MODULE_10__MediaLeft__["a" /* default */]; -Media.Right = __WEBPACK_IMPORTED_MODULE_13__MediaRight__["a" /* default */]; -Media.List = __WEBPACK_IMPORTED_MODULE_11__MediaList__["a" /* default */]; -Media.ListItem = __WEBPACK_IMPORTED_MODULE_12__MediaListItem__["a" /* default */]; - -/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_14__utils_bootstrapUtils__["bsClass"])('media', Media)); - -/***/ }), -/* 154 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.__esModule = true; -exports.default = getContainer; - -var _reactDom = __webpack_require__(17); - -var _reactDom2 = _interopRequireDefault(_reactDom); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function getContainer(container, defaultContainer) { - container = typeof container === 'function' ? container() : container; - return _reactDom2.default.findDOMNode(container) || defaultContainer; -} -module.exports = exports['default']; - -/***/ }), -/* 155 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(16); -var document = __webpack_require__(14).document; -// typeof document.createElement is 'object' in old IE -var is = isObject(document) && isObject(document.createElement); -module.exports = function (it) { - return is ? document.createElement(it) : {}; -}; - - -/***/ }), -/* 156 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(14); -var core = __webpack_require__(50); -var LIBRARY = __webpack_require__(76); -var wksExt = __webpack_require__(226); -var defineProperty = __webpack_require__(20).f; -module.exports = function (name) { - var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); - if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); -}; - - -/***/ }), -/* 157 */ -/***/ (function(module, exports, __webpack_require__) { - -var shared = __webpack_require__(120)('keys'); -var uid = __webpack_require__(75); -module.exports = function (key) { - return shared[key] || (shared[key] = uid(key)); -}; - - -/***/ }), -/* 158 */ -/***/ (function(module, exports) { - -// IE 8- don't enum bug keys -module.exports = ( - 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' -).split(','); - - -/***/ }), -/* 159 */ -/***/ (function(module, exports, __webpack_require__) { - -var document = __webpack_require__(14).document; -module.exports = document && document.documentElement; - - -/***/ }), -/* 160 */ -/***/ (function(module, exports, __webpack_require__) { - -// Works with __proto__ only. Old v8 can't work with null proto objects. -/* eslint-disable no-proto */ -var isObject = __webpack_require__(16); -var anObject = __webpack_require__(13); -var check = function (O, proto) { - anObject(O); - if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!"); -}; -module.exports = { - set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line - function (test, buggy, set) { - try { - set = __webpack_require__(46)(Function.call, __webpack_require__(40).f(Object.prototype, '__proto__').set, 2); - set(test, []); - buggy = !(test instanceof Array); - } catch (e) { buggy = true; } - return function setPrototypeOf(O, proto) { - check(O, proto); - if (buggy) O.__proto__ = proto; - else set(O, proto); - return O; - }; - }({}, false) : undefined), - check: check -}; - - -/***/ }), -/* 161 */ -/***/ (function(module, exports) { - -module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' + - '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; - - -/***/ }), -/* 162 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(16); -var setPrototypeOf = __webpack_require__(160).set; -module.exports = function (that, target, C) { - var S = target.constructor; - var P; - if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) { - setPrototypeOf(that, P); - } return that; -}; - - -/***/ }), -/* 163 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var toInteger = __webpack_require__(53); -var defined = __webpack_require__(52); - -module.exports = function repeat(count) { - var str = String(defined(this)); - var res = ''; - var n = toInteger(count); - if (n < 0 || n == Infinity) throw RangeError("Count can't be negative"); - for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str; - return res; -}; - - -/***/ }), -/* 164 */ -/***/ (function(module, exports) { - -// 20.2.2.28 Math.sign(x) -module.exports = Math.sign || function sign(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1; -}; - - -/***/ }), -/* 165 */ -/***/ (function(module, exports) { - -// 20.2.2.14 Math.expm1(x) -var $expm1 = Math.expm1; -module.exports = (!$expm1 - // Old FF bug - || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168 - // Tor Browser bug - || $expm1(-2e-17) != -2e-17 -) ? function expm1(x) { - return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1; -} : $expm1; - - -/***/ }), -/* 166 */ -/***/ (function(module, exports, __webpack_require__) { - -var toInteger = __webpack_require__(53); -var defined = __webpack_require__(52); -// true -> String#at -// false -> String#codePointAt -module.exports = function (TO_STRING) { - return function (that, pos) { - var s = String(defined(that)); - var i = toInteger(pos); - var l = s.length; - var a, b; - if (i < 0 || i >= l) return TO_STRING ? '' : undefined; - a = s.charCodeAt(i); - return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff - ? TO_STRING ? s.charAt(i) : a - : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; - }; -}; - - -/***/ }), -/* 167 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var LIBRARY = __webpack_require__(76); -var $export = __webpack_require__(8); -var redefine = __webpack_require__(37); -var hide = __webpack_require__(36); -var has = __webpack_require__(35); -var Iterators = __webpack_require__(93); -var $iterCreate = __webpack_require__(168); -var setToStringTag = __webpack_require__(91); -var getPrototypeOf = __webpack_require__(41); -var ITERATOR = __webpack_require__(18)('iterator'); -var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` -var FF_ITERATOR = '@@iterator'; -var KEYS = 'keys'; -var VALUES = 'values'; - -var returnThis = function () { return this; }; - -module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { - $iterCreate(Constructor, NAME, next); - var getMethod = function (kind) { - if (!BUGGY && kind in proto) return proto[kind]; - switch (kind) { - case KEYS: return function keys() { return new Constructor(this, kind); }; - case VALUES: return function values() { return new Constructor(this, kind); }; - } return function entries() { return new Constructor(this, kind); }; - }; - var TAG = NAME + ' Iterator'; - var DEF_VALUES = DEFAULT == VALUES; - var VALUES_BUG = false; - var proto = Base.prototype; - var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; - var $default = (!BUGGY && $native) || getMethod(DEFAULT); - var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; - var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; - var methods, key, IteratorPrototype; - // Fix native - if ($anyNative) { - IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); - if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { - // Set @@toStringTag to native iterators - setToStringTag(IteratorPrototype, TAG, true); - // fix for some old engines - if (!LIBRARY && !has(IteratorPrototype, ITERATOR)) hide(IteratorPrototype, ITERATOR, returnThis); - } - } - // fix Array#{values, @@iterator}.name in V8 / FF - if (DEF_VALUES && $native && $native.name !== VALUES) { - VALUES_BUG = true; - $default = function values() { return $native.call(this); }; - } - // Define iterator - if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { - hide(proto, ITERATOR, $default); - } - // Plug for library - Iterators[NAME] = $default; - Iterators[TAG] = returnThis; - if (DEFAULT) { - methods = { - values: DEF_VALUES ? $default : getMethod(VALUES), - keys: IS_SET ? $default : getMethod(KEYS), - entries: $entries - }; - if (FORCED) for (key in methods) { - if (!(key in proto)) redefine(proto, key, methods[key]); - } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); - } - return methods; -}; - - -/***/ }), -/* 168 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var create = __webpack_require__(79); -var descriptor = __webpack_require__(74); -var setToStringTag = __webpack_require__(91); -var IteratorPrototype = {}; - -// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() -__webpack_require__(36)(IteratorPrototype, __webpack_require__(18)('iterator'), function () { return this; }); - -module.exports = function (Constructor, NAME, next) { - Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); - setToStringTag(Constructor, NAME + ' Iterator'); -}; - - -/***/ }), -/* 169 */ -/***/ (function(module, exports, __webpack_require__) { - -// helper for String#{startsWith, endsWith, includes} -var isRegExp = __webpack_require__(124); -var defined = __webpack_require__(52); - -module.exports = function (that, searchString, NAME) { - if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!"); - return String(defined(that)); -}; - - -/***/ }), -/* 170 */ -/***/ (function(module, exports, __webpack_require__) { - -var MATCH = __webpack_require__(18)('match'); -module.exports = function (KEY) { - var re = /./; - try { - '/./'[KEY](re); - } catch (e) { - try { - re[MATCH] = false; - return !'/./'[KEY](re); - } catch (f) { /* empty */ } - } return true; -}; - - -/***/ }), -/* 171 */ -/***/ (function(module, exports, __webpack_require__) { - -// check on default Array iterator -var Iterators = __webpack_require__(93); -var ITERATOR = __webpack_require__(18)('iterator'); -var ArrayProto = Array.prototype; - -module.exports = function (it) { - return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it); -}; - - -/***/ }), -/* 172 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $defineProperty = __webpack_require__(20); -var createDesc = __webpack_require__(74); - -module.exports = function (object, index, value) { - if (index in object) $defineProperty.f(object, index, createDesc(0, value)); - else object[index] = value; -}; - - -/***/ }), -/* 173 */ -/***/ (function(module, exports, __webpack_require__) { - -var classof = __webpack_require__(105); -var ITERATOR = __webpack_require__(18)('iterator'); -var Iterators = __webpack_require__(93); -module.exports = __webpack_require__(50).getIteratorMethod = function (it) { - if (it != undefined) return it[ITERATOR] - || it['@@iterator'] - || Iterators[classof(it)]; -}; - - -/***/ }), -/* 174 */ -/***/ (function(module, exports, __webpack_require__) { - -// 9.4.2.3 ArraySpeciesCreate(originalArray, length) -var speciesConstructor = __webpack_require__(461); - -module.exports = function (original, length) { - return new (speciesConstructor(original))(length); -}; - - -/***/ }), -/* 175 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) - -var toObject = __webpack_require__(23); -var toAbsoluteIndex = __webpack_require__(78); -var toLength = __webpack_require__(21); -module.exports = function fill(value /* , start = 0, end = @length */) { - var O = toObject(this); - var length = toLength(O.length); - var aLen = arguments.length; - var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length); - var end = aLen > 2 ? arguments[2] : undefined; - var endPos = end === undefined ? length : toAbsoluteIndex(end, length); - while (endPos > index) O[index++] = value; - return O; -}; - - -/***/ }), -/* 176 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var addToUnscopables = __webpack_require__(67); -var step = __webpack_require__(242); -var Iterators = __webpack_require__(93); -var toIObject = __webpack_require__(39); - -// 22.1.3.4 Array.prototype.entries() -// 22.1.3.13 Array.prototype.keys() -// 22.1.3.29 Array.prototype.values() -// 22.1.3.30 Array.prototype[@@iterator]() -module.exports = __webpack_require__(167)(Array, 'Array', function (iterated, kind) { - this._t = toIObject(iterated); // target - this._i = 0; // next index - this._k = kind; // kind -// 22.1.5.2.1 %ArrayIteratorPrototype%.next() -}, function () { - var O = this._t; - var kind = this._k; - var index = this._i++; - if (!O || index >= O.length) { - this._t = undefined; - return step(1); - } - if (kind == 'keys') return step(0, index); - if (kind == 'values') return step(0, O[index]); - return step(0, [index, O[index]]); -}, 'values'); - -// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) -Iterators.Arguments = Iterators.Array; - -addToUnscopables('keys'); -addToUnscopables('values'); -addToUnscopables('entries'); - - -/***/ }), -/* 177 */ -/***/ (function(module, exports, __webpack_require__) { - -var ctx = __webpack_require__(46); -var invoke = __webpack_require__(232); -var html = __webpack_require__(159); -var cel = __webpack_require__(155); -var global = __webpack_require__(14); -var process = global.process; -var setTask = global.setImmediate; -var clearTask = global.clearImmediate; -var MessageChannel = global.MessageChannel; -var Dispatch = global.Dispatch; -var counter = 0; -var queue = {}; -var ONREADYSTATECHANGE = 'onreadystatechange'; -var defer, channel, port; -var run = function () { - var id = +this; - // eslint-disable-next-line no-prototype-builtins - if (queue.hasOwnProperty(id)) { - var fn = queue[id]; - delete queue[id]; - fn(); - } -}; -var listener = function (event) { - run.call(event.data); +var listener = function (event) { + run.call(event.data); }; // Node.js 0.9+ & IE10+ has setImmediate, otherwise: if (!setTask || !clearTask) { @@ -14364,7 +12488,7 @@ if (!setTask || !clearTask) { delete queue[id]; }; // Node.js 0.8- - if (__webpack_require__(47)(process) == 'process') { + if (__webpack_require__(41)(process) == 'process') { defer = function (id) { process.nextTick(ctx(run, id, 1)); }; @@ -14408,15 +12532,15 @@ module.exports = { /***/ }), -/* 178 */ +/* 158 */ /***/ (function(module, exports, __webpack_require__) { -var global = __webpack_require__(14); -var macrotask = __webpack_require__(177).set; +var global = __webpack_require__(11); +var macrotask = __webpack_require__(157).set; var Observer = global.MutationObserver || global.WebKitMutationObserver; var process = global.process; var Promise = global.Promise; -var isNode = __webpack_require__(47)(process) == 'process'; +var isNode = __webpack_require__(41)(process) == 'process'; module.exports = function () { var head, last, notify; @@ -14482,13 +12606,13 @@ module.exports = function () { /***/ }), -/* 179 */ +/* 159 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // 25.4.1.5 NewPromiseCapability(C) -var aFunction = __webpack_require__(29); +var aFunction = __webpack_require__(25); function PromiseCapability(C) { var resolve, reject; @@ -14507,26 +12631,26 @@ module.exports.f = function (C) { /***/ }), -/* 180 */ +/* 160 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var global = __webpack_require__(14); -var DESCRIPTORS = __webpack_require__(19); -var LIBRARY = __webpack_require__(76); -var $typed = __webpack_require__(130); -var hide = __webpack_require__(36); -var redefineAll = __webpack_require__(84); -var fails = __webpack_require__(15); -var anInstance = __webpack_require__(82); -var toInteger = __webpack_require__(53); -var toLength = __webpack_require__(21); -var toIndex = __webpack_require__(251); -var gOPN = __webpack_require__(80).f; -var dP = __webpack_require__(20).f; -var arrayFill = __webpack_require__(175); -var setToStringTag = __webpack_require__(91); +var global = __webpack_require__(11); +var DESCRIPTORS = __webpack_require__(17); +var LIBRARY = __webpack_require__(64); +var $typed = __webpack_require__(116); +var hide = __webpack_require__(32); +var redefineAll = __webpack_require__(72); +var fails = __webpack_require__(12); +var anInstance = __webpack_require__(70); +var toInteger = __webpack_require__(47); +var toLength = __webpack_require__(19); +var toIndex = __webpack_require__(227); +var gOPN = __webpack_require__(68).f; +var dP = __webpack_require__(18).f; +var arrayFill = __webpack_require__(155); +var setToStringTag = __webpack_require__(79); var ARRAY_BUFFER = 'ArrayBuffer'; var DATA_VIEW = 'DataView'; var PROTOTYPE = 'prototype'; @@ -14790,17 +12914,17 @@ exports[DATA_VIEW] = $DataView; /***/ }), -/* 181 */ +/* 161 */ /***/ (function(module, exports, __webpack_require__) { -var global = __webpack_require__(14); +var global = __webpack_require__(11); var navigator = global.navigator; module.exports = navigator && navigator.userAgent || ''; /***/ }), -/* 182 */ +/* 162 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -14897,7 +13021,7 @@ module.exports = shouldUseNative() ? Object.assign : function (target, source) { /***/ }), -/* 183 */ +/* 163 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -14911,9 +13035,9 @@ module.exports = shouldUseNative() ? Object.assign : function (target, source) { if (true) { - var invariant = __webpack_require__(134); - var warning = __webpack_require__(135); - var ReactPropTypesSecret = __webpack_require__(260); + var invariant = __webpack_require__(120); + var warning = __webpack_require__(121); + var ReactPropTypesSecret = __webpack_require__(236); var loggedTypeFailures = {}; } @@ -14963,7 +13087,7 @@ module.exports = checkPropTypes; /***/ }), -/* 184 */ +/* 164 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -14991,13 +13115,13 @@ function warning(message) { } /***/ }), -/* 185 */ +/* 165 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__baseGetTag_js__ = __webpack_require__(592); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getPrototype_js__ = __webpack_require__(597); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__isObjectLike_js__ = __webpack_require__(599); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__baseGetTag_js__ = __webpack_require__(545); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getPrototype_js__ = __webpack_require__(550); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__isObjectLike_js__ = __webpack_require__(552); @@ -15063,7 +13187,7 @@ function isPlainObject(value) { /***/ }), -/* 186 */ +/* 166 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15074,15 +13198,15 @@ exports.locationsAreEqual = exports.createLocation = undefined; var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; -var _resolvePathname = __webpack_require__(273); +var _resolvePathname = __webpack_require__(249); var _resolvePathname2 = _interopRequireDefault(_resolvePathname); -var _valueEqual = __webpack_require__(274); +var _valueEqual = __webpack_require__(250); var _valueEqual2 = _interopRequireDefault(_valueEqual); -var _PathUtils = __webpack_require__(108); +var _PathUtils = __webpack_require__(97); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } @@ -15147,7 +13271,7 @@ var locationsAreEqual = exports.locationsAreEqual = function locationsAreEqual(a }; /***/ }), -/* 187 */ +/* 167 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15155,7 +13279,7 @@ var locationsAreEqual = exports.locationsAreEqual = function locationsAreEqual(a exports.__esModule = true; -var _warning = __webpack_require__(12); +var _warning = __webpack_require__(14); var _warning2 = _interopRequireDefault(_warning); @@ -15238,28 +13362,28 @@ var createTransitionManager = function createTransitionManager() { exports.default = createTransitionManager; /***/ }), -/* 188 */ +/* 168 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router_es_Router__ = __webpack_require__(189); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router_es_Router__ = __webpack_require__(169); // Written in this round about way for babel-transform-imports /* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_0_react_router_es_Router__["a" /* default */]); /***/ }), -/* 189 */ +/* 169 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(12); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(14); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_warning__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(24); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(23); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_invariant__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_prop_types__); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; @@ -15368,11 +13492,11 @@ Router.childContextTypes = { /* harmony default export */ __webpack_exports__["a"] = (Router); /***/ }), -/* 190 */ +/* 170 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_path_to_regexp__ = __webpack_require__(617); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_path_to_regexp__ = __webpack_require__(570); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_path_to_regexp___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_path_to_regexp__); @@ -15445,11 +13569,11 @@ var matchPath = function matchPath(pathname) { /* harmony default export */ __webpack_exports__["a"] = (matchPath); /***/ }), -/* 191 */ +/* 171 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(12); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(14); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_warning__); @@ -15530,17 +13654,11 @@ var createTransitionManager = function createTransitionManager() { /* harmony default export */ __webpack_exports__["a"] = (createTransitionManager); /***/ }), -/* 192 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = { "default": __webpack_require__(637), __esModule: true }; - -/***/ }), -/* 193 */ +/* 172 */ /***/ (function(module, exports, __webpack_require__) { // optional / simple context binding -var aFunction = __webpack_require__(639); +var aFunction = __webpack_require__(592); module.exports = function (fn, that, length) { aFunction(fn); if (that === undefined) return fn; @@ -15562,11 +13680,11 @@ module.exports = function (fn, that, length) { /***/ }), -/* 194 */ +/* 173 */ /***/ (function(module, exports, __webpack_require__) { // 7.1.1 ToPrimitive(input [, PreferredType]) -var isObject = __webpack_require__(97); +var isObject = __webpack_require__(85); // instead of the ES6 spec version, we didn't implement @@toPrimitive case // and the second argument - flag - preferred type is a string module.exports = function (it, S) { @@ -15580,7 +13698,7 @@ module.exports = function (it, S) { /***/ }), -/* 195 */ +/* 174 */ /***/ (function(module, exports) { var toString = {}.toString; @@ -15591,7 +13709,7 @@ module.exports = function (it) { /***/ }), -/* 196 */ +/* 175 */ /***/ (function(module, exports) { // 7.2.1 RequireObjectCoercible(argument) @@ -15602,7 +13720,7 @@ module.exports = function (it) { /***/ }), -/* 197 */ +/* 176 */ /***/ (function(module, exports) { // 7.1.4 ToInteger @@ -15614,21 +13732,21 @@ module.exports = function (it) { /***/ }), -/* 198 */ +/* 177 */ /***/ (function(module, exports, __webpack_require__) { -var shared = __webpack_require__(199)('keys'); -var uid = __webpack_require__(137); +var shared = __webpack_require__(178)('keys'); +var uid = __webpack_require__(123); module.exports = function (key) { return shared[key] || (shared[key] = uid(key)); }; /***/ }), -/* 199 */ +/* 178 */ /***/ (function(module, exports, __webpack_require__) { -var global = __webpack_require__(68); +var global = __webpack_require__(58); var SHARED = '__core-js_shared__'; var store = global[SHARED] || (global[SHARED] = {}); module.exports = function (key) { @@ -15637,7 +13755,7 @@ module.exports = function (key) { /***/ }), -/* 200 */ +/* 179 */ /***/ (function(module, exports) { // IE 8- don't enum bug keys @@ -15647,21 +13765,21 @@ module.exports = ( /***/ }), -/* 201 */ +/* 180 */ /***/ (function(module, exports) { exports.f = Object.getOwnPropertySymbols; /***/ }), -/* 202 */ +/* 181 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function(process) { -var utils = __webpack_require__(42); -var normalizeHeaderName = __webpack_require__(663); +var utils = __webpack_require__(39); +var normalizeHeaderName = __webpack_require__(616); var PROTECTION_PREFIX = /^\)\]\}',?\n/; var DEFAULT_CONTENT_TYPE = { @@ -15678,10 +13796,10 @@ function getDefaultAdapter() { var adapter; if (typeof XMLHttpRequest !== 'undefined') { // For browsers use XHR adapter - adapter = __webpack_require__(290); + adapter = __webpack_require__(267); } else if (typeof process !== 'undefined') { // For node use HTTP adapter - adapter = __webpack_require__(290); + adapter = __webpack_require__(267); } return adapter; } @@ -15752,37 +13870,64 @@ utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) { module.exports = defaults; -/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(138))) +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(124))) /***/ }), -/* 203 */ +/* 182 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +var _iterator = __webpack_require__(661); + +var _iterator2 = _interopRequireDefault(_iterator); + +var _symbol = __webpack_require__(671); + +var _symbol2 = _interopRequireDefault(_symbol); + +var _typeof = typeof _symbol2.default === "function" && typeof _iterator2.default === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj; }; + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = typeof _symbol2.default === "function" && _typeof(_iterator2.default) === "symbol" ? function (obj) { + return typeof obj === "undefined" ? "undefined" : _typeof(obj); +} : function (obj) { + return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj); +}; + +/***/ }), +/* 183 */ /***/ (function(module, exports) { module.exports = true; /***/ }), -/* 204 */ +/* 184 */ /***/ (function(module, exports, __webpack_require__) { // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -var anObject = __webpack_require__(96); -var dPs = __webpack_require__(712); -var enumBugKeys = __webpack_require__(200); -var IE_PROTO = __webpack_require__(198)('IE_PROTO'); +var anObject = __webpack_require__(84); +var dPs = __webpack_require__(665); +var enumBugKeys = __webpack_require__(179); +var IE_PROTO = __webpack_require__(177)('IE_PROTO'); var Empty = function () { /* empty */ }; var PROTOTYPE = 'prototype'; // Create object with fake `null` prototype: use iframe Object with cleared prototype var createDict = function () { // Thrash, waste and sodomy: IE GC bug - var iframe = __webpack_require__(283)('iframe'); + var iframe = __webpack_require__(260)('iframe'); var i = enumBugKeys.length; var lt = '<'; var gt = '>'; var iframeDocument; iframe.style.display = 'none'; - __webpack_require__(713).appendChild(iframe); + __webpack_require__(666).appendChild(iframe); iframe.src = 'javascript:'; // eslint-disable-line no-script-url // createDict = iframe.contentWindow.Object; // html.removeChild(iframe); @@ -15809,12 +13954,12 @@ module.exports = Object.create || function create(O, Properties) { /***/ }), -/* 205 */ +/* 185 */ /***/ (function(module, exports, __webpack_require__) { -var def = __webpack_require__(69).f; -var has = __webpack_require__(87); -var TAG = __webpack_require__(58)('toStringTag'); +var def = __webpack_require__(59).f; +var has = __webpack_require__(75); +var TAG = __webpack_require__(52)('toStringTag'); module.exports = function (it, tag, stat) { if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); @@ -15822,21 +13967,21 @@ module.exports = function (it, tag, stat) { /***/ }), -/* 206 */ +/* 186 */ /***/ (function(module, exports, __webpack_require__) { -exports.f = __webpack_require__(58); +exports.f = __webpack_require__(52); /***/ }), -/* 207 */ +/* 187 */ /***/ (function(module, exports, __webpack_require__) { -var global = __webpack_require__(68); -var core = __webpack_require__(30); -var LIBRARY = __webpack_require__(203); -var wksExt = __webpack_require__(206); -var defineProperty = __webpack_require__(69).f; +var global = __webpack_require__(58); +var core = __webpack_require__(27); +var LIBRARY = __webpack_require__(183); +var wksExt = __webpack_require__(186); +var defineProperty = __webpack_require__(59).f; module.exports = function (name) { var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); @@ -15844,17 +13989,17 @@ module.exports = function (name) { /***/ }), -/* 208 */ +/* 188 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_prop_types__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__); @@ -15912,29 +14057,29 @@ CloseButton.defaultProps = defaultProps; /* harmony default export */ __webpack_exports__["a"] = (CloseButton); /***/ }), -/* 209 */ +/* 189 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_all__ = __webpack_require__(71); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_all__ = __webpack_require__(126); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_all___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_all__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__Button__ = __webpack_require__(116); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__Button__ = __webpack_require__(104); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__ = __webpack_require__(9); @@ -16007,25 +14152,141 @@ ButtonGroup.defaultProps = defaultProps; /* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsClass"])('btn-group', ButtonGroup)); /***/ }), -/* 210 */ +/* 190 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.animationEnd = exports.animationDelay = exports.animationTiming = exports.animationDuration = exports.animationName = exports.transitionEnd = exports.transitionDuration = exports.transitionDelay = exports.transitionTiming = exports.transitionProperty = exports.transform = undefined; + +var _inDOM = __webpack_require__(61); + +var _inDOM2 = _interopRequireDefault(_inDOM); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var transform = 'transform'; +var prefix = void 0, + transitionEnd = void 0, + animationEnd = void 0; +var transitionProperty = void 0, + transitionDuration = void 0, + transitionTiming = void 0, + transitionDelay = void 0; +var animationName = void 0, + animationDuration = void 0, + animationTiming = void 0, + animationDelay = void 0; + +if (_inDOM2.default) { + var _getTransitionPropert = getTransitionProperties(); + + prefix = _getTransitionPropert.prefix; + exports.transitionEnd = transitionEnd = _getTransitionPropert.transitionEnd; + exports.animationEnd = animationEnd = _getTransitionPropert.animationEnd; + + + exports.transform = transform = prefix + '-' + transform; + exports.transitionProperty = transitionProperty = prefix + '-transition-property'; + exports.transitionDuration = transitionDuration = prefix + '-transition-duration'; + exports.transitionDelay = transitionDelay = prefix + '-transition-delay'; + exports.transitionTiming = transitionTiming = prefix + '-transition-timing-function'; + + exports.animationName = animationName = prefix + '-animation-name'; + exports.animationDuration = animationDuration = prefix + '-animation-duration'; + exports.animationTiming = animationTiming = prefix + '-animation-delay'; + exports.animationDelay = animationDelay = prefix + '-animation-timing-function'; +} + +exports.transform = transform; +exports.transitionProperty = transitionProperty; +exports.transitionTiming = transitionTiming; +exports.transitionDelay = transitionDelay; +exports.transitionDuration = transitionDuration; +exports.transitionEnd = transitionEnd; +exports.animationName = animationName; +exports.animationDuration = animationDuration; +exports.animationTiming = animationTiming; +exports.animationDelay = animationDelay; +exports.animationEnd = animationEnd; +exports.default = { + transform: transform, + end: transitionEnd, + property: transitionProperty, + timing: transitionTiming, + delay: transitionDelay, + duration: transitionDuration +}; + + +function getTransitionProperties() { + var style = document.createElement('div').style; + + var vendorMap = { + O: function O(e) { + return 'o' + e.toLowerCase(); + }, + Moz: function Moz(e) { + return e.toLowerCase(); + }, + Webkit: function Webkit(e) { + return 'webkit' + e; + }, + ms: function ms(e) { + return 'MS' + e; + } + }; + + var vendors = Object.keys(vendorMap); + + var transitionEnd = void 0, + animationEnd = void 0; + var prefix = ''; + + for (var i = 0; i < vendors.length; i++) { + var vendor = vendors[i]; + + if (vendor + 'TransitionProperty' in style) { + prefix = '-' + vendor.toLowerCase(); + transitionEnd = vendorMap[vendor]('TransitionEnd'); + animationEnd = vendorMap[vendor]('AnimationEnd'); + break; + } + } + + if (!transitionEnd && 'transitionProperty' in style) transitionEnd = 'transitionend'; + + if (!animationEnd && 'animationName' in style) animationEnd = 'animationend'; + + style = null; + + return { animationEnd: animationEnd, transitionEnd: transitionEnd, prefix: prefix }; +} + +/***/ }), +/* 191 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__ = __webpack_require__(9); @@ -16080,32 +14341,32 @@ Glyphicon.propTypes = propTypes; /* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["bsClass"])('glyphicon', Glyphicon)); /***/ }), -/* 211 */ +/* 192 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_style__ = __webpack_require__(90); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_style__ = __webpack_require__(105); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_style___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_dom_helpers_style__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_transition_group_Transition__ = __webpack_require__(312); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_transition_group_Transition__ = __webpack_require__(290); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_transition_group_Transition___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_transition_group_Transition__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_capitalize__ = __webpack_require__(311); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils_createChainedFunction__ = __webpack_require__(25); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_capitalize__ = __webpack_require__(289); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils_createChainedFunction__ = __webpack_require__(21); @@ -16326,58 +14587,159 @@ Collapse.defaultProps = defaultProps; /* harmony default export */ __webpack_exports__["a"] = (Collapse); /***/ }), -/* 212 */ -/***/ (function(module, exports, __webpack_require__) { +/* 193 */ +/***/ (function(module, exports) { -"use strict"; +// Source: http://jsfiddle.net/vWx8V/ +// http://stackoverflow.com/questions/5603195/full-list-of-javascript-keycodes +/** + * Conenience method returns corresponding value for given keyName or keyCode. + * + * @param {Mixed} keyCode {Number} or keyName {String} + * @return {Mixed} + * @api public + */ -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = offset; +exports = module.exports = function(searchInput) { + // Keyboard Events + if (searchInput && 'object' === typeof searchInput) { + var hasKeyCode = searchInput.which || searchInput.keyCode || searchInput.charCode + if (hasKeyCode) searchInput = hasKeyCode + } -var _contains = __webpack_require__(60); + // Numbers + if ('number' === typeof searchInput) return names[searchInput] -var _contains2 = _interopRequireDefault(_contains); + // Everything else (cast to string) + var search = String(searchInput) -var _isWindow = __webpack_require__(118); + // check codes + var foundNamedKey = codes[search.toLowerCase()] + if (foundNamedKey) return foundNamedKey -var _isWindow2 = _interopRequireDefault(_isWindow); + // check aliases + var foundNamedKey = aliases[search.toLowerCase()] + if (foundNamedKey) return foundNamedKey -var _ownerDocument = __webpack_require__(65); + // weird character? + if (search.length === 1) return search.charCodeAt(0) -var _ownerDocument2 = _interopRequireDefault(_ownerDocument); + return undefined +} -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +/** + * Get by name + * + * exports.code['enter'] // => 13 + */ -function offset(node) { - var doc = (0, _ownerDocument2.default)(node), - win = (0, _isWindow2.default)(doc), - docElem = doc && doc.documentElement, - box = { top: 0, left: 0, height: 0, width: 0 }; +var codes = exports.code = exports.codes = { + 'backspace': 8, + 'tab': 9, + 'enter': 13, + 'shift': 16, + 'ctrl': 17, + 'alt': 18, + 'pause/break': 19, + 'caps lock': 20, + 'esc': 27, + 'space': 32, + 'page up': 33, + 'page down': 34, + 'end': 35, + 'home': 36, + 'left': 37, + 'up': 38, + 'right': 39, + 'down': 40, + 'insert': 45, + 'delete': 46, + 'command': 91, + 'left command': 91, + 'right command': 93, + 'numpad *': 106, + 'numpad +': 107, + 'numpad -': 109, + 'numpad .': 110, + 'numpad /': 111, + 'num lock': 144, + 'scroll lock': 145, + 'my computer': 182, + 'my calculator': 183, + ';': 186, + '=': 187, + ',': 188, + '-': 189, + '.': 190, + '/': 191, + '`': 192, + '[': 219, + '\\': 220, + ']': 221, + "'": 222 +} - if (!doc) return; +// Helper aliases - // Make sure it's not a disconnected DOM node - if (!(0, _contains2.default)(docElem, node)) return box; +var aliases = exports.aliases = { + 'windows': 91, + '⇧': 16, + '⌥': 18, + '⌃': 17, + '⌘': 91, + 'ctl': 17, + 'control': 17, + 'option': 18, + 'pause': 19, + 'break': 19, + 'caps': 20, + 'return': 13, + 'escape': 27, + 'spc': 32, + 'pgup': 33, + 'pgdn': 34, + 'ins': 45, + 'del': 46, + 'cmd': 91 +} - if (node.getBoundingClientRect !== undefined) box = node.getBoundingClientRect(); - // IE8 getBoundingClientRect doesn't support width & height - box = { - top: box.top + (win.pageYOffset || docElem.scrollTop) - (docElem.clientTop || 0), - left: box.left + (win.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || 0), - width: (box.width == null ? node.offsetWidth : box.width) || 0, - height: (box.height == null ? node.offsetHeight : box.height) || 0 - }; +/*! + * Programatically add the following + */ - return box; +// lower case chars +for (i = 97; i < 123; i++) codes[String.fromCharCode(i)] = i - 32 + +// numbers +for (var i = 48; i < 58; i++) codes[i - 48] = i + +// function keys +for (i = 1; i < 13; i++) codes['f'+i] = i + 111 + +// numpad keys +for (i = 0; i < 10; i++) codes['numpad '+i] = i + 96 + +/** + * Get by code + * + * exports.name[13] // => 'Enter' + */ + +var names = exports.names = exports.title = {} // title for backward compat + +// Create reverse mapping +for (i in codes) names[codes[i]] = i + +// Add aliases +for (var alias in aliases) { + codes[alias] = aliases[alias] } -module.exports = exports['default']; + /***/ }), -/* 213 */ +/* 194 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -16386,25 +14748,66 @@ module.exports = exports['default']; Object.defineProperty(exports, "__esModule", { value: true }); -exports.default = scrollTop; -var _isWindow = __webpack_require__(118); +var _inDOM = __webpack_require__(61); -var _isWindow2 = _interopRequireDefault(_isWindow); +var _inDOM2 = _interopRequireDefault(_inDOM); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -function scrollTop(node, val) { - var win = (0, _isWindow2.default)(node); +var on = function on() {}; +if (_inDOM2.default) { + on = function () { - if (val === undefined) return win ? 'pageYOffset' in win ? win.pageYOffset : win.document.documentElement.scrollTop : node.scrollTop; + if (document.addEventListener) return function (node, eventName, handler, capture) { + return node.addEventListener(eventName, handler, capture || false); + };else if (document.attachEvent) return function (node, eventName, handler) { + return node.attachEvent('on' + eventName, function (e) { + e = e || window.event; + e.target = e.target || e.srcElement; + e.currentTarget = node; + handler.call(node, e); + }); + }; + }(); +} - if (win) win.scrollTo('pageXOffset' in win ? win.pageXOffset : win.document.documentElement.scrollLeft, val);else node.scrollTop = val; +exports.default = on; +module.exports = exports['default']; + +/***/ }), +/* 195 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _inDOM = __webpack_require__(61); + +var _inDOM2 = _interopRequireDefault(_inDOM); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var off = function off() {}; +if (_inDOM2.default) { + off = function () { + if (document.addEventListener) return function (node, eventName, handler, capture) { + return node.removeEventListener(eventName, handler, capture || false); + };else if (document.attachEvent) return function (node, eventName, handler) { + return node.detachEvent('on' + eventName, handler); + }; + }(); } + +exports.default = off; module.exports = exports['default']; /***/ }), -/* 214 */ +/* 196 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -16418,7 +14821,7 @@ var _react = __webpack_require__(0); var _react2 = _interopRequireDefault(_react); -var _createChainableTypeChecker = __webpack_require__(824); +var _createChainableTypeChecker = __webpack_require__(782); var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); @@ -16442,23 +14845,23 @@ function elementType(props, propName, componentName, location, propFullName) { exports.default = (0, _createChainableTypeChecker2.default)(elementType); /***/ }), -/* 215 */ +/* 197 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_uncontrollable__ = __webpack_require__(44); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_uncontrollable__ = __webpack_require__(78); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_uncontrollable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_uncontrollable__); @@ -16590,27 +14993,27 @@ TabContainer.childContextTypes = childContextTypes; /* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_6_uncontrollable___default()(TabContainer, { activeKey: 'onSelect' })); /***/ }), -/* 216 */ +/* 198 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(6); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType__ = __webpack_require__(11); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType__ = __webpack_require__(15); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__ = __webpack_require__(9); @@ -16800,7 +15203,7 @@ TabContent.childContextTypes = childContextTypes; /* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsClass"])('tab', TabContent)); /***/ }), -/* 217 */ +/* 199 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -16894,7 +15297,7 @@ var MainLogo = function (_Component) { exports.default = MainLogo; /***/ }), -/* 218 */ +/* 200 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -16910,7 +15313,7 @@ var _react = __webpack_require__(0); var _react2 = _interopRequireDefault(_react); -var _propTypes = __webpack_require__(5); +var _propTypes = __webpack_require__(6); var _propTypes2 = _interopRequireDefault(_propTypes); @@ -16962,7778 +15365,7486 @@ exports.default = IconBase; module.exports = exports['default']; /***/ }), -/* 219 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__); - - +/* 201 */ +/***/ (function(module, exports, __webpack_require__) { +module.exports = !__webpack_require__(17) && !__webpack_require__(12)(function () { + return Object.defineProperty(__webpack_require__(135)('div'), 'a', { get: function () { return 7; } }).a != 7; +}); +/***/ }), +/* 202 */ +/***/ (function(module, exports, __webpack_require__) { -var propTypes = { - label: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.string.isRequired, - onClick: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.func -}; +exports.f = __webpack_require__(16); -var defaultProps = { - label: 'Close' -}; -var CloseButton = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(CloseButton, _React$Component); +/***/ }), +/* 203 */ +/***/ (function(module, exports, __webpack_require__) { - function CloseButton() { - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, CloseButton); +var has = __webpack_require__(31); +var toIObject = __webpack_require__(36); +var arrayIndexOf = __webpack_require__(107)(false); +var IE_PROTO = __webpack_require__(137)('IE_PROTO'); - return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); +module.exports = function (object, names) { + var O = toIObject(object); + var i = 0; + var result = []; + var key; + for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); + // Don't enum bug & hidden keys + while (names.length > i) if (has(O, key = names[i++])) { + ~arrayIndexOf(result, key) || result.push(key); } + return result; +}; - CloseButton.prototype.render = function render() { - var _props = this.props, - label = _props.label, - onClick = _props.onClick; - return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - 'button', - { - type: 'button', - className: 'close', - onClick: onClick - }, - __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - 'span', - { 'aria-hidden': 'true' }, - '\xD7' - ), - __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( - 'span', - { className: 'sr-only' }, - label - ) - ); - }; +/***/ }), +/* 204 */ +/***/ (function(module, exports, __webpack_require__) { - return CloseButton; -}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.Component); +var dP = __webpack_require__(18); +var anObject = __webpack_require__(10); +var getKeys = __webpack_require__(65); -CloseButton.propTypes = propTypes; -CloseButton.defaultProps = defaultProps; +module.exports = __webpack_require__(17) ? Object.defineProperties : function defineProperties(O, Properties) { + anObject(O); + var keys = getKeys(Properties); + var length = keys.length; + var i = 0; + var P; + while (length > i) dP.f(O, P = keys[i++], Properties[P]); + return O; +}; -/* harmony default export */ __webpack_exports__["a"] = (CloseButton); /***/ }), -/* 220 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_all__ = __webpack_require__(71); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_all___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_all__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__Button__ = __webpack_require__(119); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__ = __webpack_require__(10); +/* 205 */ +/***/ (function(module, exports, __webpack_require__) { +// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window +var toIObject = __webpack_require__(36); +var gOPN = __webpack_require__(68).f; +var toString = {}.toString; +var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames + ? Object.getOwnPropertyNames(window) : []; +var getWindowNames = function (it) { + try { + return gOPN(it); + } catch (e) { + return windowNames.slice(); + } +}; +module.exports.f = function getOwnPropertyNames(it) { + return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it)); +}; +/***/ }), +/* 206 */ +/***/ (function(module, exports, __webpack_require__) { +"use strict"; +// 19.1.2.1 Object.assign(target, source, ...) +var getKeys = __webpack_require__(65); +var gOPS = __webpack_require__(108); +var pIE = __webpack_require__(93); +var toObject = __webpack_require__(20); +var IObject = __webpack_require__(92); +var $assign = Object.assign; +// should work with symbols and should have deterministic property order (V8 bug) +module.exports = !$assign || __webpack_require__(12)(function () { + var A = {}; + var B = {}; + // eslint-disable-next-line no-undef + var S = Symbol(); + var K = 'abcdefghijklmnopqrst'; + A[S] = 7; + K.split('').forEach(function (k) { B[k] = k; }); + return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K; +}) ? function assign(target, source) { // eslint-disable-line no-unused-vars + var T = toObject(target); + var aLen = arguments.length; + var index = 1; + var getSymbols = gOPS.f; + var isEnum = pIE.f; + while (aLen > index) { + var S = IObject(arguments[index++]); + var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); + var length = keys.length; + var j = 0; + var key; + while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key]; + } return T; +} : $assign; +/***/ }), +/* 207 */ +/***/ (function(module, exports, __webpack_require__) { +"use strict"; -var propTypes = { - vertical: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, - justified: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, +var aFunction = __webpack_require__(25); +var isObject = __webpack_require__(13); +var invoke = __webpack_require__(208); +var arraySlice = [].slice; +var factories = {}; - /** - * Display block buttons; only useful when used with the "vertical" prop. - * @type {bool} - */ - block: __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_all___default()(__WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, function (_ref) { - var block = _ref.block, - vertical = _ref.vertical; - return block && !vertical ? new Error('`block` requires `vertical` to be set to have any effect') : null; - }) +var construct = function (F, len, args) { + if (!(len in factories)) { + for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']'; + // eslint-disable-next-line no-new-func + factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')'); + } return factories[len](F, args); }; -var defaultProps = { - block: false, - justified: false, - vertical: false +module.exports = Function.bind || function bind(that /* , ...args */) { + var fn = aFunction(this); + var partArgs = arraySlice.call(arguments, 1); + var bound = function (/* args... */) { + var args = partArgs.concat(arraySlice.call(arguments)); + return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that); + }; + if (isObject(fn.prototype)) bound.prototype = fn.prototype; + return bound; }; -var ButtonGroup = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(ButtonGroup, _React$Component); - function ButtonGroup() { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, ButtonGroup); +/***/ }), +/* 208 */ +/***/ (function(module, exports) { - return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); - } +// fast apply, http://jsperf.lnkit.com/fast-apply/5 +module.exports = function (fn, args, that) { + var un = that === undefined; + switch (args.length) { + case 0: return un ? fn() + : fn.call(that); + case 1: return un ? fn(args[0]) + : fn.call(that, args[0]); + case 2: return un ? fn(args[0], args[1]) + : fn.call(that, args[0], args[1]); + case 3: return un ? fn(args[0], args[1], args[2]) + : fn.call(that, args[0], args[1], args[2]); + case 4: return un ? fn(args[0], args[1], args[2], args[3]) + : fn.call(that, args[0], args[1], args[2], args[3]); + } return fn.apply(that, args); +}; - ButtonGroup.prototype.render = function render() { - var _extends2; - var _props = this.props, - block = _props.block, - justified = _props.justified, - vertical = _props.vertical, - className = _props.className, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['block', 'justified', 'vertical', 'className']); +/***/ }), +/* 209 */ +/***/ (function(module, exports, __webpack_require__) { - var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["splitBsProps"])(props), - bsProps = _splitBsProps[0], - elementProps = _splitBsProps[1]; +var $parseInt = __webpack_require__(11).parseInt; +var $trim = __webpack_require__(80).trim; +var ws = __webpack_require__(141); +var hex = /^[-+]?0[xX]/; - var classes = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["getClassSet"])(bsProps), (_extends2 = {}, _extends2[Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["prefix"])(bsProps)] = !vertical, _extends2[Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["prefix"])(bsProps, 'vertical')] = vertical, _extends2[Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["prefix"])(bsProps, 'justified')] = justified, _extends2[Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["prefix"])(__WEBPACK_IMPORTED_MODULE_9__Button__["a" /* default */].defaultProps, 'block')] = block, _extends2)); +module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) { + var string = $trim(String(str), 3); + return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10)); +} : $parseInt; - return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement('div', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, elementProps, { - className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) - })); - }; - return ButtonGroup; -}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); +/***/ }), +/* 210 */ +/***/ (function(module, exports, __webpack_require__) { -ButtonGroup.propTypes = propTypes; -ButtonGroup.defaultProps = defaultProps; +var $parseFloat = __webpack_require__(11).parseFloat; +var $trim = __webpack_require__(80).trim; + +module.exports = 1 / $parseFloat(__webpack_require__(141) + '-0') !== -Infinity ? function parseFloat(str) { + var string = $trim(String(str), 3); + var result = $parseFloat(string); + return result === 0 && string.charAt(0) == '-' ? -0 : result; +} : $parseFloat; -/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsClass"])('btn-group', ButtonGroup)); /***/ }), -/* 221 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* 211 */ +/***/ (function(module, exports, __webpack_require__) { -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__ = __webpack_require__(10); +var cof = __webpack_require__(41); +module.exports = function (it, msg) { + if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg); + return +it; +}; +/***/ }), +/* 212 */ +/***/ (function(module, exports, __webpack_require__) { +// 20.1.2.3 Number.isInteger(number) +var isObject = __webpack_require__(13); +var floor = Math.floor; +module.exports = function isInteger(it) { + return !isObject(it) && isFinite(it) && floor(it) === it; +}; +/***/ }), +/* 213 */ +/***/ (function(module, exports) { +// 20.2.2.20 Math.log1p(x) +module.exports = Math.log1p || function log1p(x) { + return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x); +}; +/***/ }), +/* 214 */ +/***/ (function(module, exports, __webpack_require__) { +// 20.2.2.16 Math.fround(x) +var sign = __webpack_require__(144); +var pow = Math.pow; +var EPSILON = pow(2, -52); +var EPSILON32 = pow(2, -23); +var MAX32 = pow(2, 127) * (2 - EPSILON32); +var MIN32 = pow(2, -126); +var roundTiesToEven = function (n) { + return n + 1 / EPSILON - 1 / EPSILON; +}; -var propTypes = { - /** - * An icon name without "glyphicon-" prefix. See e.g. http://getbootstrap.com/components/#glyphicons - */ - glyph: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string.isRequired +module.exports = Math.fround || function fround(x) { + var $abs = Math.abs(x); + var $sign = sign(x); + var a, result; + if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32; + a = (1 + EPSILON32 / EPSILON) * $abs; + result = a - (a - $abs); + // eslint-disable-next-line no-self-compare + if (result > MAX32 || result != result) return $sign * Infinity; + return $sign * result; }; -var Glyphicon = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(Glyphicon, _React$Component); - function Glyphicon() { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, Glyphicon); +/***/ }), +/* 215 */ +/***/ (function(module, exports, __webpack_require__) { - return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); +// call something on iterator step with safe closing on error +var anObject = __webpack_require__(10); +module.exports = function (iterator, fn, value, entries) { + try { + return entries ? fn(anObject(value)[0], value[1]) : fn(value); + // 7.4.6 IteratorClose(iterator, completion) + } catch (e) { + var ret = iterator['return']; + if (ret !== undefined) anObject(ret.call(iterator)); + throw e; } +}; - Glyphicon.prototype.render = function render() { - var _extends2; - - var _props = this.props, - glyph = _props.glyph, - className = _props.className, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['glyph', 'className']); - - var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["splitBsProps"])(props), - bsProps = _splitBsProps[0], - elementProps = _splitBsProps[1]; - - var classes = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["getClassSet"])(bsProps), (_extends2 = {}, _extends2[Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["prefix"])(bsProps, glyph)] = true, _extends2)); - return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement('span', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, elementProps, { - className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) - })); - }; +/***/ }), +/* 216 */ +/***/ (function(module, exports, __webpack_require__) { - return Glyphicon; -}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); +var aFunction = __webpack_require__(25); +var toObject = __webpack_require__(20); +var IObject = __webpack_require__(92); +var toLength = __webpack_require__(19); -Glyphicon.propTypes = propTypes; +module.exports = function (that, callbackfn, aLen, memo, isRight) { + aFunction(callbackfn); + var O = toObject(that); + var self = IObject(O); + var length = toLength(O.length); + var index = isRight ? length - 1 : 0; + var i = isRight ? -1 : 1; + if (aLen < 2) for (;;) { + if (index in self) { + memo = self[index]; + index += i; + break; + } + index += i; + if (isRight ? index < 0 : length <= index) { + throw TypeError('Reduce of empty array with no initial value'); + } + } + for (;isRight ? index >= 0 : length > index; index += i) if (index in self) { + memo = callbackfn(memo, self[index], index, O); + } + return memo; +}; -/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["bsClass"])('glyphicon', Glyphicon)); /***/ }), -/* 222 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* 217 */ +/***/ (function(module, exports, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_style__ = __webpack_require__(90); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_dom_helpers_style___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_dom_helpers_style__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_overlays_lib_Transition__ = __webpack_require__(348); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_overlays_lib_Transition___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_overlays_lib_Transition__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_capitalize__ = __webpack_require__(347); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils_createChainedFunction__ = __webpack_require__(22); +// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) +var toObject = __webpack_require__(20); +var toAbsoluteIndex = __webpack_require__(66); +var toLength = __webpack_require__(19); + +module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { + var O = toObject(this); + var len = toLength(O.length); + var to = toAbsoluteIndex(target, len); + var from = toAbsoluteIndex(start, len); + var end = arguments.length > 2 ? arguments[2] : undefined; + var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); + var inc = 1; + if (from < to && to < from + count) { + inc = -1; + from += count - 1; + to += count - 1; + } + while (count-- > 0) { + if (from in O) O[to] = O[from]; + else delete O[to]; + to += inc; + from += inc; + } return O; +}; +/***/ }), +/* 218 */ +/***/ (function(module, exports) { +module.exports = function (done, value) { + return { value: value, done: !!done }; +}; +/***/ }), +/* 219 */ +/***/ (function(module, exports, __webpack_require__) { +// 21.2.5.3 get RegExp.prototype.flags() +if (__webpack_require__(17) && /./g.flags != 'g') __webpack_require__(18).f(RegExp.prototype, 'flags', { + configurable: true, + get: __webpack_require__(112) +}); +/***/ }), +/* 220 */ +/***/ (function(module, exports) { +module.exports = function (exec) { + try { + return { e: false, v: exec() }; + } catch (e) { + return { e: true, v: e }; + } +}; +/***/ }), +/* 221 */ +/***/ (function(module, exports, __webpack_require__) { +var anObject = __webpack_require__(10); +var isObject = __webpack_require__(13); +var newPromiseCapability = __webpack_require__(159); -var MARGINS = { - height: ['marginTop', 'marginBottom'], - width: ['marginLeft', 'marginRight'] +module.exports = function (C, x) { + anObject(C); + if (isObject(x) && x.constructor === C) return x; + var promiseCapability = newPromiseCapability.f(C); + var resolve = promiseCapability.resolve; + resolve(x); + return promiseCapability.promise; }; -// reading a dimension prop will cause the browser to recalculate, -// which will let our animations work -function triggerBrowserReflow(node) { - node.offsetHeight; // eslint-disable-line no-unused-expressions -} -function getDimensionValue(dimension, elem) { - var value = elem['offset' + Object(__WEBPACK_IMPORTED_MODULE_10__utils_capitalize__["a" /* default */])(dimension)]; - var margins = MARGINS[dimension]; +/***/ }), +/* 222 */ +/***/ (function(module, exports, __webpack_require__) { - return value + parseInt(__WEBPACK_IMPORTED_MODULE_6_dom_helpers_style___default()(elem, margins[0]), 10) + parseInt(__WEBPACK_IMPORTED_MODULE_6_dom_helpers_style___default()(elem, margins[1]), 10); -} +"use strict"; -var propTypes = { - /** - * Show the component; triggers the expand or collapse animation - */ - in: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, +var strong = __webpack_require__(223); +var validate = __webpack_require__(82); +var MAP = 'Map'; - /** - * Wait until the first "enter" transition to mount the component (add it to the DOM) - */ - mountOnEnter: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, +// 23.1 Map Objects +module.exports = __webpack_require__(115)(MAP, function (get) { + return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; +}, { + // 23.1.3.6 Map.prototype.get(key) + get: function get(key) { + var entry = strong.getEntry(validate(this, MAP), key); + return entry && entry.v; + }, + // 23.1.3.9 Map.prototype.set(key, value) + set: function set(key, value) { + return strong.def(validate(this, MAP), key === 0 ? 0 : key, value); + } +}, strong, true); - /** - * Unmount the component (remove it from the DOM) when it is collapsed - */ - unmountOnExit: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - /** - * Run the expand animation when the component mounts, if it is initially - * shown - */ - transitionAppear: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, +/***/ }), +/* 223 */ +/***/ (function(module, exports, __webpack_require__) { - /** - * Duration of the collapse animation in milliseconds, to ensure that - * finishing callbacks are fired even if the original browser transition end - * events are canceled - */ - timeout: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.number, +"use strict"; - /** - * Callback fired before the component expands - */ - onEnter: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - /** - * Callback fired after the component starts to expand - */ - onEntering: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - /** - * Callback fired after the component has expanded - */ - onEntered: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - /** - * Callback fired before the component collapses - */ - onExit: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - /** - * Callback fired after the component starts to collapse - */ - onExiting: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - /** - * Callback fired after the component has collapsed - */ - onExited: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - - /** - * The dimension used when collapsing, or a function that returns the - * dimension - * - * _Note: Bootstrap only partially supports 'width'! - * You will need to supply your own CSS animation for the `.width` CSS class._ - */ - dimension: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.oneOf(['height', 'width']), __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func]), - - /** - * Function that returns the height or width of the animating DOM node - * - * Allows for providing some custom logic for how much the Collapse component - * should animate in its specified dimension. Called with the current - * dimension prop value and the DOM node. - */ - getDimensionValue: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, +var dP = __webpack_require__(18).f; +var create = __webpack_require__(67); +var redefineAll = __webpack_require__(72); +var ctx = __webpack_require__(40); +var anInstance = __webpack_require__(70); +var forOf = __webpack_require__(71); +var $iterDefine = __webpack_require__(147); +var step = __webpack_require__(218); +var setSpecies = __webpack_require__(69); +var DESCRIPTORS = __webpack_require__(17); +var fastKey = __webpack_require__(56).fastKey; +var validate = __webpack_require__(82); +var SIZE = DESCRIPTORS ? '_s' : 'size'; - /** - * ARIA role of collapsible element - */ - role: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string +var getEntry = function (that, key) { + // fast case + var index = fastKey(key); + var entry; + if (index !== 'F') return that._i[index]; + // frozen object case + for (entry = that._f; entry; entry = entry.n) { + if (entry.k == key) return entry; + } }; -var defaultProps = { - in: false, - timeout: 300, - mountOnEnter: false, - unmountOnExit: false, - transitionAppear: false, +module.exports = { + getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { + var C = wrapper(function (that, iterable) { + anInstance(that, C, NAME, '_i'); + that._t = NAME; // collection type + that._i = create(null); // index + that._f = undefined; // first entry + that._l = undefined; // last entry + that[SIZE] = 0; // size + if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); + }); + redefineAll(C.prototype, { + // 23.1.3.1 Map.prototype.clear() + // 23.2.3.2 Set.prototype.clear() + clear: function clear() { + for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) { + entry.r = true; + if (entry.p) entry.p = entry.p.n = undefined; + delete data[entry.i]; + } + that._f = that._l = undefined; + that[SIZE] = 0; + }, + // 23.1.3.3 Map.prototype.delete(key) + // 23.2.3.4 Set.prototype.delete(value) + 'delete': function (key) { + var that = validate(this, NAME); + var entry = getEntry(that, key); + if (entry) { + var next = entry.n; + var prev = entry.p; + delete that._i[entry.i]; + entry.r = true; + if (prev) prev.n = next; + if (next) next.p = prev; + if (that._f == entry) that._f = next; + if (that._l == entry) that._l = prev; + that[SIZE]--; + } return !!entry; + }, + // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) + // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) + forEach: function forEach(callbackfn /* , that = undefined */) { + validate(this, NAME); + var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); + var entry; + while (entry = entry ? entry.n : this._f) { + f(entry.v, entry.k, this); + // revert to the last existing entry + while (entry && entry.r) entry = entry.p; + } + }, + // 23.1.3.7 Map.prototype.has(key) + // 23.2.3.7 Set.prototype.has(value) + has: function has(key) { + return !!getEntry(validate(this, NAME), key); + } + }); + if (DESCRIPTORS) dP(C.prototype, 'size', { + get: function () { + return validate(this, NAME)[SIZE]; + } + }); + return C; + }, + def: function (that, key, value) { + var entry = getEntry(that, key); + var prev, index; + // change existing entry + if (entry) { + entry.v = value; + // create new entry + } else { + that._l = entry = { + i: index = fastKey(key, true), // <- index + k: key, // <- key + v: value, // <- value + p: prev = that._l, // <- previous entry + n: undefined, // <- next entry + r: false // <- removed + }; + if (!that._f) that._f = entry; + if (prev) prev.n = entry; + that[SIZE]++; + // add to index + if (index !== 'F') that._i[index] = entry; + } return that; + }, + getEntry: getEntry, + setStrong: function (C, NAME, IS_MAP) { + // add .keys, .values, .entries, [@@iterator] + // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 + $iterDefine(C, NAME, function (iterated, kind) { + this._t = validate(iterated, NAME); // target + this._k = kind; // kind + this._l = undefined; // previous + }, function () { + var that = this; + var kind = that._k; + var entry = that._l; + // revert to the last existing entry + while (entry && entry.r) entry = entry.p; + // get next entry + if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { + // or finish the iteration + that._t = undefined; + return step(1); + } + // return step by kind + if (kind == 'keys') return step(0, entry.k); + if (kind == 'values') return step(0, entry.v); + return step(0, [entry.k, entry.v]); + }, IS_MAP ? 'entries' : 'values', !IS_MAP, true); - dimension: 'height', - getDimensionValue: getDimensionValue + // add [@@species], 23.1.2.2, 23.2.2.2 + setSpecies(NAME); + } }; -var Collapse = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(Collapse, _React$Component); - function Collapse(props, context) { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, Collapse); +/***/ }), +/* 224 */ +/***/ (function(module, exports, __webpack_require__) { - var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call(this, props, context)); +"use strict"; - _this.handleEnter = _this.handleEnter.bind(_this); - _this.handleEntering = _this.handleEntering.bind(_this); - _this.handleEntered = _this.handleEntered.bind(_this); - _this.handleExit = _this.handleExit.bind(_this); - _this.handleExiting = _this.handleExiting.bind(_this); - return _this; +var strong = __webpack_require__(223); +var validate = __webpack_require__(82); +var SET = 'Set'; + +// 23.2 Set Objects +module.exports = __webpack_require__(115)(SET, function (get) { + return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; +}, { + // 23.2.3.1 Set.prototype.add(value) + add: function add(value) { + return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value); } +}, strong); - Collapse.prototype._dimension = function _dimension() { - return typeof this.props.dimension === 'function' ? this.props.dimension() : this.props.dimension; - }; - // for testing +/***/ }), +/* 225 */ +/***/ (function(module, exports, __webpack_require__) { +"use strict"; - Collapse.prototype._getScrollDimensionValue = function _getScrollDimensionValue(elem, dimension) { - return elem['scroll' + Object(__WEBPACK_IMPORTED_MODULE_10__utils_capitalize__["a" /* default */])(dimension)] + 'px'; - }; +var each = __webpack_require__(49)(0); +var redefine = __webpack_require__(33); +var meta = __webpack_require__(56); +var assign = __webpack_require__(206); +var weak = __webpack_require__(226); +var isObject = __webpack_require__(13); +var fails = __webpack_require__(12); +var validate = __webpack_require__(82); +var WEAK_MAP = 'WeakMap'; +var getWeak = meta.getWeak; +var isExtensible = Object.isExtensible; +var uncaughtFrozenStore = weak.ufstore; +var tmp = {}; +var InternalMap; - /* -- Expanding -- */ +var wrapper = function (get) { + return function WeakMap() { + return get(this, arguments.length > 0 ? arguments[0] : undefined); + }; +}; +var methods = { + // 23.3.3.3 WeakMap.prototype.get(key) + get: function get(key) { + if (isObject(key)) { + var data = getWeak(key); + if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key); + return data ? data[this._i] : undefined; + } + }, + // 23.3.3.5 WeakMap.prototype.set(key, value) + set: function set(key, value) { + return weak.def(validate(this, WEAK_MAP), key, value); + } +}; - Collapse.prototype.handleEnter = function handleEnter(elem) { - var dimension = this._dimension(); - elem.style[dimension] = '0'; - }; +// 23.3 WeakMap Objects +var $WeakMap = module.exports = __webpack_require__(115)(WEAK_MAP, wrapper, methods, weak, true, true); - Collapse.prototype.handleEntered = function handleEntered(elem) { - var dimension = this._dimension(); - elem.style[dimension] = null; - }; +// IE11 WeakMap frozen keys fix +if (fails(function () { return new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7; })) { + InternalMap = weak.getConstructor(wrapper, WEAK_MAP); + assign(InternalMap.prototype, methods); + meta.NEED = true; + each(['delete', 'has', 'get', 'set'], function (key) { + var proto = $WeakMap.prototype; + var method = proto[key]; + redefine(proto, key, function (a, b) { + // store frozen objects on internal weakmap shim + if (isObject(a) && !isExtensible(a)) { + if (!this._f) this._f = new InternalMap(); + var result = this._f[key](a, b); + return key == 'set' ? this : result; + // store all the rest on native weakmap + } return method.call(this, a, b); + }); + }); +} - Collapse.prototype.handleEntering = function handleEntering(elem) { - var dimension = this._dimension(); - elem.style[dimension] = this._getScrollDimensionValue(elem, dimension); - }; - /* -- Collapsing -- */ +/***/ }), +/* 226 */ +/***/ (function(module, exports, __webpack_require__) { +"use strict"; - Collapse.prototype.handleExit = function handleExit(elem) { - var dimension = this._dimension(); - elem.style[dimension] = this.props.getDimensionValue(dimension, elem) + 'px'; - triggerBrowserReflow(elem); - }; +var redefineAll = __webpack_require__(72); +var getWeak = __webpack_require__(56).getWeak; +var anObject = __webpack_require__(10); +var isObject = __webpack_require__(13); +var anInstance = __webpack_require__(70); +var forOf = __webpack_require__(71); +var createArrayMethod = __webpack_require__(49); +var $has = __webpack_require__(31); +var validate = __webpack_require__(82); +var arrayFind = createArrayMethod(5); +var arrayFindIndex = createArrayMethod(6); +var id = 0; - Collapse.prototype.handleExiting = function handleExiting(elem) { - var dimension = this._dimension(); - elem.style[dimension] = '0'; - }; +// fallback for uncaught frozen keys +var uncaughtFrozenStore = function (that) { + return that._l || (that._l = new UncaughtFrozenStore()); +}; +var UncaughtFrozenStore = function () { + this.a = []; +}; +var findUncaughtFrozen = function (store, key) { + return arrayFind(store.a, function (it) { + return it[0] === key; + }); +}; +UncaughtFrozenStore.prototype = { + get: function (key) { + var entry = findUncaughtFrozen(this, key); + if (entry) return entry[1]; + }, + has: function (key) { + return !!findUncaughtFrozen(this, key); + }, + set: function (key, value) { + var entry = findUncaughtFrozen(this, key); + if (entry) entry[1] = value; + else this.a.push([key, value]); + }, + 'delete': function (key) { + var index = arrayFindIndex(this.a, function (it) { + return it[0] === key; + }); + if (~index) this.a.splice(index, 1); + return !!~index; + } +}; - Collapse.prototype.render = function render() { - var _props = this.props, - onEnter = _props.onEnter, - onEntering = _props.onEntering, - onEntered = _props.onEntered, - onExit = _props.onExit, - onExiting = _props.onExiting, - className = _props.className, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['onEnter', 'onEntering', 'onEntered', 'onExit', 'onExiting', 'className']); +module.exports = { + getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { + var C = wrapper(function (that, iterable) { + anInstance(that, C, NAME, '_i'); + that._t = NAME; // collection type + that._i = id++; // collection id + that._l = undefined; // leak store for uncaught frozen objects + if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); + }); + redefineAll(C.prototype, { + // 23.3.3.2 WeakMap.prototype.delete(key) + // 23.4.3.3 WeakSet.prototype.delete(value) + 'delete': function (key) { + if (!isObject(key)) return false; + var data = getWeak(key); + if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key); + return data && $has(data, this._i) && delete data[this._i]; + }, + // 23.3.3.4 WeakMap.prototype.has(key) + // 23.4.3.4 WeakSet.prototype.has(value) + has: function has(key) { + if (!isObject(key)) return false; + var data = getWeak(key); + if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key); + return data && $has(data, this._i); + } + }); + return C; + }, + def: function (that, key, value) { + var data = getWeak(anObject(key), true); + if (data === true) uncaughtFrozenStore(that).set(key, value); + else data[that._i] = value; + return that; + }, + ufstore: uncaughtFrozenStore +}; - delete props.dimension; - delete props.getDimensionValue; - var handleEnter = Object(__WEBPACK_IMPORTED_MODULE_11__utils_createChainedFunction__["a" /* default */])(this.handleEnter, onEnter); - var handleEntering = Object(__WEBPACK_IMPORTED_MODULE_11__utils_createChainedFunction__["a" /* default */])(this.handleEntering, onEntering); - var handleEntered = Object(__WEBPACK_IMPORTED_MODULE_11__utils_createChainedFunction__["a" /* default */])(this.handleEntered, onEntered); - var handleExit = Object(__WEBPACK_IMPORTED_MODULE_11__utils_createChainedFunction__["a" /* default */])(this.handleExit, onExit); - var handleExiting = Object(__WEBPACK_IMPORTED_MODULE_11__utils_createChainedFunction__["a" /* default */])(this.handleExiting, onExiting); +/***/ }), +/* 227 */ +/***/ (function(module, exports, __webpack_require__) { - var classes = { - width: this._dimension() === 'width' - }; +// https://tc39.github.io/ecma262/#sec-toindex +var toInteger = __webpack_require__(47); +var toLength = __webpack_require__(19); +module.exports = function (it) { + if (it === undefined) return 0; + var number = toInteger(it); + var length = toLength(number); + if (number !== length) throw RangeError('Wrong length!'); + return length; +}; - return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_9_react_overlays_lib_Transition___default.a, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, { - 'aria-expanded': props.role ? props.in : null, - className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes), - exitedClassName: 'collapse', - exitingClassName: 'collapsing', - enteredClassName: 'collapse in', - enteringClassName: 'collapsing', - onEnter: handleEnter, - onEntering: handleEntering, - onEntered: handleEntered, - onExit: handleExit, - onExiting: handleExiting - })); - }; - return Collapse; -}(__WEBPACK_IMPORTED_MODULE_7_react___default.a.Component); +/***/ }), +/* 228 */ +/***/ (function(module, exports, __webpack_require__) { -Collapse.propTypes = propTypes; -Collapse.defaultProps = defaultProps; +// all object keys, includes non-enumerable and symbols +var gOPN = __webpack_require__(68); +var gOPS = __webpack_require__(108); +var anObject = __webpack_require__(10); +var Reflect = __webpack_require__(11).Reflect; +module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) { + var keys = gOPN.f(anObject(it)); + var getSymbols = gOPS.f; + return getSymbols ? keys.concat(getSymbols(it)) : keys; +}; -/* harmony default export */ __webpack_exports__["a"] = (Collapse); /***/ }), -/* 223 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* 229 */ +/***/ (function(module, exports, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_uncontrollable__ = __webpack_require__(44); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_uncontrollable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_uncontrollable__); - - +// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray +var isArray = __webpack_require__(109); +var isObject = __webpack_require__(13); +var toLength = __webpack_require__(19); +var ctx = __webpack_require__(40); +var IS_CONCAT_SPREADABLE = __webpack_require__(16)('isConcatSpreadable'); +function flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) { + var targetIndex = start; + var sourceIndex = 0; + var mapFn = mapper ? ctx(mapper, thisArg, 3) : false; + var element, spreadable; + while (sourceIndex < sourceLen) { + if (sourceIndex in source) { + element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex]; + spreadable = false; + if (isObject(element)) { + spreadable = element[IS_CONCAT_SPREADABLE]; + spreadable = spreadable !== undefined ? !!spreadable : isArray(element); + } + if (spreadable && depth > 0) { + targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1; + } else { + if (targetIndex >= 0x1fffffffffffff) throw TypeError(); + target[targetIndex] = element; + } -var TAB = 'tab'; -var PANE = 'pane'; + targetIndex++; + } + sourceIndex++; + } + return targetIndex; +} -var idPropType = __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number]); +module.exports = flattenIntoArray; -var propTypes = { - /** - * HTML id attribute, required if no `generateChildId` prop - * is specified. - */ - id: function id(props) { - var error = null; - if (!props.generateChildId) { - for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } +/***/ }), +/* 230 */ +/***/ (function(module, exports, __webpack_require__) { - error = idPropType.apply(undefined, [props].concat(args)); +// https://github.com/tc39/proposal-string-pad-start-end +var toLength = __webpack_require__(19); +var repeat = __webpack_require__(143); +var defined = __webpack_require__(46); - if (!error && !props.id) { - error = new Error('In order to properly initialize Tabs in a way that is accessible ' + 'to assistive technologies (such as screen readers) an `id` or a ' + '`generateChildId` prop to TabContainer is required'); - } - } +module.exports = function (that, maxLength, fillString, left) { + var S = String(defined(that)); + var stringLength = S.length; + var fillStr = fillString === undefined ? ' ' : String(fillString); + var intMaxLength = toLength(maxLength); + if (intMaxLength <= stringLength || fillStr == '') return S; + var fillLen = intMaxLength - stringLength; + var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length)); + if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen); + return left ? stringFiller + S : S + stringFiller; +}; - return error; - }, +/***/ }), +/* 231 */ +/***/ (function(module, exports, __webpack_require__) { - /** - * A function that takes an `eventKey` and `type` and returns a unique id for - * child tab ``s and ``s. The function _must_ be a pure - * function, meaning it should always return the _same_ id for the same set - * of inputs. The default value requires that an `id` to be set for the - * ``. - * - * The `type` argument will either be `"tab"` or `"pane"`. - * - * @defaultValue (eventKey, type) => `${this.props.id}-${type}-${key}` - */ - generateChildId: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, +var getKeys = __webpack_require__(65); +var toIObject = __webpack_require__(36); +var isEnum = __webpack_require__(93).f; +module.exports = function (isEntries) { + return function (it) { + var O = toIObject(it); + var keys = getKeys(O); + var length = keys.length; + var i = 0; + var result = []; + var key; + while (length > i) if (isEnum.call(O, key = keys[i++])) { + result.push(isEntries ? [key, O[key]] : O[key]); + } return result; + }; +}; - /** - * A callback fired when a tab is selected. - * - * @controllable activeKey - */ - onSelect: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, - /** - * The `eventKey` of the currently active tab. - * - * @controllable onSelect - */ - activeKey: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.any -}; +/***/ }), +/* 232 */ +/***/ (function(module, exports, __webpack_require__) { -var childContextTypes = { - $bs_tabContainer: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.shape({ - activeKey: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.any, - onSelect: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired, - getTabId: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired, - getPaneId: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func.isRequired - }) +// https://github.com/DavidBruant/Map-Set.prototype.toJSON +var classof = __webpack_require__(94); +var from = __webpack_require__(233); +module.exports = function (NAME) { + return function toJSON() { + if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic"); + return from(this); + }; }; -var TabContainer = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(TabContainer, _React$Component); - function TabContainer() { - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, TabContainer); +/***/ }), +/* 233 */ +/***/ (function(module, exports, __webpack_require__) { - return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); - } +var forOf = __webpack_require__(71); - TabContainer.prototype.getChildContext = function getChildContext() { - var _props = this.props, - activeKey = _props.activeKey, - onSelect = _props.onSelect, - generateChildId = _props.generateChildId, - id = _props.id; - - - var getId = generateChildId || function (key, type) { - return id ? id + '-' + type + '-' + key : null; - }; +module.exports = function (iter, ITERATOR) { + var result = []; + forOf(iter, false, result.push, result, ITERATOR); + return result; +}; - return { - $bs_tabContainer: { - activeKey: activeKey, - onSelect: onSelect, - getTabId: function getTabId(key) { - return getId(key, TAB); - }, - getPaneId: function getPaneId(key) { - return getId(key, PANE); - } - } - }; - }; - TabContainer.prototype.render = function render() { - var _props2 = this.props, - children = _props2.children, - props = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties___default()(_props2, ['children']); +/***/ }), +/* 234 */ +/***/ (function(module, exports) { - delete props.generateChildId; - delete props.onSelect; - delete props.activeKey; +// https://rwaldron.github.io/proposal-math-extensions/ +module.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) { + if ( + arguments.length === 0 + // eslint-disable-next-line no-self-compare + || x != x + // eslint-disable-next-line no-self-compare + || inLow != inLow + // eslint-disable-next-line no-self-compare + || inHigh != inHigh + // eslint-disable-next-line no-self-compare + || outLow != outLow + // eslint-disable-next-line no-self-compare + || outHigh != outHigh + ) return NaN; + if (x === Infinity || x === -Infinity) return x; + return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow; +}; - return __WEBPACK_IMPORTED_MODULE_4_react___default.a.cloneElement(__WEBPACK_IMPORTED_MODULE_4_react___default.a.Children.only(children), props); - }; - return TabContainer; -}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.Component); +/***/ }), +/* 235 */ +/***/ (function(module, exports, __webpack_require__) { -TabContainer.propTypes = propTypes; -TabContainer.childContextTypes = childContextTypes; +"use strict"; +/** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + * + */ -/* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_6_uncontrollable___default()(TabContainer, { activeKey: 'onSelect' })); -/***/ }), -/* 224 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType__ = __webpack_require__(11); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__ = __webpack_require__(10); +var emptyObject = {}; +if (true) { + Object.freeze(emptyObject); +} +module.exports = emptyObject; +/***/ }), +/* 236 */ +/***/ (function(module, exports, __webpack_require__) { +"use strict"; +/** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ +var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; +module.exports = ReactPropTypesSecret; +/***/ }), +/* 237 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { +"use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return subscriptionShape; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return storeShape; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_prop_types__); -var propTypes = { - componentClass: __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType___default.a, - /** - * Sets a default animation strategy for all children ``s. Use - * `false` to disable, `true` to enable the default `` animation or any - * `` component. - */ - animation: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType___default.a]), +var subscriptionShape = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.shape({ + trySubscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, + tryUnsubscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, + notifyNestedSubs: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, + isSubscribed: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired +}); - /** - * Wait until the first "enter" transition to mount tabs (add them to the DOM) - */ - mountOnEnter: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, +var storeShape = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.shape({ + subscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, + dispatch: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, + getState: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired +}); - /** - * Unmount tabs (remove it from the DOM) when they are no longer visible - */ - unmountOnExit: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool -}; +/***/ }), +/* 238 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { -var defaultProps = { - componentClass: 'div', - animation: true, - mountOnEnter: false, - unmountOnExit: false -}; +"use strict"; +/* harmony export (immutable) */ __webpack_exports__["a"] = connectAdvanced; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics__ = __webpack_require__(239); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(23); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_invariant__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_Subscription__ = __webpack_require__(541); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__ = __webpack_require__(237); +var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; -var contextTypes = { - $bs_tabContainer: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.shape({ - activeKey: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.any - }) -}; +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -var childContextTypes = { - $bs_tabContent: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.shape({ - bsClass: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string, - animation: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType___default.a]), - activeKey: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.any, - mountOnEnter: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, - unmountOnExit: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, - onPaneEnter: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired, - onPaneExited: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func.isRequired, - exiting: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool.isRequired - }) -}; +function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } -var TabContent = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(TabContent, _React$Component); +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - function TabContent(props, context) { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, TabContent); +function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call(this, props, context)); - _this.handlePaneEnter = _this.handlePaneEnter.bind(_this); - _this.handlePaneExited = _this.handlePaneExited.bind(_this); - // Active entries in state will be `null` unless `animation` is set. Need - // to track active child in case keys swap and the active child changes - // but the active key does not. - _this.state = { - activeKey: null, - activeChild: null - }; - return _this; - } - TabContent.prototype.getChildContext = function getChildContext() { - var _props = this.props, - bsClass = _props.bsClass, - animation = _props.animation, - mountOnEnter = _props.mountOnEnter, - unmountOnExit = _props.unmountOnExit; - var stateActiveKey = this.state.activeKey; - var containerActiveKey = this.getContainerActiveKey(); - var activeKey = stateActiveKey != null ? stateActiveKey : containerActiveKey; - var exiting = stateActiveKey != null && stateActiveKey !== containerActiveKey; - return { - $bs_tabContent: { - bsClass: bsClass, - animation: animation, - activeKey: activeKey, - mountOnEnter: mountOnEnter, - unmountOnExit: unmountOnExit, - onPaneEnter: this.handlePaneEnter, - onPaneExited: this.handlePaneExited, - exiting: exiting +var hotReloadingVersion = 0; +var dummyState = {}; +function noop() {} +function makeSelectorStateful(sourceSelector, store) { + // wrap the selector in an object that tracks its results between runs. + var selector = { + run: function runComponentSelector(props) { + try { + var nextProps = sourceSelector(store.getState(), props); + if (nextProps !== selector.props || selector.error) { + selector.shouldComponentUpdate = true; + selector.props = nextProps; + selector.error = null; + } + } catch (error) { + selector.shouldComponentUpdate = true; + selector.error = error; } - }; - }; - - TabContent.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { - if (!nextProps.animation && this.state.activeChild) { - this.setState({ activeKey: null, activeChild: null }); } }; - TabContent.prototype.componentWillUnmount = function componentWillUnmount() { - this.isUnmounted = true; - }; - - TabContent.prototype.getContainerActiveKey = function getContainerActiveKey() { - var tabContainer = this.context.$bs_tabContainer; - return tabContainer && tabContainer.activeKey; - }; + return selector; +} - TabContent.prototype.handlePaneEnter = function handlePaneEnter(child, childKey) { - if (!this.props.animation) { - return false; - } +function connectAdvanced( +/* + selectorFactory is a func that is responsible for returning the selector function used to + compute new props from state, props, and dispatch. For example: + export default connectAdvanced((dispatch, options) => (state, props) => ({ + thing: state.things[props.thingId], + saveThing: fields => dispatch(actionCreators.saveThing(props.thingId, fields)), + }))(YourComponent) + Access to dispatch is provided to the factory so selectorFactories can bind actionCreators + outside of their selector as an optimization. Options passed to connectAdvanced are passed to + the selectorFactory, along with displayName and WrappedComponent, as the second argument. + Note that selectorFactory is responsible for all caching/memoization of inbound and outbound + props. Do not use connectAdvanced directly without memoizing results between calls to your + selector, otherwise the Connect component will re-render on every state or props change. +*/ +selectorFactory) { + var _contextTypes, _childContextTypes; - // It's possible that this child should be transitioning out. - if (childKey !== this.getContainerActiveKey()) { - return false; - } + var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, + _ref$getDisplayName = _ref.getDisplayName, + getDisplayName = _ref$getDisplayName === undefined ? function (name) { + return 'ConnectAdvanced(' + name + ')'; + } : _ref$getDisplayName, + _ref$methodName = _ref.methodName, + methodName = _ref$methodName === undefined ? 'connectAdvanced' : _ref$methodName, + _ref$renderCountProp = _ref.renderCountProp, + renderCountProp = _ref$renderCountProp === undefined ? undefined : _ref$renderCountProp, + _ref$shouldHandleStat = _ref.shouldHandleStateChanges, + shouldHandleStateChanges = _ref$shouldHandleStat === undefined ? true : _ref$shouldHandleStat, + _ref$storeKey = _ref.storeKey, + storeKey = _ref$storeKey === undefined ? 'store' : _ref$storeKey, + _ref$withRef = _ref.withRef, + withRef = _ref$withRef === undefined ? false : _ref$withRef, + connectOptions = _objectWithoutProperties(_ref, ['getDisplayName', 'methodName', 'renderCountProp', 'shouldHandleStateChanges', 'storeKey', 'withRef']); - this.setState({ - activeKey: childKey, - activeChild: child - }); + var subscriptionKey = storeKey + 'Subscription'; + var version = hotReloadingVersion++; - return true; - }; + var contextTypes = (_contextTypes = {}, _contextTypes[storeKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["a" /* storeShape */], _contextTypes[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["b" /* subscriptionShape */], _contextTypes); + var childContextTypes = (_childContextTypes = {}, _childContextTypes[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["b" /* subscriptionShape */], _childContextTypes); - TabContent.prototype.handlePaneExited = function handlePaneExited(child) { - // This might happen as everything is unmounting. - if (this.isUnmounted) { - return; - } + return function wrapWithConnect(WrappedComponent) { + __WEBPACK_IMPORTED_MODULE_1_invariant___default()(typeof WrappedComponent == 'function', 'You must pass a component to the function returned by ' + ('connect. Instead received ' + JSON.stringify(WrappedComponent))); - this.setState(function (_ref) { - var activeChild = _ref.activeChild; + var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component'; - if (activeChild !== child) { - return null; - } + var displayName = getDisplayName(wrappedComponentName); - return { - activeKey: null, - activeChild: null - }; + var selectorFactoryOptions = _extends({}, connectOptions, { + getDisplayName: getDisplayName, + methodName: methodName, + renderCountProp: renderCountProp, + shouldHandleStateChanges: shouldHandleStateChanges, + storeKey: storeKey, + withRef: withRef, + displayName: displayName, + wrappedComponentName: wrappedComponentName, + WrappedComponent: WrappedComponent }); - }; - TabContent.prototype.render = function render() { - var _props2 = this.props, - Component = _props2.componentClass, - className = _props2.className, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props2, ['componentClass', 'className']); + var Connect = function (_Component) { + _inherits(Connect, _Component); - var _splitBsPropsAndOmit = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["splitBsPropsAndOmit"])(props, ['animation', 'mountOnEnter', 'unmountOnExit']), - bsProps = _splitBsPropsAndOmit[0], - elementProps = _splitBsPropsAndOmit[1]; + function Connect(props, context) { + _classCallCheck(this, Connect); - return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(Component, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, elementProps, { - className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["prefix"])(bsProps, 'content')) - })); - }; + var _this = _possibleConstructorReturn(this, _Component.call(this, props, context)); - return TabContent; -}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); + _this.version = version; + _this.state = {}; + _this.renderCount = 0; + _this.store = props[storeKey] || context[storeKey]; + _this.propsMode = Boolean(props[storeKey]); + _this.setWrappedInstance = _this.setWrappedInstance.bind(_this); -TabContent.propTypes = propTypes; -TabContent.defaultProps = defaultProps; -TabContent.contextTypes = contextTypes; -TabContent.childContextTypes = childContextTypes; + __WEBPACK_IMPORTED_MODULE_1_invariant___default()(_this.store, 'Could not find "' + storeKey + '" in either the context or props of ' + ('"' + displayName + '". Either wrap the root component in a , ') + ('or explicitly pass "' + storeKey + '" as a prop to "' + displayName + '".')); -/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsClass"])('tab', TabContent)); + _this.initSelector(); + _this.initSubscription(); + return _this; + } -/***/ }), -/* 225 */ -/***/ (function(module, exports, __webpack_require__) { + Connect.prototype.getChildContext = function getChildContext() { + var _ref2; -module.exports = !__webpack_require__(19) && !__webpack_require__(15)(function () { - return Object.defineProperty(__webpack_require__(155)('div'), 'a', { get: function () { return 7; } }).a != 7; -}); + // If this component received store from props, its subscription should be transparent + // to any descendants receiving store+subscription from context; it passes along + // subscription passed to it. Otherwise, it shadows the parent subscription, which allows + // Connect to control ordering of notifications to flow top-down. + var subscription = this.propsMode ? null : this.subscription; + return _ref2 = {}, _ref2[subscriptionKey] = subscription || this.context[subscriptionKey], _ref2; + }; + Connect.prototype.componentDidMount = function componentDidMount() { + if (!shouldHandleStateChanges) return; -/***/ }), -/* 226 */ -/***/ (function(module, exports, __webpack_require__) { + // componentWillMount fires during server side rendering, but componentDidMount and + // componentWillUnmount do not. Because of this, trySubscribe happens during ...didMount. + // Otherwise, unsubscription would never take place during SSR, causing a memory leak. + // To handle the case where a child component may have triggered a state change by + // dispatching an action in its componentWillMount, we have to re-run the select and maybe + // re-render. + this.subscription.trySubscribe(); + this.selector.run(this.props); + if (this.selector.shouldComponentUpdate) this.forceUpdate(); + }; -exports.f = __webpack_require__(18); + Connect.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { + this.selector.run(nextProps); + }; + Connect.prototype.shouldComponentUpdate = function shouldComponentUpdate() { + return this.selector.shouldComponentUpdate; + }; -/***/ }), -/* 227 */ -/***/ (function(module, exports, __webpack_require__) { + Connect.prototype.componentWillUnmount = function componentWillUnmount() { + if (this.subscription) this.subscription.tryUnsubscribe(); + this.subscription = null; + this.notifyNestedSubs = noop; + this.store = null; + this.selector.run = noop; + this.selector.shouldComponentUpdate = false; + }; -var has = __webpack_require__(35); -var toIObject = __webpack_require__(39); -var arrayIndexOf = __webpack_require__(121)(false); -var IE_PROTO = __webpack_require__(157)('IE_PROTO'); + Connect.prototype.getWrappedInstance = function getWrappedInstance() { + __WEBPACK_IMPORTED_MODULE_1_invariant___default()(withRef, 'To access the wrapped instance, you need to specify ' + ('{ withRef: true } in the options argument of the ' + methodName + '() call.')); + return this.wrappedInstance; + }; -module.exports = function (object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) if (has(O, key = names[i++])) { - ~arrayIndexOf(result, key) || result.push(key); - } - return result; -}; + Connect.prototype.setWrappedInstance = function setWrappedInstance(ref) { + this.wrappedInstance = ref; + }; + Connect.prototype.initSelector = function initSelector() { + var sourceSelector = selectorFactory(this.store.dispatch, selectorFactoryOptions); + this.selector = makeSelectorStateful(sourceSelector, this.store); + this.selector.run(this.props); + }; -/***/ }), -/* 228 */ -/***/ (function(module, exports, __webpack_require__) { + Connect.prototype.initSubscription = function initSubscription() { + if (!shouldHandleStateChanges) return; -var dP = __webpack_require__(20); -var anObject = __webpack_require__(13); -var getKeys = __webpack_require__(77); + // parentSub's source should match where store came from: props vs. context. A component + // connected to the store via props shouldn't use subscription from context, or vice versa. + var parentSub = (this.propsMode ? this.props : this.context)[subscriptionKey]; + this.subscription = new __WEBPACK_IMPORTED_MODULE_3__utils_Subscription__["a" /* default */](this.store, parentSub, this.onStateChange.bind(this)); -module.exports = __webpack_require__(19) ? Object.defineProperties : function defineProperties(O, Properties) { - anObject(O); - var keys = getKeys(Properties); - var length = keys.length; - var i = 0; - var P; - while (length > i) dP.f(O, P = keys[i++], Properties[P]); - return O; -}; + // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in + // the middle of the notification loop, where `this.subscription` will then be null. An + // extra null check every change can be avoided by copying the method onto `this` and then + // replacing it with a no-op on unmount. This can probably be avoided if Subscription's + // listeners logic is changed to not call listeners that have been unsubscribed in the + // middle of the notification loop. + this.notifyNestedSubs = this.subscription.notifyNestedSubs.bind(this.subscription); + }; + Connect.prototype.onStateChange = function onStateChange() { + this.selector.run(this.props); -/***/ }), -/* 229 */ -/***/ (function(module, exports, __webpack_require__) { + if (!this.selector.shouldComponentUpdate) { + this.notifyNestedSubs(); + } else { + this.componentDidUpdate = this.notifyNestedSubsOnComponentDidUpdate; + this.setState(dummyState); + } + }; -// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window -var toIObject = __webpack_require__(39); -var gOPN = __webpack_require__(80).f; -var toString = {}.toString; + Connect.prototype.notifyNestedSubsOnComponentDidUpdate = function notifyNestedSubsOnComponentDidUpdate() { + // `componentDidUpdate` is conditionally implemented when `onStateChange` determines it + // needs to notify nested subs. Once called, it unimplements itself until further state + // changes occur. Doing it this way vs having a permanent `componentDidUpdate` that does + // a boolean check every time avoids an extra method call most of the time, resulting + // in some perf boost. + this.componentDidUpdate = undefined; + this.notifyNestedSubs(); + }; -var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) : []; + Connect.prototype.isSubscribed = function isSubscribed() { + return Boolean(this.subscription) && this.subscription.isSubscribed(); + }; -var getWindowNames = function (it) { - try { - return gOPN(it); - } catch (e) { - return windowNames.slice(); - } -}; + Connect.prototype.addExtraProps = function addExtraProps(props) { + if (!withRef && !renderCountProp && !(this.propsMode && this.subscription)) return props; + // make a shallow copy so that fields added don't leak to the original selector. + // this is especially important for 'ref' since that's a reference back to the component + // instance. a singleton memoized selector would then be holding a reference to the + // instance, preventing the instance from being garbage collected, and that would be bad + var withExtras = _extends({}, props); + if (withRef) withExtras.ref = this.setWrappedInstance; + if (renderCountProp) withExtras[renderCountProp] = this.renderCount++; + if (this.propsMode && this.subscription) withExtras[subscriptionKey] = this.subscription; + return withExtras; + }; -module.exports.f = function getOwnPropertyNames(it) { - return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it)); -}; + Connect.prototype.render = function render() { + var selector = this.selector; + selector.shouldComponentUpdate = false; + if (selector.error) { + throw selector.error; + } else { + return Object(__WEBPACK_IMPORTED_MODULE_2_react__["createElement"])(WrappedComponent, this.addExtraProps(selector.props)); + } + }; -/***/ }), -/* 230 */ -/***/ (function(module, exports, __webpack_require__) { + return Connect; + }(__WEBPACK_IMPORTED_MODULE_2_react__["Component"]); -"use strict"; + Connect.WrappedComponent = WrappedComponent; + Connect.displayName = displayName; + Connect.childContextTypes = childContextTypes; + Connect.contextTypes = contextTypes; + Connect.propTypes = contextTypes; -// 19.1.2.1 Object.assign(target, source, ...) -var getKeys = __webpack_require__(77); -var gOPS = __webpack_require__(122); -var pIE = __webpack_require__(104); -var toObject = __webpack_require__(23); -var IObject = __webpack_require__(103); -var $assign = Object.assign; + if (true) { + Connect.prototype.componentWillUpdate = function componentWillUpdate() { + var _this2 = this; -// should work with symbols and should have deterministic property order (V8 bug) -module.exports = !$assign || __webpack_require__(15)(function () { - var A = {}; - var B = {}; - // eslint-disable-next-line no-undef - var S = Symbol(); - var K = 'abcdefghijklmnopqrst'; - A[S] = 7; - K.split('').forEach(function (k) { B[k] = k; }); - return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K; -}) ? function assign(target, source) { // eslint-disable-line no-unused-vars - var T = toObject(target); - var aLen = arguments.length; - var index = 1; - var getSymbols = gOPS.f; - var isEnum = pIE.f; - while (aLen > index) { - var S = IObject(arguments[index++]); - var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); - var length = keys.length; - var j = 0; - var key; - while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key]; - } return T; -} : $assign; + // We are hot reloading! + if (this.version !== version) { + this.version = version; + this.initSelector(); + + // If any connected descendants don't hot reload (and resubscribe in the process), their + // listeners will be lost when we unsubscribe. Unfortunately, by copying over all + // listeners, this does mean that the old versions of connected descendants will still be + // notified of state changes; however, their onStateChange function is a no-op so this + // isn't a huge deal. + var oldListeners = []; + + if (this.subscription) { + oldListeners = this.subscription.listeners.get(); + this.subscription.tryUnsubscribe(); + } + this.initSubscription(); + if (shouldHandleStateChanges) { + this.subscription.trySubscribe(); + oldListeners.forEach(function (listener) { + return _this2.subscription.listeners.subscribe(listener); + }); + } + } + }; + } + return __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics___default()(Connect, WrappedComponent); + }; +} /***/ }), -/* 231 */ +/* 239 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; +/** + * Copyright 2015, Yahoo! Inc. + * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms. + */ -var aFunction = __webpack_require__(29); -var isObject = __webpack_require__(16); -var invoke = __webpack_require__(232); -var arraySlice = [].slice; -var factories = {}; -var construct = function (F, len, args) { - if (!(len in factories)) { - for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']'; - // eslint-disable-next-line no-new-func - factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')'); - } return factories[len](F, args); +var REACT_STATICS = { + childContextTypes: true, + contextTypes: true, + defaultProps: true, + displayName: true, + getDefaultProps: true, + mixins: true, + propTypes: true, + type: true }; -module.exports = Function.bind || function bind(that /* , ...args */) { - var fn = aFunction(this); - var partArgs = arraySlice.call(arguments, 1); - var bound = function (/* args... */) { - var args = partArgs.concat(arraySlice.call(arguments)); - return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that); - }; - if (isObject(fn.prototype)) bound.prototype = fn.prototype; - return bound; +var KNOWN_STATICS = { + name: true, + length: true, + prototype: true, + caller: true, + callee: true, + arguments: true, + arity: true }; +var defineProperty = Object.defineProperty; +var getOwnPropertyNames = Object.getOwnPropertyNames; +var getOwnPropertySymbols = Object.getOwnPropertySymbols; +var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; +var getPrototypeOf = Object.getPrototypeOf; +var objectPrototype = getPrototypeOf && getPrototypeOf(Object); -/***/ }), -/* 232 */ -/***/ (function(module, exports) { +module.exports = function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) { + if (typeof sourceComponent !== 'string') { // don't hoist over string (html) components -// fast apply, http://jsperf.lnkit.com/fast-apply/5 -module.exports = function (fn, args, that) { - var un = that === undefined; - switch (args.length) { - case 0: return un ? fn() - : fn.call(that); - case 1: return un ? fn(args[0]) - : fn.call(that, args[0]); - case 2: return un ? fn(args[0], args[1]) - : fn.call(that, args[0], args[1]); - case 3: return un ? fn(args[0], args[1], args[2]) - : fn.call(that, args[0], args[1], args[2]); - case 4: return un ? fn(args[0], args[1], args[2], args[3]) - : fn.call(that, args[0], args[1], args[2], args[3]); - } return fn.apply(that, args); -}; + if (objectPrototype) { + var inheritedComponent = getPrototypeOf(sourceComponent); + if (inheritedComponent && inheritedComponent !== objectPrototype) { + hoistNonReactStatics(targetComponent, inheritedComponent, blacklist); + } + } + var keys = getOwnPropertyNames(sourceComponent); -/***/ }), -/* 233 */ -/***/ (function(module, exports, __webpack_require__) { + if (getOwnPropertySymbols) { + keys = keys.concat(getOwnPropertySymbols(sourceComponent)); + } -var $parseInt = __webpack_require__(14).parseInt; -var $trim = __webpack_require__(92).trim; -var ws = __webpack_require__(161); -var hex = /^[-+]?0[xX]/; + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + if (!REACT_STATICS[key] && !KNOWN_STATICS[key] && (!blacklist || !blacklist[key])) { + var descriptor = getOwnPropertyDescriptor(sourceComponent, key); + try { // Avoid failures from read-only properties + defineProperty(targetComponent, key, descriptor); + } catch (e) {} + } + } -module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) { - var string = $trim(String(str), 3); - return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10)); -} : $parseInt; + return targetComponent; + } + return targetComponent; +}; -/***/ }), -/* 234 */ -/***/ (function(module, exports, __webpack_require__) { -var $parseFloat = __webpack_require__(14).parseFloat; -var $trim = __webpack_require__(92).trim; +/***/ }), +/* 240 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { -module.exports = 1 / $parseFloat(__webpack_require__(161) + '-0') !== -Infinity ? function parseFloat(str) { - var string = $trim(String(str), 3); - var result = $parseFloat(string); - return result === 0 && string.charAt(0) == '-' ? -0 : result; -} : $parseFloat; +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__createStore__ = __webpack_require__(241); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__combineReducers__ = __webpack_require__(556); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__bindActionCreators__ = __webpack_require__(557); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__applyMiddleware__ = __webpack_require__(558); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__compose__ = __webpack_require__(245); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__utils_warning__ = __webpack_require__(244); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "createStore", function() { return __WEBPACK_IMPORTED_MODULE_0__createStore__["b"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "combineReducers", function() { return __WEBPACK_IMPORTED_MODULE_1__combineReducers__["a"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "bindActionCreators", function() { return __WEBPACK_IMPORTED_MODULE_2__bindActionCreators__["a"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "applyMiddleware", function() { return __WEBPACK_IMPORTED_MODULE_3__applyMiddleware__["a"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "compose", function() { return __WEBPACK_IMPORTED_MODULE_4__compose__["a"]; }); -/***/ }), -/* 235 */ -/***/ (function(module, exports, __webpack_require__) { -var cof = __webpack_require__(47); -module.exports = function (it, msg) { - if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg); - return +it; -}; -/***/ }), -/* 236 */ -/***/ (function(module, exports, __webpack_require__) { -// 20.1.2.3 Number.isInteger(number) -var isObject = __webpack_require__(16); -var floor = Math.floor; -module.exports = function isInteger(it) { - return !isObject(it) && isFinite(it) && floor(it) === it; -}; +/* +* This is a dummy function to check if the function name has been altered by minification. +* If the function has been minified and NODE_ENV !== 'production', warn the user. +*/ +function isCrushed() {} -/***/ }), -/* 237 */ -/***/ (function(module, exports) { +if ("development" !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') { + Object(__WEBPACK_IMPORTED_MODULE_5__utils_warning__["a" /* default */])('You are currently using minified code outside of NODE_ENV === \'production\'. ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or DefinePlugin for webpack (http://stackoverflow.com/questions/30030031) ' + 'to ensure you have the correct code for your production build.'); +} -// 20.2.2.20 Math.log1p(x) -module.exports = Math.log1p || function log1p(x) { - return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x); -}; /***/ }), -/* 238 */ -/***/ (function(module, exports, __webpack_require__) { +/* 241 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { -// 20.2.2.16 Math.fround(x) -var sign = __webpack_require__(164); -var pow = Math.pow; -var EPSILON = pow(2, -52); -var EPSILON32 = pow(2, -23); -var MAX32 = pow(2, 127) * (2 - EPSILON32); -var MIN32 = pow(2, -126); +"use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ActionTypes; }); +/* harmony export (immutable) */ __webpack_exports__["b"] = createStore; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__ = __webpack_require__(165); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_symbol_observable__ = __webpack_require__(553); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_symbol_observable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_symbol_observable__); -var roundTiesToEven = function (n) { - return n + 1 / EPSILON - 1 / EPSILON; -}; -module.exports = Math.fround || function fround(x) { - var $abs = Math.abs(x); - var $sign = sign(x); - var a, result; - if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32; - a = (1 + EPSILON32 / EPSILON) * $abs; - result = a - (a - $abs); - // eslint-disable-next-line no-self-compare - if (result > MAX32 || result != result) return $sign * Infinity; - return $sign * result; -}; +/** + * These are private action types reserved by Redux. + * For any unknown actions, you must return the current state. + * If the current state is undefined, you must return the initial state. + * Do not reference these action types directly in your code. + */ +var ActionTypes = { + INIT: '@@redux/INIT' -/***/ }), -/* 239 */ -/***/ (function(module, exports, __webpack_require__) { + /** + * Creates a Redux store that holds the state tree. + * The only way to change the data in the store is to call `dispatch()` on it. + * + * There should only be a single store in your app. To specify how different + * parts of the state tree respond to actions, you may combine several reducers + * into a single reducer function by using `combineReducers`. + * + * @param {Function} reducer A function that returns the next state tree, given + * the current state tree and the action to handle. + * + * @param {any} [preloadedState] The initial state. You may optionally specify it + * to hydrate the state from the server in universal apps, or to restore a + * previously serialized user session. + * If you use `combineReducers` to produce the root reducer function, this must be + * an object with the same shape as `combineReducers` keys. + * + * @param {Function} [enhancer] The store enhancer. You may optionally specify it + * to enhance the store with third-party capabilities such as middleware, + * time travel, persistence, etc. The only store enhancer that ships with Redux + * is `applyMiddleware()`. + * + * @returns {Store} A Redux store that lets you read the state, dispatch actions + * and subscribe to changes. + */ +};function createStore(reducer, preloadedState, enhancer) { + var _ref2; -// call something on iterator step with safe closing on error -var anObject = __webpack_require__(13); -module.exports = function (iterator, fn, value, entries) { - try { - return entries ? fn(anObject(value)[0], value[1]) : fn(value); - // 7.4.6 IteratorClose(iterator, completion) - } catch (e) { - var ret = iterator['return']; - if (ret !== undefined) anObject(ret.call(iterator)); - throw e; + if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') { + enhancer = preloadedState; + preloadedState = undefined; } -}; + if (typeof enhancer !== 'undefined') { + if (typeof enhancer !== 'function') { + throw new Error('Expected the enhancer to be a function.'); + } -/***/ }), -/* 240 */ -/***/ (function(module, exports, __webpack_require__) { + return enhancer(createStore)(reducer, preloadedState); + } -var aFunction = __webpack_require__(29); -var toObject = __webpack_require__(23); -var IObject = __webpack_require__(103); -var toLength = __webpack_require__(21); + if (typeof reducer !== 'function') { + throw new Error('Expected the reducer to be a function.'); + } -module.exports = function (that, callbackfn, aLen, memo, isRight) { - aFunction(callbackfn); - var O = toObject(that); - var self = IObject(O); - var length = toLength(O.length); - var index = isRight ? length - 1 : 0; - var i = isRight ? -1 : 1; - if (aLen < 2) for (;;) { - if (index in self) { - memo = self[index]; - index += i; - break; - } - index += i; - if (isRight ? index < 0 : length <= index) { - throw TypeError('Reduce of empty array with no initial value'); + var currentReducer = reducer; + var currentState = preloadedState; + var currentListeners = []; + var nextListeners = currentListeners; + var isDispatching = false; + + function ensureCanMutateNextListeners() { + if (nextListeners === currentListeners) { + nextListeners = currentListeners.slice(); } } - for (;isRight ? index >= 0 : length > index; index += i) if (index in self) { - memo = callbackfn(memo, self[index], index, O); - } - return memo; -}; + /** + * Reads the state tree managed by the store. + * + * @returns {any} The current state tree of your application. + */ + function getState() { + return currentState; + } -/***/ }), -/* 241 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) + /** + * Adds a change listener. It will be called any time an action is dispatched, + * and some part of the state tree may potentially have changed. You may then + * call `getState()` to read the current state tree inside the callback. + * + * You may call `dispatch()` from a change listener, with the following + * caveats: + * + * 1. The subscriptions are snapshotted just before every `dispatch()` call. + * If you subscribe or unsubscribe while the listeners are being invoked, this + * will not have any effect on the `dispatch()` that is currently in progress. + * However, the next `dispatch()` call, whether nested or not, will use a more + * recent snapshot of the subscription list. + * + * 2. The listener should not expect to see all state changes, as the state + * might have been updated multiple times during a nested `dispatch()` before + * the listener is called. It is, however, guaranteed that all subscribers + * registered before the `dispatch()` started will be called with the latest + * state by the time it exits. + * + * @param {Function} listener A callback to be invoked on every dispatch. + * @returns {Function} A function to remove this change listener. + */ + function subscribe(listener) { + if (typeof listener !== 'function') { + throw new Error('Expected listener to be a function.'); + } -var toObject = __webpack_require__(23); -var toAbsoluteIndex = __webpack_require__(78); -var toLength = __webpack_require__(21); + var isSubscribed = true; -module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { - var O = toObject(this); - var len = toLength(O.length); - var to = toAbsoluteIndex(target, len); - var from = toAbsoluteIndex(start, len); - var end = arguments.length > 2 ? arguments[2] : undefined; - var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); - var inc = 1; - if (from < to && to < from + count) { - inc = -1; - from += count - 1; - to += count - 1; - } - while (count-- > 0) { - if (from in O) O[to] = O[from]; - else delete O[to]; - to += inc; - from += inc; - } return O; -}; + ensureCanMutateNextListeners(); + nextListeners.push(listener); + return function unsubscribe() { + if (!isSubscribed) { + return; + } -/***/ }), -/* 242 */ -/***/ (function(module, exports) { + isSubscribed = false; -module.exports = function (done, value) { - return { value: value, done: !!done }; -}; + ensureCanMutateNextListeners(); + var index = nextListeners.indexOf(listener); + nextListeners.splice(index, 1); + }; + } + /** + * Dispatches an action. It is the only way to trigger a state change. + * + * The `reducer` function, used to create the store, will be called with the + * current state tree and the given `action`. Its return value will + * be considered the **next** state of the tree, and the change listeners + * will be notified. + * + * The base implementation only supports plain object actions. If you want to + * dispatch a Promise, an Observable, a thunk, or something else, you need to + * wrap your store creating function into the corresponding middleware. For + * example, see the documentation for the `redux-thunk` package. Even the + * middleware will eventually dispatch plain object actions using this method. + * + * @param {Object} action A plain object representing “what changed”. It is + * a good idea to keep actions serializable so you can record and replay user + * sessions, or use the time travelling `redux-devtools`. An action must have + * a `type` property which may not be `undefined`. It is a good idea to use + * string constants for action types. + * + * @returns {Object} For convenience, the same action object you dispatched. + * + * Note that, if you use a custom middleware, it may wrap `dispatch()` to + * return something else (for example, a Promise you can await). + */ + function dispatch(action) { + if (!Object(__WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__["a" /* default */])(action)) { + throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.'); + } -/***/ }), -/* 243 */ -/***/ (function(module, exports, __webpack_require__) { + if (typeof action.type === 'undefined') { + throw new Error('Actions may not have an undefined "type" property. ' + 'Have you misspelled a constant?'); + } -// 21.2.5.3 get RegExp.prototype.flags() -if (__webpack_require__(19) && /./g.flags != 'g') __webpack_require__(20).f(RegExp.prototype, 'flags', { - configurable: true, - get: __webpack_require__(126) -}); + if (isDispatching) { + throw new Error('Reducers may not dispatch actions.'); + } + try { + isDispatching = true; + currentState = currentReducer(currentState, action); + } finally { + isDispatching = false; + } -/***/ }), -/* 244 */ -/***/ (function(module, exports) { + var listeners = currentListeners = nextListeners; + for (var i = 0; i < listeners.length; i++) { + var listener = listeners[i]; + listener(); + } -module.exports = function (exec) { - try { - return { e: false, v: exec() }; - } catch (e) { - return { e: true, v: e }; + return action; } -}; + /** + * Replaces the reducer currently used by the store to calculate the state. + * + * You might need this if your app implements code splitting and you want to + * load some of the reducers dynamically. You might also need this if you + * implement a hot reloading mechanism for Redux. + * + * @param {Function} nextReducer The reducer for the store to use instead. + * @returns {void} + */ + function replaceReducer(nextReducer) { + if (typeof nextReducer !== 'function') { + throw new Error('Expected the nextReducer to be a function.'); + } -/***/ }), -/* 245 */ -/***/ (function(module, exports, __webpack_require__) { + currentReducer = nextReducer; + dispatch({ type: ActionTypes.INIT }); + } -var anObject = __webpack_require__(13); -var isObject = __webpack_require__(16); -var newPromiseCapability = __webpack_require__(179); + /** + * Interoperability point for observable/reactive libraries. + * @returns {observable} A minimal observable of state changes. + * For more information, see the observable proposal: + * https://github.com/tc39/proposal-observable + */ + function observable() { + var _ref; -module.exports = function (C, x) { - anObject(C); - if (isObject(x) && x.constructor === C) return x; - var promiseCapability = newPromiseCapability.f(C); - var resolve = promiseCapability.resolve; - resolve(x); - return promiseCapability.promise; -}; + var outerSubscribe = subscribe; + return _ref = { + /** + * The minimal observable subscription method. + * @param {Object} observer Any object that can be used as an observer. + * The observer object should have a `next` method. + * @returns {subscription} An object with an `unsubscribe` method that can + * be used to unsubscribe the observable from the store, and prevent further + * emission of values from the observable. + */ + subscribe: function subscribe(observer) { + if (typeof observer !== 'object') { + throw new TypeError('Expected the observer to be an object.'); + } + + function observeState() { + if (observer.next) { + observer.next(getState()); + } + } + + observeState(); + var unsubscribe = outerSubscribe(observeState); + return { unsubscribe: unsubscribe }; + } + }, _ref[__WEBPACK_IMPORTED_MODULE_1_symbol_observable___default.a] = function () { + return this; + }, _ref; + } + + // When a store is created, an "INIT" action is dispatched so that every + // reducer returns their initial state. This effectively populates + // the initial state tree. + dispatch({ type: ActionTypes.INIT }); + return _ref2 = { + dispatch: dispatch, + subscribe: subscribe, + getState: getState, + replaceReducer: replaceReducer + }, _ref2[__WEBPACK_IMPORTED_MODULE_1_symbol_observable___default.a] = observable, _ref2; +} /***/ }), -/* 246 */ -/***/ (function(module, exports, __webpack_require__) { +/* 242 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__root_js__ = __webpack_require__(546); -var strong = __webpack_require__(247); -var validate = __webpack_require__(94); -var MAP = 'Map'; -// 23.1 Map Objects -module.exports = __webpack_require__(129)(MAP, function (get) { - return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.1.3.6 Map.prototype.get(key) - get: function get(key) { - var entry = strong.getEntry(validate(this, MAP), key); - return entry && entry.v; - }, - // 23.1.3.9 Map.prototype.set(key, value) - set: function set(key, value) { - return strong.def(validate(this, MAP), key === 0 ? 0 : key, value); - } -}, strong, true); +/** Built-in value references. */ +var Symbol = __WEBPACK_IMPORTED_MODULE_0__root_js__["a" /* default */].Symbol; +/* harmony default export */ __webpack_exports__["a"] = (Symbol); -/***/ }), -/* 247 */ -/***/ (function(module, exports, __webpack_require__) { -"use strict"; +/***/ }), +/* 243 */ +/***/ (function(module, exports) { -var dP = __webpack_require__(20).f; -var create = __webpack_require__(79); -var redefineAll = __webpack_require__(84); -var ctx = __webpack_require__(46); -var anInstance = __webpack_require__(82); -var forOf = __webpack_require__(83); -var $iterDefine = __webpack_require__(167); -var step = __webpack_require__(242); -var setSpecies = __webpack_require__(81); -var DESCRIPTORS = __webpack_require__(19); -var fastKey = __webpack_require__(66).fastKey; -var validate = __webpack_require__(94); -var SIZE = DESCRIPTORS ? '_s' : 'size'; +module.exports = function(module) { + if(!module.webpackPolyfill) { + module.deprecate = function() {}; + module.paths = []; + // module.parent = undefined by default + if(!module.children) module.children = []; + Object.defineProperty(module, "loaded", { + enumerable: true, + get: function() { + return module.l; + } + }); + Object.defineProperty(module, "id", { + enumerable: true, + get: function() { + return module.i; + } + }); + module.webpackPolyfill = 1; + } + return module; +}; -var getEntry = function (that, key) { - // fast case - var index = fastKey(key); - var entry; - if (index !== 'F') return that._i[index]; - // frozen object case - for (entry = that._f; entry; entry = entry.n) { - if (entry.k == key) return entry; - } -}; -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = create(null); // index - that._f = undefined; // first entry - that._l = undefined; // last entry - that[SIZE] = 0; // size - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.1.3.1 Map.prototype.clear() - // 23.2.3.2 Set.prototype.clear() - clear: function clear() { - for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) { - entry.r = true; - if (entry.p) entry.p = entry.p.n = undefined; - delete data[entry.i]; - } - that._f = that._l = undefined; - that[SIZE] = 0; - }, - // 23.1.3.3 Map.prototype.delete(key) - // 23.2.3.4 Set.prototype.delete(value) - 'delete': function (key) { - var that = validate(this, NAME); - var entry = getEntry(that, key); - if (entry) { - var next = entry.n; - var prev = entry.p; - delete that._i[entry.i]; - entry.r = true; - if (prev) prev.n = next; - if (next) next.p = prev; - if (that._f == entry) that._f = next; - if (that._l == entry) that._l = prev; - that[SIZE]--; - } return !!entry; - }, - // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) - // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) - forEach: function forEach(callbackfn /* , that = undefined */) { - validate(this, NAME); - var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var entry; - while (entry = entry ? entry.n : this._f) { - f(entry.v, entry.k, this); - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - } - }, - // 23.1.3.7 Map.prototype.has(key) - // 23.2.3.7 Set.prototype.has(value) - has: function has(key) { - return !!getEntry(validate(this, NAME), key); - } - }); - if (DESCRIPTORS) dP(C.prototype, 'size', { - get: function () { - return validate(this, NAME)[SIZE]; - } - }); - return C; - }, - def: function (that, key, value) { - var entry = getEntry(that, key); - var prev, index; - // change existing entry - if (entry) { - entry.v = value; - // create new entry - } else { - that._l = entry = { - i: index = fastKey(key, true), // <- index - k: key, // <- key - v: value, // <- value - p: prev = that._l, // <- previous entry - n: undefined, // <- next entry - r: false // <- removed - }; - if (!that._f) that._f = entry; - if (prev) prev.n = entry; - that[SIZE]++; - // add to index - if (index !== 'F') that._i[index] = entry; - } return that; - }, - getEntry: getEntry, - setStrong: function (C, NAME, IS_MAP) { - // add .keys, .values, .entries, [@@iterator] - // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 - $iterDefine(C, NAME, function (iterated, kind) { - this._t = validate(iterated, NAME); // target - this._k = kind; // kind - this._l = undefined; // previous - }, function () { - var that = this; - var kind = that._k; - var entry = that._l; - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - // get next entry - if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { - // or finish the iteration - that._t = undefined; - return step(1); - } - // return step by kind - if (kind == 'keys') return step(0, entry.k); - if (kind == 'values') return step(0, entry.v); - return step(0, [entry.k, entry.v]); - }, IS_MAP ? 'entries' : 'values', !IS_MAP, true); +/***/ }), +/* 244 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { - // add [@@species], 23.1.2.2, 23.2.2.2 - setSpecies(NAME); +"use strict"; +/* harmony export (immutable) */ __webpack_exports__["a"] = warning; +/** + * Prints a warning in the console if it exists. + * + * @param {String} message The warning message. + * @returns {void} + */ +function warning(message) { + /* eslint-disable no-console */ + if (typeof console !== 'undefined' && typeof console.error === 'function') { + console.error(message); } -}; - + /* eslint-enable no-console */ + try { + // This error was thrown as a convenience so that if you enable + // "break on all exceptions" in your console, + // it would pause the execution at this line. + throw new Error(message); + /* eslint-disable no-empty */ + } catch (e) {} + /* eslint-enable no-empty */ +} /***/ }), -/* 248 */ -/***/ (function(module, exports, __webpack_require__) { +/* 245 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; +/* harmony export (immutable) */ __webpack_exports__["a"] = compose; +/** + * Composes single-argument functions from right to left. The rightmost + * function can take multiple arguments as it provides the signature for + * the resulting composite function. + * + * @param {...Function} funcs The functions to compose. + * @returns {Function} A function obtained by composing the argument functions + * from right to left. For example, compose(f, g, h) is identical to doing + * (...args) => f(g(h(...args))). + */ -var strong = __webpack_require__(247); -var validate = __webpack_require__(94); -var SET = 'Set'; +function compose() { + for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) { + funcs[_key] = arguments[_key]; + } -// 23.2 Set Objects -module.exports = __webpack_require__(129)(SET, function (get) { - return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.2.3.1 Set.prototype.add(value) - add: function add(value) { - return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value); + if (funcs.length === 0) { + return function (arg) { + return arg; + }; + } + + if (funcs.length === 1) { + return funcs[0]; } -}, strong); + return funcs.reduce(function (a, b) { + return function () { + return a(b.apply(undefined, arguments)); + }; + }); +} /***/ }), -/* 249 */ -/***/ (function(module, exports, __webpack_require__) { +/* 246 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; +/* harmony export (immutable) */ __webpack_exports__["a"] = wrapMapToPropsConstant; +/* unused harmony export getDependsOnOwnProps */ +/* harmony export (immutable) */ __webpack_exports__["b"] = wrapMapToPropsFunc; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__ = __webpack_require__(247); -var each = __webpack_require__(55)(0); -var redefine = __webpack_require__(37); -var meta = __webpack_require__(66); -var assign = __webpack_require__(230); -var weak = __webpack_require__(250); -var isObject = __webpack_require__(16); -var fails = __webpack_require__(15); -var validate = __webpack_require__(94); -var WEAK_MAP = 'WeakMap'; -var getWeak = meta.getWeak; -var isExtensible = Object.isExtensible; -var uncaughtFrozenStore = weak.ufstore; -var tmp = {}; -var InternalMap; -var wrapper = function (get) { - return function WeakMap() { - return get(this, arguments.length > 0 ? arguments[0] : undefined); - }; -}; +function wrapMapToPropsConstant(getConstant) { + return function initConstantSelector(dispatch, options) { + var constant = getConstant(dispatch, options); -var methods = { - // 23.3.3.3 WeakMap.prototype.get(key) - get: function get(key) { - if (isObject(key)) { - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key); - return data ? data[this._i] : undefined; + function constantSelector() { + return constant; } - }, - // 23.3.3.5 WeakMap.prototype.set(key, value) - set: function set(key, value) { - return weak.def(validate(this, WEAK_MAP), key, value); - } -}; - -// 23.3 WeakMap Objects -var $WeakMap = module.exports = __webpack_require__(129)(WEAK_MAP, wrapper, methods, weak, true, true); - -// IE11 WeakMap frozen keys fix -if (fails(function () { return new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7; })) { - InternalMap = weak.getConstructor(wrapper, WEAK_MAP); - assign(InternalMap.prototype, methods); - meta.NEED = true; - each(['delete', 'has', 'get', 'set'], function (key) { - var proto = $WeakMap.prototype; - var method = proto[key]; - redefine(proto, key, function (a, b) { - // store frozen objects on internal weakmap shim - if (isObject(a) && !isExtensible(a)) { - if (!this._f) this._f = new InternalMap(); - var result = this._f[key](a, b); - return key == 'set' ? this : result; - // store all the rest on native weakmap - } return method.call(this, a, b); - }); - }); + constantSelector.dependsOnOwnProps = false; + return constantSelector; + }; } +// dependsOnOwnProps is used by createMapToPropsProxy to determine whether to pass props as args +// to the mapToProps function being wrapped. It is also used by makePurePropsSelector to determine +// whether mapToProps needs to be invoked when props have changed. +// +// A length of one signals that mapToProps does not depend on props from the parent component. +// A length of zero is assumed to mean mapToProps is getting args via arguments or ...args and +// therefore not reporting its length accurately.. +function getDependsOnOwnProps(mapToProps) { + return mapToProps.dependsOnOwnProps !== null && mapToProps.dependsOnOwnProps !== undefined ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1; +} -/***/ }), -/* 250 */ -/***/ (function(module, exports, __webpack_require__) { +// Used by whenMapStateToPropsIsFunction and whenMapDispatchToPropsIsFunction, +// this function wraps mapToProps in a proxy function which does several things: +// +// * Detects whether the mapToProps function being called depends on props, which +// is used by selectorFactory to decide if it should reinvoke on props changes. +// +// * On first call, handles mapToProps if returns another function, and treats that +// new function as the true mapToProps for subsequent calls. +// +// * On first call, verifies the first result is a plain object, in order to warn +// the developer that their mapToProps function is not returning a valid result. +// +function wrapMapToPropsFunc(mapToProps, methodName) { + return function initProxySelector(dispatch, _ref) { + var displayName = _ref.displayName; -"use strict"; + var proxy = function mapToPropsProxy(stateOrDispatch, ownProps) { + return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch); + }; -var redefineAll = __webpack_require__(84); -var getWeak = __webpack_require__(66).getWeak; -var anObject = __webpack_require__(13); -var isObject = __webpack_require__(16); -var anInstance = __webpack_require__(82); -var forOf = __webpack_require__(83); -var createArrayMethod = __webpack_require__(55); -var $has = __webpack_require__(35); -var validate = __webpack_require__(94); -var arrayFind = createArrayMethod(5); -var arrayFindIndex = createArrayMethod(6); -var id = 0; + // allow detectFactoryAndVerify to get ownProps + proxy.dependsOnOwnProps = true; -// fallback for uncaught frozen keys -var uncaughtFrozenStore = function (that) { - return that._l || (that._l = new UncaughtFrozenStore()); -}; -var UncaughtFrozenStore = function () { - this.a = []; -}; -var findUncaughtFrozen = function (store, key) { - return arrayFind(store.a, function (it) { - return it[0] === key; - }); -}; -UncaughtFrozenStore.prototype = { - get: function (key) { - var entry = findUncaughtFrozen(this, key); - if (entry) return entry[1]; - }, - has: function (key) { - return !!findUncaughtFrozen(this, key); - }, - set: function (key, value) { - var entry = findUncaughtFrozen(this, key); - if (entry) entry[1] = value; - else this.a.push([key, value]); - }, - 'delete': function (key) { - var index = arrayFindIndex(this.a, function (it) { - return it[0] === key; - }); - if (~index) this.a.splice(index, 1); - return !!~index; - } -}; + proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) { + proxy.mapToProps = mapToProps; + proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps); + var props = proxy(stateOrDispatch, ownProps); -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = id++; // collection id - that._l = undefined; // leak store for uncaught frozen objects - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.3.3.2 WeakMap.prototype.delete(key) - // 23.4.3.3 WeakSet.prototype.delete(value) - 'delete': function (key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key); - return data && $has(data, this._i) && delete data[this._i]; - }, - // 23.3.3.4 WeakMap.prototype.has(key) - // 23.4.3.4 WeakSet.prototype.has(value) - has: function has(key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key); - return data && $has(data, this._i); + if (typeof props === 'function') { + proxy.mapToProps = props; + proxy.dependsOnOwnProps = getDependsOnOwnProps(props); + props = proxy(stateOrDispatch, ownProps); } - }); - return C; - }, - def: function (that, key, value) { - var data = getWeak(anObject(key), true); - if (data === true) uncaughtFrozenStore(that).set(key, value); - else data[that._i] = value; - return that; - }, - ufstore: uncaughtFrozenStore -}; - -/***/ }), -/* 251 */ -/***/ (function(module, exports, __webpack_require__) { + if (true) Object(__WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__["a" /* default */])(props, displayName, methodName); -// https://tc39.github.io/ecma262/#sec-toindex -var toInteger = __webpack_require__(53); -var toLength = __webpack_require__(21); -module.exports = function (it) { - if (it === undefined) return 0; - var number = toInteger(it); - var length = toLength(number); - if (number !== length) throw RangeError('Wrong length!'); - return length; -}; + return props; + }; + return proxy; + }; +} /***/ }), -/* 252 */ -/***/ (function(module, exports, __webpack_require__) { +/* 247 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (immutable) */ __webpack_exports__["a"] = verifyPlainObject; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__ = __webpack_require__(165); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__warning__ = __webpack_require__(164); -// all object keys, includes non-enumerable and symbols -var gOPN = __webpack_require__(80); -var gOPS = __webpack_require__(122); -var anObject = __webpack_require__(13); -var Reflect = __webpack_require__(14).Reflect; -module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) { - var keys = gOPN.f(anObject(it)); - var getSymbols = gOPS.f; - return getSymbols ? keys.concat(getSymbols(it)) : keys; -}; +function verifyPlainObject(value, displayName, methodName) { + if (!Object(__WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__["a" /* default */])(value)) { + Object(__WEBPACK_IMPORTED_MODULE_1__warning__["a" /* default */])(methodName + '() in ' + displayName + ' must return a plain object. Instead received ' + value + '.'); + } +} + /***/ }), -/* 253 */ +/* 248 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray -var isArray = __webpack_require__(123); -var isObject = __webpack_require__(16); -var toLength = __webpack_require__(21); -var ctx = __webpack_require__(46); -var IS_CONCAT_SPREADABLE = __webpack_require__(18)('isConcatSpreadable'); -function flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) { - var targetIndex = start; - var sourceIndex = 0; - var mapFn = mapper ? ctx(mapper, thisArg, 3) : false; - var element, spreadable; +exports.__esModule = true; - while (sourceIndex < sourceLen) { - if (sourceIndex in source) { - element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex]; +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - spreadable = false; - if (isObject(element)) { - spreadable = element[IS_CONCAT_SPREADABLE]; - spreadable = spreadable !== undefined ? !!spreadable : isArray(element); - } - - if (spreadable && depth > 0) { - targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1; - } else { - if (targetIndex >= 0x1fffffffffffff) throw TypeError(); - target[targetIndex] = element; - } +var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - targetIndex++; - } - sourceIndex++; - } - return targetIndex; -} +var _warning = __webpack_require__(14); -module.exports = flattenIntoArray; +var _warning2 = _interopRequireDefault(_warning); +var _invariant = __webpack_require__(23); -/***/ }), -/* 254 */ -/***/ (function(module, exports, __webpack_require__) { +var _invariant2 = _interopRequireDefault(_invariant); -// https://github.com/tc39/proposal-string-pad-start-end -var toLength = __webpack_require__(21); -var repeat = __webpack_require__(163); -var defined = __webpack_require__(52); +var _LocationUtils = __webpack_require__(166); -module.exports = function (that, maxLength, fillString, left) { - var S = String(defined(that)); - var stringLength = S.length; - var fillStr = fillString === undefined ? ' ' : String(fillString); - var intMaxLength = toLength(maxLength); - if (intMaxLength <= stringLength || fillStr == '') return S; - var fillLen = intMaxLength - stringLength; - var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length)); - if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen); - return left ? stringFiller + S : S + stringFiller; -}; +var _PathUtils = __webpack_require__(97); +var _createTransitionManager = __webpack_require__(167); -/***/ }), -/* 255 */ -/***/ (function(module, exports, __webpack_require__) { +var _createTransitionManager2 = _interopRequireDefault(_createTransitionManager); -var getKeys = __webpack_require__(77); -var toIObject = __webpack_require__(39); -var isEnum = __webpack_require__(104).f; -module.exports = function (isEntries) { - return function (it) { - var O = toIObject(it); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var result = []; - var key; - while (length > i) if (isEnum.call(O, key = keys[i++])) { - result.push(isEntries ? [key, O[key]] : O[key]); - } return result; - }; -}; +var _DOMUtils = __webpack_require__(251); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -/***/ }), -/* 256 */ -/***/ (function(module, exports, __webpack_require__) { +var PopStateEvent = 'popstate'; +var HashChangeEvent = 'hashchange'; -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var classof = __webpack_require__(105); -var from = __webpack_require__(257); -module.exports = function (NAME) { - return function toJSON() { - if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic"); - return from(this); - }; +var getHistoryState = function getHistoryState() { + try { + return window.history.state || {}; + } catch (e) { + // IE 11 sometimes throws when accessing window.history.state + // See https://github.com/ReactTraining/history/pull/289 + return {}; + } }; +/** + * Creates a history object that uses the HTML5 history API including + * pushState, replaceState, and the popstate event. + */ +var createBrowserHistory = function createBrowserHistory() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; -/***/ }), -/* 257 */ -/***/ (function(module, exports, __webpack_require__) { + (0, _invariant2.default)(_DOMUtils.canUseDOM, 'Browser history needs a DOM'); -var forOf = __webpack_require__(83); + var globalHistory = window.history; + var canUseHistory = (0, _DOMUtils.supportsHistory)(); + var needsHashChangeListener = !(0, _DOMUtils.supportsPopStateOnHashChange)(); -module.exports = function (iter, ITERATOR) { - var result = []; - forOf(iter, false, result.push, result, ITERATOR); - return result; -}; + var _props$forceRefresh = props.forceRefresh, + forceRefresh = _props$forceRefresh === undefined ? false : _props$forceRefresh, + _props$getUserConfirm = props.getUserConfirmation, + getUserConfirmation = _props$getUserConfirm === undefined ? _DOMUtils.getConfirmation : _props$getUserConfirm, + _props$keyLength = props.keyLength, + keyLength = _props$keyLength === undefined ? 6 : _props$keyLength; + var basename = props.basename ? (0, _PathUtils.stripTrailingSlash)((0, _PathUtils.addLeadingSlash)(props.basename)) : ''; -/***/ }), -/* 258 */ -/***/ (function(module, exports) { + var getDOMLocation = function getDOMLocation(historyState) { + var _ref = historyState || {}, + key = _ref.key, + state = _ref.state; -// https://rwaldron.github.io/proposal-math-extensions/ -module.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) { - if ( - arguments.length === 0 - // eslint-disable-next-line no-self-compare - || x != x - // eslint-disable-next-line no-self-compare - || inLow != inLow - // eslint-disable-next-line no-self-compare - || inHigh != inHigh - // eslint-disable-next-line no-self-compare - || outLow != outLow - // eslint-disable-next-line no-self-compare - || outHigh != outHigh - ) return NaN; - if (x === Infinity || x === -Infinity) return x; - return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow; -}; + var _window$location = window.location, + pathname = _window$location.pathname, + search = _window$location.search, + hash = _window$location.hash; -/***/ }), -/* 259 */ -/***/ (function(module, exports, __webpack_require__) { + var path = pathname + search + hash; -"use strict"; -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ + (0, _warning2.default)(!basename || (0, _PathUtils.hasBasename)(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".'); + if (basename) path = (0, _PathUtils.stripBasename)(path, basename); + return (0, _LocationUtils.createLocation)(path, state, key); + }; -var emptyObject = {}; + var createKey = function createKey() { + return Math.random().toString(36).substr(2, keyLength); + }; -if (true) { - Object.freeze(emptyObject); -} + var transitionManager = (0, _createTransitionManager2.default)(); -module.exports = emptyObject; + var setState = function setState(nextState) { + _extends(history, nextState); -/***/ }), -/* 260 */ -/***/ (function(module, exports, __webpack_require__) { + history.length = globalHistory.length; -"use strict"; -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ + transitionManager.notifyListeners(history.location, history.action); + }; + var handlePopState = function handlePopState(event) { + // Ignore extraneous popstate events in WebKit. + if ((0, _DOMUtils.isExtraneousPopstateEvent)(event)) return; + handlePop(getDOMLocation(event.state)); + }; -var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; + var handleHashChange = function handleHashChange() { + handlePop(getDOMLocation(getHistoryState())); + }; -module.exports = ReactPropTypesSecret; + var forceNextPop = false; + var handlePop = function handlePop(location) { + if (forceNextPop) { + forceNextPop = false; + setState(); + } else { + var action = 'POP'; -/***/ }), -/* 261 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (ok) { + setState({ action: action, location: location }); + } else { + revertPop(location); + } + }); + } + }; -"use strict"; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return subscriptionShape; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return storeShape; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_prop_types__); + var revertPop = function revertPop(fromLocation) { + var toLocation = history.location; + // TODO: We could probably make this more reliable by + // keeping a list of keys we've seen in sessionStorage. + // Instead, we just default to 0 for keys we don't know. -var subscriptionShape = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.shape({ - trySubscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, - tryUnsubscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, - notifyNestedSubs: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, - isSubscribed: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired -}); + var toIndex = allKeys.indexOf(toLocation.key); -var storeShape = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.shape({ - subscribe: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, - dispatch: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired, - getState: __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.func.isRequired -}); + if (toIndex === -1) toIndex = 0; -/***/ }), -/* 262 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { + var fromIndex = allKeys.indexOf(fromLocation.key); -"use strict"; -/* harmony export (immutable) */ __webpack_exports__["a"] = connectAdvanced; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics__ = __webpack_require__(263); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(24); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_invariant__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_Subscription__ = __webpack_require__(588); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__ = __webpack_require__(261); -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; + if (fromIndex === -1) fromIndex = 0; -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + var delta = toIndex - fromIndex; -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } + if (delta) { + forceNextPop = true; + go(delta); + } + }; -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } + var initialLocation = getDOMLocation(getHistoryState()); + var allKeys = [initialLocation.key]; -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } + // Public interface + var createHref = function createHref(location) { + return basename + (0, _PathUtils.createPath)(location); + }; + var push = function push(path, state) { + (0, _warning2.default)(!((typeof path === 'undefined' ? 'undefined' : _typeof(path)) === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to push when the 1st ' + 'argument is a location-like object that already has state; it is ignored'); + var action = 'PUSH'; + var location = (0, _LocationUtils.createLocation)(path, state, createKey(), history.location); + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (!ok) return; + var href = createHref(location); + var key = location.key, + state = location.state; + if (canUseHistory) { + globalHistory.pushState({ key: key, state: state }, null, href); -var hotReloadingVersion = 0; -var dummyState = {}; -function noop() {} -function makeSelectorStateful(sourceSelector, store) { - // wrap the selector in an object that tracks its results between runs. - var selector = { - run: function runComponentSelector(props) { - try { - var nextProps = sourceSelector(store.getState(), props); - if (nextProps !== selector.props || selector.error) { - selector.shouldComponentUpdate = true; - selector.props = nextProps; - selector.error = null; + if (forceRefresh) { + window.location.href = href; + } else { + var prevIndex = allKeys.indexOf(history.location.key); + var nextKeys = allKeys.slice(0, prevIndex === -1 ? 0 : prevIndex + 1); + + nextKeys.push(location.key); + allKeys = nextKeys; + + setState({ action: action, location: location }); } - } catch (error) { - selector.shouldComponentUpdate = true; - selector.error = error; + } else { + (0, _warning2.default)(state === undefined, 'Browser history cannot push state in browsers that do not support HTML5 history'); + + window.location.href = href; } - } + }); }; - return selector; -} + var replace = function replace(path, state) { + (0, _warning2.default)(!((typeof path === 'undefined' ? 'undefined' : _typeof(path)) === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to replace when the 1st ' + 'argument is a location-like object that already has state; it is ignored'); -function connectAdvanced( -/* - selectorFactory is a func that is responsible for returning the selector function used to - compute new props from state, props, and dispatch. For example: - export default connectAdvanced((dispatch, options) => (state, props) => ({ - thing: state.things[props.thingId], - saveThing: fields => dispatch(actionCreators.saveThing(props.thingId, fields)), - }))(YourComponent) - Access to dispatch is provided to the factory so selectorFactories can bind actionCreators - outside of their selector as an optimization. Options passed to connectAdvanced are passed to - the selectorFactory, along with displayName and WrappedComponent, as the second argument. - Note that selectorFactory is responsible for all caching/memoization of inbound and outbound - props. Do not use connectAdvanced directly without memoizing results between calls to your - selector, otherwise the Connect component will re-render on every state or props change. -*/ -selectorFactory) { - var _contextTypes, _childContextTypes; + var action = 'REPLACE'; + var location = (0, _LocationUtils.createLocation)(path, state, createKey(), history.location); - var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, - _ref$getDisplayName = _ref.getDisplayName, - getDisplayName = _ref$getDisplayName === undefined ? function (name) { - return 'ConnectAdvanced(' + name + ')'; - } : _ref$getDisplayName, - _ref$methodName = _ref.methodName, - methodName = _ref$methodName === undefined ? 'connectAdvanced' : _ref$methodName, - _ref$renderCountProp = _ref.renderCountProp, - renderCountProp = _ref$renderCountProp === undefined ? undefined : _ref$renderCountProp, - _ref$shouldHandleStat = _ref.shouldHandleStateChanges, - shouldHandleStateChanges = _ref$shouldHandleStat === undefined ? true : _ref$shouldHandleStat, - _ref$storeKey = _ref.storeKey, - storeKey = _ref$storeKey === undefined ? 'store' : _ref$storeKey, - _ref$withRef = _ref.withRef, - withRef = _ref$withRef === undefined ? false : _ref$withRef, - connectOptions = _objectWithoutProperties(_ref, ['getDisplayName', 'methodName', 'renderCountProp', 'shouldHandleStateChanges', 'storeKey', 'withRef']); + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (!ok) return; - var subscriptionKey = storeKey + 'Subscription'; - var version = hotReloadingVersion++; + var href = createHref(location); + var key = location.key, + state = location.state; - var contextTypes = (_contextTypes = {}, _contextTypes[storeKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["a" /* storeShape */], _contextTypes[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["b" /* subscriptionShape */], _contextTypes); - var childContextTypes = (_childContextTypes = {}, _childContextTypes[subscriptionKey] = __WEBPACK_IMPORTED_MODULE_4__utils_PropTypes__["b" /* subscriptionShape */], _childContextTypes); - return function wrapWithConnect(WrappedComponent) { - __WEBPACK_IMPORTED_MODULE_1_invariant___default()(typeof WrappedComponent == 'function', 'You must pass a component to the function returned by ' + ('connect. Instead received ' + JSON.stringify(WrappedComponent))); + if (canUseHistory) { + globalHistory.replaceState({ key: key, state: state }, null, href); - var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component'; + if (forceRefresh) { + window.location.replace(href); + } else { + var prevIndex = allKeys.indexOf(history.location.key); - var displayName = getDisplayName(wrappedComponentName); + if (prevIndex !== -1) allKeys[prevIndex] = location.key; - var selectorFactoryOptions = _extends({}, connectOptions, { - getDisplayName: getDisplayName, - methodName: methodName, - renderCountProp: renderCountProp, - shouldHandleStateChanges: shouldHandleStateChanges, - storeKey: storeKey, - withRef: withRef, - displayName: displayName, - wrappedComponentName: wrappedComponentName, - WrappedComponent: WrappedComponent + setState({ action: action, location: location }); + } + } else { + (0, _warning2.default)(state === undefined, 'Browser history cannot replace state in browsers that do not support HTML5 history'); + + window.location.replace(href); + } }); + }; - var Connect = function (_Component) { - _inherits(Connect, _Component); + var go = function go(n) { + globalHistory.go(n); + }; - function Connect(props, context) { - _classCallCheck(this, Connect); + var goBack = function goBack() { + return go(-1); + }; - var _this = _possibleConstructorReturn(this, _Component.call(this, props, context)); + var goForward = function goForward() { + return go(1); + }; - _this.version = version; - _this.state = {}; - _this.renderCount = 0; - _this.store = props[storeKey] || context[storeKey]; - _this.propsMode = Boolean(props[storeKey]); - _this.setWrappedInstance = _this.setWrappedInstance.bind(_this); + var listenerCount = 0; - __WEBPACK_IMPORTED_MODULE_1_invariant___default()(_this.store, 'Could not find "' + storeKey + '" in either the context or props of ' + ('"' + displayName + '". Either wrap the root component in a , ') + ('or explicitly pass "' + storeKey + '" as a prop to "' + displayName + '".')); + var checkDOMListeners = function checkDOMListeners(delta) { + listenerCount += delta; - _this.initSelector(); - _this.initSubscription(); - return _this; - } + if (listenerCount === 1) { + (0, _DOMUtils.addEventListener)(window, PopStateEvent, handlePopState); - Connect.prototype.getChildContext = function getChildContext() { - var _ref2; + if (needsHashChangeListener) (0, _DOMUtils.addEventListener)(window, HashChangeEvent, handleHashChange); + } else if (listenerCount === 0) { + (0, _DOMUtils.removeEventListener)(window, PopStateEvent, handlePopState); - // If this component received store from props, its subscription should be transparent - // to any descendants receiving store+subscription from context; it passes along - // subscription passed to it. Otherwise, it shadows the parent subscription, which allows - // Connect to control ordering of notifications to flow top-down. - var subscription = this.propsMode ? null : this.subscription; - return _ref2 = {}, _ref2[subscriptionKey] = subscription || this.context[subscriptionKey], _ref2; - }; + if (needsHashChangeListener) (0, _DOMUtils.removeEventListener)(window, HashChangeEvent, handleHashChange); + } + }; - Connect.prototype.componentDidMount = function componentDidMount() { - if (!shouldHandleStateChanges) return; + var isBlocked = false; - // componentWillMount fires during server side rendering, but componentDidMount and - // componentWillUnmount do not. Because of this, trySubscribe happens during ...didMount. - // Otherwise, unsubscription would never take place during SSR, causing a memory leak. - // To handle the case where a child component may have triggered a state change by - // dispatching an action in its componentWillMount, we have to re-run the select and maybe - // re-render. - this.subscription.trySubscribe(); - this.selector.run(this.props); - if (this.selector.shouldComponentUpdate) this.forceUpdate(); - }; + var block = function block() { + var prompt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; - Connect.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { - this.selector.run(nextProps); - }; + var unblock = transitionManager.setPrompt(prompt); - Connect.prototype.shouldComponentUpdate = function shouldComponentUpdate() { - return this.selector.shouldComponentUpdate; - }; + if (!isBlocked) { + checkDOMListeners(1); + isBlocked = true; + } - Connect.prototype.componentWillUnmount = function componentWillUnmount() { - if (this.subscription) this.subscription.tryUnsubscribe(); - this.subscription = null; - this.notifyNestedSubs = noop; - this.store = null; - this.selector.run = noop; - this.selector.shouldComponentUpdate = false; - }; + return function () { + if (isBlocked) { + isBlocked = false; + checkDOMListeners(-1); + } - Connect.prototype.getWrappedInstance = function getWrappedInstance() { - __WEBPACK_IMPORTED_MODULE_1_invariant___default()(withRef, 'To access the wrapped instance, you need to specify ' + ('{ withRef: true } in the options argument of the ' + methodName + '() call.')); - return this.wrappedInstance; - }; + return unblock(); + }; + }; - Connect.prototype.setWrappedInstance = function setWrappedInstance(ref) { - this.wrappedInstance = ref; - }; + var listen = function listen(listener) { + var unlisten = transitionManager.appendListener(listener); + checkDOMListeners(1); - Connect.prototype.initSelector = function initSelector() { - var sourceSelector = selectorFactory(this.store.dispatch, selectorFactoryOptions); - this.selector = makeSelectorStateful(sourceSelector, this.store); - this.selector.run(this.props); - }; + return function () { + checkDOMListeners(-1); + unlisten(); + }; + }; - Connect.prototype.initSubscription = function initSubscription() { - if (!shouldHandleStateChanges) return; + var history = { + length: globalHistory.length, + action: 'POP', + location: initialLocation, + createHref: createHref, + push: push, + replace: replace, + go: go, + goBack: goBack, + goForward: goForward, + block: block, + listen: listen + }; - // parentSub's source should match where store came from: props vs. context. A component - // connected to the store via props shouldn't use subscription from context, or vice versa. - var parentSub = (this.propsMode ? this.props : this.context)[subscriptionKey]; - this.subscription = new __WEBPACK_IMPORTED_MODULE_3__utils_Subscription__["a" /* default */](this.store, parentSub, this.onStateChange.bind(this)); + return history; +}; - // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in - // the middle of the notification loop, where `this.subscription` will then be null. An - // extra null check every change can be avoided by copying the method onto `this` and then - // replacing it with a no-op on unmount. This can probably be avoided if Subscription's - // listeners logic is changed to not call listeners that have been unsubscribed in the - // middle of the notification loop. - this.notifyNestedSubs = this.subscription.notifyNestedSubs.bind(this.subscription); - }; +exports.default = createBrowserHistory; - Connect.prototype.onStateChange = function onStateChange() { - this.selector.run(this.props); +/***/ }), +/* 249 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { - if (!this.selector.shouldComponentUpdate) { - this.notifyNestedSubs(); - } else { - this.componentDidUpdate = this.notifyNestedSubsOnComponentDidUpdate; - this.setState(dummyState); - } - }; - - Connect.prototype.notifyNestedSubsOnComponentDidUpdate = function notifyNestedSubsOnComponentDidUpdate() { - // `componentDidUpdate` is conditionally implemented when `onStateChange` determines it - // needs to notify nested subs. Once called, it unimplements itself until further state - // changes occur. Doing it this way vs having a permanent `componentDidUpdate` that does - // a boolean check every time avoids an extra method call most of the time, resulting - // in some perf boost. - this.componentDidUpdate = undefined; - this.notifyNestedSubs(); - }; +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +function isAbsolute(pathname) { + return pathname.charAt(0) === '/'; +} - Connect.prototype.isSubscribed = function isSubscribed() { - return Boolean(this.subscription) && this.subscription.isSubscribed(); - }; +// About 1.5x faster than the two-arg version of Array#splice() +function spliceOne(list, index) { + for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) { + list[i] = list[k]; + } - Connect.prototype.addExtraProps = function addExtraProps(props) { - if (!withRef && !renderCountProp && !(this.propsMode && this.subscription)) return props; - // make a shallow copy so that fields added don't leak to the original selector. - // this is especially important for 'ref' since that's a reference back to the component - // instance. a singleton memoized selector would then be holding a reference to the - // instance, preventing the instance from being garbage collected, and that would be bad - var withExtras = _extends({}, props); - if (withRef) withExtras.ref = this.setWrappedInstance; - if (renderCountProp) withExtras[renderCountProp] = this.renderCount++; - if (this.propsMode && this.subscription) withExtras[subscriptionKey] = this.subscription; - return withExtras; - }; + list.pop(); +} - Connect.prototype.render = function render() { - var selector = this.selector; - selector.shouldComponentUpdate = false; +// This implementation is based heavily on node's url.parse +function resolvePathname(to) { + var from = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; - if (selector.error) { - throw selector.error; - } else { - return Object(__WEBPACK_IMPORTED_MODULE_2_react__["createElement"])(WrappedComponent, this.addExtraProps(selector.props)); - } - }; + var toParts = to && to.split('/') || []; + var fromParts = from && from.split('/') || []; - return Connect; - }(__WEBPACK_IMPORTED_MODULE_2_react__["Component"]); + var isToAbs = to && isAbsolute(to); + var isFromAbs = from && isAbsolute(from); + var mustEndAbs = isToAbs || isFromAbs; - Connect.WrappedComponent = WrappedComponent; - Connect.displayName = displayName; - Connect.childContextTypes = childContextTypes; - Connect.contextTypes = contextTypes; - Connect.propTypes = contextTypes; + if (to && isAbsolute(to)) { + // to is absolute + fromParts = toParts; + } else if (toParts.length) { + // to is relative, drop the filename + fromParts.pop(); + fromParts = fromParts.concat(toParts); + } - if (true) { - Connect.prototype.componentWillUpdate = function componentWillUpdate() { - var _this2 = this; + if (!fromParts.length) return '/'; - // We are hot reloading! - if (this.version !== version) { - this.version = version; - this.initSelector(); + var hasTrailingSlash = void 0; + if (fromParts.length) { + var last = fromParts[fromParts.length - 1]; + hasTrailingSlash = last === '.' || last === '..' || last === ''; + } else { + hasTrailingSlash = false; + } - // If any connected descendants don't hot reload (and resubscribe in the process), their - // listeners will be lost when we unsubscribe. Unfortunately, by copying over all - // listeners, this does mean that the old versions of connected descendants will still be - // notified of state changes; however, their onStateChange function is a no-op so this - // isn't a huge deal. - var oldListeners = []; + var up = 0; + for (var i = fromParts.length; i >= 0; i--) { + var part = fromParts[i]; - if (this.subscription) { - oldListeners = this.subscription.listeners.get(); - this.subscription.tryUnsubscribe(); - } - this.initSubscription(); - if (shouldHandleStateChanges) { - this.subscription.trySubscribe(); - oldListeners.forEach(function (listener) { - return _this2.subscription.listeners.subscribe(listener); - }); - } - } - }; + if (part === '.') { + spliceOne(fromParts, i); + } else if (part === '..') { + spliceOne(fromParts, i); + up++; + } else if (up) { + spliceOne(fromParts, i); + up--; } + } - return __WEBPACK_IMPORTED_MODULE_0_hoist_non_react_statics___default()(Connect, WrappedComponent); - }; + if (!mustEndAbs) for (; up--; up) { + fromParts.unshift('..'); + }if (mustEndAbs && fromParts[0] !== '' && (!fromParts[0] || !isAbsolute(fromParts[0]))) fromParts.unshift(''); + + var result = fromParts.join('/'); + + if (hasTrailingSlash && result.substr(-1) !== '/') result += '/'; + + return result; } +/* harmony default export */ __webpack_exports__["default"] = (resolvePathname); + /***/ }), -/* 263 */ -/***/ (function(module, exports, __webpack_require__) { +/* 250 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/** - * Copyright 2015, Yahoo! Inc. - * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms. - */ +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; +function valueEqual(a, b) { + if (a === b) return true; -var REACT_STATICS = { - childContextTypes: true, - contextTypes: true, - defaultProps: true, - displayName: true, - getDefaultProps: true, - mixins: true, - propTypes: true, - type: true -}; + if (a == null || b == null) return false; -var KNOWN_STATICS = { - name: true, - length: true, - prototype: true, - caller: true, - callee: true, - arguments: true, - arity: true -}; + if (Array.isArray(a)) { + return Array.isArray(b) && a.length === b.length && a.every(function (item, index) { + return valueEqual(item, b[index]); + }); + } -var defineProperty = Object.defineProperty; -var getOwnPropertyNames = Object.getOwnPropertyNames; -var getOwnPropertySymbols = Object.getOwnPropertySymbols; -var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; -var getPrototypeOf = Object.getPrototypeOf; -var objectPrototype = getPrototypeOf && getPrototypeOf(Object); + var aType = typeof a === 'undefined' ? 'undefined' : _typeof(a); + var bType = typeof b === 'undefined' ? 'undefined' : _typeof(b); -module.exports = function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) { - if (typeof sourceComponent !== 'string') { // don't hoist over string (html) components + if (aType !== bType) return false; - if (objectPrototype) { - var inheritedComponent = getPrototypeOf(sourceComponent); - if (inheritedComponent && inheritedComponent !== objectPrototype) { - hoistNonReactStatics(targetComponent, inheritedComponent, blacklist); - } - } + if (aType === 'object') { + var aValue = a.valueOf(); + var bValue = b.valueOf(); - var keys = getOwnPropertyNames(sourceComponent); + if (aValue !== a || bValue !== b) return valueEqual(aValue, bValue); - if (getOwnPropertySymbols) { - keys = keys.concat(getOwnPropertySymbols(sourceComponent)); - } + var aKeys = Object.keys(a); + var bKeys = Object.keys(b); - for (var i = 0; i < keys.length; ++i) { - var key = keys[i]; - if (!REACT_STATICS[key] && !KNOWN_STATICS[key] && (!blacklist || !blacklist[key])) { - var descriptor = getOwnPropertyDescriptor(sourceComponent, key); - try { // Avoid failures from read-only properties - defineProperty(targetComponent, key, descriptor); - } catch (e) {} - } - } + if (aKeys.length !== bKeys.length) return false; - return targetComponent; - } + return aKeys.every(function (key) { + return valueEqual(a[key], b[key]); + }); + } - return targetComponent; -}; + return false; +} +/* harmony default export */ __webpack_exports__["default"] = (valueEqual); /***/ }), -/* 264 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* 251 */ +/***/ (function(module, exports, __webpack_require__) { "use strict"; -Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__createStore__ = __webpack_require__(265); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__combineReducers__ = __webpack_require__(603); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__bindActionCreators__ = __webpack_require__(604); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__applyMiddleware__ = __webpack_require__(605); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__compose__ = __webpack_require__(269); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__utils_warning__ = __webpack_require__(268); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "createStore", function() { return __WEBPACK_IMPORTED_MODULE_0__createStore__["b"]; }); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "combineReducers", function() { return __WEBPACK_IMPORTED_MODULE_1__combineReducers__["a"]; }); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "bindActionCreators", function() { return __WEBPACK_IMPORTED_MODULE_2__bindActionCreators__["a"]; }); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "applyMiddleware", function() { return __WEBPACK_IMPORTED_MODULE_3__applyMiddleware__["a"]; }); -/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "compose", function() { return __WEBPACK_IMPORTED_MODULE_4__compose__["a"]; }); +exports.__esModule = true; +var canUseDOM = exports.canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement); + +var addEventListener = exports.addEventListener = function addEventListener(node, event, listener) { + return node.addEventListener ? node.addEventListener(event, listener, false) : node.attachEvent('on' + event, listener); +}; +var removeEventListener = exports.removeEventListener = function removeEventListener(node, event, listener) { + return node.removeEventListener ? node.removeEventListener(event, listener, false) : node.detachEvent('on' + event, listener); +}; +var getConfirmation = exports.getConfirmation = function getConfirmation(message, callback) { + return callback(window.confirm(message)); +}; // eslint-disable-line no-alert +/** + * Returns true if the HTML5 history API is supported. Taken from Modernizr. + * + * https://github.com/Modernizr/Modernizr/blob/master/LICENSE + * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js + * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586 + */ +var supportsHistory = exports.supportsHistory = function supportsHistory() { + var ua = window.navigator.userAgent; + if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) return false; -/* -* This is a dummy function to check if the function name has been altered by minification. -* If the function has been minified and NODE_ENV !== 'production', warn the user. -*/ -function isCrushed() {} + return window.history && 'pushState' in window.history; +}; -if ("development" !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') { - Object(__WEBPACK_IMPORTED_MODULE_5__utils_warning__["a" /* default */])('You are currently using minified code outside of NODE_ENV === \'production\'. ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or DefinePlugin for webpack (http://stackoverflow.com/questions/30030031) ' + 'to ensure you have the correct code for your production build.'); -} +/** + * Returns true if browser fires popstate on hash change. + * IE10 and IE11 do not. + */ +var supportsPopStateOnHashChange = exports.supportsPopStateOnHashChange = function supportsPopStateOnHashChange() { + return window.navigator.userAgent.indexOf('Trident') === -1; +}; +/** + * Returns false if using go(n) with hash history causes a full page reload. + */ +var supportsGoWithoutReloadUsingHash = exports.supportsGoWithoutReloadUsingHash = function supportsGoWithoutReloadUsingHash() { + return window.navigator.userAgent.indexOf('Firefox') === -1; +}; +/** + * Returns true if a given popstate event is an extraneous WebKit event. + * Accounts for the fact that Chrome on iOS fires real popstate events + * containing undefined state when pressing the back button. + */ +var isExtraneousPopstateEvent = exports.isExtraneousPopstateEvent = function isExtraneousPopstateEvent(event) { + return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1; +}; /***/ }), -/* 265 */ +/* 252 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ActionTypes; }); -/* harmony export (immutable) */ __webpack_exports__["b"] = createStore; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__ = __webpack_require__(185); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_symbol_observable__ = __webpack_require__(600); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_symbol_observable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_symbol_observable__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_invariant__ = __webpack_require__(23); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_invariant__); +var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; +function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -/** - * These are private action types reserved by Redux. - * For any unknown actions, you must return the current state. - * If the current state is undefined, you must return the initial state. - * Do not reference these action types directly in your code. - */ -var ActionTypes = { - INIT: '@@redux/INIT' +function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - /** - * Creates a Redux store that holds the state tree. - * The only way to change the data in the store is to call `dispatch()` on it. - * - * There should only be a single store in your app. To specify how different - * parts of the state tree respond to actions, you may combine several reducers - * into a single reducer function by using `combineReducers`. - * - * @param {Function} reducer A function that returns the next state tree, given - * the current state tree and the action to handle. - * - * @param {any} [preloadedState] The initial state. You may optionally specify it - * to hydrate the state from the server in universal apps, or to restore a - * previously serialized user session. - * If you use `combineReducers` to produce the root reducer function, this must be - * an object with the same shape as `combineReducers` keys. - * - * @param {Function} [enhancer] The store enhancer. You may optionally specify it - * to enhance the store with third-party capabilities such as middleware, - * time travel, persistence, etc. The only store enhancer that ships with Redux - * is `applyMiddleware()`. - * - * @returns {Store} A Redux store that lets you read the state, dispatch actions - * and subscribe to changes. - */ -};function createStore(reducer, preloadedState, enhancer) { - var _ref2; +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') { - enhancer = preloadedState; - preloadedState = undefined; - } - if (typeof enhancer !== 'undefined') { - if (typeof enhancer !== 'function') { - throw new Error('Expected the enhancer to be a function.'); - } - return enhancer(createStore)(reducer, preloadedState); - } - if (typeof reducer !== 'function') { - throw new Error('Expected the reducer to be a function.'); - } - var currentReducer = reducer; - var currentState = preloadedState; - var currentListeners = []; - var nextListeners = currentListeners; - var isDispatching = false; +var isModifiedEvent = function isModifiedEvent(event) { + return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey); +}; - function ensureCanMutateNextListeners() { - if (nextListeners === currentListeners) { - nextListeners = currentListeners.slice(); - } - } +/** + * The public API for rendering a history-aware . + */ - /** - * Reads the state tree managed by the store. - * - * @returns {any} The current state tree of your application. - */ - function getState() { - return currentState; - } +var Link = function (_React$Component) { + _inherits(Link, _React$Component); - /** - * Adds a change listener. It will be called any time an action is dispatched, - * and some part of the state tree may potentially have changed. You may then - * call `getState()` to read the current state tree inside the callback. - * - * You may call `dispatch()` from a change listener, with the following - * caveats: - * - * 1. The subscriptions are snapshotted just before every `dispatch()` call. - * If you subscribe or unsubscribe while the listeners are being invoked, this - * will not have any effect on the `dispatch()` that is currently in progress. - * However, the next `dispatch()` call, whether nested or not, will use a more - * recent snapshot of the subscription list. - * - * 2. The listener should not expect to see all state changes, as the state - * might have been updated multiple times during a nested `dispatch()` before - * the listener is called. It is, however, guaranteed that all subscribers - * registered before the `dispatch()` started will be called with the latest - * state by the time it exits. - * - * @param {Function} listener A callback to be invoked on every dispatch. - * @returns {Function} A function to remove this change listener. - */ - function subscribe(listener) { - if (typeof listener !== 'function') { - throw new Error('Expected listener to be a function.'); + function Link() { + var _temp, _this, _ret; + + _classCallCheck(this, Link); + + for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; } - var isSubscribed = true; + return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.handleClick = function (event) { + if (_this.props.onClick) _this.props.onClick(event); - ensureCanMutateNextListeners(); - nextListeners.push(listener); + if (!event.defaultPrevented && // onClick prevented default + event.button === 0 && // ignore right clicks + !_this.props.target && // let browser handle "target=_blank" etc. + !isModifiedEvent(event) // ignore clicks with modifier keys + ) { + event.preventDefault(); - return function unsubscribe() { - if (!isSubscribed) { - return; - } + var history = _this.context.router.history; + var _this$props = _this.props, + replace = _this$props.replace, + to = _this$props.to; - isSubscribed = false; - ensureCanMutateNextListeners(); - var index = nextListeners.indexOf(listener); - nextListeners.splice(index, 1); - }; + if (replace) { + history.replace(to); + } else { + history.push(to); + } + } + }, _temp), _possibleConstructorReturn(_this, _ret); } - /** - * Dispatches an action. It is the only way to trigger a state change. - * - * The `reducer` function, used to create the store, will be called with the - * current state tree and the given `action`. Its return value will - * be considered the **next** state of the tree, and the change listeners - * will be notified. - * - * The base implementation only supports plain object actions. If you want to - * dispatch a Promise, an Observable, a thunk, or something else, you need to - * wrap your store creating function into the corresponding middleware. For - * example, see the documentation for the `redux-thunk` package. Even the - * middleware will eventually dispatch plain object actions using this method. - * - * @param {Object} action A plain object representing “what changed”. It is - * a good idea to keep actions serializable so you can record and replay user - * sessions, or use the time travelling `redux-devtools`. An action must have - * a `type` property which may not be `undefined`. It is a good idea to use - * string constants for action types. - * - * @returns {Object} For convenience, the same action object you dispatched. - * - * Note that, if you use a custom middleware, it may wrap `dispatch()` to - * return something else (for example, a Promise you can await). - */ - function dispatch(action) { - if (!Object(__WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__["a" /* default */])(action)) { - throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.'); - } + Link.prototype.render = function render() { + var _props = this.props, + replace = _props.replace, + to = _props.to, + innerRef = _props.innerRef, + props = _objectWithoutProperties(_props, ['replace', 'to', 'innerRef']); // eslint-disable-line no-unused-vars - if (typeof action.type === 'undefined') { - throw new Error('Actions may not have an undefined "type" property. ' + 'Have you misspelled a constant?'); - } + __WEBPACK_IMPORTED_MODULE_2_invariant___default()(this.context.router, 'You should not use outside a '); - if (isDispatching) { - throw new Error('Reducers may not dispatch actions.'); - } + var href = this.context.router.history.createHref(typeof to === 'string' ? { pathname: to } : to); - try { - isDispatching = true; - currentState = currentReducer(currentState, action); - } finally { - isDispatching = false; - } + return __WEBPACK_IMPORTED_MODULE_0_react___default.a.createElement('a', _extends({}, props, { onClick: this.handleClick, href: href, ref: innerRef })); + }; - var listeners = currentListeners = nextListeners; - for (var i = 0; i < listeners.length; i++) { - var listener = listeners[i]; - listener(); - } + return Link; +}(__WEBPACK_IMPORTED_MODULE_0_react___default.a.Component); - return action; - } +Link.propTypes = { + onClick: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func, + target: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.string, + replace: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.bool, + to: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.object]).isRequired, + innerRef: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func]) +}; +Link.defaultProps = { + replace: false +}; +Link.contextTypes = { + router: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.shape({ + history: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.shape({ + push: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func.isRequired, + replace: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func.isRequired, + createHref: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func.isRequired + }).isRequired + }).isRequired +}; - /** - * Replaces the reducer currently used by the store to calculate the state. - * - * You might need this if your app implements code splitting and you want to - * load some of the reducers dynamically. You might also need this if you - * implement a hot reloading mechanism for Redux. - * - * @param {Function} nextReducer The reducer for the store to use instead. - * @returns {void} - */ - function replaceReducer(nextReducer) { - if (typeof nextReducer !== 'function') { - throw new Error('Expected the nextReducer to be a function.'); - } - - currentReducer = nextReducer; - dispatch({ type: ActionTypes.INIT }); - } - - /** - * Interoperability point for observable/reactive libraries. - * @returns {observable} A minimal observable of state changes. - * For more information, see the observable proposal: - * https://github.com/tc39/proposal-observable - */ - function observable() { - var _ref; - var outerSubscribe = subscribe; - return _ref = { - /** - * The minimal observable subscription method. - * @param {Object} observer Any object that can be used as an observer. - * The observer object should have a `next` method. - * @returns {subscription} An object with an `unsubscribe` method that can - * be used to unsubscribe the observable from the store, and prevent further - * emission of values from the observable. - */ - subscribe: function subscribe(observer) { - if (typeof observer !== 'object') { - throw new TypeError('Expected the observer to be an object.'); - } +/* harmony default export */ __webpack_exports__["a"] = (Link); - function observeState() { - if (observer.next) { - observer.next(getState()); - } - } +/***/ }), +/* 253 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { - observeState(); - var unsubscribe = outerSubscribe(observeState); - return { unsubscribe: unsubscribe }; - } - }, _ref[__WEBPACK_IMPORTED_MODULE_1_symbol_observable___default.a] = function () { - return this; - }, _ref; - } +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router_es_Route__ = __webpack_require__(254); +// Written in this round about way for babel-transform-imports - // When a store is created, an "INIT" action is dispatched so that every - // reducer returns their initial state. This effectively populates - // the initial state tree. - dispatch({ type: ActionTypes.INIT }); - return _ref2 = { - dispatch: dispatch, - subscribe: subscribe, - getState: getState, - replaceReducer: replaceReducer - }, _ref2[__WEBPACK_IMPORTED_MODULE_1_symbol_observable___default.a] = observable, _ref2; -} +/* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_0_react_router_es_Route__["a" /* default */]); /***/ }), -/* 266 */ +/* 254 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__root_js__ = __webpack_require__(593); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(14); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_warning__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(23); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_invariant__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__matchPath__ = __webpack_require__(170); +var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -/** Built-in value references. */ -var Symbol = __WEBPACK_IMPORTED_MODULE_0__root_js__["a" /* default */].Symbol; +function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } -/* harmony default export */ __webpack_exports__["a"] = (Symbol); +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } -/***/ }), -/* 267 */ -/***/ (function(module, exports) { -module.exports = function(module) { - if(!module.webpackPolyfill) { - module.deprecate = function() {}; - module.paths = []; - // module.parent = undefined by default - if(!module.children) module.children = []; - Object.defineProperty(module, "loaded", { - enumerable: true, - get: function() { - return module.l; - } - }); - Object.defineProperty(module, "id", { - enumerable: true, - get: function() { - return module.i; - } - }); - module.webpackPolyfill = 1; - } - return module; -}; -/***/ }), -/* 268 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { -"use strict"; -/* harmony export (immutable) */ __webpack_exports__["a"] = warning; -/** - * Prints a warning in the console if it exists. - * - * @param {String} message The warning message. - * @returns {void} - */ -function warning(message) { - /* eslint-disable no-console */ - if (typeof console !== 'undefined' && typeof console.error === 'function') { - console.error(message); - } - /* eslint-enable no-console */ - try { - // This error was thrown as a convenience so that if you enable - // "break on all exceptions" in your console, - // it would pause the execution at this line. - throw new Error(message); - /* eslint-disable no-empty */ - } catch (e) {} - /* eslint-enable no-empty */ -} -/***/ }), -/* 269 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +var isEmptyChildren = function isEmptyChildren(children) { + return __WEBPACK_IMPORTED_MODULE_2_react___default.a.Children.count(children) === 0; +}; -"use strict"; -/* harmony export (immutable) */ __webpack_exports__["a"] = compose; /** - * Composes single-argument functions from right to left. The rightmost - * function can take multiple arguments as it provides the signature for - * the resulting composite function. - * - * @param {...Function} funcs The functions to compose. - * @returns {Function} A function obtained by composing the argument functions - * from right to left. For example, compose(f, g, h) is identical to doing - * (...args) => f(g(h(...args))). + * The public API for matching a single path and rendering. */ -function compose() { - for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) { - funcs[_key] = arguments[_key]; - } +var Route = function (_React$Component) { + _inherits(Route, _React$Component); - if (funcs.length === 0) { - return function (arg) { - return arg; - }; - } + function Route() { + var _temp, _this, _ret; - if (funcs.length === 1) { - return funcs[0]; + _classCallCheck(this, Route); + + for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = { + match: _this.computeMatch(_this.props, _this.context.router) + }, _temp), _possibleConstructorReturn(_this, _ret); } - return funcs.reduce(function (a, b) { - return function () { - return a(b.apply(undefined, arguments)); + Route.prototype.getChildContext = function getChildContext() { + return { + router: _extends({}, this.context.router, { + route: { + location: this.props.location || this.context.router.route.location, + match: this.state.match + } + }) }; - }); -} + }; -/***/ }), -/* 270 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { + Route.prototype.computeMatch = function computeMatch(_ref, router) { + var computedMatch = _ref.computedMatch, + location = _ref.location, + path = _ref.path, + strict = _ref.strict, + exact = _ref.exact, + sensitive = _ref.sensitive; -"use strict"; -/* harmony export (immutable) */ __webpack_exports__["a"] = wrapMapToPropsConstant; -/* unused harmony export getDependsOnOwnProps */ -/* harmony export (immutable) */ __webpack_exports__["b"] = wrapMapToPropsFunc; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__ = __webpack_require__(271); + if (computedMatch) return computedMatch; // already computed the match for us + __WEBPACK_IMPORTED_MODULE_1_invariant___default()(router, 'You should not use or withRouter() outside a '); -function wrapMapToPropsConstant(getConstant) { - return function initConstantSelector(dispatch, options) { - var constant = getConstant(dispatch, options); + var route = router.route; - function constantSelector() { - return constant; - } - constantSelector.dependsOnOwnProps = false; - return constantSelector; + var pathname = (location || route.location).pathname; + + return path ? Object(__WEBPACK_IMPORTED_MODULE_4__matchPath__["a" /* default */])(pathname, { path: path, strict: strict, exact: exact, sensitive: sensitive }) : route.match; }; -} -// dependsOnOwnProps is used by createMapToPropsProxy to determine whether to pass props as args -// to the mapToProps function being wrapped. It is also used by makePurePropsSelector to determine -// whether mapToProps needs to be invoked when props have changed. -// -// A length of one signals that mapToProps does not depend on props from the parent component. -// A length of zero is assumed to mean mapToProps is getting args via arguments or ...args and -// therefore not reporting its length accurately.. -function getDependsOnOwnProps(mapToProps) { - return mapToProps.dependsOnOwnProps !== null && mapToProps.dependsOnOwnProps !== undefined ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1; -} + Route.prototype.componentWillMount = function componentWillMount() { + __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(this.props.component && this.props.render), 'You should not use and in the same route; will be ignored'); -// Used by whenMapStateToPropsIsFunction and whenMapDispatchToPropsIsFunction, -// this function wraps mapToProps in a proxy function which does several things: -// -// * Detects whether the mapToProps function being called depends on props, which -// is used by selectorFactory to decide if it should reinvoke on props changes. -// -// * On first call, handles mapToProps if returns another function, and treats that -// new function as the true mapToProps for subsequent calls. -// -// * On first call, verifies the first result is a plain object, in order to warn -// the developer that their mapToProps function is not returning a valid result. -// -function wrapMapToPropsFunc(mapToProps, methodName) { - return function initProxySelector(dispatch, _ref) { - var displayName = _ref.displayName; + __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(this.props.component && this.props.children && !isEmptyChildren(this.props.children)), 'You should not use and in the same route; will be ignored'); - var proxy = function mapToPropsProxy(stateOrDispatch, ownProps) { - return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch); - }; + __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(this.props.render && this.props.children && !isEmptyChildren(this.props.children)), 'You should not use and in the same route; will be ignored'); + }; - // allow detectFactoryAndVerify to get ownProps - proxy.dependsOnOwnProps = true; + Route.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps, nextContext) { + __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(nextProps.location && !this.props.location), ' elements should not change from uncontrolled to controlled (or vice versa). You initially used no "location" prop and then provided one on a subsequent render.'); - proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) { - proxy.mapToProps = mapToProps; - proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps); - var props = proxy(stateOrDispatch, ownProps); + __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(!nextProps.location && this.props.location), ' elements should not change from controlled to uncontrolled (or vice versa). You provided a "location" prop initially but omitted it on a subsequent render.'); - if (typeof props === 'function') { - proxy.mapToProps = props; - proxy.dependsOnOwnProps = getDependsOnOwnProps(props); - props = proxy(stateOrDispatch, ownProps); - } + this.setState({ + match: this.computeMatch(nextProps, nextContext.router) + }); + }; - if (true) Object(__WEBPACK_IMPORTED_MODULE_0__utils_verifyPlainObject__["a" /* default */])(props, displayName, methodName); + Route.prototype.render = function render() { + var match = this.state.match; + var _props = this.props, + children = _props.children, + component = _props.component, + render = _props.render; + var _context$router = this.context.router, + history = _context$router.history, + route = _context$router.route, + staticContext = _context$router.staticContext; - return props; - }; + var location = this.props.location || route.location; + var props = { match: match, location: location, history: history, staticContext: staticContext }; - return proxy; + return component ? // component prop gets first priority, only called if there's a match + match ? __WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement(component, props) : null : render ? // render prop is next, only called if there's a match + match ? render(props) : null : children ? // children come last, always called + typeof children === 'function' ? children(props) : !isEmptyChildren(children) ? __WEBPACK_IMPORTED_MODULE_2_react___default.a.Children.only(children) : null : null; }; -} - -/***/ }), -/* 271 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { -"use strict"; -/* harmony export (immutable) */ __webpack_exports__["a"] = verifyPlainObject; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__ = __webpack_require__(185); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__warning__ = __webpack_require__(184); + return Route; +}(__WEBPACK_IMPORTED_MODULE_2_react___default.a.Component); +Route.propTypes = { + computedMatch: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object, // private, from + path: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.string, + exact: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.bool, + strict: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.bool, + sensitive: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.bool, + component: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.func, + render: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.func, + children: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.func, __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.node]), + location: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object +}; +Route.contextTypes = { + router: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.shape({ + history: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object.isRequired, + route: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object.isRequired, + staticContext: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object + }) +}; +Route.childContextTypes = { + router: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object.isRequired +}; -function verifyPlainObject(value, displayName, methodName) { - if (!Object(__WEBPACK_IMPORTED_MODULE_0_lodash_es_isPlainObject__["a" /* default */])(value)) { - Object(__WEBPACK_IMPORTED_MODULE_1__warning__["a" /* default */])(methodName + '() in ' + displayName + ' must return a plain object. Instead received ' + value + '.'); - } -} +/* harmony default export */ __webpack_exports__["a"] = (Route); /***/ }), -/* 272 */ -/***/ (function(module, exports, __webpack_require__) { +/* 255 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return canUseDOM; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addEventListener; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return removeEventListener; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return getConfirmation; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return supportsHistory; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return supportsPopStateOnHashChange; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return supportsGoWithoutReloadUsingHash; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return isExtraneousPopstateEvent; }); +var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement); +var addEventListener = function addEventListener(node, event, listener) { + return node.addEventListener ? node.addEventListener(event, listener, false) : node.attachEvent('on' + event, listener); +}; -exports.__esModule = true; +var removeEventListener = function removeEventListener(node, event, listener) { + return node.removeEventListener ? node.removeEventListener(event, listener, false) : node.detachEvent('on' + event, listener); +}; -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; +var getConfirmation = function getConfirmation(message, callback) { + return callback(window.confirm(message)); +}; // eslint-disable-line no-alert -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; +/** + * Returns true if the HTML5 history API is supported. Taken from Modernizr. + * + * https://github.com/Modernizr/Modernizr/blob/master/LICENSE + * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js + * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586 + */ +var supportsHistory = function supportsHistory() { + var ua = window.navigator.userAgent; -var _warning = __webpack_require__(12); + if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) return false; -var _warning2 = _interopRequireDefault(_warning); + return window.history && 'pushState' in window.history; +}; -var _invariant = __webpack_require__(24); +/** + * Returns true if browser fires popstate on hash change. + * IE10 and IE11 do not. + */ +var supportsPopStateOnHashChange = function supportsPopStateOnHashChange() { + return window.navigator.userAgent.indexOf('Trident') === -1; +}; -var _invariant2 = _interopRequireDefault(_invariant); +/** + * Returns false if using go(n) with hash history causes a full page reload. + */ +var supportsGoWithoutReloadUsingHash = function supportsGoWithoutReloadUsingHash() { + return window.navigator.userAgent.indexOf('Firefox') === -1; +}; -var _LocationUtils = __webpack_require__(186); +/** + * Returns true if a given popstate event is an extraneous WebKit event. + * Accounts for the fact that Chrome on iOS fires real popstate events + * containing undefined state when pressing the back button. + */ +var isExtraneousPopstateEvent = function isExtraneousPopstateEvent(event) { + return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1; +}; -var _PathUtils = __webpack_require__(108); +/***/ }), +/* 256 */ +/***/ (function(module, exports, __webpack_require__) { -var _createTransitionManager = __webpack_require__(187); +"use strict"; -var _createTransitionManager2 = _interopRequireDefault(_createTransitionManager); -var _DOMUtils = __webpack_require__(275); +Object.defineProperty(exports, "__esModule", { + value: true +}); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; -var PopStateEvent = 'popstate'; -var HashChangeEvent = 'hashchange'; +exports.routerReducer = routerReducer; +/** + * This action type will be dispatched when your history + * receives a location change. + */ +var LOCATION_CHANGE = exports.LOCATION_CHANGE = '@@router/LOCATION_CHANGE'; -var getHistoryState = function getHistoryState() { - try { - return window.history.state || {}; - } catch (e) { - // IE 11 sometimes throws when accessing window.history.state - // See https://github.com/ReactTraining/history/pull/289 - return {}; - } +var initialState = { + locationBeforeTransitions: null }; /** - * Creates a history object that uses the HTML5 history API including - * pushState, replaceState, and the popstate event. + * This reducer will update the state with the most recent location history + * has transitioned to. This may not be in sync with the router, particularly + * if you have asynchronously-loaded routes, so reading from and relying on + * this state is discouraged. */ -var createBrowserHistory = function createBrowserHistory() { - var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - - (0, _invariant2.default)(_DOMUtils.canUseDOM, 'Browser history needs a DOM'); - - var globalHistory = window.history; - var canUseHistory = (0, _DOMUtils.supportsHistory)(); - var needsHashChangeListener = !(0, _DOMUtils.supportsPopStateOnHashChange)(); +function routerReducer() { + var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState; - var _props$forceRefresh = props.forceRefresh, - forceRefresh = _props$forceRefresh === undefined ? false : _props$forceRefresh, - _props$getUserConfirm = props.getUserConfirmation, - getUserConfirmation = _props$getUserConfirm === undefined ? _DOMUtils.getConfirmation : _props$getUserConfirm, - _props$keyLength = props.keyLength, - keyLength = _props$keyLength === undefined ? 6 : _props$keyLength; + var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, + type = _ref.type, + payload = _ref.payload; - var basename = props.basename ? (0, _PathUtils.stripTrailingSlash)((0, _PathUtils.addLeadingSlash)(props.basename)) : ''; + if (type === LOCATION_CHANGE) { + return _extends({}, state, { locationBeforeTransitions: payload }); + } - var getDOMLocation = function getDOMLocation(historyState) { - var _ref = historyState || {}, - key = _ref.key, - state = _ref.state; + return state; +} - var _window$location = window.location, - pathname = _window$location.pathname, - search = _window$location.search, - hash = _window$location.hash; +/***/ }), +/* 257 */ +/***/ (function(module, exports, __webpack_require__) { +"use strict"; - var path = pathname + search + hash; - (0, _warning2.default)(!basename || (0, _PathUtils.hasBasename)(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".'); +Object.defineProperty(exports, "__esModule", { + value: true +}); +/** + * This action type will be dispatched by the history actions below. + * If you're writing a middleware to watch for navigation events, be sure to + * look for actions of this type. + */ +var CALL_HISTORY_METHOD = exports.CALL_HISTORY_METHOD = '@@router/CALL_HISTORY_METHOD'; - if (basename) path = (0, _PathUtils.stripBasename)(path, basename); +function updateLocation(method) { + return function () { + for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } - return (0, _LocationUtils.createLocation)(path, state, key); + return { + type: CALL_HISTORY_METHOD, + payload: { method: method, args: args } + }; }; +} - var createKey = function createKey() { - return Math.random().toString(36).substr(2, keyLength); - }; +/** + * These actions correspond to the history API. + * The associated routerMiddleware will capture these events before they get to + * your reducer and reissue them as the matching function on your history. + */ +var push = exports.push = updateLocation('push'); +var replace = exports.replace = updateLocation('replace'); +var go = exports.go = updateLocation('go'); +var goBack = exports.goBack = updateLocation('goBack'); +var goForward = exports.goForward = updateLocation('goForward'); - var transitionManager = (0, _createTransitionManager2.default)(); +var routerActions = exports.routerActions = { push: push, replace: replace, go: go, goBack: goBack, goForward: goForward }; - var setState = function setState(nextState) { - _extends(history, nextState); +/***/ }), +/* 258 */ +/***/ (function(module, exports, __webpack_require__) { - history.length = globalHistory.length; +module.exports = { "default": __webpack_require__(590), __esModule: true }; - transitionManager.notifyListeners(history.location, history.action); - }; +/***/ }), +/* 259 */ +/***/ (function(module, exports, __webpack_require__) { - var handlePopState = function handlePopState(event) { - // Ignore extraneous popstate events in WebKit. - if ((0, _DOMUtils.isExtraneousPopstateEvent)(event)) return; +module.exports = !__webpack_require__(74) && !__webpack_require__(86)(function () { + return Object.defineProperty(__webpack_require__(260)('div'), 'a', { get: function () { return 7; } }).a != 7; +}); - handlePop(getDOMLocation(event.state)); - }; - var handleHashChange = function handleHashChange() { - handlePop(getDOMLocation(getHistoryState())); - }; - - var forceNextPop = false; - - var handlePop = function handlePop(location) { - if (forceNextPop) { - forceNextPop = false; - setState(); - } else { - var action = 'POP'; - - transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { - if (ok) { - setState({ action: action, location: location }); - } else { - revertPop(location); - } - }); - } - }; - - var revertPop = function revertPop(fromLocation) { - var toLocation = history.location; +/***/ }), +/* 260 */ +/***/ (function(module, exports, __webpack_require__) { - // TODO: We could probably make this more reliable by - // keeping a list of keys we've seen in sessionStorage. - // Instead, we just default to 0 for keys we don't know. +var isObject = __webpack_require__(85); +var document = __webpack_require__(58).document; +// typeof document.createElement is 'object' in old IE +var is = isObject(document) && isObject(document.createElement); +module.exports = function (it) { + return is ? document.createElement(it) : {}; +}; - var toIndex = allKeys.indexOf(toLocation.key); - if (toIndex === -1) toIndex = 0; +/***/ }), +/* 261 */ +/***/ (function(module, exports, __webpack_require__) { - var fromIndex = allKeys.indexOf(fromLocation.key); +var has = __webpack_require__(75); +var toIObject = __webpack_require__(76); +var arrayIndexOf = __webpack_require__(594)(false); +var IE_PROTO = __webpack_require__(177)('IE_PROTO'); - if (fromIndex === -1) fromIndex = 0; +module.exports = function (object, names) { + var O = toIObject(object); + var i = 0; + var result = []; + var key; + for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); + // Don't enum bug & hidden keys + while (names.length > i) if (has(O, key = names[i++])) { + ~arrayIndexOf(result, key) || result.push(key); + } + return result; +}; - var delta = toIndex - fromIndex; - if (delta) { - forceNextPop = true; - go(delta); - } - }; +/***/ }), +/* 262 */ +/***/ (function(module, exports, __webpack_require__) { - var initialLocation = getDOMLocation(getHistoryState()); - var allKeys = [initialLocation.key]; +// fallback for non-array-like ES3 and non-enumerable old V8 strings +var cof = __webpack_require__(174); +// eslint-disable-next-line no-prototype-builtins +module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { + return cof(it) == 'String' ? it.split('') : Object(it); +}; - // Public interface - var createHref = function createHref(location) { - return basename + (0, _PathUtils.createPath)(location); - }; +/***/ }), +/* 263 */ +/***/ (function(module, exports, __webpack_require__) { - var push = function push(path, state) { - (0, _warning2.default)(!((typeof path === 'undefined' ? 'undefined' : _typeof(path)) === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to push when the 1st ' + 'argument is a location-like object that already has state; it is ignored'); +// 7.1.15 ToLength +var toInteger = __webpack_require__(176); +var min = Math.min; +module.exports = function (it) { + return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 +}; - var action = 'PUSH'; - var location = (0, _LocationUtils.createLocation)(path, state, createKey(), history.location); - transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { - if (!ok) return; +/***/ }), +/* 264 */ +/***/ (function(module, exports, __webpack_require__) { - var href = createHref(location); - var key = location.key, - state = location.state; +module.exports = { "default": __webpack_require__(599), __esModule: true }; +/***/ }), +/* 265 */ +/***/ (function(module, exports, __webpack_require__) { - if (canUseHistory) { - globalHistory.pushState({ key: key, state: state }, null, href); +module.exports = __webpack_require__(614); - if (forceRefresh) { - window.location.href = href; - } else { - var prevIndex = allKeys.indexOf(history.location.key); - var nextKeys = allKeys.slice(0, prevIndex === -1 ? 0 : prevIndex + 1); +/***/ }), +/* 266 */ +/***/ (function(module, exports, __webpack_require__) { - nextKeys.push(location.key); - allKeys = nextKeys; +"use strict"; - setState({ action: action, location: location }); - } - } else { - (0, _warning2.default)(state === undefined, 'Browser history cannot push state in browsers that do not support HTML5 history'); - window.location.href = href; - } - }); +module.exports = function bind(fn, thisArg) { + return function wrap() { + var args = new Array(arguments.length); + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i]; + } + return fn.apply(thisArg, args); }; +}; - var replace = function replace(path, state) { - (0, _warning2.default)(!((typeof path === 'undefined' ? 'undefined' : _typeof(path)) === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to replace when the 1st ' + 'argument is a location-like object that already has state; it is ignored'); - - var action = 'REPLACE'; - var location = (0, _LocationUtils.createLocation)(path, state, createKey(), history.location); - - transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { - if (!ok) return; - - var href = createHref(location); - var key = location.key, - state = location.state; - - - if (canUseHistory) { - globalHistory.replaceState({ key: key, state: state }, null, href); - - if (forceRefresh) { - window.location.replace(href); - } else { - var prevIndex = allKeys.indexOf(history.location.key); - - if (prevIndex !== -1) allKeys[prevIndex] = location.key; - - setState({ action: action, location: location }); - } - } else { - (0, _warning2.default)(state === undefined, 'Browser history cannot replace state in browsers that do not support HTML5 history'); - - window.location.replace(href); - } - }); - }; - var go = function go(n) { - globalHistory.go(n); - }; +/***/ }), +/* 267 */ +/***/ (function(module, exports, __webpack_require__) { - var goBack = function goBack() { - return go(-1); - }; +"use strict"; - var goForward = function goForward() { - return go(1); - }; - var listenerCount = 0; +var utils = __webpack_require__(39); +var settle = __webpack_require__(617); +var buildURL = __webpack_require__(619); +var parseHeaders = __webpack_require__(620); +var isURLSameOrigin = __webpack_require__(621); +var createError = __webpack_require__(268); +var btoa = (typeof window !== 'undefined' && window.btoa && window.btoa.bind(window)) || __webpack_require__(622); - var checkDOMListeners = function checkDOMListeners(delta) { - listenerCount += delta; +module.exports = function xhrAdapter(config) { + return new Promise(function dispatchXhrRequest(resolve, reject) { + var requestData = config.data; + var requestHeaders = config.headers; - if (listenerCount === 1) { - (0, _DOMUtils.addEventListener)(window, PopStateEvent, handlePopState); + if (utils.isFormData(requestData)) { + delete requestHeaders['Content-Type']; // Let the browser set it + } - if (needsHashChangeListener) (0, _DOMUtils.addEventListener)(window, HashChangeEvent, handleHashChange); - } else if (listenerCount === 0) { - (0, _DOMUtils.removeEventListener)(window, PopStateEvent, handlePopState); + var request = new XMLHttpRequest(); + var loadEvent = 'onreadystatechange'; + var xDomain = false; - if (needsHashChangeListener) (0, _DOMUtils.removeEventListener)(window, HashChangeEvent, handleHashChange); + // For IE 8/9 CORS support + // Only supports POST and GET calls and doesn't returns the response headers. + // DON'T do this for testing b/c XMLHttpRequest is mocked, not XDomainRequest. + if ("development" !== 'test' && + typeof window !== 'undefined' && + window.XDomainRequest && !('withCredentials' in request) && + !isURLSameOrigin(config.url)) { + request = new window.XDomainRequest(); + loadEvent = 'onload'; + xDomain = true; + request.onprogress = function handleProgress() {}; + request.ontimeout = function handleTimeout() {}; } - }; - var isBlocked = false; + // HTTP basic authentication + if (config.auth) { + var username = config.auth.username || ''; + var password = config.auth.password || ''; + requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password); + } - var block = function block() { - var prompt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true); - var unblock = transitionManager.setPrompt(prompt); + // Set the request timeout in MS + request.timeout = config.timeout; - if (!isBlocked) { - checkDOMListeners(1); - isBlocked = true; - } + // Listen for ready state + request[loadEvent] = function handleLoad() { + if (!request || (request.readyState !== 4 && !xDomain)) { + return; + } - return function () { - if (isBlocked) { - isBlocked = false; - checkDOMListeners(-1); + // The request errored out and we didn't get a response, this will be + // handled by onerror instead + // With one exception: request that using file: protocol, most browsers + // will return status as 0 even though it's a successful request + if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) { + return; } - return unblock(); - }; - }; + // Prepare the response + var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null; + var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response; + var response = { + data: responseData, + // IE sends 1223 instead of 204 (https://github.com/mzabriskie/axios/issues/201) + status: request.status === 1223 ? 204 : request.status, + statusText: request.status === 1223 ? 'No Content' : request.statusText, + headers: responseHeaders, + config: config, + request: request + }; - var listen = function listen(listener) { - var unlisten = transitionManager.appendListener(listener); - checkDOMListeners(1); + settle(resolve, reject, response); - return function () { - checkDOMListeners(-1); - unlisten(); + // Clean up request + request = null; }; - }; - - var history = { - length: globalHistory.length, - action: 'POP', - location: initialLocation, - createHref: createHref, - push: push, - replace: replace, - go: go, - goBack: goBack, - goForward: goForward, - block: block, - listen: listen - }; - - return history; -}; -exports.default = createBrowserHistory; - -/***/ }), -/* 273 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { + // Handle low level network errors + request.onerror = function handleError() { + // Real errors are hidden from us by the browser + // onerror should only fire if it's a network error + reject(createError('Network Error', config)); -"use strict"; -Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); -function isAbsolute(pathname) { - return pathname.charAt(0) === '/'; -} + // Clean up request + request = null; + }; -// About 1.5x faster than the two-arg version of Array#splice() -function spliceOne(list, index) { - for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) { - list[i] = list[k]; - } + // Handle timeout + request.ontimeout = function handleTimeout() { + reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED')); - list.pop(); -} + // Clean up request + request = null; + }; -// This implementation is based heavily on node's url.parse -function resolvePathname(to) { - var from = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; + // Add xsrf header + // This is only done if running in a standard browser environment. + // Specifically not if we're in a web worker, or react-native. + if (utils.isStandardBrowserEnv()) { + var cookies = __webpack_require__(623); - var toParts = to && to.split('/') || []; - var fromParts = from && from.split('/') || []; + // Add xsrf header + var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ? + cookies.read(config.xsrfCookieName) : + undefined; - var isToAbs = to && isAbsolute(to); - var isFromAbs = from && isAbsolute(from); - var mustEndAbs = isToAbs || isFromAbs; + if (xsrfValue) { + requestHeaders[config.xsrfHeaderName] = xsrfValue; + } + } - if (to && isAbsolute(to)) { - // to is absolute - fromParts = toParts; - } else if (toParts.length) { - // to is relative, drop the filename - fromParts.pop(); - fromParts = fromParts.concat(toParts); - } + // Add headers to the request + if ('setRequestHeader' in request) { + utils.forEach(requestHeaders, function setRequestHeader(val, key) { + if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') { + // Remove Content-Type if data is undefined + delete requestHeaders[key]; + } else { + // Otherwise add header to the request + request.setRequestHeader(key, val); + } + }); + } - if (!fromParts.length) return '/'; + // Add withCredentials to request if needed + if (config.withCredentials) { + request.withCredentials = true; + } - var hasTrailingSlash = void 0; - if (fromParts.length) { - var last = fromParts[fromParts.length - 1]; - hasTrailingSlash = last === '.' || last === '..' || last === ''; - } else { - hasTrailingSlash = false; - } + // Add responseType to request if needed + if (config.responseType) { + try { + request.responseType = config.responseType; + } catch (e) { + if (request.responseType !== 'json') { + throw e; + } + } + } - var up = 0; - for (var i = fromParts.length; i >= 0; i--) { - var part = fromParts[i]; + // Handle progress if needed + if (typeof config.onDownloadProgress === 'function') { + request.addEventListener('progress', config.onDownloadProgress); + } - if (part === '.') { - spliceOne(fromParts, i); - } else if (part === '..') { - spliceOne(fromParts, i); - up++; - } else if (up) { - spliceOne(fromParts, i); - up--; + // Not all browsers support upload events + if (typeof config.onUploadProgress === 'function' && request.upload) { + request.upload.addEventListener('progress', config.onUploadProgress); } - } - if (!mustEndAbs) for (; up--; up) { - fromParts.unshift('..'); - }if (mustEndAbs && fromParts[0] !== '' && (!fromParts[0] || !isAbsolute(fromParts[0]))) fromParts.unshift(''); + if (config.cancelToken) { + // Handle cancellation + config.cancelToken.promise.then(function onCanceled(cancel) { + if (!request) { + return; + } - var result = fromParts.join('/'); + request.abort(); + reject(cancel); + // Clean up request + request = null; + }); + } - if (hasTrailingSlash && result.substr(-1) !== '/') result += '/'; + if (requestData === undefined) { + requestData = null; + } - return result; -} + // Send the request + request.send(requestData); + }); +}; -/* harmony default export */ __webpack_exports__["default"] = (resolvePathname); /***/ }), -/* 274 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* 268 */ +/***/ (function(module, exports, __webpack_require__) { "use strict"; -Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - -function valueEqual(a, b) { - if (a === b) return true; - - if (a == null || b == null) return false; - - if (Array.isArray(a)) { - return Array.isArray(b) && a.length === b.length && a.every(function (item, index) { - return valueEqual(item, b[index]); - }); - } - var aType = typeof a === 'undefined' ? 'undefined' : _typeof(a); - var bType = typeof b === 'undefined' ? 'undefined' : _typeof(b); - if (aType !== bType) return false; +var enhanceError = __webpack_require__(618); - if (aType === 'object') { - var aValue = a.valueOf(); - var bValue = b.valueOf(); +/** + * Create an Error with the specified message, config, error code, and response. + * + * @param {string} message The error message. + * @param {Object} config The config. + * @param {string} [code] The error code (for example, 'ECONNABORTED'). + @ @param {Object} [response] The response. + * @returns {Error} The created error. + */ +module.exports = function createError(message, config, code, response) { + var error = new Error(message); + return enhanceError(error, config, code, response); +}; - if (aValue !== a || bValue !== b) return valueEqual(aValue, bValue); - var aKeys = Object.keys(a); - var bKeys = Object.keys(b); +/***/ }), +/* 269 */ +/***/ (function(module, exports, __webpack_require__) { - if (aKeys.length !== bKeys.length) return false; +"use strict"; - return aKeys.every(function (key) { - return valueEqual(a[key], b[key]); - }); - } - return false; -} +module.exports = function isCancel(value) { + return !!(value && value.__CANCEL__); +}; -/* harmony default export */ __webpack_exports__["default"] = (valueEqual); /***/ }), -/* 275 */ +/* 270 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -exports.__esModule = true; -var canUseDOM = exports.canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement); - -var addEventListener = exports.addEventListener = function addEventListener(node, event, listener) { - return node.addEventListener ? node.addEventListener(event, listener, false) : node.attachEvent('on' + event, listener); -}; - -var removeEventListener = exports.removeEventListener = function removeEventListener(node, event, listener) { - return node.removeEventListener ? node.removeEventListener(event, listener, false) : node.detachEvent('on' + event, listener); -}; - -var getConfirmation = exports.getConfirmation = function getConfirmation(message, callback) { - return callback(window.confirm(message)); -}; // eslint-disable-line no-alert - /** - * Returns true if the HTML5 history API is supported. Taken from Modernizr. + * A `Cancel` is an object that is thrown when an operation is canceled. * - * https://github.com/Modernizr/Modernizr/blob/master/LICENSE - * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js - * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586 + * @class + * @param {string=} message The message. */ -var supportsHistory = exports.supportsHistory = function supportsHistory() { - var ua = window.navigator.userAgent; - - if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) return false; +function Cancel(message) { + this.message = message; +} - return window.history && 'pushState' in window.history; +Cancel.prototype.toString = function toString() { + return 'Cancel' + (this.message ? ': ' + this.message : ''); }; -/** - * Returns true if browser fires popstate on hash change. - * IE10 and IE11 do not. - */ -var supportsPopStateOnHashChange = exports.supportsPopStateOnHashChange = function supportsPopStateOnHashChange() { - return window.navigator.userAgent.indexOf('Trident') === -1; -}; +Cancel.prototype.__CANCEL__ = true; -/** - * Returns false if using go(n) with hash history causes a full page reload. - */ -var supportsGoWithoutReloadUsingHash = exports.supportsGoWithoutReloadUsingHash = function supportsGoWithoutReloadUsingHash() { - return window.navigator.userAgent.indexOf('Firefox') === -1; -}; +module.exports = Cancel; -/** - * Returns true if a given popstate event is an extraneous WebKit event. - * Accounts for the fact that Chrome on iOS fires real popstate events - * containing undefined state when pressing the back button. - */ -var isExtraneousPopstateEvent = exports.isExtraneousPopstateEvent = function isExtraneousPopstateEvent(event) { - return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1; -}; /***/ }), -/* 276 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_invariant__ = __webpack_require__(24); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_invariant__); -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - - - - - -var isModifiedEvent = function isModifiedEvent(event) { - return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey); -}; +/* 271 */ +/***/ (function(module, exports, __webpack_require__) { -/** - * The public API for rendering a history-aware . +/* WEBPACK VAR INJECTION */(function(global) {var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* + * $Id: base64.js,v 2.15 2014/04/05 12:58:57 dankogai Exp dankogai $ + * + * Licensed under the BSD 3-Clause License. + * http://opensource.org/licenses/BSD-3-Clause + * + * References: + * http://en.wikipedia.org/wiki/Base64 */ - -var Link = function (_React$Component) { - _inherits(Link, _React$Component); - - function Link() { - var _temp, _this, _ret; - - _classCallCheck(this, Link); - - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; +;(function (global, factory) { + true ? module.exports = factory(global) : + typeof define === 'function' && define.amd ? define(factory) : + global.moment = factory(global) +}(( typeof self !== 'undefined' ? self +: typeof window !== 'undefined' ? window +: typeof global !== 'undefined' ? global +: this +), function(global) { + 'use strict'; + // existing version for noConflict() + var _Base64 = global.Base64; + var version = "2.4.0"; + // if node.js, we use Buffer + var buffer; + if (typeof module !== 'undefined' && module.exports) { + try { + buffer = __webpack_require__(272).Buffer; + } catch (err) {} } - - return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.handleClick = function (event) { - if (_this.props.onClick) _this.props.onClick(event); - - if (!event.defaultPrevented && // onClick prevented default - event.button === 0 && // ignore right clicks - !_this.props.target && // let browser handle "target=_blank" etc. - !isModifiedEvent(event) // ignore clicks with modifier keys - ) { - event.preventDefault(); - - var history = _this.context.router.history; - var _this$props = _this.props, - replace = _this$props.replace, - to = _this$props.to; - - - if (replace) { - history.replace(to); - } else { - history.push(to); - } + // constants + var b64chars + = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; + var b64tab = function(bin) { + var t = {}; + for (var i = 0, l = bin.length; i < l; i++) t[bin.charAt(i)] = i; + return t; + }(b64chars); + var fromCharCode = String.fromCharCode; + // encoder stuff + var cb_utob = function(c) { + if (c.length < 2) { + var cc = c.charCodeAt(0); + return cc < 0x80 ? c + : cc < 0x800 ? (fromCharCode(0xc0 | (cc >>> 6)) + + fromCharCode(0x80 | (cc & 0x3f))) + : (fromCharCode(0xe0 | ((cc >>> 12) & 0x0f)) + + fromCharCode(0x80 | ((cc >>> 6) & 0x3f)) + + fromCharCode(0x80 | ( cc & 0x3f))); + } else { + var cc = 0x10000 + + (c.charCodeAt(0) - 0xD800) * 0x400 + + (c.charCodeAt(1) - 0xDC00); + return (fromCharCode(0xf0 | ((cc >>> 18) & 0x07)) + + fromCharCode(0x80 | ((cc >>> 12) & 0x3f)) + + fromCharCode(0x80 | ((cc >>> 6) & 0x3f)) + + fromCharCode(0x80 | ( cc & 0x3f))); } - }, _temp), _possibleConstructorReturn(_this, _ret); - } - - Link.prototype.render = function render() { - var _props = this.props, - replace = _props.replace, - to = _props.to, - innerRef = _props.innerRef, - props = _objectWithoutProperties(_props, ['replace', 'to', 'innerRef']); // eslint-disable-line no-unused-vars - - __WEBPACK_IMPORTED_MODULE_2_invariant___default()(this.context.router, 'You should not use outside a '); - - var href = this.context.router.history.createHref(typeof to === 'string' ? { pathname: to } : to); - - return __WEBPACK_IMPORTED_MODULE_0_react___default.a.createElement('a', _extends({}, props, { onClick: this.handleClick, href: href, ref: innerRef })); - }; - - return Link; -}(__WEBPACK_IMPORTED_MODULE_0_react___default.a.Component); - -Link.propTypes = { - onClick: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func, - target: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.string, - replace: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.bool, - to: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.object]).isRequired, - innerRef: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func]) -}; -Link.defaultProps = { - replace: false -}; -Link.contextTypes = { - router: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.shape({ - history: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.shape({ - push: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func.isRequired, - replace: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func.isRequired, - createHref: __WEBPACK_IMPORTED_MODULE_1_prop_types___default.a.func.isRequired - }).isRequired - }).isRequired -}; - + }; + var re_utob = /[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g; + var utob = function(u) { + return u.replace(re_utob, cb_utob); + }; + var cb_encode = function(ccc) { + var padlen = [0, 2, 1][ccc.length % 3], + ord = ccc.charCodeAt(0) << 16 + | ((ccc.length > 1 ? ccc.charCodeAt(1) : 0) << 8) + | ((ccc.length > 2 ? ccc.charCodeAt(2) : 0)), + chars = [ + b64chars.charAt( ord >>> 18), + b64chars.charAt((ord >>> 12) & 63), + padlen >= 2 ? '=' : b64chars.charAt((ord >>> 6) & 63), + padlen >= 1 ? '=' : b64chars.charAt(ord & 63) + ]; + return chars.join(''); + }; + var btoa = global.btoa ? function(b) { + return global.btoa(b); + } : function(b) { + return b.replace(/[\s\S]{1,3}/g, cb_encode); + }; + var _encode = buffer ? + buffer.from && buffer.from !== Uint8Array.from ? function (u) { + return (u.constructor === buffer.constructor ? u : buffer.from(u)) + .toString('base64') + } + : function (u) { + return (u.constructor === buffer.constructor ? u : new buffer(u)) + .toString('base64') + } + : function (u) { return btoa(utob(u)) } + ; + var encode = function(u, urisafe) { + return !urisafe + ? _encode(String(u)) + : _encode(String(u)).replace(/[+\/]/g, function(m0) { + return m0 == '+' ? '-' : '_'; + }).replace(/=/g, ''); + }; + var encodeURI = function(u) { return encode(u, true) }; + // decoder stuff + var re_btou = new RegExp([ + '[\xC0-\xDF][\x80-\xBF]', + '[\xE0-\xEF][\x80-\xBF]{2}', + '[\xF0-\xF7][\x80-\xBF]{3}' + ].join('|'), 'g'); + var cb_btou = function(cccc) { + switch(cccc.length) { + case 4: + var cp = ((0x07 & cccc.charCodeAt(0)) << 18) + | ((0x3f & cccc.charCodeAt(1)) << 12) + | ((0x3f & cccc.charCodeAt(2)) << 6) + | (0x3f & cccc.charCodeAt(3)), + offset = cp - 0x10000; + return (fromCharCode((offset >>> 10) + 0xD800) + + fromCharCode((offset & 0x3FF) + 0xDC00)); + case 3: + return fromCharCode( + ((0x0f & cccc.charCodeAt(0)) << 12) + | ((0x3f & cccc.charCodeAt(1)) << 6) + | (0x3f & cccc.charCodeAt(2)) + ); + default: + return fromCharCode( + ((0x1f & cccc.charCodeAt(0)) << 6) + | (0x3f & cccc.charCodeAt(1)) + ); + } + }; + var btou = function(b) { + return b.replace(re_btou, cb_btou); + }; + var cb_decode = function(cccc) { + var len = cccc.length, + padlen = len % 4, + n = (len > 0 ? b64tab[cccc.charAt(0)] << 18 : 0) + | (len > 1 ? b64tab[cccc.charAt(1)] << 12 : 0) + | (len > 2 ? b64tab[cccc.charAt(2)] << 6 : 0) + | (len > 3 ? b64tab[cccc.charAt(3)] : 0), + chars = [ + fromCharCode( n >>> 16), + fromCharCode((n >>> 8) & 0xff), + fromCharCode( n & 0xff) + ]; + chars.length -= [0, 0, 2, 1][padlen]; + return chars.join(''); + }; + var atob = global.atob ? function(a) { + return global.atob(a); + } : function(a){ + return a.replace(/[\s\S]{1,4}/g, cb_decode); + }; + var _decode = buffer ? + buffer.from && buffer.from !== Uint8Array.from ? function(a) { + return (a.constructor === buffer.constructor + ? a : buffer.from(a, 'base64')).toString(); + } + : function(a) { + return (a.constructor === buffer.constructor + ? a : new buffer(a, 'base64')).toString(); + } + : function(a) { return btou(atob(a)) }; + var decode = function(a){ + return _decode( + String(a).replace(/[-_]/g, function(m0) { return m0 == '-' ? '+' : '/' }) + .replace(/[^A-Za-z0-9\+\/]/g, '') + ); + }; + var noConflict = function() { + var Base64 = global.Base64; + global.Base64 = _Base64; + return Base64; + }; + // export Base64 + global.Base64 = { + VERSION: version, + atob: atob, + btoa: btoa, + fromBase64: decode, + toBase64: encode, + utob: utob, + encode: encode, + encodeURI: encodeURI, + btou: btou, + decode: decode, + noConflict: noConflict + }; + // if ES5 is available, make Base64.extendString() available + if (typeof Object.defineProperty === 'function') { + var noEnum = function(v){ + return {value:v,enumerable:false,writable:true,configurable:true}; + }; + global.Base64.extendString = function () { + Object.defineProperty( + String.prototype, 'fromBase64', noEnum(function () { + return decode(this) + })); + Object.defineProperty( + String.prototype, 'toBase64', noEnum(function (urisafe) { + return encode(this, urisafe) + })); + Object.defineProperty( + String.prototype, 'toBase64URI', noEnum(function () { + return encode(this, true) + })); + }; + } + // + // export Base64 to the namespace + // + if (global['Meteor']) { // Meteor.js + Base64 = global.Base64; + } + // module.exports and AMD are mutually exclusive. + // module.exports has precedence. + if (typeof module !== 'undefined' && module.exports) { + module.exports.Base64 = global.Base64; + } + else if (true) { + // AMD. Register as an anonymous module. + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function(){ return global.Base64 }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), + __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); + } + // that's it! + return {Base64: global.Base64} +})); -/* harmony default export */ __webpack_exports__["a"] = (Link); +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(53))) /***/ }), -/* 277 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* 272 */ +/***/ (function(module, exports, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react_router_es_Route__ = __webpack_require__(278); -// Written in this round about way for babel-transform-imports - - -/* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_0_react_router_es_Route__["a" /* default */]); - -/***/ }), -/* 278 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* WEBPACK VAR INJECTION */(function(global) {/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ +/* eslint-disable no-proto */ -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(12); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_warning__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(24); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_invariant__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__matchPath__ = __webpack_require__(190); -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } +var base64 = __webpack_require__(633) +var ieee754 = __webpack_require__(634) +var isArray = __webpack_require__(635) -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } +exports.Buffer = Buffer +exports.SlowBuffer = SlowBuffer +exports.INSPECT_MAX_BYTES = 50 +/** + * If `Buffer.TYPED_ARRAY_SUPPORT`: + * === true Use Uint8Array implementation (fastest) + * === false Use Object implementation (most compatible, even IE6) + * + * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, + * Opera 11.6+, iOS 4.2+. + * + * Due to various browser bugs, sometimes the Object implementation will be used even + * when the browser supports typed arrays. + * + * Note: + * + * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances, + * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438. + * + * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function. + * + * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of + * incorrect length in some situations. + * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they + * get the Object implementation, which is slower but behaves correctly. + */ +Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined + ? global.TYPED_ARRAY_SUPPORT + : typedArraySupport() +/* + * Export kMaxLength after typed array support is determined. + */ +exports.kMaxLength = kMaxLength() +function typedArraySupport () { + try { + var arr = new Uint8Array(1) + arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }} + return arr.foo() === 42 && // typed array instances can be augmented + typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray` + arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray` + } catch (e) { + return false + } +} +function kMaxLength () { + return Buffer.TYPED_ARRAY_SUPPORT + ? 0x7fffffff + : 0x3fffffff +} +function createBuffer (that, length) { + if (kMaxLength() < length) { + throw new RangeError('Invalid typed array length') + } + if (Buffer.TYPED_ARRAY_SUPPORT) { + // Return an augmented `Uint8Array` instance, for best performance + that = new Uint8Array(length) + that.__proto__ = Buffer.prototype + } else { + // Fallback: Return an object instance of the Buffer class + if (that === null) { + that = new Buffer(length) + } + that.length = length + } -var isEmptyChildren = function isEmptyChildren(children) { - return __WEBPACK_IMPORTED_MODULE_2_react___default.a.Children.count(children) === 0; -}; + return that +} /** - * The public API for matching a single path and rendering. + * The Buffer constructor returns instances of `Uint8Array` that have their + * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of + * `Uint8Array`, so the returned instances will have all the node `Buffer` methods + * and the `Uint8Array` methods. Square bracket notation works as expected -- it + * returns a single octet. + * + * The `Uint8Array` prototype remains unmodified. */ -var Route = function (_React$Component) { - _inherits(Route, _React$Component); - - function Route() { - var _temp, _this, _ret; - - _classCallCheck(this, Route); +function Buffer (arg, encodingOrOffset, length) { + if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) { + return new Buffer(arg, encodingOrOffset, length) + } - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; + // Common case. + if (typeof arg === 'number') { + if (typeof encodingOrOffset === 'string') { + throw new Error( + 'If encoding is specified then the first argument must be a string' + ) } - - return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = { - match: _this.computeMatch(_this.props, _this.context.router) - }, _temp), _possibleConstructorReturn(_this, _ret); + return allocUnsafe(this, arg) } + return from(this, arg, encodingOrOffset, length) +} - Route.prototype.getChildContext = function getChildContext() { - return { - router: _extends({}, this.context.router, { - route: { - location: this.props.location || this.context.router.route.location, - match: this.state.match - } - }) - }; - }; - - Route.prototype.computeMatch = function computeMatch(_ref, router) { - var computedMatch = _ref.computedMatch, - location = _ref.location, - path = _ref.path, - strict = _ref.strict, - exact = _ref.exact, - sensitive = _ref.sensitive; +Buffer.poolSize = 8192 // not used by this implementation - if (computedMatch) return computedMatch; // already computed the match for us +// TODO: Legacy, not needed anymore. Remove in next major version. +Buffer._augment = function (arr) { + arr.__proto__ = Buffer.prototype + return arr +} - __WEBPACK_IMPORTED_MODULE_1_invariant___default()(router, 'You should not use or withRouter() outside a '); +function from (that, value, encodingOrOffset, length) { + if (typeof value === 'number') { + throw new TypeError('"value" argument must not be a number') + } - var route = router.route; + if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) { + return fromArrayBuffer(that, value, encodingOrOffset, length) + } - var pathname = (location || route.location).pathname; + if (typeof value === 'string') { + return fromString(that, value, encodingOrOffset) + } - return path ? Object(__WEBPACK_IMPORTED_MODULE_4__matchPath__["a" /* default */])(pathname, { path: path, strict: strict, exact: exact, sensitive: sensitive }) : route.match; - }; + return fromObject(that, value) +} - Route.prototype.componentWillMount = function componentWillMount() { - __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(this.props.component && this.props.render), 'You should not use and in the same route; will be ignored'); - - __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(this.props.component && this.props.children && !isEmptyChildren(this.props.children)), 'You should not use and in the same route; will be ignored'); - - __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(this.props.render && this.props.children && !isEmptyChildren(this.props.children)), 'You should not use and in the same route; will be ignored'); - }; +/** + * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError + * if value is a number. + * Buffer.from(str[, encoding]) + * Buffer.from(array) + * Buffer.from(buffer) + * Buffer.from(arrayBuffer[, byteOffset[, length]]) + **/ +Buffer.from = function (value, encodingOrOffset, length) { + return from(null, value, encodingOrOffset, length) +} - Route.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps, nextContext) { - __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(nextProps.location && !this.props.location), ' elements should not change from uncontrolled to controlled (or vice versa). You initially used no "location" prop and then provided one on a subsequent render.'); +if (Buffer.TYPED_ARRAY_SUPPORT) { + Buffer.prototype.__proto__ = Uint8Array.prototype + Buffer.__proto__ = Uint8Array + if (typeof Symbol !== 'undefined' && Symbol.species && + Buffer[Symbol.species] === Buffer) { + // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 + Object.defineProperty(Buffer, Symbol.species, { + value: null, + configurable: true + }) + } +} - __WEBPACK_IMPORTED_MODULE_0_warning___default()(!(!nextProps.location && this.props.location), ' elements should not change from controlled to uncontrolled (or vice versa). You provided a "location" prop initially but omitted it on a subsequent render.'); +function assertSize (size) { + if (typeof size !== 'number') { + throw new TypeError('"size" argument must be a number') + } else if (size < 0) { + throw new RangeError('"size" argument must not be negative') + } +} - this.setState({ - match: this.computeMatch(nextProps, nextContext.router) - }); - }; +function alloc (that, size, fill, encoding) { + assertSize(size) + if (size <= 0) { + return createBuffer(that, size) + } + if (fill !== undefined) { + // Only pay attention to encoding if it's a string. This + // prevents accidentally sending in a number that would + // be interpretted as a start offset. + return typeof encoding === 'string' + ? createBuffer(that, size).fill(fill, encoding) + : createBuffer(that, size).fill(fill) + } + return createBuffer(that, size) +} - Route.prototype.render = function render() { - var match = this.state.match; - var _props = this.props, - children = _props.children, - component = _props.component, - render = _props.render; - var _context$router = this.context.router, - history = _context$router.history, - route = _context$router.route, - staticContext = _context$router.staticContext; +/** + * Creates a new filled Buffer instance. + * alloc(size[, fill[, encoding]]) + **/ +Buffer.alloc = function (size, fill, encoding) { + return alloc(null, size, fill, encoding) +} - var location = this.props.location || route.location; - var props = { match: match, location: location, history: history, staticContext: staticContext }; +function allocUnsafe (that, size) { + assertSize(size) + that = createBuffer(that, size < 0 ? 0 : checked(size) | 0) + if (!Buffer.TYPED_ARRAY_SUPPORT) { + for (var i = 0; i < size; ++i) { + that[i] = 0 + } + } + return that +} - return component ? // component prop gets first priority, only called if there's a match - match ? __WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement(component, props) : null : render ? // render prop is next, only called if there's a match - match ? render(props) : null : children ? // children come last, always called - typeof children === 'function' ? children(props) : !isEmptyChildren(children) ? __WEBPACK_IMPORTED_MODULE_2_react___default.a.Children.only(children) : null : null; - }; +/** + * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. + * */ +Buffer.allocUnsafe = function (size) { + return allocUnsafe(null, size) +} +/** + * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. + */ +Buffer.allocUnsafeSlow = function (size) { + return allocUnsafe(null, size) +} - return Route; -}(__WEBPACK_IMPORTED_MODULE_2_react___default.a.Component); +function fromString (that, string, encoding) { + if (typeof encoding !== 'string' || encoding === '') { + encoding = 'utf8' + } -Route.propTypes = { - computedMatch: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object, // private, from - path: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.string, - exact: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.bool, - strict: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.bool, - sensitive: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.bool, - component: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.func, - render: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.func, - children: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.func, __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.node]), - location: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object -}; -Route.contextTypes = { - router: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.shape({ - history: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object.isRequired, - route: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object.isRequired, - staticContext: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object - }) -}; -Route.childContextTypes = { - router: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object.isRequired -}; + if (!Buffer.isEncoding(encoding)) { + throw new TypeError('"encoding" must be a valid string encoding') + } + var length = byteLength(string, encoding) | 0 + that = createBuffer(that, length) -/* harmony default export */ __webpack_exports__["a"] = (Route); + var actual = that.write(string, encoding) -/***/ }), -/* 279 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { + if (actual !== length) { + // Writing a hex string, for example, that contains invalid characters will + // cause everything after the first invalid character to be ignored. (e.g. + // 'abxxcd' will be treated as 'ab') + that = that.slice(0, actual) + } -"use strict"; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return canUseDOM; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addEventListener; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return removeEventListener; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return getConfirmation; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return supportsHistory; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return supportsPopStateOnHashChange; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return supportsGoWithoutReloadUsingHash; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return isExtraneousPopstateEvent; }); -var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement); + return that +} -var addEventListener = function addEventListener(node, event, listener) { - return node.addEventListener ? node.addEventListener(event, listener, false) : node.attachEvent('on' + event, listener); -}; +function fromArrayLike (that, array) { + var length = array.length < 0 ? 0 : checked(array.length) | 0 + that = createBuffer(that, length) + for (var i = 0; i < length; i += 1) { + that[i] = array[i] & 255 + } + return that +} -var removeEventListener = function removeEventListener(node, event, listener) { - return node.removeEventListener ? node.removeEventListener(event, listener, false) : node.detachEvent('on' + event, listener); -}; +function fromArrayBuffer (that, array, byteOffset, length) { + array.byteLength // this throws if `array` is not a valid ArrayBuffer -var getConfirmation = function getConfirmation(message, callback) { - return callback(window.confirm(message)); -}; // eslint-disable-line no-alert + if (byteOffset < 0 || array.byteLength < byteOffset) { + throw new RangeError('\'offset\' is out of bounds') + } -/** - * Returns true if the HTML5 history API is supported. Taken from Modernizr. - * - * https://github.com/Modernizr/Modernizr/blob/master/LICENSE - * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js - * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586 - */ -var supportsHistory = function supportsHistory() { - var ua = window.navigator.userAgent; + if (array.byteLength < byteOffset + (length || 0)) { + throw new RangeError('\'length\' is out of bounds') + } - if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) return false; + if (byteOffset === undefined && length === undefined) { + array = new Uint8Array(array) + } else if (length === undefined) { + array = new Uint8Array(array, byteOffset) + } else { + array = new Uint8Array(array, byteOffset, length) + } - return window.history && 'pushState' in window.history; -}; + if (Buffer.TYPED_ARRAY_SUPPORT) { + // Return an augmented `Uint8Array` instance, for best performance + that = array + that.__proto__ = Buffer.prototype + } else { + // Fallback: Return an object instance of the Buffer class + that = fromArrayLike(that, array) + } + return that +} -/** - * Returns true if browser fires popstate on hash change. - * IE10 and IE11 do not. - */ -var supportsPopStateOnHashChange = function supportsPopStateOnHashChange() { - return window.navigator.userAgent.indexOf('Trident') === -1; -}; +function fromObject (that, obj) { + if (Buffer.isBuffer(obj)) { + var len = checked(obj.length) | 0 + that = createBuffer(that, len) -/** - * Returns false if using go(n) with hash history causes a full page reload. - */ -var supportsGoWithoutReloadUsingHash = function supportsGoWithoutReloadUsingHash() { - return window.navigator.userAgent.indexOf('Firefox') === -1; -}; + if (that.length === 0) { + return that + } -/** - * Returns true if a given popstate event is an extraneous WebKit event. - * Accounts for the fact that Chrome on iOS fires real popstate events - * containing undefined state when pressing the back button. - */ -var isExtraneousPopstateEvent = function isExtraneousPopstateEvent(event) { - return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1; -}; + obj.copy(that, 0, 0, len) + return that + } -/***/ }), -/* 280 */ -/***/ (function(module, exports, __webpack_require__) { + if (obj) { + if ((typeof ArrayBuffer !== 'undefined' && + obj.buffer instanceof ArrayBuffer) || 'length' in obj) { + if (typeof obj.length !== 'number' || isnan(obj.length)) { + return createBuffer(that, 0) + } + return fromArrayLike(that, obj) + } -"use strict"; + if (obj.type === 'Buffer' && isArray(obj.data)) { + return fromArrayLike(that, obj.data) + } + } + throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.') +} -Object.defineProperty(exports, "__esModule", { - value: true -}); +function checked (length) { + // Note: cannot use `length < kMaxLength()` here because that fails when + // length is NaN (which is otherwise coerced to zero.) + if (length >= kMaxLength()) { + throw new RangeError('Attempt to allocate Buffer larger than maximum ' + + 'size: 0x' + kMaxLength().toString(16) + ' bytes') + } + return length | 0 +} -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; +function SlowBuffer (length) { + if (+length != length) { // eslint-disable-line eqeqeq + length = 0 + } + return Buffer.alloc(+length) +} -exports.routerReducer = routerReducer; -/** - * This action type will be dispatched when your history - * receives a location change. - */ -var LOCATION_CHANGE = exports.LOCATION_CHANGE = '@@router/LOCATION_CHANGE'; +Buffer.isBuffer = function isBuffer (b) { + return !!(b != null && b._isBuffer) +} -var initialState = { - locationBeforeTransitions: null -}; +Buffer.compare = function compare (a, b) { + if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { + throw new TypeError('Arguments must be Buffers') + } -/** - * This reducer will update the state with the most recent location history - * has transitioned to. This may not be in sync with the router, particularly - * if you have asynchronously-loaded routes, so reading from and relying on - * this state is discouraged. - */ -function routerReducer() { - var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState; + if (a === b) return 0 - var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, - type = _ref.type, - payload = _ref.payload; + var x = a.length + var y = b.length - if (type === LOCATION_CHANGE) { - return _extends({}, state, { locationBeforeTransitions: payload }); + for (var i = 0, len = Math.min(x, y); i < len; ++i) { + if (a[i] !== b[i]) { + x = a[i] + y = b[i] + break + } } - return state; + if (x < y) return -1 + if (y < x) return 1 + return 0 } -/***/ }), -/* 281 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; +Buffer.isEncoding = function isEncoding (encoding) { + switch (String(encoding).toLowerCase()) { + case 'hex': + case 'utf8': + case 'utf-8': + case 'ascii': + case 'latin1': + case 'binary': + case 'base64': + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return true + default: + return false + } +} +Buffer.concat = function concat (list, length) { + if (!isArray(list)) { + throw new TypeError('"list" argument must be an Array of Buffers') + } -Object.defineProperty(exports, "__esModule", { - value: true -}); -/** - * This action type will be dispatched by the history actions below. - * If you're writing a middleware to watch for navigation events, be sure to - * look for actions of this type. - */ -var CALL_HISTORY_METHOD = exports.CALL_HISTORY_METHOD = '@@router/CALL_HISTORY_METHOD'; + if (list.length === 0) { + return Buffer.alloc(0) + } -function updateLocation(method) { - return function () { - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; + var i + if (length === undefined) { + length = 0 + for (i = 0; i < list.length; ++i) { + length += list[i].length } + } - return { - type: CALL_HISTORY_METHOD, - payload: { method: method, args: args } - }; - }; + var buffer = Buffer.allocUnsafe(length) + var pos = 0 + for (i = 0; i < list.length; ++i) { + var buf = list[i] + if (!Buffer.isBuffer(buf)) { + throw new TypeError('"list" argument must be an Array of Buffers') + } + buf.copy(buffer, pos) + pos += buf.length + } + return buffer } -/** - * These actions correspond to the history API. - * The associated routerMiddleware will capture these events before they get to - * your reducer and reissue them as the matching function on your history. - */ -var push = exports.push = updateLocation('push'); -var replace = exports.replace = updateLocation('replace'); -var go = exports.go = updateLocation('go'); -var goBack = exports.goBack = updateLocation('goBack'); -var goForward = exports.goForward = updateLocation('goForward'); - -var routerActions = exports.routerActions = { push: push, replace: replace, go: go, goBack: goBack, goForward: goForward }; +function byteLength (string, encoding) { + if (Buffer.isBuffer(string)) { + return string.length + } + if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' && + (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) { + return string.byteLength + } + if (typeof string !== 'string') { + string = '' + string + } -/***/ }), -/* 282 */ -/***/ (function(module, exports, __webpack_require__) { + var len = string.length + if (len === 0) return 0 -module.exports = !__webpack_require__(86) && !__webpack_require__(98)(function () { - return Object.defineProperty(__webpack_require__(283)('div'), 'a', { get: function () { return 7; } }).a != 7; -}); + // Use a for loop to avoid recursion + var loweredCase = false + for (;;) { + switch (encoding) { + case 'ascii': + case 'latin1': + case 'binary': + return len + case 'utf8': + case 'utf-8': + case undefined: + return utf8ToBytes(string).length + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return len * 2 + case 'hex': + return len >>> 1 + case 'base64': + return base64ToBytes(string).length + default: + if (loweredCase) return utf8ToBytes(string).length // assume utf8 + encoding = ('' + encoding).toLowerCase() + loweredCase = true + } + } +} +Buffer.byteLength = byteLength +function slowToString (encoding, start, end) { + var loweredCase = false -/***/ }), -/* 283 */ -/***/ (function(module, exports, __webpack_require__) { + // No need to verify that "this.length <= MAX_UINT32" since it's a read-only + // property of a typed array. -var isObject = __webpack_require__(97); -var document = __webpack_require__(68).document; -// typeof document.createElement is 'object' in old IE -var is = isObject(document) && isObject(document.createElement); -module.exports = function (it) { - return is ? document.createElement(it) : {}; -}; + // This behaves neither like String nor Uint8Array in that we set start/end + // to their upper/lower bounds if the value passed is out of range. + // undefined is handled specially as per ECMA-262 6th Edition, + // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. + if (start === undefined || start < 0) { + start = 0 + } + // Return early if start > this.length. Done here to prevent potential uint32 + // coercion fail below. + if (start > this.length) { + return '' + } + if (end === undefined || end > this.length) { + end = this.length + } -/***/ }), -/* 284 */ -/***/ (function(module, exports, __webpack_require__) { + if (end <= 0) { + return '' + } -var has = __webpack_require__(87); -var toIObject = __webpack_require__(88); -var arrayIndexOf = __webpack_require__(641)(false); -var IE_PROTO = __webpack_require__(198)('IE_PROTO'); + // Force coersion to uint32. This will also coerce falsey/NaN values to 0. + end >>>= 0 + start >>>= 0 -module.exports = function (object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) if (has(O, key = names[i++])) { - ~arrayIndexOf(result, key) || result.push(key); + if (end <= start) { + return '' } - return result; -}; + if (!encoding) encoding = 'utf8' -/***/ }), -/* 285 */ -/***/ (function(module, exports, __webpack_require__) { + while (true) { + switch (encoding) { + case 'hex': + return hexSlice(this, start, end) -// fallback for non-array-like ES3 and non-enumerable old V8 strings -var cof = __webpack_require__(195); -// eslint-disable-next-line no-prototype-builtins -module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { - return cof(it) == 'String' ? it.split('') : Object(it); -}; + case 'utf8': + case 'utf-8': + return utf8Slice(this, start, end) + case 'ascii': + return asciiSlice(this, start, end) -/***/ }), -/* 286 */ -/***/ (function(module, exports, __webpack_require__) { + case 'latin1': + case 'binary': + return latin1Slice(this, start, end) -// 7.1.15 ToLength -var toInteger = __webpack_require__(197); -var min = Math.min; -module.exports = function (it) { - return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 -}; + case 'base64': + return base64Slice(this, start, end) + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return utf16leSlice(this, start, end) -/***/ }), -/* 287 */ -/***/ (function(module, exports, __webpack_require__) { + default: + if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) + encoding = (encoding + '').toLowerCase() + loweredCase = true + } + } +} -module.exports = { "default": __webpack_require__(646), __esModule: true }; +// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect +// Buffer instances. +Buffer.prototype._isBuffer = true -/***/ }), -/* 288 */ -/***/ (function(module, exports, __webpack_require__) { +function swap (b, n, m) { + var i = b[n] + b[n] = b[m] + b[m] = i +} -module.exports = __webpack_require__(661); +Buffer.prototype.swap16 = function swap16 () { + var len = this.length + if (len % 2 !== 0) { + throw new RangeError('Buffer size must be a multiple of 16-bits') + } + for (var i = 0; i < len; i += 2) { + swap(this, i, i + 1) + } + return this +} -/***/ }), -/* 289 */ -/***/ (function(module, exports, __webpack_require__) { +Buffer.prototype.swap32 = function swap32 () { + var len = this.length + if (len % 4 !== 0) { + throw new RangeError('Buffer size must be a multiple of 32-bits') + } + for (var i = 0; i < len; i += 4) { + swap(this, i, i + 3) + swap(this, i + 1, i + 2) + } + return this +} -"use strict"; +Buffer.prototype.swap64 = function swap64 () { + var len = this.length + if (len % 8 !== 0) { + throw new RangeError('Buffer size must be a multiple of 64-bits') + } + for (var i = 0; i < len; i += 8) { + swap(this, i, i + 7) + swap(this, i + 1, i + 6) + swap(this, i + 2, i + 5) + swap(this, i + 3, i + 4) + } + return this +} +Buffer.prototype.toString = function toString () { + var length = this.length | 0 + if (length === 0) return '' + if (arguments.length === 0) return utf8Slice(this, 0, length) + return slowToString.apply(this, arguments) +} -module.exports = function bind(fn, thisArg) { - return function wrap() { - var args = new Array(arguments.length); - for (var i = 0; i < args.length; i++) { - args[i] = arguments[i]; - } - return fn.apply(thisArg, args); - }; -}; +Buffer.prototype.equals = function equals (b) { + if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') + if (this === b) return true + return Buffer.compare(this, b) === 0 +} +Buffer.prototype.inspect = function inspect () { + var str = '' + var max = exports.INSPECT_MAX_BYTES + if (this.length > 0) { + str = this.toString('hex', 0, max).match(/.{2}/g).join(' ') + if (this.length > max) str += ' ... ' + } + return '' +} -/***/ }), -/* 290 */ -/***/ (function(module, exports, __webpack_require__) { +Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { + if (!Buffer.isBuffer(target)) { + throw new TypeError('Argument must be a Buffer') + } -"use strict"; + if (start === undefined) { + start = 0 + } + if (end === undefined) { + end = target ? target.length : 0 + } + if (thisStart === undefined) { + thisStart = 0 + } + if (thisEnd === undefined) { + thisEnd = this.length + } + if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { + throw new RangeError('out of range index') + } -var utils = __webpack_require__(42); -var settle = __webpack_require__(664); -var buildURL = __webpack_require__(666); -var parseHeaders = __webpack_require__(667); -var isURLSameOrigin = __webpack_require__(668); -var createError = __webpack_require__(291); -var btoa = (typeof window !== 'undefined' && window.btoa && window.btoa.bind(window)) || __webpack_require__(669); + if (thisStart >= thisEnd && start >= end) { + return 0 + } + if (thisStart >= thisEnd) { + return -1 + } + if (start >= end) { + return 1 + } -module.exports = function xhrAdapter(config) { - return new Promise(function dispatchXhrRequest(resolve, reject) { - var requestData = config.data; - var requestHeaders = config.headers; + start >>>= 0 + end >>>= 0 + thisStart >>>= 0 + thisEnd >>>= 0 - if (utils.isFormData(requestData)) { - delete requestHeaders['Content-Type']; // Let the browser set it - } + if (this === target) return 0 - var request = new XMLHttpRequest(); - var loadEvent = 'onreadystatechange'; - var xDomain = false; + var x = thisEnd - thisStart + var y = end - start + var len = Math.min(x, y) - // For IE 8/9 CORS support - // Only supports POST and GET calls and doesn't returns the response headers. - // DON'T do this for testing b/c XMLHttpRequest is mocked, not XDomainRequest. - if ("development" !== 'test' && - typeof window !== 'undefined' && - window.XDomainRequest && !('withCredentials' in request) && - !isURLSameOrigin(config.url)) { - request = new window.XDomainRequest(); - loadEvent = 'onload'; - xDomain = true; - request.onprogress = function handleProgress() {}; - request.ontimeout = function handleTimeout() {}; - } + var thisCopy = this.slice(thisStart, thisEnd) + var targetCopy = target.slice(start, end) - // HTTP basic authentication - if (config.auth) { - var username = config.auth.username || ''; - var password = config.auth.password || ''; - requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password); + for (var i = 0; i < len; ++i) { + if (thisCopy[i] !== targetCopy[i]) { + x = thisCopy[i] + y = targetCopy[i] + break } + } - request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true); - - // Set the request timeout in MS - request.timeout = config.timeout; - - // Listen for ready state - request[loadEvent] = function handleLoad() { - if (!request || (request.readyState !== 4 && !xDomain)) { - return; - } - - // The request errored out and we didn't get a response, this will be - // handled by onerror instead - // With one exception: request that using file: protocol, most browsers - // will return status as 0 even though it's a successful request - if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) { - return; - } - - // Prepare the response - var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null; - var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response; - var response = { - data: responseData, - // IE sends 1223 instead of 204 (https://github.com/mzabriskie/axios/issues/201) - status: request.status === 1223 ? 204 : request.status, - statusText: request.status === 1223 ? 'No Content' : request.statusText, - headers: responseHeaders, - config: config, - request: request - }; - - settle(resolve, reject, response); + if (x < y) return -1 + if (y < x) return 1 + return 0 +} - // Clean up request - request = null; - }; +// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, +// OR the last index of `val` in `buffer` at offset <= `byteOffset`. +// +// Arguments: +// - buffer - a Buffer to search +// - val - a string, Buffer, or number +// - byteOffset - an index into `buffer`; will be clamped to an int32 +// - encoding - an optional encoding, relevant is val is a string +// - dir - true for indexOf, false for lastIndexOf +function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { + // Empty buffer means no match + if (buffer.length === 0) return -1 - // Handle low level network errors - request.onerror = function handleError() { - // Real errors are hidden from us by the browser - // onerror should only fire if it's a network error - reject(createError('Network Error', config)); + // Normalize byteOffset + if (typeof byteOffset === 'string') { + encoding = byteOffset + byteOffset = 0 + } else if (byteOffset > 0x7fffffff) { + byteOffset = 0x7fffffff + } else if (byteOffset < -0x80000000) { + byteOffset = -0x80000000 + } + byteOffset = +byteOffset // Coerce to Number. + if (isNaN(byteOffset)) { + // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer + byteOffset = dir ? 0 : (buffer.length - 1) + } - // Clean up request - request = null; - }; + // Normalize byteOffset: negative offsets start from the end of the buffer + if (byteOffset < 0) byteOffset = buffer.length + byteOffset + if (byteOffset >= buffer.length) { + if (dir) return -1 + else byteOffset = buffer.length - 1 + } else if (byteOffset < 0) { + if (dir) byteOffset = 0 + else return -1 + } - // Handle timeout - request.ontimeout = function handleTimeout() { - reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED')); + // Normalize val + if (typeof val === 'string') { + val = Buffer.from(val, encoding) + } - // Clean up request - request = null; - }; + // Finally, search either indexOf (if dir is true) or lastIndexOf + if (Buffer.isBuffer(val)) { + // Special case: looking for empty string/buffer always fails + if (val.length === 0) { + return -1 + } + return arrayIndexOf(buffer, val, byteOffset, encoding, dir) + } else if (typeof val === 'number') { + val = val & 0xFF // Search for a byte value [0-255] + if (Buffer.TYPED_ARRAY_SUPPORT && + typeof Uint8Array.prototype.indexOf === 'function') { + if (dir) { + return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) + } else { + return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) + } + } + return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir) + } - // Add xsrf header - // This is only done if running in a standard browser environment. - // Specifically not if we're in a web worker, or react-native. - if (utils.isStandardBrowserEnv()) { - var cookies = __webpack_require__(670); + throw new TypeError('val must be string, number or Buffer') +} - // Add xsrf header - var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ? - cookies.read(config.xsrfCookieName) : - undefined; +function arrayIndexOf (arr, val, byteOffset, encoding, dir) { + var indexSize = 1 + var arrLength = arr.length + var valLength = val.length - if (xsrfValue) { - requestHeaders[config.xsrfHeaderName] = xsrfValue; + if (encoding !== undefined) { + encoding = String(encoding).toLowerCase() + if (encoding === 'ucs2' || encoding === 'ucs-2' || + encoding === 'utf16le' || encoding === 'utf-16le') { + if (arr.length < 2 || val.length < 2) { + return -1 } + indexSize = 2 + arrLength /= 2 + valLength /= 2 + byteOffset /= 2 } + } - // Add headers to the request - if ('setRequestHeader' in request) { - utils.forEach(requestHeaders, function setRequestHeader(val, key) { - if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') { - // Remove Content-Type if data is undefined - delete requestHeaders[key]; - } else { - // Otherwise add header to the request - request.setRequestHeader(key, val); - } - }); + function read (buf, i) { + if (indexSize === 1) { + return buf[i] + } else { + return buf.readUInt16BE(i * indexSize) } + } - // Add withCredentials to request if needed - if (config.withCredentials) { - request.withCredentials = true; + var i + if (dir) { + var foundIndex = -1 + for (i = byteOffset; i < arrLength; i++) { + if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { + if (foundIndex === -1) foundIndex = i + if (i - foundIndex + 1 === valLength) return foundIndex * indexSize + } else { + if (foundIndex !== -1) i -= i - foundIndex + foundIndex = -1 + } } - - // Add responseType to request if needed - if (config.responseType) { - try { - request.responseType = config.responseType; - } catch (e) { - if (request.responseType !== 'json') { - throw e; + } else { + if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength + for (i = byteOffset; i >= 0; i--) { + var found = true + for (var j = 0; j < valLength; j++) { + if (read(arr, i + j) !== read(val, j)) { + found = false + break } } + if (found) return i } + } - // Handle progress if needed - if (typeof config.onDownloadProgress === 'function') { - request.addEventListener('progress', config.onDownloadProgress); - } + return -1 +} - // Not all browsers support upload events - if (typeof config.onUploadProgress === 'function' && request.upload) { - request.upload.addEventListener('progress', config.onUploadProgress); - } +Buffer.prototype.includes = function includes (val, byteOffset, encoding) { + return this.indexOf(val, byteOffset, encoding) !== -1 +} - if (config.cancelToken) { - // Handle cancellation - config.cancelToken.promise.then(function onCanceled(cancel) { - if (!request) { - return; - } +Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { + return bidirectionalIndexOf(this, val, byteOffset, encoding, true) +} - request.abort(); - reject(cancel); - // Clean up request - request = null; - }); - } +Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { + return bidirectionalIndexOf(this, val, byteOffset, encoding, false) +} - if (requestData === undefined) { - requestData = null; +function hexWrite (buf, string, offset, length) { + offset = Number(offset) || 0 + var remaining = buf.length - offset + if (!length) { + length = remaining + } else { + length = Number(length) + if (length > remaining) { + length = remaining } + } - // Send the request - request.send(requestData); - }); -}; + // must be an even number of digits + var strLen = string.length + if (strLen % 2 !== 0) throw new TypeError('Invalid hex string') + if (length > strLen / 2) { + length = strLen / 2 + } + for (var i = 0; i < length; ++i) { + var parsed = parseInt(string.substr(i * 2, 2), 16) + if (isNaN(parsed)) return i + buf[offset + i] = parsed + } + return i +} -/***/ }), -/* 291 */ -/***/ (function(module, exports, __webpack_require__) { +function utf8Write (buf, string, offset, length) { + return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) +} -"use strict"; +function asciiWrite (buf, string, offset, length) { + return blitBuffer(asciiToBytes(string), buf, offset, length) +} +function latin1Write (buf, string, offset, length) { + return asciiWrite(buf, string, offset, length) +} -var enhanceError = __webpack_require__(665); +function base64Write (buf, string, offset, length) { + return blitBuffer(base64ToBytes(string), buf, offset, length) +} -/** - * Create an Error with the specified message, config, error code, and response. - * - * @param {string} message The error message. - * @param {Object} config The config. - * @param {string} [code] The error code (for example, 'ECONNABORTED'). - @ @param {Object} [response] The response. - * @returns {Error} The created error. - */ -module.exports = function createError(message, config, code, response) { - var error = new Error(message); - return enhanceError(error, config, code, response); -}; +function ucs2Write (buf, string, offset, length) { + return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) +} +Buffer.prototype.write = function write (string, offset, length, encoding) { + // Buffer#write(string) + if (offset === undefined) { + encoding = 'utf8' + length = this.length + offset = 0 + // Buffer#write(string, encoding) + } else if (length === undefined && typeof offset === 'string') { + encoding = offset + length = this.length + offset = 0 + // Buffer#write(string, offset[, length][, encoding]) + } else if (isFinite(offset)) { + offset = offset | 0 + if (isFinite(length)) { + length = length | 0 + if (encoding === undefined) encoding = 'utf8' + } else { + encoding = length + length = undefined + } + // legacy write(string, encoding, offset, length) - remove in v0.13 + } else { + throw new Error( + 'Buffer.write(string, encoding, offset[, length]) is no longer supported' + ) + } -/***/ }), -/* 292 */ -/***/ (function(module, exports, __webpack_require__) { + var remaining = this.length - offset + if (length === undefined || length > remaining) length = remaining -"use strict"; + if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { + throw new RangeError('Attempt to write outside buffer bounds') + } + if (!encoding) encoding = 'utf8' -module.exports = function isCancel(value) { - return !!(value && value.__CANCEL__); -}; + var loweredCase = false + for (;;) { + switch (encoding) { + case 'hex': + return hexWrite(this, string, offset, length) + case 'utf8': + case 'utf-8': + return utf8Write(this, string, offset, length) -/***/ }), -/* 293 */ -/***/ (function(module, exports, __webpack_require__) { + case 'ascii': + return asciiWrite(this, string, offset, length) -"use strict"; + case 'latin1': + case 'binary': + return latin1Write(this, string, offset, length) + case 'base64': + // Warning: maxLength not taken into account in base64Write + return base64Write(this, string, offset, length) -/** - * A `Cancel` is an object that is thrown when an operation is canceled. - * - * @class - * @param {string=} message The message. - */ -function Cancel(message) { - this.message = message; + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return ucs2Write(this, string, offset, length) + + default: + if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) + encoding = ('' + encoding).toLowerCase() + loweredCase = true + } + } } -Cancel.prototype.toString = function toString() { - return 'Cancel' + (this.message ? ': ' + this.message : ''); -}; +Buffer.prototype.toJSON = function toJSON () { + return { + type: 'Buffer', + data: Array.prototype.slice.call(this._arr || this, 0) + } +} -Cancel.prototype.__CANCEL__ = true; +function base64Slice (buf, start, end) { + if (start === 0 && end === buf.length) { + return base64.fromByteArray(buf) + } else { + return base64.fromByteArray(buf.slice(start, end)) + } +} -module.exports = Cancel; +function utf8Slice (buf, start, end) { + end = Math.min(buf.length, end) + var res = [] + var i = start + while (i < end) { + var firstByte = buf[i] + var codePoint = null + var bytesPerSequence = (firstByte > 0xEF) ? 4 + : (firstByte > 0xDF) ? 3 + : (firstByte > 0xBF) ? 2 + : 1 -/***/ }), -/* 294 */ -/***/ (function(module, exports, __webpack_require__) { + if (i + bytesPerSequence <= end) { + var secondByte, thirdByte, fourthByte, tempCodePoint -/* WEBPACK VAR INJECTION */(function(global) {var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* - * $Id: base64.js,v 2.15 2014/04/05 12:58:57 dankogai Exp dankogai $ - * - * Licensed under the BSD 3-Clause License. - * http://opensource.org/licenses/BSD-3-Clause - * - * References: - * http://en.wikipedia.org/wiki/Base64 - */ -;(function (global, factory) { - true ? module.exports = factory(global) : - typeof define === 'function' && define.amd ? define(factory) : - global.moment = factory(global) -}(( typeof self !== 'undefined' ? self -: typeof window !== 'undefined' ? window -: typeof global !== 'undefined' ? global -: this -), function(global) { - 'use strict'; - // existing version for noConflict() - var _Base64 = global.Base64; - var version = "2.4.0"; - // if node.js, we use Buffer - var buffer; - if (typeof module !== 'undefined' && module.exports) { - try { - buffer = __webpack_require__(295).Buffer; - } catch (err) {} - } - // constants - var b64chars - = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; - var b64tab = function(bin) { - var t = {}; - for (var i = 0, l = bin.length; i < l; i++) t[bin.charAt(i)] = i; - return t; - }(b64chars); - var fromCharCode = String.fromCharCode; - // encoder stuff - var cb_utob = function(c) { - if (c.length < 2) { - var cc = c.charCodeAt(0); - return cc < 0x80 ? c - : cc < 0x800 ? (fromCharCode(0xc0 | (cc >>> 6)) - + fromCharCode(0x80 | (cc & 0x3f))) - : (fromCharCode(0xe0 | ((cc >>> 12) & 0x0f)) - + fromCharCode(0x80 | ((cc >>> 6) & 0x3f)) - + fromCharCode(0x80 | ( cc & 0x3f))); - } else { - var cc = 0x10000 - + (c.charCodeAt(0) - 0xD800) * 0x400 - + (c.charCodeAt(1) - 0xDC00); - return (fromCharCode(0xf0 | ((cc >>> 18) & 0x07)) - + fromCharCode(0x80 | ((cc >>> 12) & 0x3f)) - + fromCharCode(0x80 | ((cc >>> 6) & 0x3f)) - + fromCharCode(0x80 | ( cc & 0x3f))); - } - }; - var re_utob = /[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g; - var utob = function(u) { - return u.replace(re_utob, cb_utob); - }; - var cb_encode = function(ccc) { - var padlen = [0, 2, 1][ccc.length % 3], - ord = ccc.charCodeAt(0) << 16 - | ((ccc.length > 1 ? ccc.charCodeAt(1) : 0) << 8) - | ((ccc.length > 2 ? ccc.charCodeAt(2) : 0)), - chars = [ - b64chars.charAt( ord >>> 18), - b64chars.charAt((ord >>> 12) & 63), - padlen >= 2 ? '=' : b64chars.charAt((ord >>> 6) & 63), - padlen >= 1 ? '=' : b64chars.charAt(ord & 63) - ]; - return chars.join(''); - }; - var btoa = global.btoa ? function(b) { - return global.btoa(b); - } : function(b) { - return b.replace(/[\s\S]{1,3}/g, cb_encode); - }; - var _encode = buffer ? - buffer.from && buffer.from !== Uint8Array.from ? function (u) { - return (u.constructor === buffer.constructor ? u : buffer.from(u)) - .toString('base64') - } - : function (u) { - return (u.constructor === buffer.constructor ? u : new buffer(u)) - .toString('base64') - } - : function (u) { return btoa(utob(u)) } - ; - var encode = function(u, urisafe) { - return !urisafe - ? _encode(String(u)) - : _encode(String(u)).replace(/[+\/]/g, function(m0) { - return m0 == '+' ? '-' : '_'; - }).replace(/=/g, ''); - }; - var encodeURI = function(u) { return encode(u, true) }; - // decoder stuff - var re_btou = new RegExp([ - '[\xC0-\xDF][\x80-\xBF]', - '[\xE0-\xEF][\x80-\xBF]{2}', - '[\xF0-\xF7][\x80-\xBF]{3}' - ].join('|'), 'g'); - var cb_btou = function(cccc) { - switch(cccc.length) { - case 4: - var cp = ((0x07 & cccc.charCodeAt(0)) << 18) - | ((0x3f & cccc.charCodeAt(1)) << 12) - | ((0x3f & cccc.charCodeAt(2)) << 6) - | (0x3f & cccc.charCodeAt(3)), - offset = cp - 0x10000; - return (fromCharCode((offset >>> 10) + 0xD800) - + fromCharCode((offset & 0x3FF) + 0xDC00)); + switch (bytesPerSequence) { + case 1: + if (firstByte < 0x80) { + codePoint = firstByte + } + break + case 2: + secondByte = buf[i + 1] + if ((secondByte & 0xC0) === 0x80) { + tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) + if (tempCodePoint > 0x7F) { + codePoint = tempCodePoint + } + } + break case 3: - return fromCharCode( - ((0x0f & cccc.charCodeAt(0)) << 12) - | ((0x3f & cccc.charCodeAt(1)) << 6) - | (0x3f & cccc.charCodeAt(2)) - ); - default: - return fromCharCode( - ((0x1f & cccc.charCodeAt(0)) << 6) - | (0x3f & cccc.charCodeAt(1)) - ); - } - }; - var btou = function(b) { - return b.replace(re_btou, cb_btou); - }; - var cb_decode = function(cccc) { - var len = cccc.length, - padlen = len % 4, - n = (len > 0 ? b64tab[cccc.charAt(0)] << 18 : 0) - | (len > 1 ? b64tab[cccc.charAt(1)] << 12 : 0) - | (len > 2 ? b64tab[cccc.charAt(2)] << 6 : 0) - | (len > 3 ? b64tab[cccc.charAt(3)] : 0), - chars = [ - fromCharCode( n >>> 16), - fromCharCode((n >>> 8) & 0xff), - fromCharCode( n & 0xff) - ]; - chars.length -= [0, 0, 2, 1][padlen]; - return chars.join(''); - }; - var atob = global.atob ? function(a) { - return global.atob(a); - } : function(a){ - return a.replace(/[\s\S]{1,4}/g, cb_decode); - }; - var _decode = buffer ? - buffer.from && buffer.from !== Uint8Array.from ? function(a) { - return (a.constructor === buffer.constructor - ? a : buffer.from(a, 'base64')).toString(); - } - : function(a) { - return (a.constructor === buffer.constructor - ? a : new buffer(a, 'base64')).toString(); - } - : function(a) { return btou(atob(a)) }; - var decode = function(a){ - return _decode( - String(a).replace(/[-_]/g, function(m0) { return m0 == '-' ? '+' : '/' }) - .replace(/[^A-Za-z0-9\+\/]/g, '') - ); - }; - var noConflict = function() { - var Base64 = global.Base64; - global.Base64 = _Base64; - return Base64; - }; - // export Base64 - global.Base64 = { - VERSION: version, - atob: atob, - btoa: btoa, - fromBase64: decode, - toBase64: encode, - utob: utob, - encode: encode, - encodeURI: encodeURI, - btou: btou, - decode: decode, - noConflict: noConflict - }; - // if ES5 is available, make Base64.extendString() available - if (typeof Object.defineProperty === 'function') { - var noEnum = function(v){ - return {value:v,enumerable:false,writable:true,configurable:true}; - }; - global.Base64.extendString = function () { - Object.defineProperty( - String.prototype, 'fromBase64', noEnum(function () { - return decode(this) - })); - Object.defineProperty( - String.prototype, 'toBase64', noEnum(function (urisafe) { - return encode(this, urisafe) - })); - Object.defineProperty( - String.prototype, 'toBase64URI', noEnum(function () { - return encode(this, true) - })); - }; - } - // - // export Base64 to the namespace - // - if (global['Meteor']) { // Meteor.js - Base64 = global.Base64; - } - // module.exports and AMD are mutually exclusive. - // module.exports has precedence. - if (typeof module !== 'undefined' && module.exports) { - module.exports.Base64 = global.Base64; + secondByte = buf[i + 1] + thirdByte = buf[i + 2] + if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { + tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) + if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { + codePoint = tempCodePoint + } + } + break + case 4: + secondByte = buf[i + 1] + thirdByte = buf[i + 2] + fourthByte = buf[i + 3] + if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { + tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) + if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { + codePoint = tempCodePoint + } + } + } } - else if (true) { - // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function(){ return global.Base64 }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); + + if (codePoint === null) { + // we did not generate a valid codePoint so insert a + // replacement char (U+FFFD) and advance only 1 byte + codePoint = 0xFFFD + bytesPerSequence = 1 + } else if (codePoint > 0xFFFF) { + // encode to utf16 (surrogate pair dance) + codePoint -= 0x10000 + res.push(codePoint >>> 10 & 0x3FF | 0xD800) + codePoint = 0xDC00 | codePoint & 0x3FF } - // that's it! - return {Base64: global.Base64} -})); -/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(62))) + res.push(codePoint) + i += bytesPerSequence + } -/***/ }), -/* 295 */ -/***/ (function(module, exports, __webpack_require__) { + return decodeCodePointsArray(res) +} -"use strict"; -/* WEBPACK VAR INJECTION */(function(global) {/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ -/* eslint-disable no-proto */ +// Based on http://stackoverflow.com/a/22747272/680742, the browser with +// the lowest limit is Chrome, with 0x10000 args. +// We go 1 magnitude less, for safety +var MAX_ARGUMENTS_LENGTH = 0x1000 +function decodeCodePointsArray (codePoints) { + var len = codePoints.length + if (len <= MAX_ARGUMENTS_LENGTH) { + return String.fromCharCode.apply(String, codePoints) // avoid extra slice() + } + // Decode in chunks to avoid "call stack size exceeded". + var res = '' + var i = 0 + while (i < len) { + res += String.fromCharCode.apply( + String, + codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) + ) + } + return res +} -var base64 = __webpack_require__(680) -var ieee754 = __webpack_require__(681) -var isArray = __webpack_require__(682) +function asciiSlice (buf, start, end) { + var ret = '' + end = Math.min(buf.length, end) -exports.Buffer = Buffer -exports.SlowBuffer = SlowBuffer -exports.INSPECT_MAX_BYTES = 50 + for (var i = start; i < end; ++i) { + ret += String.fromCharCode(buf[i] & 0x7F) + } + return ret +} -/** - * If `Buffer.TYPED_ARRAY_SUPPORT`: - * === true Use Uint8Array implementation (fastest) - * === false Use Object implementation (most compatible, even IE6) - * - * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, - * Opera 11.6+, iOS 4.2+. - * - * Due to various browser bugs, sometimes the Object implementation will be used even - * when the browser supports typed arrays. - * - * Note: - * - * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances, - * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438. - * - * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function. - * - * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of - * incorrect length in some situations. +function latin1Slice (buf, start, end) { + var ret = '' + end = Math.min(buf.length, end) - * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they - * get the Object implementation, which is slower but behaves correctly. - */ -Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined - ? global.TYPED_ARRAY_SUPPORT - : typedArraySupport() + for (var i = start; i < end; ++i) { + ret += String.fromCharCode(buf[i]) + } + return ret +} -/* - * Export kMaxLength after typed array support is determined. - */ -exports.kMaxLength = kMaxLength() +function hexSlice (buf, start, end) { + var len = buf.length -function typedArraySupport () { - try { - var arr = new Uint8Array(1) - arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }} - return arr.foo() === 42 && // typed array instances can be augmented - typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray` - arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray` - } catch (e) { - return false + if (!start || start < 0) start = 0 + if (!end || end < 0 || end > len) end = len + + var out = '' + for (var i = start; i < end; ++i) { + out += toHex(buf[i]) } + return out } -function kMaxLength () { - return Buffer.TYPED_ARRAY_SUPPORT - ? 0x7fffffff - : 0x3fffffff +function utf16leSlice (buf, start, end) { + var bytes = buf.slice(start, end) + var res = '' + for (var i = 0; i < bytes.length; i += 2) { + res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256) + } + return res } -function createBuffer (that, length) { - if (kMaxLength() < length) { - throw new RangeError('Invalid typed array length') +Buffer.prototype.slice = function slice (start, end) { + var len = this.length + start = ~~start + end = end === undefined ? len : ~~end + + if (start < 0) { + start += len + if (start < 0) start = 0 + } else if (start > len) { + start = len + } + + if (end < 0) { + end += len + if (end < 0) end = 0 + } else if (end > len) { + end = len } + + if (end < start) end = start + + var newBuf if (Buffer.TYPED_ARRAY_SUPPORT) { - // Return an augmented `Uint8Array` instance, for best performance - that = new Uint8Array(length) - that.__proto__ = Buffer.prototype + newBuf = this.subarray(start, end) + newBuf.__proto__ = Buffer.prototype } else { - // Fallback: Return an object instance of the Buffer class - if (that === null) { - that = new Buffer(length) + var sliceLen = end - start + newBuf = new Buffer(sliceLen, undefined) + for (var i = 0; i < sliceLen; ++i) { + newBuf[i] = this[i + start] } - that.length = length } - return that + return newBuf } -/** - * The Buffer constructor returns instances of `Uint8Array` that have their - * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of - * `Uint8Array`, so the returned instances will have all the node `Buffer` methods - * and the `Uint8Array` methods. Square bracket notation works as expected -- it - * returns a single octet. - * - * The `Uint8Array` prototype remains unmodified. +/* + * Need to make sure that buffer isn't trying to write out of bounds. */ +function checkOffset (offset, ext, length) { + if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') + if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') +} -function Buffer (arg, encodingOrOffset, length) { - if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) { - return new Buffer(arg, encodingOrOffset, length) - } +Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) - // Common case. - if (typeof arg === 'number') { - if (typeof encodingOrOffset === 'string') { - throw new Error( - 'If encoding is specified then the first argument must be a string' - ) - } - return allocUnsafe(this, arg) + var val = this[offset] + var mul = 1 + var i = 0 + while (++i < byteLength && (mul *= 0x100)) { + val += this[offset + i] * mul } - return from(this, arg, encodingOrOffset, length) -} - -Buffer.poolSize = 8192 // not used by this implementation -// TODO: Legacy, not needed anymore. Remove in next major version. -Buffer._augment = function (arr) { - arr.__proto__ = Buffer.prototype - return arr + return val } -function from (that, value, encodingOrOffset, length) { - if (typeof value === 'number') { - throw new TypeError('"value" argument must not be a number') +Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + checkOffset(offset, byteLength, this.length) } - if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) { - return fromArrayBuffer(that, value, encodingOrOffset, length) + var val = this[offset + --byteLength] + var mul = 1 + while (byteLength > 0 && (mul *= 0x100)) { + val += this[offset + --byteLength] * mul } - if (typeof value === 'string') { - return fromString(that, value, encodingOrOffset) - } + return val +} - return fromObject(that, value) +Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { + if (!noAssert) checkOffset(offset, 1, this.length) + return this[offset] } -/** - * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError - * if value is a number. - * Buffer.from(str[, encoding]) - * Buffer.from(array) - * Buffer.from(buffer) - * Buffer.from(arrayBuffer[, byteOffset[, length]]) - **/ -Buffer.from = function (value, encodingOrOffset, length) { - return from(null, value, encodingOrOffset, length) +Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + return this[offset] | (this[offset + 1] << 8) } -if (Buffer.TYPED_ARRAY_SUPPORT) { - Buffer.prototype.__proto__ = Uint8Array.prototype - Buffer.__proto__ = Uint8Array - if (typeof Symbol !== 'undefined' && Symbol.species && - Buffer[Symbol.species] === Buffer) { - // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 - Object.defineProperty(Buffer, Symbol.species, { - value: null, - configurable: true - }) - } +Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + return (this[offset] << 8) | this[offset + 1] } -function assertSize (size) { - if (typeof size !== 'number') { - throw new TypeError('"size" argument must be a number') - } else if (size < 0) { - throw new RangeError('"size" argument must not be negative') - } +Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return ((this[offset]) | + (this[offset + 1] << 8) | + (this[offset + 2] << 16)) + + (this[offset + 3] * 0x1000000) } -function alloc (that, size, fill, encoding) { - assertSize(size) - if (size <= 0) { - return createBuffer(that, size) +Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset] * 0x1000000) + + ((this[offset + 1] << 16) | + (this[offset + 2] << 8) | + this[offset + 3]) +} + +Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var val = this[offset] + var mul = 1 + var i = 0 + while (++i < byteLength && (mul *= 0x100)) { + val += this[offset + i] * mul } - if (fill !== undefined) { - // Only pay attention to encoding if it's a string. This - // prevents accidentally sending in a number that would - // be interpretted as a start offset. - return typeof encoding === 'string' - ? createBuffer(that, size).fill(fill, encoding) - : createBuffer(that, size).fill(fill) + mul *= 0x80 + + if (val >= mul) val -= Math.pow(2, 8 * byteLength) + + return val +} + +Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var i = byteLength + var mul = 1 + var val = this[offset + --i] + while (i > 0 && (mul *= 0x100)) { + val += this[offset + --i] * mul } - return createBuffer(that, size) + mul *= 0x80 + + if (val >= mul) val -= Math.pow(2, 8 * byteLength) + + return val } -/** - * Creates a new filled Buffer instance. - * alloc(size[, fill[, encoding]]) - **/ -Buffer.alloc = function (size, fill, encoding) { - return alloc(null, size, fill, encoding) +Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { + if (!noAssert) checkOffset(offset, 1, this.length) + if (!(this[offset] & 0x80)) return (this[offset]) + return ((0xff - this[offset] + 1) * -1) } -function allocUnsafe (that, size) { - assertSize(size) - that = createBuffer(that, size < 0 ? 0 : checked(size) | 0) - if (!Buffer.TYPED_ARRAY_SUPPORT) { - for (var i = 0; i < size; ++i) { - that[i] = 0 - } - } - return that +Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + var val = this[offset] | (this[offset + 1] << 8) + return (val & 0x8000) ? val | 0xFFFF0000 : val } -/** - * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. - * */ -Buffer.allocUnsafe = function (size) { - return allocUnsafe(null, size) +Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + var val = this[offset + 1] | (this[offset] << 8) + return (val & 0x8000) ? val | 0xFFFF0000 : val } -/** - * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. - */ -Buffer.allocUnsafeSlow = function (size) { - return allocUnsafe(null, size) + +Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset]) | + (this[offset + 1] << 8) | + (this[offset + 2] << 16) | + (this[offset + 3] << 24) } -function fromString (that, string, encoding) { - if (typeof encoding !== 'string' || encoding === '') { - encoding = 'utf8' +Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset] << 24) | + (this[offset + 1] << 16) | + (this[offset + 2] << 8) | + (this[offset + 3]) +} + +Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + return ieee754.read(this, offset, true, 23, 4) +} + +Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + return ieee754.read(this, offset, false, 23, 4) +} + +Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 8, this.length) + return ieee754.read(this, offset, true, 52, 8) +} + +Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 8, this.length) + return ieee754.read(this, offset, false, 52, 8) +} + +function checkInt (buf, value, offset, ext, max, min) { + if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') + if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') + if (offset + ext > buf.length) throw new RangeError('Index out of range') +} + +Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + var maxBytes = Math.pow(2, 8 * byteLength) - 1 + checkInt(this, value, offset, byteLength, maxBytes, 0) } - if (!Buffer.isEncoding(encoding)) { - throw new TypeError('"encoding" must be a valid string encoding') + var mul = 1 + var i = 0 + this[offset] = value & 0xFF + while (++i < byteLength && (mul *= 0x100)) { + this[offset + i] = (value / mul) & 0xFF } - var length = byteLength(string, encoding) | 0 - that = createBuffer(that, length) + return offset + byteLength +} - var actual = that.write(string, encoding) +Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + var maxBytes = Math.pow(2, 8 * byteLength) - 1 + checkInt(this, value, offset, byteLength, maxBytes, 0) + } - if (actual !== length) { - // Writing a hex string, for example, that contains invalid characters will - // cause everything after the first invalid character to be ignored. (e.g. - // 'abxxcd' will be treated as 'ab') - that = that.slice(0, actual) + var i = byteLength - 1 + var mul = 1 + this[offset + i] = value & 0xFF + while (--i >= 0 && (mul *= 0x100)) { + this[offset + i] = (value / mul) & 0xFF } - return that + return offset + byteLength } -function fromArrayLike (that, array) { - var length = array.length < 0 ? 0 : checked(array.length) | 0 - that = createBuffer(that, length) - for (var i = 0; i < length; i += 1) { - that[i] = array[i] & 255 +Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) + if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) + this[offset] = (value & 0xff) + return offset + 1 +} + +function objectWriteUInt16 (buf, value, offset, littleEndian) { + if (value < 0) value = 0xffff + value + 1 + for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) { + buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>> + (littleEndian ? i : 1 - i) * 8 } - return that } -function fromArrayBuffer (that, array, byteOffset, length) { - array.byteLength // this throws if `array` is not a valid ArrayBuffer +Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value & 0xff) + this[offset + 1] = (value >>> 8) + } else { + objectWriteUInt16(this, value, offset, true) + } + return offset + 2 +} - if (byteOffset < 0 || array.byteLength < byteOffset) { - throw new RangeError('\'offset\' is out of bounds') +Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 8) + this[offset + 1] = (value & 0xff) + } else { + objectWriteUInt16(this, value, offset, false) } + return offset + 2 +} - if (array.byteLength < byteOffset + (length || 0)) { - throw new RangeError('\'length\' is out of bounds') +function objectWriteUInt32 (buf, value, offset, littleEndian) { + if (value < 0) value = 0xffffffff + value + 1 + for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) { + buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff } +} - if (byteOffset === undefined && length === undefined) { - array = new Uint8Array(array) - } else if (length === undefined) { - array = new Uint8Array(array, byteOffset) +Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset + 3] = (value >>> 24) + this[offset + 2] = (value >>> 16) + this[offset + 1] = (value >>> 8) + this[offset] = (value & 0xff) } else { - array = new Uint8Array(array, byteOffset, length) + objectWriteUInt32(this, value, offset, true) } + return offset + 4 +} +Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) if (Buffer.TYPED_ARRAY_SUPPORT) { - // Return an augmented `Uint8Array` instance, for best performance - that = array - that.__proto__ = Buffer.prototype + this[offset] = (value >>> 24) + this[offset + 1] = (value >>> 16) + this[offset + 2] = (value >>> 8) + this[offset + 3] = (value & 0xff) } else { - // Fallback: Return an object instance of the Buffer class - that = fromArrayLike(that, array) + objectWriteUInt32(this, value, offset, false) } - return that + return offset + 4 } -function fromObject (that, obj) { - if (Buffer.isBuffer(obj)) { - var len = checked(obj.length) | 0 - that = createBuffer(that, len) +Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) { + var limit = Math.pow(2, 8 * byteLength - 1) - if (that.length === 0) { - return that + checkInt(this, value, offset, byteLength, limit - 1, -limit) + } + + var i = 0 + var mul = 1 + var sub = 0 + this[offset] = value & 0xFF + while (++i < byteLength && (mul *= 0x100)) { + if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { + sub = 1 } + this[offset + i] = ((value / mul) >> 0) - sub & 0xFF + } - obj.copy(that, 0, 0, len) - return that + return offset + byteLength +} + +Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) { + var limit = Math.pow(2, 8 * byteLength - 1) + + checkInt(this, value, offset, byteLength, limit - 1, -limit) } - if (obj) { - if ((typeof ArrayBuffer !== 'undefined' && - obj.buffer instanceof ArrayBuffer) || 'length' in obj) { - if (typeof obj.length !== 'number' || isnan(obj.length)) { - return createBuffer(that, 0) - } - return fromArrayLike(that, obj) + var i = byteLength - 1 + var mul = 1 + var sub = 0 + this[offset + i] = value & 0xFF + while (--i >= 0 && (mul *= 0x100)) { + if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { + sub = 1 } + this[offset + i] = ((value / mul) >> 0) - sub & 0xFF + } - if (obj.type === 'Buffer' && isArray(obj.data)) { - return fromArrayLike(that, obj.data) - } + return offset + byteLength +} + +Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) + if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) + if (value < 0) value = 0xff + value + 1 + this[offset] = (value & 0xff) + return offset + 1 +} + +Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value & 0xff) + this[offset + 1] = (value >>> 8) + } else { + objectWriteUInt16(this, value, offset, true) } + return offset + 2 +} - throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.') +Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 8) + this[offset + 1] = (value & 0xff) + } else { + objectWriteUInt16(this, value, offset, false) + } + return offset + 2 } -function checked (length) { - // Note: cannot use `length < kMaxLength()` here because that fails when - // length is NaN (which is otherwise coerced to zero.) - if (length >= kMaxLength()) { - throw new RangeError('Attempt to allocate Buffer larger than maximum ' + - 'size: 0x' + kMaxLength().toString(16) + ' bytes') +Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value & 0xff) + this[offset + 1] = (value >>> 8) + this[offset + 2] = (value >>> 16) + this[offset + 3] = (value >>> 24) + } else { + objectWriteUInt32(this, value, offset, true) } - return length | 0 + return offset + 4 } -function SlowBuffer (length) { - if (+length != length) { // eslint-disable-line eqeqeq - length = 0 +Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) + if (value < 0) value = 0xffffffff + value + 1 + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 24) + this[offset + 1] = (value >>> 16) + this[offset + 2] = (value >>> 8) + this[offset + 3] = (value & 0xff) + } else { + objectWriteUInt32(this, value, offset, false) } - return Buffer.alloc(+length) + return offset + 4 } -Buffer.isBuffer = function isBuffer (b) { - return !!(b != null && b._isBuffer) +function checkIEEE754 (buf, value, offset, ext, max, min) { + if (offset + ext > buf.length) throw new RangeError('Index out of range') + if (offset < 0) throw new RangeError('Index out of range') } -Buffer.compare = function compare (a, b) { - if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { - throw new TypeError('Arguments must be Buffers') +function writeFloat (buf, value, offset, littleEndian, noAssert) { + if (!noAssert) { + checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) } + ieee754.write(buf, value, offset, littleEndian, 23, 4) + return offset + 4 +} - if (a === b) return 0 +Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { + return writeFloat(this, value, offset, true, noAssert) +} - var x = a.length - var y = b.length +Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { + return writeFloat(this, value, offset, false, noAssert) +} - for (var i = 0, len = Math.min(x, y); i < len; ++i) { - if (a[i] !== b[i]) { - x = a[i] - y = b[i] - break - } +function writeDouble (buf, value, offset, littleEndian, noAssert) { + if (!noAssert) { + checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) } + ieee754.write(buf, value, offset, littleEndian, 52, 8) + return offset + 8 +} - if (x < y) return -1 - if (y < x) return 1 - return 0 +Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { + return writeDouble(this, value, offset, true, noAssert) } -Buffer.isEncoding = function isEncoding (encoding) { - switch (String(encoding).toLowerCase()) { - case 'hex': - case 'utf8': - case 'utf-8': - case 'ascii': - case 'latin1': - case 'binary': - case 'base64': - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return true - default: - return false - } +Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { + return writeDouble(this, value, offset, false, noAssert) } -Buffer.concat = function concat (list, length) { - if (!isArray(list)) { - throw new TypeError('"list" argument must be an Array of Buffers') +// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) +Buffer.prototype.copy = function copy (target, targetStart, start, end) { + if (!start) start = 0 + if (!end && end !== 0) end = this.length + if (targetStart >= target.length) targetStart = target.length + if (!targetStart) targetStart = 0 + if (end > 0 && end < start) end = start + + // Copy 0 bytes; we're done + if (end === start) return 0 + if (target.length === 0 || this.length === 0) return 0 + + // Fatal error conditions + if (targetStart < 0) { + throw new RangeError('targetStart out of bounds') } + if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds') + if (end < 0) throw new RangeError('sourceEnd out of bounds') - if (list.length === 0) { - return Buffer.alloc(0) + // Are we oob? + if (end > this.length) end = this.length + if (target.length - targetStart < end - start) { + end = target.length - targetStart + start } + var len = end - start var i - if (length === undefined) { - length = 0 - for (i = 0; i < list.length; ++i) { - length += list[i].length - } - } - var buffer = Buffer.allocUnsafe(length) - var pos = 0 - for (i = 0; i < list.length; ++i) { - var buf = list[i] - if (!Buffer.isBuffer(buf)) { - throw new TypeError('"list" argument must be an Array of Buffers') + if (this === target && start < targetStart && targetStart < end) { + // descending copy from end + for (i = len - 1; i >= 0; --i) { + target[i + targetStart] = this[i + start] } - buf.copy(buffer, pos) - pos += buf.length + } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) { + // ascending copy from start + for (i = 0; i < len; ++i) { + target[i + targetStart] = this[i + start] + } + } else { + Uint8Array.prototype.set.call( + target, + this.subarray(start, start + len), + targetStart + ) } - return buffer + + return len } -function byteLength (string, encoding) { - if (Buffer.isBuffer(string)) { - return string.length +// Usage: +// buffer.fill(number[, offset[, end]]) +// buffer.fill(buffer[, offset[, end]]) +// buffer.fill(string[, offset[, end]][, encoding]) +Buffer.prototype.fill = function fill (val, start, end, encoding) { + // Handle string cases: + if (typeof val === 'string') { + if (typeof start === 'string') { + encoding = start + start = 0 + end = this.length + } else if (typeof end === 'string') { + encoding = end + end = this.length + } + if (val.length === 1) { + var code = val.charCodeAt(0) + if (code < 256) { + val = code + } + } + if (encoding !== undefined && typeof encoding !== 'string') { + throw new TypeError('encoding must be a string') + } + if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { + throw new TypeError('Unknown encoding: ' + encoding) + } + } else if (typeof val === 'number') { + val = val & 255 } - if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' && - (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) { - return string.byteLength + + // Invalid ranges are not set to a default, so can range check early. + if (start < 0 || this.length < start || this.length < end) { + throw new RangeError('Out of range index') } - if (typeof string !== 'string') { - string = '' + string + + if (end <= start) { + return this } - var len = string.length - if (len === 0) return 0 + start = start >>> 0 + end = end === undefined ? this.length : end >>> 0 - // Use a for loop to avoid recursion - var loweredCase = false - for (;;) { - switch (encoding) { - case 'ascii': - case 'latin1': - case 'binary': - return len - case 'utf8': - case 'utf-8': - case undefined: - return utf8ToBytes(string).length - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return len * 2 - case 'hex': - return len >>> 1 - case 'base64': - return base64ToBytes(string).length - default: - if (loweredCase) return utf8ToBytes(string).length // assume utf8 - encoding = ('' + encoding).toLowerCase() - loweredCase = true + if (!val) val = 0 + + var i + if (typeof val === 'number') { + for (i = start; i < end; ++i) { + this[i] = val + } + } else { + var bytes = Buffer.isBuffer(val) + ? val + : utf8ToBytes(new Buffer(val, encoding).toString()) + var len = bytes.length + for (i = 0; i < end - start; ++i) { + this[i + start] = bytes[i % len] } } -} -Buffer.byteLength = byteLength -function slowToString (encoding, start, end) { - var loweredCase = false + return this +} - // No need to verify that "this.length <= MAX_UINT32" since it's a read-only - // property of a typed array. +// HELPER FUNCTIONS +// ================ - // This behaves neither like String nor Uint8Array in that we set start/end - // to their upper/lower bounds if the value passed is out of range. - // undefined is handled specially as per ECMA-262 6th Edition, - // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. - if (start === undefined || start < 0) { - start = 0 - } - // Return early if start > this.length. Done here to prevent potential uint32 - // coercion fail below. - if (start > this.length) { - return '' - } +var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g - if (end === undefined || end > this.length) { - end = this.length +function base64clean (str) { + // Node strips out invalid characters like \n and \t from the string, base64-js does not + str = stringtrim(str).replace(INVALID_BASE64_RE, '') + // Node converts strings with length < 2 to '' + if (str.length < 2) return '' + // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not + while (str.length % 4 !== 0) { + str = str + '=' } + return str +} - if (end <= 0) { - return '' - } +function stringtrim (str) { + if (str.trim) return str.trim() + return str.replace(/^\s+|\s+$/g, '') +} - // Force coersion to uint32. This will also coerce falsey/NaN values to 0. - end >>>= 0 - start >>>= 0 +function toHex (n) { + if (n < 16) return '0' + n.toString(16) + return n.toString(16) +} - if (end <= start) { - return '' - } +function utf8ToBytes (string, units) { + units = units || Infinity + var codePoint + var length = string.length + var leadSurrogate = null + var bytes = [] - if (!encoding) encoding = 'utf8' + for (var i = 0; i < length; ++i) { + codePoint = string.charCodeAt(i) - while (true) { - switch (encoding) { - case 'hex': - return hexSlice(this, start, end) + // is surrogate component + if (codePoint > 0xD7FF && codePoint < 0xE000) { + // last char was a lead + if (!leadSurrogate) { + // no lead yet + if (codePoint > 0xDBFF) { + // unexpected trail + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + continue + } else if (i + 1 === length) { + // unpaired lead + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + continue + } - case 'utf8': - case 'utf-8': - return utf8Slice(this, start, end) + // valid lead + leadSurrogate = codePoint - case 'ascii': - return asciiSlice(this, start, end) + continue + } - case 'latin1': - case 'binary': - return latin1Slice(this, start, end) + // 2 leads in a row + if (codePoint < 0xDC00) { + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + leadSurrogate = codePoint + continue + } - case 'base64': - return base64Slice(this, start, end) + // valid surrogate pair + codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 + } else if (leadSurrogate) { + // valid bmp char, but last char was a lead + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + } - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return utf16leSlice(this, start, end) + leadSurrogate = null - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = (encoding + '').toLowerCase() - loweredCase = true + // encode utf8 + if (codePoint < 0x80) { + if ((units -= 1) < 0) break + bytes.push(codePoint) + } else if (codePoint < 0x800) { + if ((units -= 2) < 0) break + bytes.push( + codePoint >> 0x6 | 0xC0, + codePoint & 0x3F | 0x80 + ) + } else if (codePoint < 0x10000) { + if ((units -= 3) < 0) break + bytes.push( + codePoint >> 0xC | 0xE0, + codePoint >> 0x6 & 0x3F | 0x80, + codePoint & 0x3F | 0x80 + ) + } else if (codePoint < 0x110000) { + if ((units -= 4) < 0) break + bytes.push( + codePoint >> 0x12 | 0xF0, + codePoint >> 0xC & 0x3F | 0x80, + codePoint >> 0x6 & 0x3F | 0x80, + codePoint & 0x3F | 0x80 + ) + } else { + throw new Error('Invalid code point') } } -} - -// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect -// Buffer instances. -Buffer.prototype._isBuffer = true -function swap (b, n, m) { - var i = b[n] - b[n] = b[m] - b[m] = i + return bytes } -Buffer.prototype.swap16 = function swap16 () { - var len = this.length - if (len % 2 !== 0) { - throw new RangeError('Buffer size must be a multiple of 16-bits') - } - for (var i = 0; i < len; i += 2) { - swap(this, i, i + 1) +function asciiToBytes (str) { + var byteArray = [] + for (var i = 0; i < str.length; ++i) { + // Node's code seems to be doing this and not & 0x7F.. + byteArray.push(str.charCodeAt(i) & 0xFF) } - return this + return byteArray } -Buffer.prototype.swap32 = function swap32 () { - var len = this.length - if (len % 4 !== 0) { - throw new RangeError('Buffer size must be a multiple of 32-bits') - } - for (var i = 0; i < len; i += 4) { - swap(this, i, i + 3) - swap(this, i + 1, i + 2) - } - return this -} +function utf16leToBytes (str, units) { + var c, hi, lo + var byteArray = [] + for (var i = 0; i < str.length; ++i) { + if ((units -= 2) < 0) break -Buffer.prototype.swap64 = function swap64 () { - var len = this.length - if (len % 8 !== 0) { - throw new RangeError('Buffer size must be a multiple of 64-bits') - } - for (var i = 0; i < len; i += 8) { - swap(this, i, i + 7) - swap(this, i + 1, i + 6) - swap(this, i + 2, i + 5) - swap(this, i + 3, i + 4) + c = str.charCodeAt(i) + hi = c >> 8 + lo = c % 256 + byteArray.push(lo) + byteArray.push(hi) } - return this -} -Buffer.prototype.toString = function toString () { - var length = this.length | 0 - if (length === 0) return '' - if (arguments.length === 0) return utf8Slice(this, 0, length) - return slowToString.apply(this, arguments) + return byteArray } -Buffer.prototype.equals = function equals (b) { - if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') - if (this === b) return true - return Buffer.compare(this, b) === 0 +function base64ToBytes (str) { + return base64.toByteArray(base64clean(str)) } -Buffer.prototype.inspect = function inspect () { - var str = '' - var max = exports.INSPECT_MAX_BYTES - if (this.length > 0) { - str = this.toString('hex', 0, max).match(/.{2}/g).join(' ') - if (this.length > max) str += ' ... ' +function blitBuffer (src, dst, offset, length) { + for (var i = 0; i < length; ++i) { + if ((i + offset >= dst.length) || (i >= src.length)) break + dst[i + offset] = src[i] } - return '' + return i } -Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { - if (!Buffer.isBuffer(target)) { - throw new TypeError('Argument must be a Buffer') - } +function isnan (val) { + return val !== val // eslint-disable-line no-self-compare +} - if (start === undefined) { - start = 0 - } - if (end === undefined) { - end = target ? target.length : 0 - } - if (thisStart === undefined) { - thisStart = 0 - } - if (thisEnd === undefined) { - thisEnd = this.length - } +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(53))) - if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { - throw new RangeError('out of range index') - } +/***/ }), +/* 273 */ +/***/ (function(module, exports, __webpack_require__) { - if (thisStart >= thisEnd && start >= end) { - return 0 - } - if (thisStart >= thisEnd) { - return -1 - } - if (start >= end) { - return 1 - } +module.exports = { "default": __webpack_require__(652), __esModule: true }; - start >>>= 0 - end >>>= 0 - thisStart >>>= 0 - thisEnd >>>= 0 +/***/ }), +/* 274 */ +/***/ (function(module, exports, __webpack_require__) { - if (this === target) return 0 +"use strict"; - var x = thisEnd - thisStart - var y = end - start - var len = Math.min(x, y) - var thisCopy = this.slice(thisStart, thisEnd) - var targetCopy = target.slice(start, end) +Object.defineProperty(exports, "__esModule", { + value: true +}); - for (var i = 0; i < len; ++i) { - if (thisCopy[i] !== targetCopy[i]) { - x = thisCopy[i] - y = targetCopy[i] - break - } - } +var _getPrototypeOf = __webpack_require__(28); - if (x < y) return -1 - if (y < x) return 1 - return 0 -} +var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); -// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, -// OR the last index of `val` in `buffer` at offset <= `byteOffset`. -// -// Arguments: -// - buffer - a Buffer to search -// - val - a string, Buffer, or number -// - byteOffset - an index into `buffer`; will be clamped to an int32 -// - encoding - an optional encoding, relevant is val is a string -// - dir - true for indexOf, false for lastIndexOf -function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { - // Empty buffer means no match - if (buffer.length === 0) return -1 +var _classCallCheck2 = __webpack_require__(2); - // Normalize byteOffset - if (typeof byteOffset === 'string') { - encoding = byteOffset - byteOffset = 0 - } else if (byteOffset > 0x7fffffff) { - byteOffset = 0x7fffffff - } else if (byteOffset < -0x80000000) { - byteOffset = -0x80000000 - } - byteOffset = +byteOffset // Coerce to Number. - if (isNaN(byteOffset)) { - // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer - byteOffset = dir ? 0 : (buffer.length - 1) - } +var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); - // Normalize byteOffset: negative offsets start from the end of the buffer - if (byteOffset < 0) byteOffset = buffer.length + byteOffset - if (byteOffset >= buffer.length) { - if (dir) return -1 - else byteOffset = buffer.length - 1 - } else if (byteOffset < 0) { - if (dir) byteOffset = 0 - else return -1 - } +var _createClass2 = __webpack_require__(29); - // Normalize val - if (typeof val === 'string') { - val = Buffer.from(val, encoding) - } +var _createClass3 = _interopRequireDefault(_createClass2); - // Finally, search either indexOf (if dir is true) or lastIndexOf - if (Buffer.isBuffer(val)) { - // Special case: looking for empty string/buffer always fails - if (val.length === 0) { - return -1 - } - return arrayIndexOf(buffer, val, byteOffset, encoding, dir) - } else if (typeof val === 'number') { - val = val & 0xFF // Search for a byte value [0-255] - if (Buffer.TYPED_ARRAY_SUPPORT && - typeof Uint8Array.prototype.indexOf === 'function') { - if (dir) { - return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) - } else { - return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) - } - } - return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir) - } +var _possibleConstructorReturn2 = __webpack_require__(3); - throw new TypeError('val must be string, number or Buffer') -} +var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); -function arrayIndexOf (arr, val, byteOffset, encoding, dir) { - var indexSize = 1 - var arrLength = arr.length - var valLength = val.length +var _inherits2 = __webpack_require__(4); - if (encoding !== undefined) { - encoding = String(encoding).toLowerCase() - if (encoding === 'ucs2' || encoding === 'ucs-2' || - encoding === 'utf16le' || encoding === 'utf-16le') { - if (arr.length < 2 || val.length < 2) { - return -1 - } - indexSize = 2 - arrLength /= 2 - valLength /= 2 - byteOffset /= 2 - } - } +var _inherits3 = _interopRequireDefault(_inherits2); - function read (buf, i) { - if (indexSize === 1) { - return buf[i] - } else { - return buf.readUInt16BE(i * indexSize) - } - } +var _react = __webpack_require__(0); - var i - if (dir) { - var foundIndex = -1 - for (i = byteOffset; i < arrLength; i++) { - if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { - if (foundIndex === -1) foundIndex = i - if (i - foundIndex + 1 === valLength) return foundIndex * indexSize - } else { - if (foundIndex !== -1) i -= i - foundIndex - foundIndex = -1 - } - } - } else { - if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength - for (i = byteOffset; i >= 0; i--) { - var found = true - for (var j = 0; j < valLength; j++) { - if (read(arr, i + j) !== read(val, j)) { - found = false - break - } - } - if (found) return i - } - } +var _react2 = _interopRequireDefault(_react); - return -1 -} +var _reactRedux = __webpack_require__(22); -Buffer.prototype.includes = function includes (val, byteOffset, encoding) { - return this.indexOf(val, byteOffset, encoding) !== -1 -} +var _reactBootstrap = __webpack_require__(35); -Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, true) -} +var _MainLogo = __webpack_require__(199); -Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, false) -} +var _MainLogo2 = _interopRequireDefault(_MainLogo); -function hexWrite (buf, string, offset, length) { - offset = Number(offset) || 0 - var remaining = buf.length - offset - if (!length) { - length = remaining - } else { - length = Number(length) - if (length > remaining) { - length = remaining - } - } +var _github = __webpack_require__(800); - // must be an even number of digits - var strLen = string.length - if (strLen % 2 !== 0) throw new TypeError('Invalid hex string') +var _github2 = _interopRequireDefault(_github); - if (length > strLen / 2) { - length = strLen / 2 - } - for (var i = 0; i < length; ++i) { - var parsed = parseInt(string.substr(i * 2, 2), 16) - if (isNaN(parsed)) return i - buf[offset + i] = parsed - } - return i -} +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -function utf8Write (buf, string, offset, length) { - return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) -} +var WelcomeComponent = function (_Component) { + (0, _inherits3.default)(WelcomeComponent, _Component); -function asciiWrite (buf, string, offset, length) { - return blitBuffer(asciiToBytes(string), buf, offset, length) -} + function WelcomeComponent(opts) { + (0, _classCallCheck3.default)(this, WelcomeComponent); + return (0, _possibleConstructorReturn3.default)(this, (WelcomeComponent.__proto__ || (0, _getPrototypeOf2.default)(WelcomeComponent)).call(this, opts)); + } -function latin1Write (buf, string, offset, length) { - return asciiWrite(buf, string, offset, length) -} + (0, _createClass3.default)(WelcomeComponent, [{ + key: 'signup', + value: function signup() { + location.href = "/auth/github"; + } + }, { + key: 'render', + value: function render() { -function base64Write (buf, string, offset, length) { - return blitBuffer(base64ToBytes(string), buf, offset, length) -} + return _react2.default.createElement( + 'div', + { style: { + // background: 'linear-gradient(135deg, #0c0019, #493f5b)', + fontWeight: '100', + paddingTop: '-50px', + marginBottom: '50px' + } }, + _react2.default.createElement( + _reactBootstrap.Row, + null, + _react2.default.createElement( + _reactBootstrap.Col, + { sm: 12, xs: 12, md: 6, lg: 6, style: { zIndex: '2', position: 'relative' } }, + _react2.default.createElement( + 'blockquote', + null, + _react2.default.createElement( + 'p', + { style: { fontSize: '55px' } }, + 'Issue Reward Points for GitHub Contributions' + ), + _react2.default.createElement( + 'p', + { style: { fontSize: '26px' } }, + _react2.default.createElement( + 'i', + { className: 'text-success' }, + 'Developers' + ), + ',', + _react2.default.createElement( + 'i', + { className: 'text-warning' }, + ' Project Managers' + ), + ', and', + _react2.default.createElement( + 'i', + { className: 'text-info' }, + ' Users' + ), + ' earn Ethereum ERC20 tokens when contributing to GitToken enabled organizations' + ) + ), + _react2.default.createElement('br', null), + _react2.default.createElement( + _reactBootstrap.Button, + { + bsSize: 'lg', + bsStyle: 'info', + style: { margin: '5px' }, + onClick: this.signup.bind(this), + block: true + }, + _react2.default.createElement(_github2.default, { style: { fontSize: '36px' } }), + ' Register with GitHub' + ) + ), + _react2.default.createElement( + _reactBootstrap.Col, + { smHidden: true, xsHidden: true, md: 6, lg: 6 }, + _react2.default.createElement( + _reactBootstrap.Row, + null, + _react2.default.createElement( + 'svg', + { width: "200%", viewBox: '0 0 1000 1000', style: { + zIndex: '-1', + margin: '-300px', + marginBottom: '-150px' + } }, + _react2.default.createElement( + 'defs', + null, + _react2.default.createElement( + 'radialGradient', + { id: 'g1', fx: '50%', fy: '50%', cx: '50%', cy: '50%', r: '50%' }, + _react2.default.createElement('stop', { stopColor: 'white', offset: '10%' }), + _react2.default.createElement('stop', { stopColor: '#320551', offset: '100%' }) + ) + ), + _react2.default.createElement('circle', { cx: '500', cy: '500', r: '400', style: { fill: 'url(#g1)' } }), + _react2.default.createElement('path', { d: 'M 520 500 L 700 500 L 700 600 L 500 700 L 300 600 L 300 400 L 500 300 L 680 390 ', + fill: 'transparent', + strokeLinejoin: "round", + stroke: '#cc5333', + strokeWidth: '36' + }), + _react2.default.createElement('circle', { + cx: '500', + cy: '500', + r: '26', + fill: 'transparent', + stroke: '#cc5333', + strokeWidth: '16' + }), + _react2.default.createElement('circle', { + cx: '700', + cy: '400', + r: '26', + fill: 'transparent', + stroke: '#cc5333', + strokeWidth: '16' + }) + ) + ) + ) + ) + ); + } + }]); + return WelcomeComponent; +}(_react.Component); -function ucs2Write (buf, string, offset, length) { - return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) -} +var mapStoreToProps = function mapStoreToProps(store, props) { + return { + // main: store.main + }; +}; -Buffer.prototype.write = function write (string, offset, length, encoding) { - // Buffer#write(string) - if (offset === undefined) { - encoding = 'utf8' - length = this.length - offset = 0 - // Buffer#write(string, encoding) - } else if (length === undefined && typeof offset === 'string') { - encoding = offset - length = this.length - offset = 0 - // Buffer#write(string, offset[, length][, encoding]) - } else if (isFinite(offset)) { - offset = offset | 0 - if (isFinite(length)) { - length = length | 0 - if (encoding === undefined) encoding = 'utf8' - } else { - encoding = length - length = undefined - } - // legacy write(string, encoding, offset, length) - remove in v0.13 - } else { - throw new Error( - 'Buffer.write(string, encoding, offset[, length]) is no longer supported' - ) - } +var Welcome = (0, _reactRedux.connect)(mapStoreToProps)(WelcomeComponent); - var remaining = this.length - offset - if (length === undefined || length > remaining) length = remaining +exports.default = Welcome; - if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { - throw new RangeError('Attempt to write outside buffer bounds') - } +/***/ }), +/* 275 */ +/***/ (function(module, exports, __webpack_require__) { - if (!encoding) encoding = 'utf8' +// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) +var has = __webpack_require__(75); +var toObject = __webpack_require__(101); +var IE_PROTO = __webpack_require__(177)('IE_PROTO'); +var ObjectProto = Object.prototype; - var loweredCase = false - for (;;) { - switch (encoding) { - case 'hex': - return hexWrite(this, string, offset, length) +module.exports = Object.getPrototypeOf || function (O) { + O = toObject(O); + if (has(O, IE_PROTO)) return O[IE_PROTO]; + if (typeof O.constructor == 'function' && O instanceof O.constructor) { + return O.constructor.prototype; + } return O instanceof Object ? ObjectProto : null; +}; - case 'utf8': - case 'utf-8': - return utf8Write(this, string, offset, length) - case 'ascii': - return asciiWrite(this, string, offset, length) +/***/ }), +/* 276 */ +/***/ (function(module, exports, __webpack_require__) { - case 'latin1': - case 'binary': - return latin1Write(this, string, offset, length) +// most Object methods by ES6 should accept primitives +var $export = __webpack_require__(50); +var core = __webpack_require__(27); +var fails = __webpack_require__(86); +module.exports = function (KEY, exec) { + var fn = (core.Object || {})[KEY] || Object[KEY]; + var exp = {}; + exp[KEY] = exec(fn); + $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); +}; - case 'base64': - // Warning: maxLength not taken into account in base64Write - return base64Write(this, string, offset, length) - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return ucs2Write(this, string, offset, length) +/***/ }), +/* 277 */ +/***/ (function(module, exports, __webpack_require__) { - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} +"use strict"; -Buffer.prototype.toJSON = function toJSON () { - return { - type: 'Buffer', - data: Array.prototype.slice.call(this._arr || this, 0) - } -} +var $at = __webpack_require__(663)(true); -function base64Slice (buf, start, end) { - if (start === 0 && end === buf.length) { - return base64.fromByteArray(buf) - } else { - return base64.fromByteArray(buf.slice(start, end)) - } -} +// 21.1.3.27 String.prototype[@@iterator]() +__webpack_require__(278)(String, 'String', function (iterated) { + this._t = String(iterated); // target + this._i = 0; // next index +// 21.1.5.2.1 %StringIteratorPrototype%.next() +}, function () { + var O = this._t; + var index = this._i; + var point; + if (index >= O.length) return { value: undefined, done: true }; + point = $at(O, index); + this._i += point.length; + return { value: point, done: false }; +}); -function utf8Slice (buf, start, end) { - end = Math.min(buf.length, end) - var res = [] - var i = start - while (i < end) { - var firstByte = buf[i] - var codePoint = null - var bytesPerSequence = (firstByte > 0xEF) ? 4 - : (firstByte > 0xDF) ? 3 - : (firstByte > 0xBF) ? 2 - : 1 +/***/ }), +/* 278 */ +/***/ (function(module, exports, __webpack_require__) { - if (i + bytesPerSequence <= end) { - var secondByte, thirdByte, fourthByte, tempCodePoint +"use strict"; - switch (bytesPerSequence) { - case 1: - if (firstByte < 0x80) { - codePoint = firstByte - } - break - case 2: - secondByte = buf[i + 1] - if ((secondByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) - if (tempCodePoint > 0x7F) { - codePoint = tempCodePoint - } - } - break - case 3: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) - if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { - codePoint = tempCodePoint - } - } - break - case 4: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - fourthByte = buf[i + 3] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) - if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { - codePoint = tempCodePoint - } - } - } - } +var LIBRARY = __webpack_require__(183); +var $export = __webpack_require__(50); +var redefine = __webpack_require__(279); +var hide = __webpack_require__(83); +var has = __webpack_require__(75); +var Iterators = __webpack_require__(103); +var $iterCreate = __webpack_require__(664); +var setToStringTag = __webpack_require__(185); +var getPrototypeOf = __webpack_require__(275); +var ITERATOR = __webpack_require__(52)('iterator'); +var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` +var FF_ITERATOR = '@@iterator'; +var KEYS = 'keys'; +var VALUES = 'values'; - if (codePoint === null) { - // we did not generate a valid codePoint so insert a - // replacement char (U+FFFD) and advance only 1 byte - codePoint = 0xFFFD - bytesPerSequence = 1 - } else if (codePoint > 0xFFFF) { - // encode to utf16 (surrogate pair dance) - codePoint -= 0x10000 - res.push(codePoint >>> 10 & 0x3FF | 0xD800) - codePoint = 0xDC00 | codePoint & 0x3FF - } +var returnThis = function () { return this; }; - res.push(codePoint) - i += bytesPerSequence +module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { + $iterCreate(Constructor, NAME, next); + var getMethod = function (kind) { + if (!BUGGY && kind in proto) return proto[kind]; + switch (kind) { + case KEYS: return function keys() { return new Constructor(this, kind); }; + case VALUES: return function values() { return new Constructor(this, kind); }; + } return function entries() { return new Constructor(this, kind); }; + }; + var TAG = NAME + ' Iterator'; + var DEF_VALUES = DEFAULT == VALUES; + var VALUES_BUG = false; + var proto = Base.prototype; + var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; + var $default = (!BUGGY && $native) || getMethod(DEFAULT); + var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; + var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; + var methods, key, IteratorPrototype; + // Fix native + if ($anyNative) { + IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); + if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { + // Set @@toStringTag to native iterators + setToStringTag(IteratorPrototype, TAG, true); + // fix for some old engines + if (!LIBRARY && !has(IteratorPrototype, ITERATOR)) hide(IteratorPrototype, ITERATOR, returnThis); + } + } + // fix Array#{values, @@iterator}.name in V8 / FF + if (DEF_VALUES && $native && $native.name !== VALUES) { + VALUES_BUG = true; + $default = function values() { return $native.call(this); }; + } + // Define iterator + if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { + hide(proto, ITERATOR, $default); + } + // Plug for library + Iterators[NAME] = $default; + Iterators[TAG] = returnThis; + if (DEFAULT) { + methods = { + values: DEF_VALUES ? $default : getMethod(VALUES), + keys: IS_SET ? $default : getMethod(KEYS), + entries: $entries + }; + if (FORCED) for (key in methods) { + if (!(key in proto)) redefine(proto, key, methods[key]); + } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); } + return methods; +}; - return decodeCodePointsArray(res) -} -// Based on http://stackoverflow.com/a/22747272/680742, the browser with -// the lowest limit is Chrome, with 0x10000 args. -// We go 1 magnitude less, for safety -var MAX_ARGUMENTS_LENGTH = 0x1000 +/***/ }), +/* 279 */ +/***/ (function(module, exports, __webpack_require__) { -function decodeCodePointsArray (codePoints) { - var len = codePoints.length - if (len <= MAX_ARGUMENTS_LENGTH) { - return String.fromCharCode.apply(String, codePoints) // avoid extra slice() - } +module.exports = __webpack_require__(83); - // Decode in chunks to avoid "call stack size exceeded". - var res = '' - var i = 0 - while (i < len) { - res += String.fromCharCode.apply( - String, - codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) - ) - } - return res -} -function asciiSlice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) +/***/ }), +/* 280 */ +/***/ (function(module, exports, __webpack_require__) { - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i] & 0x7F) - } - return ret -} +// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) +var $keys = __webpack_require__(261); +var hiddenKeys = __webpack_require__(179).concat('length', 'prototype'); -function latin1Slice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) +exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return $keys(O, hiddenKeys); +}; - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i]) - } - return ret -} -function hexSlice (buf, start, end) { - var len = buf.length +/***/ }), +/* 281 */ +/***/ (function(module, exports, __webpack_require__) { - if (!start || start < 0) start = 0 - if (!end || end < 0 || end > len) end = len +var pIE = __webpack_require__(100); +var createDesc = __webpack_require__(99); +var toIObject = __webpack_require__(76); +var toPrimitive = __webpack_require__(173); +var has = __webpack_require__(75); +var IE8_DOM_DEFINE = __webpack_require__(259); +var gOPD = Object.getOwnPropertyDescriptor; - var out = '' - for (var i = start; i < end; ++i) { - out += toHex(buf[i]) - } - return out -} +exports.f = __webpack_require__(74) ? gOPD : function getOwnPropertyDescriptor(O, P) { + O = toIObject(O); + P = toPrimitive(P, true); + if (IE8_DOM_DEFINE) try { + return gOPD(O, P); + } catch (e) { /* empty */ } + if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); +}; -function utf16leSlice (buf, start, end) { - var bytes = buf.slice(start, end) - var res = '' - for (var i = 0; i < bytes.length; i += 2) { - res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256) - } - return res -} -Buffer.prototype.slice = function slice (start, end) { - var len = this.length - start = ~~start - end = end === undefined ? len : ~~end +/***/ }), +/* 282 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { - if (start < 0) { - start += len - if (start < 0) start = 0 - } else if (start > len) { - start = len - } +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_uncontrollable__ = __webpack_require__(78); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_uncontrollable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_uncontrollable__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__ = __webpack_require__(9); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_ValidComponentChildren__ = __webpack_require__(30); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils_PropTypes__ = __webpack_require__(285); - if (end < 0) { - end += len - if (end < 0) end = 0 - } else if (end > len) { - end = len - } - if (end < start) end = start - var newBuf - if (Buffer.TYPED_ARRAY_SUPPORT) { - newBuf = this.subarray(start, end) - newBuf.__proto__ = Buffer.prototype - } else { - var sliceLen = end - start - newBuf = new Buffer(sliceLen, undefined) - for (var i = 0; i < sliceLen; ++i) { - newBuf[i] = this[i + start] - } - } - return newBuf -} -/* - * Need to make sure that buffer isn't trying to write out of bounds. - */ -function checkOffset (offset, ext, length) { - if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') - if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') -} -Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - return val -} -Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) { - checkOffset(offset, byteLength, this.length) - } - var val = this[offset + --byteLength] - var mul = 1 - while (byteLength > 0 && (mul *= 0x100)) { - val += this[offset + --byteLength] * mul - } - return val -} -Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { - if (!noAssert) checkOffset(offset, 1, this.length) - return this[offset] -} -Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - return this[offset] | (this[offset + 1] << 8) -} -Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - return (this[offset] << 8) | this[offset + 1] -} +var propTypes = { + accordion: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, + /** + * When `accordion` is enabled, `activeKey` controls the which child `Panel` is expanded. `activeKey` should + * match a child Panel `eventKey` prop exactly. + * + * @controllable onSelect + */ + activeKey: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.any, -Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) + /** + * A callback fired when a child Panel collapse state changes. It's called with the next expanded `activeKey` + * + * @controllable activeKey + */ + onSelect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - return ((this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16)) + - (this[offset + 3] * 0x1000000) -} + /** + * An HTML role attribute + */ + role: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, -Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) + /** + * A function that takes an eventKey and type and returns a + * unique id for each Panel heading and Panel Collapse. The function _must_ be a pure function, + * meaning it should always return the _same_ id for the same set of inputs. The default + * value requires that an `id` to be set for the PanelGroup. + * + * The `type` argument will either be `"body"` or `"heading"`. + * + * @defaultValue (eventKey, type) => `${this.props.id}-${type}-${key}` + */ + generateChildId: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - return (this[offset] * 0x1000000) + - ((this[offset + 1] << 16) | - (this[offset + 2] << 8) | - this[offset + 3]) -} + /** + * HTML id attribute, required if no `generateChildId` prop + * is specified. + */ + id: Object(__WEBPACK_IMPORTED_MODULE_11__utils_PropTypes__["b" /* generatedId */])('PanelGroup') +}; -Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) +var defaultProps = { + accordion: false +}; - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - mul *= 0x80 +var childContextTypes = { + $bs_panelGroup: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.shape({ + getId: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, + headerRole: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, + panelRole: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, + activeKey: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.any, + onToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func + }) +}; - if (val >= mul) val -= Math.pow(2, 8 * byteLength) +var PanelGroup = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(PanelGroup, _React$Component); - return val -} + function PanelGroup(props, context) { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, PanelGroup); -Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) + var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call(this, props, context)); - var i = byteLength - var mul = 1 - var val = this[offset + --i] - while (i > 0 && (mul *= 0x100)) { - val += this[offset + --i] * mul + _this.handleSelect = _this.handleSelect.bind(_this); + return _this; } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - return val -} + PanelGroup.prototype.getChildContext = function getChildContext() { + var _props = this.props, + activeKey = _props.activeKey, + accordion = _props.accordion, + generateChildId = _props.generateChildId, + id = _props.id; -Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { - if (!noAssert) checkOffset(offset, 1, this.length) - if (!(this[offset] & 0x80)) return (this[offset]) - return ((0xff - this[offset] + 1) * -1) -} + var getId = null; -Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset] | (this[offset + 1] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} + if (accordion) { + getId = generateChildId || function (key, type) { + return id ? id + '-' + type + '-' + key : null; + }; + } -Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset + 1] | (this[offset] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} + return { + $bs_panelGroup: __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()({ + getId: getId, + headerRole: 'tab', + panelRole: 'tabpanel' + }, accordion && { + activeKey: activeKey, + onToggle: this.handleSelect + }) + }; + }; -Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) + PanelGroup.prototype.handleSelect = function handleSelect(key, expanded, e) { + if (expanded) { + this.props.onSelect(key, e); + } + }; - return (this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16) | - (this[offset + 3] << 24) -} + PanelGroup.prototype.render = function render() { + var _props2 = this.props, + accordion = _props2.accordion, + className = _props2.className, + children = _props2.children, + props = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties___default()(_props2, ['accordion', 'className', 'children']); -Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) + var _splitBsPropsAndOmit = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["splitBsPropsAndOmit"])(props, ['onSelect', 'activeKey']), + bsProps = _splitBsPropsAndOmit[0], + elementProps = _splitBsPropsAndOmit[1]; - return (this[offset] << 24) | - (this[offset + 1] << 16) | - (this[offset + 2] << 8) | - (this[offset + 3]) -} + if (accordion) { + elementProps.role = elementProps.role || 'tablist'; + } -Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, true, 23, 4) -} + var classes = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["getClassSet"])(bsProps); -Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, false, 23, 4) -} + return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( + 'div', + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()({}, elementProps, { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) }), + __WEBPACK_IMPORTED_MODULE_10__utils_ValidComponentChildren__["a" /* default */].map(children, function (child) { + return Object(__WEBPACK_IMPORTED_MODULE_7_react__["cloneElement"])(child, { + bsStyle: child.props.bsStyle || bsProps.bsStyle + }); + }) + ); + }; -Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, true, 52, 8) -} + return PanelGroup; +}(__WEBPACK_IMPORTED_MODULE_7_react___default.a.Component); -Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, false, 52, 8) -} +PanelGroup.propTypes = propTypes; +PanelGroup.defaultProps = defaultProps; +PanelGroup.childContextTypes = childContextTypes; -function checkInt (buf, value, offset, ext, max, min) { - if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') - if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') - if (offset + ext > buf.length) throw new RangeError('Index out of range') -} +/* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_8_uncontrollable___default()(Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsClass"])('panel-group', PanelGroup), { + activeKey: 'onSelect' +})); -Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } +/***/ }), +/* 283 */ +/***/ (function(module, exports, __webpack_require__) { - var mul = 1 - var i = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } +module.exports = { "default": __webpack_require__(691), __esModule: true }; - return offset + byteLength -} +/***/ }), +/* 284 */ +/***/ (function(module, exports, __webpack_require__) { -Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - byteLength = byteLength | 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } +var getKeys = __webpack_require__(87); +var toIObject = __webpack_require__(76); +var isEnum = __webpack_require__(100).f; +module.exports = function (isEntries) { + return function (it) { + var O = toIObject(it); + var keys = getKeys(O); + var length = keys.length; + var i = 0; + var result = []; + var key; + while (length > i) if (isEnum.call(O, key = keys[i++])) { + result.push(isEntries ? [key, O[key]] : O[key]); + } return result; + }; +}; - var i = byteLength - 1 - var mul = 1 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - return offset + byteLength -} +/***/ }), +/* 285 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { -Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) - if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) - this[offset] = (value & 0xff) - return offset + 1 -} +"use strict"; +/* harmony export (immutable) */ __webpack_exports__["b"] = generatedId; +/* harmony export (immutable) */ __webpack_exports__["c"] = requiredRoles; +/* harmony export (immutable) */ __webpack_exports__["a"] = exclusiveRoles; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker__ = __webpack_require__(125); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__ValidComponentChildren__ = __webpack_require__(30); -function objectWriteUInt16 (buf, value, offset, littleEndian) { - if (value < 0) value = 0xffff + value + 1 - for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) { - buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>> - (littleEndian ? i : 1 - i) * 8 - } -} -Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - } else { - objectWriteUInt16(this, value, offset, true) - } - return offset + 2 -} -Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - } else { - objectWriteUInt16(this, value, offset, false) - } - return offset + 2 -} -function objectWriteUInt32 (buf, value, offset, littleEndian) { - if (value < 0) value = 0xffffffff + value + 1 - for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) { - buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff - } -} -Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset + 3] = (value >>> 24) - this[offset + 2] = (value >>> 16) - this[offset + 1] = (value >>> 8) - this[offset] = (value & 0xff) - } else { - objectWriteUInt32(this, value, offset, true) - } - return offset + 4 -} +var idPropType = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.number]); -Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - } else { - objectWriteUInt32(this, value, offset, false) - } - return offset + 4 -} +function generatedId(name) { + return function (props) { + for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } -Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) { - var limit = Math.pow(2, 8 * byteLength - 1) + var error = null; - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } + if (!props.generateChildId) { + error = idPropType.apply(undefined, [props].concat(args)); - var i = 0 - var mul = 1 - var sub = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { - sub = 1 + if (!error && !props.id) { + error = new Error('In order to properly initialize the ' + name + ' in a way that is accessible to assistive technologies ' + ('(such as screen readers) an `id` or a `generateChildId` prop to ' + name + ' is required')); + } } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength + return error; + }; } -Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) { - var limit = Math.pow(2, 8 * byteLength - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) +function requiredRoles() { + for (var _len2 = arguments.length, roles = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { + roles[_key2] = arguments[_key2]; } - var i = byteLength - 1 - var mul = 1 - var sub = 0 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} + return __WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker___default()(function (props, propName, component) { + var missing = void 0; -Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) - if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) - if (value < 0) value = 0xff + value + 1 - this[offset] = (value & 0xff) - return offset + 1 -} + roles.every(function (role) { + if (!__WEBPACK_IMPORTED_MODULE_2__ValidComponentChildren__["a" /* default */].some(props.children, function (child) { + return child.props.bsRole === role; + })) { + missing = role; + return false; + } -Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - } else { - objectWriteUInt16(this, value, offset, true) - } - return offset + 2 -} + return true; + }); -Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - } else { - objectWriteUInt16(this, value, offset, false) - } - return offset + 2 -} + if (missing) { + return new Error('(children) ' + component + ' - Missing a required child with bsRole: ' + (missing + '. ' + component + ' must have at least one child of each of ') + ('the following bsRoles: ' + roles.join(', '))); + } -Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - this[offset + 2] = (value >>> 16) - this[offset + 3] = (value >>> 24) - } else { - objectWriteUInt32(this, value, offset, true) - } - return offset + 4 + return null; + }); } -Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { - value = +value - offset = offset | 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - if (value < 0) value = 0xffffffff + value + 1 - if (Buffer.TYPED_ARRAY_SUPPORT) { - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - } else { - objectWriteUInt32(this, value, offset, false) +function exclusiveRoles() { + for (var _len3 = arguments.length, roles = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { + roles[_key3] = arguments[_key3]; } - return offset + 4 -} - -function checkIEEE754 (buf, value, offset, ext, max, min) { - if (offset + ext > buf.length) throw new RangeError('Index out of range') - if (offset < 0) throw new RangeError('Index out of range') -} -function writeFloat (buf, value, offset, littleEndian, noAssert) { - if (!noAssert) { - checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) - } - ieee754.write(buf, value, offset, littleEndian, 23, 4) - return offset + 4 -} + return __WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker___default()(function (props, propName, component) { + var duplicate = void 0; -Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { - return writeFloat(this, value, offset, true, noAssert) -} + roles.every(function (role) { + var childrenWithRole = __WEBPACK_IMPORTED_MODULE_2__ValidComponentChildren__["a" /* default */].filter(props.children, function (child) { + return child.props.bsRole === role; + }); -Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { - return writeFloat(this, value, offset, false, noAssert) -} + if (childrenWithRole.length > 1) { + duplicate = role; + return false; + } -function writeDouble (buf, value, offset, littleEndian, noAssert) { - if (!noAssert) { - checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) - } - ieee754.write(buf, value, offset, littleEndian, 52, 8) - return offset + 8 -} + return true; + }); -Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { - return writeDouble(this, value, offset, true, noAssert) -} + if (duplicate) { + return new Error('(children) ' + component + ' - Duplicate children detected of bsRole: ' + (duplicate + '. Only one child each allowed with the following ') + ('bsRoles: ' + roles.join(', '))); + } -Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { - return writeDouble(this, value, offset, false, noAssert) + return null; + }); } -// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) -Buffer.prototype.copy = function copy (target, targetStart, start, end) { - if (!start) start = 0 - if (!end && end !== 0) end = this.length - if (targetStart >= target.length) targetStart = target.length - if (!targetStart) targetStart = 0 - if (end > 0 && end < start) end = start +/***/ }), +/* 286 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { - // Copy 0 bytes; we're done - if (end === start) return 0 - if (target.length === 0 || this.length === 0) return 0 +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__SafeAnchor__ = __webpack_require__(43); - // Fatal error conditions - if (targetStart < 0) { - throw new RangeError('targetStart out of bounds') - } - if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds') - if (end < 0) throw new RangeError('sourceEnd out of bounds') - // Are we oob? - if (end > this.length) end = this.length - if (target.length - targetStart < end - start) { - end = target.length - targetStart + start - } - var len = end - start - var i - if (this === target && start < targetStart && targetStart < end) { - // descending copy from end - for (i = len - 1; i >= 0; --i) { - target[i + targetStart] = this[i + start] - } - } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) { - // ascending copy from start - for (i = 0; i < len; ++i) { - target[i + targetStart] = this[i + start] - } - } else { - Uint8Array.prototype.set.call( - target, - this.subarray(start, start + len), - targetStart - ) - } - return len -} -// Usage: -// buffer.fill(number[, offset[, end]]) -// buffer.fill(buffer[, offset[, end]]) -// buffer.fill(string[, offset[, end]][, encoding]) -Buffer.prototype.fill = function fill (val, start, end, encoding) { - // Handle string cases: - if (typeof val === 'string') { - if (typeof start === 'string') { - encoding = start - start = 0 - end = this.length - } else if (typeof end === 'string') { - encoding = end - end = this.length - } - if (val.length === 1) { - var code = val.charCodeAt(0) - if (code < 256) { - val = code - } - } - if (encoding !== undefined && typeof encoding !== 'string') { - throw new TypeError('encoding must be a string') - } - if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding) - } - } else if (typeof val === 'number') { - val = val & 255 - } - // Invalid ranges are not set to a default, so can range check early. - if (start < 0 || this.length < start || this.length < end) { - throw new RangeError('Out of range index') - } - if (end <= start) { - return this - } - start = start >>> 0 - end = end === undefined ? this.length : end >>> 0 - if (!val) val = 0 - var i - if (typeof val === 'number') { - for (i = start; i < end; ++i) { - this[i] = val - } - } else { - var bytes = Buffer.isBuffer(val) - ? val - : utf8ToBytes(new Buffer(val, encoding).toString()) - var len = bytes.length - for (i = 0; i < end - start; ++i) { - this[i + start] = bytes[i % len] - } - } +var propTypes = { + /** + * If set to true, renders `span` instead of `a` + */ + active: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + /** + * `href` attribute for the inner `a` element + */ + href: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string, + /** + * `title` attribute for the inner `a` element + */ + title: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.node, + /** + * `target` attribute for the inner `a` element + */ + target: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string +}; - return this -} +var defaultProps = { + active: false +}; -// HELPER FUNCTIONS -// ================ +var BreadcrumbItem = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(BreadcrumbItem, _React$Component); -var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g + function BreadcrumbItem() { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, BreadcrumbItem); -function base64clean (str) { - // Node strips out invalid characters like \n and \t from the string, base64-js does not - str = stringtrim(str).replace(INVALID_BASE64_RE, '') - // Node converts strings with length < 2 to '' - if (str.length < 2) return '' - // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not - while (str.length % 4 !== 0) { - str = str + '=' + return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); } - return str -} - -function stringtrim (str) { - if (str.trim) return str.trim() - return str.replace(/^\s+|\s+$/g, '') -} - -function toHex (n) { - if (n < 16) return '0' + n.toString(16) - return n.toString(16) -} -function utf8ToBytes (string, units) { - units = units || Infinity - var codePoint - var length = string.length - var leadSurrogate = null - var bytes = [] + BreadcrumbItem.prototype.render = function render() { + var _props = this.props, + active = _props.active, + href = _props.href, + title = _props.title, + target = _props.target, + className = _props.className, + props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['active', 'href', 'title', 'target', 'className']); - for (var i = 0; i < length; ++i) { - codePoint = string.charCodeAt(i) + // Don't try to render these props on non-active . - // is surrogate component - if (codePoint > 0xD7FF && codePoint < 0xE000) { - // last char was a lead - if (!leadSurrogate) { - // no lead yet - if (codePoint > 0xDBFF) { - // unexpected trail - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } else if (i + 1 === length) { - // unpaired lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } - // valid lead - leadSurrogate = codePoint + var linkProps = { href: href, title: title, target: target }; - continue - } + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + 'li', + { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, { active: active }) }, + active ? __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement('span', props) : __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_8__SafeAnchor__["a" /* default */], __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, linkProps)) + ); + }; - // 2 leads in a row - if (codePoint < 0xDC00) { - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - leadSurrogate = codePoint - continue - } + return BreadcrumbItem; +}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); - // valid surrogate pair - codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 - } else if (leadSurrogate) { - // valid bmp char, but last char was a lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - } +BreadcrumbItem.propTypes = propTypes; +BreadcrumbItem.defaultProps = defaultProps; - leadSurrogate = null +/* harmony default export */ __webpack_exports__["a"] = (BreadcrumbItem); - // encode utf8 - if (codePoint < 0x80) { - if ((units -= 1) < 0) break - bytes.push(codePoint) - } else if (codePoint < 0x800) { - if ((units -= 2) < 0) break - bytes.push( - codePoint >> 0x6 | 0xC0, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x10000) { - if ((units -= 3) < 0) break - bytes.push( - codePoint >> 0xC | 0xE0, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x110000) { - if ((units -= 4) < 0) break - bytes.push( - codePoint >> 0x12 | 0xF0, - codePoint >> 0xC & 0x3F | 0x80, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else { - throw new Error('Invalid code point') - } - } +/***/ }), +/* 287 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { - return bytes -} +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_dom__ = __webpack_require__(26); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_dom__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_dom_helpers_transition__ = __webpack_require__(701); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_dom_helpers_transition___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_dom_helpers_transition__); -function asciiToBytes (str) { - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - // Node's code seems to be doing this and not & 0x7F.. - byteArray.push(str.charCodeAt(i) & 0xFF) - } - return byteArray -} -function utf16leToBytes (str, units) { - var c, hi, lo - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - if ((units -= 2) < 0) break - c = str.charCodeAt(i) - hi = c >> 8 - lo = c % 256 - byteArray.push(lo) - byteArray.push(hi) - } - return byteArray -} -function base64ToBytes (str) { - return base64.toByteArray(base64clean(str)) -} -function blitBuffer (src, dst, offset, length) { - for (var i = 0; i < length; ++i) { - if ((i + offset >= dst.length) || (i >= src.length)) break - dst[i + offset] = src[i] - } - return i -} -function isnan (val) { - return val !== val // eslint-disable-line no-self-compare -} -/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(62))) -/***/ }), -/* 296 */ -/***/ (function(module, exports, __webpack_require__) { -module.exports = { "default": __webpack_require__(699), __esModule: true }; -/***/ }), -/* 297 */ -/***/ (function(module, exports, __webpack_require__) { +var propTypes = { + direction: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.oneOf(['prev', 'next']), + onAnimateOutEnd: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func, + active: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + animateIn: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + animateOut: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + index: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.number +}; -"use strict"; +var defaultProps = { + active: false, + animateIn: false, + animateOut: false +}; +var CarouselItem = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(CarouselItem, _React$Component); -Object.defineProperty(exports, "__esModule", { - value: true -}); + function CarouselItem(props, context) { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, CarouselItem); -var _getPrototypeOf = __webpack_require__(31); + var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call(this, props, context)); -var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); + _this.handleAnimateOutEnd = _this.handleAnimateOutEnd.bind(_this); -var _classCallCheck2 = __webpack_require__(1); + _this.state = { + direction: null + }; -var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); + _this.isUnmounted = false; + return _this; + } -var _createClass2 = __webpack_require__(32); + CarouselItem.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { + if (this.props.active !== nextProps.active) { + this.setState({ direction: null }); + } + }; -var _createClass3 = _interopRequireDefault(_createClass2); + CarouselItem.prototype.componentDidUpdate = function componentDidUpdate(prevProps) { + var _this2 = this; -var _possibleConstructorReturn2 = __webpack_require__(2); + var active = this.props.active; -var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); + var prevActive = prevProps.active; -var _inherits2 = __webpack_require__(3); + if (!active && prevActive) { + __WEBPACK_IMPORTED_MODULE_9_dom_helpers_transition___default.a.end(__WEBPACK_IMPORTED_MODULE_8_react_dom___default.a.findDOMNode(this), this.handleAnimateOutEnd); + } -var _inherits3 = _interopRequireDefault(_inherits2); + if (active !== prevActive) { + setTimeout(function () { + return _this2.startAnimation(); + }, 20); + } + }; -var _react = __webpack_require__(0); + CarouselItem.prototype.componentWillUnmount = function componentWillUnmount() { + this.isUnmounted = true; + }; -var _react2 = _interopRequireDefault(_react); + CarouselItem.prototype.handleAnimateOutEnd = function handleAnimateOutEnd() { + if (this.isUnmounted) { + return; + } -var _reactRedux = __webpack_require__(26); + if (this.props.onAnimateOutEnd) { + this.props.onAnimateOutEnd(this.props.index); + } + }; -var _reactBootstrap = __webpack_require__(43); + CarouselItem.prototype.startAnimation = function startAnimation() { + if (this.isUnmounted) { + return; + } -var _MainLogo = __webpack_require__(217); - -var _MainLogo2 = _interopRequireDefault(_MainLogo); - -var _github = __webpack_require__(842); - -var _github2 = _interopRequireDefault(_github); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + this.setState({ + direction: this.props.direction === 'prev' ? 'right' : 'left' + }); + }; -var WelcomeComponent = function (_Component) { - (0, _inherits3.default)(WelcomeComponent, _Component); + CarouselItem.prototype.render = function render() { + var _props = this.props, + direction = _props.direction, + active = _props.active, + animateIn = _props.animateIn, + animateOut = _props.animateOut, + className = _props.className, + props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['direction', 'active', 'animateIn', 'animateOut', 'className']); - function WelcomeComponent(opts) { - (0, _classCallCheck3.default)(this, WelcomeComponent); - return (0, _possibleConstructorReturn3.default)(this, (WelcomeComponent.__proto__ || (0, _getPrototypeOf2.default)(WelcomeComponent)).call(this, opts)); - } + delete props.onAnimateOutEnd; + delete props.index; - (0, _createClass3.default)(WelcomeComponent, [{ - key: 'signup', - value: function signup() { - location.href = "/auth/github"; + var classes = { + item: true, + active: active && !animateIn || animateOut + }; + if (direction && active && animateIn) { + classes[direction] = true; } - }, { - key: 'render', - value: function render() { - - return _react2.default.createElement( - 'div', - { style: { - // background: 'linear-gradient(135deg, #0c0019, #493f5b)', - fontWeight: '100', - paddingTop: '-50px', - marginBottom: '50px' - } }, - _react2.default.createElement( - _reactBootstrap.Row, - null, - _react2.default.createElement( - _reactBootstrap.Col, - { sm: 12, xs: 12, md: 6, lg: 6, style: { zIndex: '2', position: 'relative' } }, - _react2.default.createElement( - 'blockquote', - null, - _react2.default.createElement( - 'p', - { style: { fontSize: '55px' } }, - 'Issue Reward Points for GitHub Contributions' - ), - _react2.default.createElement( - 'p', - { style: { fontSize: '26px' } }, - _react2.default.createElement( - 'i', - { className: 'text-success' }, - 'Developers' - ), - ',', - _react2.default.createElement( - 'i', - { className: 'text-warning' }, - ' Project Managers' - ), - ', and', - _react2.default.createElement( - 'i', - { className: 'text-info' }, - ' Users' - ), - ' earn Ethereum ERC20 tokens when contributing to GitToken enabled organizations' - ) - ), - _react2.default.createElement('br', null), - _react2.default.createElement( - _reactBootstrap.Button, - { - bsSize: 'lg', - bsStyle: 'info', - style: { margin: '5px' }, - onClick: this.signup.bind(this), - block: true - }, - _react2.default.createElement(_github2.default, { style: { fontSize: '36px' } }), - ' Register with GitHub' - ) - ), - _react2.default.createElement( - _reactBootstrap.Col, - { smHidden: true, xsHidden: true, md: 6, lg: 6 }, - _react2.default.createElement( - _reactBootstrap.Row, - null, - _react2.default.createElement( - 'svg', - { width: "200%", viewBox: '0 0 1000 1000', style: { - zIndex: '-1', - margin: '-300px', - marginBottom: '-150px' - } }, - _react2.default.createElement( - 'defs', - null, - _react2.default.createElement( - 'radialGradient', - { id: 'g1', fx: '50%', fy: '50%', cx: '50%', cy: '50%', r: '50%' }, - _react2.default.createElement('stop', { stopColor: 'white', offset: '10%' }), - _react2.default.createElement('stop', { stopColor: '#320551', offset: '100%' }) - ) - ), - _react2.default.createElement('circle', { cx: '500', cy: '500', r: '400', style: { fill: 'url(#g1)' } }), - _react2.default.createElement('path', { d: 'M 520 500 L 700 500 L 700 600 L 500 700 L 300 600 L 300 400 L 500 300 L 680 390 ', - fill: 'transparent', - strokeLinejoin: "round", - stroke: '#cc5333', - strokeWidth: '36' - }), - _react2.default.createElement('circle', { - cx: '500', - cy: '500', - r: '26', - fill: 'transparent', - stroke: '#cc5333', - strokeWidth: '16' - }), - _react2.default.createElement('circle', { - cx: '700', - cy: '400', - r: '26', - fill: 'transparent', - stroke: '#cc5333', - strokeWidth: '16' - }) - ) - ) - ) - ) - ); + if (this.state.direction && (animateIn || animateOut)) { + classes[this.state.direction] = true; } - }]); - return WelcomeComponent; -}(_react.Component); -var mapStoreToProps = function mapStoreToProps(store, props) { - return { - // main: store.main + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement('div', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) })); }; -}; -var Welcome = (0, _reactRedux.connect)(mapStoreToProps)(WelcomeComponent); + return CarouselItem; +}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); -exports.default = Welcome; +CarouselItem.propTypes = propTypes; +CarouselItem.defaultProps = defaultProps; + +/* harmony default export */ __webpack_exports__["a"] = (CarouselItem); /***/ }), -/* 298 */ +/* 288 */ /***/ (function(module, exports, __webpack_require__) { -// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) -var has = __webpack_require__(87); -var toObject = __webpack_require__(112); -var IE_PROTO = __webpack_require__(198)('IE_PROTO'); -var ObjectProto = Object.prototype; +"use strict"; -module.exports = Object.getPrototypeOf || function (O) { - O = toObject(O); - if (has(O, IE_PROTO)) return O[IE_PROTO]; - if (typeof O.constructor == 'function' && O instanceof O.constructor) { - return O.constructor.prototype; - } return O instanceof Object ? ObjectProto : null; -}; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = camelizeStyleName; -/***/ }), -/* 299 */ -/***/ (function(module, exports, __webpack_require__) { +var _camelize = __webpack_require__(703); -// most Object methods by ES6 should accept primitives -var $export = __webpack_require__(56); -var core = __webpack_require__(30); -var fails = __webpack_require__(98); -module.exports = function (KEY, exec) { - var fn = (core.Object || {})[KEY] || Object[KEY]; - var exp = {}; - exp[KEY] = exec(fn); - $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); -}; +var _camelize2 = _interopRequireDefault(_camelize); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var msPattern = /^-ms-/; /** + * Copyright 2014-2015, Facebook, Inc. + * All rights reserved. + * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/camelizeStyleName.js + */ +function camelizeStyleName(string) { + return (0, _camelize2.default)(string.replace(msPattern, 'ms-')); +} +module.exports = exports['default']; /***/ }), -/* 300 */ -/***/ (function(module, exports, __webpack_require__) { +/* 289 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; - -var $at = __webpack_require__(710)(true); - -// 21.1.3.27 String.prototype[@@iterator]() -__webpack_require__(301)(String, 'String', function (iterated) { - this._t = String(iterated); // target - this._i = 0; // next index -// 21.1.5.2.1 %StringIteratorPrototype%.next() -}, function () { - var O = this._t; - var index = this._i; - var point; - if (index >= O.length) return { value: undefined, done: true }; - point = $at(O, index); - this._i += point.length; - return { value: point, done: false }; -}); - +/* harmony export (immutable) */ __webpack_exports__["a"] = capitalize; +function capitalize(string) { + return "" + string.charAt(0).toUpperCase() + string.slice(1); +} /***/ }), -/* 301 */ +/* 290 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var LIBRARY = __webpack_require__(203); -var $export = __webpack_require__(56); -var redefine = __webpack_require__(302); -var hide = __webpack_require__(95); -var has = __webpack_require__(87); -var Iterators = __webpack_require__(114); -var $iterCreate = __webpack_require__(711); -var setToStringTag = __webpack_require__(205); -var getPrototypeOf = __webpack_require__(298); -var ITERATOR = __webpack_require__(58)('iterator'); -var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` -var FF_ITERATOR = '@@iterator'; -var KEYS = 'keys'; -var VALUES = 'values'; -var returnThis = function () { return this; }; +exports.__esModule = true; +exports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = undefined; -module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { - $iterCreate(Constructor, NAME, next); - var getMethod = function (kind) { - if (!BUGGY && kind in proto) return proto[kind]; - switch (kind) { - case KEYS: return function keys() { return new Constructor(this, kind); }; - case VALUES: return function values() { return new Constructor(this, kind); }; - } return function entries() { return new Constructor(this, kind); }; - }; - var TAG = NAME + ' Iterator'; - var DEF_VALUES = DEFAULT == VALUES; - var VALUES_BUG = false; - var proto = Base.prototype; - var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; - var $default = (!BUGGY && $native) || getMethod(DEFAULT); - var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; - var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; - var methods, key, IteratorPrototype; - // Fix native - if ($anyNative) { - IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); - if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { - // Set @@toStringTag to native iterators - setToStringTag(IteratorPrototype, TAG, true); - // fix for some old engines - if (!LIBRARY && !has(IteratorPrototype, ITERATOR)) hide(IteratorPrototype, ITERATOR, returnThis); - } - } - // fix Array#{values, @@iterator}.name in V8 / FF - if (DEF_VALUES && $native && $native.name !== VALUES) { - VALUES_BUG = true; - $default = function values() { return $native.call(this); }; - } - // Define iterator - if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { - hide(proto, ITERATOR, $default); - } - // Plug for library - Iterators[NAME] = $default; - Iterators[TAG] = returnThis; - if (DEFAULT) { - methods = { - values: DEF_VALUES ? $default : getMethod(VALUES), - keys: IS_SET ? $default : getMethod(KEYS), - entries: $entries - }; - if (FORCED) for (key in methods) { - if (!(key in proto)) redefine(proto, key, methods[key]); - } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); - } - return methods; -}; +var _propTypes = __webpack_require__(6); +var PropTypes = _interopRequireWildcard(_propTypes); -/***/ }), -/* 302 */ -/***/ (function(module, exports, __webpack_require__) { +var _react = __webpack_require__(0); -module.exports = __webpack_require__(95); +var _react2 = _interopRequireDefault(_react); +var _reactDom = __webpack_require__(26); -/***/ }), -/* 303 */ -/***/ (function(module, exports, __webpack_require__) { +var _reactDom2 = _interopRequireDefault(_reactDom); -// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) -var $keys = __webpack_require__(284); -var hiddenKeys = __webpack_require__(200).concat('length', 'prototype'); +var _PropTypes = __webpack_require__(713); -exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { - return $keys(O, hiddenKeys); -}; +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } -/***/ }), -/* 304 */ -/***/ (function(module, exports, __webpack_require__) { +function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } -var pIE = __webpack_require__(111); -var createDesc = __webpack_require__(110); -var toIObject = __webpack_require__(88); -var toPrimitive = __webpack_require__(194); -var has = __webpack_require__(87); -var IE8_DOM_DEFINE = __webpack_require__(282); -var gOPD = Object.getOwnPropertyDescriptor; +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -exports.f = __webpack_require__(86) ? gOPD : function getOwnPropertyDescriptor(O, P) { - O = toIObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) try { - return gOPD(O, P); - } catch (e) { /* empty */ } - if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); -}; +function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } -/***/ }), -/* 305 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +var UNMOUNTED = exports.UNMOUNTED = 'unmounted'; +var EXITED = exports.EXITED = 'exited'; +var ENTERING = exports.ENTERING = 'entering'; +var ENTERED = exports.ENTERED = 'entered'; +var EXITING = exports.EXITING = 'exiting'; -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_uncontrollable__ = __webpack_require__(44); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_uncontrollable___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_uncontrollable__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__ = __webpack_require__(9); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_ValidComponentChildren__ = __webpack_require__(33); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils_PropTypes__ = __webpack_require__(307); +/** + * The Transition component lets you describe a transition from one component + * state to another _over time_ with a simple declarative API. Most commonly + * it's used to animate the mounting and unmounting of a component, but can also + * be used to describe in-place transition states as well. + * + * By default the `Transition` component does not alter the behavior of the + * component it renders, it only tracks "enter" and "exit" states for the components. + * It's up to you to give meaning and effect to those states. For example we can + * add styles to a component when it enters or exits: + * + * ```jsx + * import Transition from 'react-transition-group/Transition'; + * + * const duration = 300; + * + * const defaultStyle = { + * transition: `opacity ${duration}ms ease-in-out`, + * opacity: 0, + * } + * + * const transitionStyles = { + * entering: { opacity: 0 }, + * entered: { opacity: 1 }, + * }; + * + * const Fade = ({ in: inProp }) => ( + * + * {(state) => ( + *
+ * I'm A fade Transition! + *
+ * )} + *
+ * ); + * ``` + * + * As noted the `Transition` component doesn't _do_ anything by itself to its child component. + * What it does do is track transition states over time so you can update the + * component (such as by adding styles or classes) when it changes states. + * + * There are 4 main states a Transition can be in: + * - `ENTERING` + * - `ENTERED` + * - `EXITING` + * - `EXITED` + * + * Transition state is toggled via the `in` prop. When `true` the component begins the + * "Enter" stage. During this stage, the component will shift from its current transition state, + * to `'entering'` for the duration of the transition and then to the `'entered'` stage once + * it's complete. Let's take the following example: + * + * ```jsx + * state= { in: false }; + * + * toggleEnterState = () => { + * this.setState({ in: true }); + * } + * + * render() { + * return ( + *
+ * + * + *
+ * ); + * } + * ``` + * + * When the button is clicked the component will shift to the `'entering'` state and + * stay there for 500ms (the value of `timeout`) when finally switches to `'entered'`. + * + * When `in` is `false` the same thing happens except the state moves from `'exiting'` to `'exited'`. + */ +var Transition = function (_React$Component) { + _inherits(Transition, _React$Component); + function Transition(props, context) { + _classCallCheck(this, Transition); + var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context)); + var parentGroup = context.transitionGroup; + // In the context of a TransitionGroup all enters are really appears + var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear; + var initialStatus = void 0; + _this.nextStatus = null; + if (props.in) { + if (appear) { + initialStatus = EXITED; + _this.nextStatus = ENTERING; + } else { + initialStatus = ENTERED; + } + } else { + if (props.unmountOnExit || props.mountOnEnter) { + initialStatus = UNMOUNTED; + } else { + initialStatus = EXITED; + } + } + _this.state = { status: initialStatus }; + _this.nextCallback = null; + return _this; + } + Transition.prototype.getChildContext = function getChildContext() { + return { transitionGroup: null }; // allows for nested Transitions + }; + Transition.prototype.componentDidMount = function componentDidMount() { + this.updateStatus(true); + }; + Transition.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { + var _ref = this.pendingState || this.state, + status = _ref.status; + if (nextProps.in) { + if (status === UNMOUNTED) { + this.setState({ status: EXITED }); + } + if (status !== ENTERING && status !== ENTERED) { + this.nextStatus = ENTERING; + } + } else { + if (status === ENTERING || status === ENTERED) { + this.nextStatus = EXITING; + } + } + }; + Transition.prototype.componentDidUpdate = function componentDidUpdate() { + this.updateStatus(); + }; -var propTypes = { - accordion: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, - /** - * When `accordion` is enabled, `activeKey` controls the which child `Panel` is expanded. `activeKey` should - * match a child Panel `eventKey` prop exactly. - * - * @controllable onSelect - */ - activeKey: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.any, + Transition.prototype.componentWillUnmount = function componentWillUnmount() { + this.cancelNextCallback(); + }; - /** - * A callback fired when a child Panel collapse state changes. It's called with the next expanded `activeKey` - * - * @controllable activeKey - */ - onSelect: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, + Transition.prototype.getTimeouts = function getTimeouts() { + var timeout = this.props.timeout; - /** - * An HTML role attribute - */ - role: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, + var exit = void 0, + enter = void 0, + appear = void 0; - /** - * A function that takes an eventKey and type and returns a - * unique id for each Panel heading and Panel Collapse. The function _must_ be a pure function, - * meaning it should always return the _same_ id for the same set of inputs. The default - * value requires that an `id` to be set for the PanelGroup. - * - * The `type` argument will either be `"body"` or `"heading"`. - * - * @defaultValue (eventKey, type) => `${this.props.id}-${type}-${key}` - */ - generateChildId: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, + exit = enter = appear = timeout; - /** - * HTML id attribute, required if no `generateChildId` prop - * is specified. - */ - id: Object(__WEBPACK_IMPORTED_MODULE_11__utils_PropTypes__["b" /* generatedId */])('PanelGroup') -}; + if (timeout != null && typeof timeout !== 'number') { + exit = timeout.exit; + enter = timeout.enter; + appear = timeout.appear; + } + return { exit: exit, enter: enter, appear: appear }; + }; -var defaultProps = { - accordion: false -}; + Transition.prototype.updateStatus = function updateStatus() { + var mounting = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; -var childContextTypes = { - $bs_panelGroup: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.shape({ - getId: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func, - headerRole: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, - panelRole: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, - activeKey: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.any, - onToggle: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func - }) -}; + var nextStatus = this.nextStatus; -var PanelGroup = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(PanelGroup, _React$Component); + if (nextStatus !== null) { + this.nextStatus = null; + // nextStatus will always be ENTERING or EXITING. + this.cancelNextCallback(); + var node = _reactDom2.default.findDOMNode(this); - function PanelGroup(props, context) { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, PanelGroup); + if (nextStatus === ENTERING) { + this.performEnter(node, mounting); + } else { + this.performExit(node); + } + } else if (this.props.unmountOnExit && this.state.status === EXITED) { + this.setState({ status: UNMOUNTED }); + } + }; - var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call(this, props, context)); + Transition.prototype.performEnter = function performEnter(node, mounting) { + var _this2 = this; - _this.handleSelect = _this.handleSelect.bind(_this); - return _this; - } + var enter = this.props.enter; - PanelGroup.prototype.getChildContext = function getChildContext() { - var _props = this.props, - activeKey = _props.activeKey, - accordion = _props.accordion, - generateChildId = _props.generateChildId, - id = _props.id; + var appearing = this.context.transitionGroup ? this.context.transitionGroup.isMounting : mounting; - var getId = null; + var timeouts = this.getTimeouts(); - if (accordion) { - getId = generateChildId || function (key, type) { - return id ? id + '-' + type + '-' + key : null; - }; + // no enter animation skip right to ENTERED + // if we are mounting and running this it means appear _must_ be set + if (!mounting && !enter) { + this.safeSetState({ status: ENTERED }, function () { + _this2.props.onEntered(node); + }); + return; } - return { - $bs_panelGroup: __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()({ - getId: getId, - headerRole: 'tab', - panelRole: 'tabpanel' - }, accordion && { - activeKey: activeKey, - onToggle: this.handleSelect - }) - }; - }; + this.props.onEnter(node, appearing); - PanelGroup.prototype.handleSelect = function handleSelect(key, expanded, e) { - if (expanded) { - this.props.onSelect(key, e); - } + this.safeSetState({ status: ENTERING }, function () { + _this2.props.onEntering(node, appearing); + + // FIXME: appear timeout? + _this2.onTransitionEnd(node, timeouts.enter, function () { + _this2.safeSetState({ status: ENTERED }, function () { + _this2.props.onEntered(node, appearing); + }); + }); + }); }; - PanelGroup.prototype.render = function render() { - var _props2 = this.props, - accordion = _props2.accordion, - className = _props2.className, - children = _props2.children, - props = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_objectWithoutProperties___default()(_props2, ['accordion', 'className', 'children']); + Transition.prototype.performExit = function performExit(node) { + var _this3 = this; - var _splitBsPropsAndOmit = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["splitBsPropsAndOmit"])(props, ['onSelect', 'activeKey']), - bsProps = _splitBsPropsAndOmit[0], - elementProps = _splitBsPropsAndOmit[1]; + var exit = this.props.exit; - if (accordion) { - elementProps.role = elementProps.role || 'tablist'; + var timeouts = this.getTimeouts(); + + // no exit animation skip right to EXITED + if (!exit) { + this.safeSetState({ status: EXITED }, function () { + _this3.props.onExited(node); + }); + return; } + this.props.onExit(node); - var classes = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["getClassSet"])(bsProps); + this.safeSetState({ status: EXITING }, function () { + _this3.props.onExiting(node); - return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( - 'div', - __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()({}, elementProps, { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) }), - __WEBPACK_IMPORTED_MODULE_10__utils_ValidComponentChildren__["a" /* default */].map(children, function (child) { - return Object(__WEBPACK_IMPORTED_MODULE_7_react__["cloneElement"])(child, { - bsStyle: child.props.bsStyle || bsProps.bsStyle + _this3.onTransitionEnd(node, timeouts.exit, function () { + _this3.safeSetState({ status: EXITED }, function () { + _this3.props.onExited(node); }); - }) - ); + }); + }); }; - return PanelGroup; -}(__WEBPACK_IMPORTED_MODULE_7_react___default.a.Component); - -PanelGroup.propTypes = propTypes; -PanelGroup.defaultProps = defaultProps; -PanelGroup.childContextTypes = childContextTypes; - -/* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_8_uncontrollable___default()(Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsClass"])('panel-group', PanelGroup), { - activeKey: 'onSelect' -})); - -/***/ }), -/* 306 */ -/***/ (function(module, exports, __webpack_require__) { - -var getKeys = __webpack_require__(99); -var toIObject = __webpack_require__(88); -var isEnum = __webpack_require__(111).f; -module.exports = function (isEntries) { - return function (it) { - var O = toIObject(it); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var result = []; - var key; - while (length > i) if (isEnum.call(O, key = keys[i++])) { - result.push(isEntries ? [key, O[key]] : O[key]); - } return result; + Transition.prototype.cancelNextCallback = function cancelNextCallback() { + if (this.nextCallback !== null) { + this.nextCallback.cancel(); + this.nextCallback = null; + } }; -}; + Transition.prototype.safeSetState = function safeSetState(nextState, callback) { + var _this4 = this; -/***/ }), -/* 307 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony export (immutable) */ __webpack_exports__["b"] = generatedId; -/* harmony export (immutable) */ __webpack_exports__["c"] = requiredRoles; -/* harmony export (immutable) */ __webpack_exports__["a"] = exclusiveRoles; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker__ = __webpack_require__(115); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__ValidComponentChildren__ = __webpack_require__(33); + // We need to track pending updates for instances where a cWRP fires quickly + // after cDM and before the state flushes, which would double trigger a + // transition + this.pendingState = nextState; + // This shouldn't be necessary, but there are weird race conditions with + // setState callbacks and unmounting in testing, so always make sure that + // we can cancel any pending setState callbacks after we unmount. + callback = this.setNextCallback(callback); + this.setState(nextState, function () { + _this4.pendingState = null; + callback(); + }); + }; + Transition.prototype.setNextCallback = function setNextCallback(callback) { + var _this5 = this; + var active = true; + this.nextCallback = function (event) { + if (active) { + active = false; + _this5.nextCallback = null; -var idPropType = __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_0_prop_types___default.a.number]); + callback(event); + } + }; -function generatedId(name) { - return function (props) { - for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } + this.nextCallback.cancel = function () { + active = false; + }; - var error = null; + return this.nextCallback; + }; - if (!props.generateChildId) { - error = idPropType.apply(undefined, [props].concat(args)); + Transition.prototype.onTransitionEnd = function onTransitionEnd(node, timeout, handler) { + this.setNextCallback(handler); - if (!error && !props.id) { - error = new Error('In order to properly initialize the ' + name + ' in a way that is accessible to assistive technologies ' + ('(such as screen readers) an `id` or a `generateChildId` prop to ' + name + ' is required')); + if (node) { + if (this.props.addEndListener) { + this.props.addEndListener(node, this.nextCallback); + } + if (timeout != null) { + setTimeout(this.nextCallback, timeout); } + } else { + setTimeout(this.nextCallback, 0); } - return error; }; -} - -function requiredRoles() { - for (var _len2 = arguments.length, roles = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { - roles[_key2] = arguments[_key2]; - } - - return __WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker___default()(function (props, propName, component) { - var missing = void 0; - - roles.every(function (role) { - if (!__WEBPACK_IMPORTED_MODULE_2__ValidComponentChildren__["a" /* default */].some(props.children, function (child) { - return child.props.bsRole === role; - })) { - missing = role; - return false; - } - - return true; - }); - if (missing) { - return new Error('(children) ' + component + ' - Missing a required child with bsRole: ' + (missing + '. ' + component + ' must have at least one child of each of ') + ('the following bsRoles: ' + roles.join(', '))); + Transition.prototype.render = function render() { + var status = this.state.status; + if (status === UNMOUNTED) { + return null; } - return null; - }); -} - -function exclusiveRoles() { - for (var _len3 = arguments.length, roles = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { - roles[_key3] = arguments[_key3]; - } + var _props = this.props, + children = _props.children, + childProps = _objectWithoutProperties(_props, ['children']); + // filter props for Transtition - return __WEBPACK_IMPORTED_MODULE_1_prop_types_extra_lib_utils_createChainableTypeChecker___default()(function (props, propName, component) { - var duplicate = void 0; - roles.every(function (role) { - var childrenWithRole = __WEBPACK_IMPORTED_MODULE_2__ValidComponentChildren__["a" /* default */].filter(props.children, function (child) { - return child.props.bsRole === role; - }); + delete childProps.in; + delete childProps.mountOnEnter; + delete childProps.unmountOnExit; + delete childProps.appear; + delete childProps.enter; + delete childProps.exit; + delete childProps.timeout; + delete childProps.addEndListener; + delete childProps.onEnter; + delete childProps.onEntering; + delete childProps.onEntered; + delete childProps.onExit; + delete childProps.onExiting; + delete childProps.onExited; - if (childrenWithRole.length > 1) { - duplicate = role; - return false; - } + if (typeof children === 'function') { + return children(status, childProps); + } - return true; - }); + var child = _react2.default.Children.only(children); + return _react2.default.cloneElement(child, childProps); + }; - if (duplicate) { - return new Error('(children) ' + component + ' - Duplicate children detected of bsRole: ' + (duplicate + '. Only one child each allowed with the following ') + ('bsRoles: ' + roles.join(', '))); - } + return Transition; +}(_react2.default.Component); - return null; - }); -} +Transition.contextTypes = { + transitionGroup: PropTypes.object +}; +Transition.childContextTypes = { + transitionGroup: function transitionGroup() {} +}; -/***/ }), -/* 308 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__SafeAnchor__ = __webpack_require__(49); +Transition.propTypes = true ? { + /** + * A `function` child can be used instead of a React element. + * This function is called with the current transition status + * ('entering', 'entered', 'exiting', 'exited', 'unmounted'), which can used + * to apply context specific props to a component. + * + * ```jsx + * + * {(status) => ( + * + * )} + * + * ``` + */ + children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired, + /** + * Show the component; triggers the enter or exit states + */ + in: PropTypes.bool, + /** + * By default the child component is mounted immediately along with + * the parent `Transition` component. If you want to "lazy mount" the component on the + * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay + * mounted, even on "exited", unless you also specify `unmountOnExit`. + */ + mountOnEnter: PropTypes.bool, + /** + * By default the child component stays mounted after it reaches the `'exited'` state. + * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting. + */ + unmountOnExit: PropTypes.bool, + /** + * Normally a component is not transitioned if it is shown when the `` component mounts. + * If you want to transition on the first mount set `appear` to `true`, and the + * component will transition in as soon as the `` mounts. + * + * > Note: there are no specific "appear" states. `appear` only adds an additional `enter` transition. + */ + appear: PropTypes.bool, + /** + * Enable or disable enter transitions. + */ + enter: PropTypes.bool, + /** + * Enable or disable exit transitions. + */ + exit: PropTypes.bool, + /** + * The duration of the transition, in milliseconds. + * Required unless `addEventListener` is provided + * + * You may specify a single timeout for all transitions like: `timeout={500}`, + * or individually like: + * + * ```jsx + * timeout={{ + * enter: 300, + * exit: 500, + * }} + * ``` + * + * @type {number | { enter?: number, exit?: number }} + */ + timeout: function timeout(props) { + for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + var pt = _PropTypes.timeoutsShape; + if (!props.addEndListener) pt = pt.isRequired; + return pt.apply(undefined, [props].concat(args)); + }, + /** + * Add a custom transition end trigger. Called with the transitioning + * DOM node and a `done` callback. Allows for more fine grained transition end + * logic. **Note:** Timeouts are still used as a fallback if provided. + * + * ```jsx + * addEndListener={(node, done) => { + * // use the css transitionend event to mark the finish of a transition + * node.addEventListener('transitionend', done, false); + * }} + * ``` + */ + addEndListener: PropTypes.func, + /** + * Callback fired before the "entering" status is applied. An extra parameter + * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount + * + * @type Function(node: HtmlElement, isAppearing: bool) -> void + */ + onEnter: PropTypes.func, -var propTypes = { /** - * If set to true, renders `span` instead of `a` + * Callback fired after the "entering" status is applied. An extra parameter + * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount + * + * @type Function(node: HtmlElement, isAppearing: bool) */ - active: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + onEntering: PropTypes.func, + /** - * `href` attribute for the inner `a` element + * Callback fired after the "entered" status is applied. An extra parameter + * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount + * + * @type Function(node: HtmlElement, isAppearing: bool) -> void */ - href: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string, + onEntered: PropTypes.func, + /** - * `title` attribute for the inner `a` element + * Callback fired before the "exiting" status is applied. + * + * @type Function(node: HtmlElement) -> void */ - title: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.node, + onExit: PropTypes.func, + /** - * `target` attribute for the inner `a` element + * Callback fired after the "exiting" status is applied. + * + * @type Function(node: HtmlElement) -> void */ - target: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string -}; + onExiting: PropTypes.func, -var defaultProps = { - active: false -}; + /** + * Callback fired after the "exited" status is applied. + * + * @type Function(node: HtmlElement) -> void + */ + onExited: PropTypes.func +} : {}; -var BreadcrumbItem = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(BreadcrumbItem, _React$Component); +// Name the function so it is clearer in the documentation +function noop() {} - function BreadcrumbItem() { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, BreadcrumbItem); +Transition.defaultProps = { + in: false, + mountOnEnter: false, + unmountOnExit: false, + appear: false, + enter: true, + exit: true, - return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); - } + onEnter: noop, + onEntering: noop, + onEntered: noop, - BreadcrumbItem.prototype.render = function render() { - var _props = this.props, - active = _props.active, - href = _props.href, - title = _props.title, - target = _props.target, - className = _props.className, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['active', 'href', 'title', 'target', 'className']); + onExit: noop, + onExiting: noop, + onExited: noop +}; - // Don't try to render these props on non-active . +Transition.UNMOUNTED = 0; +Transition.EXITED = 1; +Transition.ENTERING = 2; +Transition.ENTERED = 3; +Transition.EXITING = 4; +exports.default = Transition; - var linkProps = { href: href, title: title, target: target }; +/***/ }), +/* 291 */ +/***/ (function(module, exports, __webpack_require__) { - return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( - 'li', - { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, { active: active }) }, - active ? __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement('span', props) : __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_8__SafeAnchor__["a" /* default */], __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, linkProps)) - ); - }; +"use strict"; - return BreadcrumbItem; -}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); -BreadcrumbItem.propTypes = propTypes; -BreadcrumbItem.defaultProps = defaultProps; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = activeElement; -/* harmony default export */ __webpack_exports__["a"] = (BreadcrumbItem); +var _ownerDocument = __webpack_require__(89); + +var _ownerDocument2 = _interopRequireDefault(_ownerDocument); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function activeElement() { + var doc = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : (0, _ownerDocument2.default)(); + + try { + return doc.activeElement; + } catch (e) {/* ie throws if no active element */} +} +module.exports = exports['default']; /***/ }), -/* 309 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { +/* 292 */ +/***/ (function(module, exports, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_dom__ = __webpack_require__(17); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react_dom__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_dom_helpers_transition__ = __webpack_require__(748); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_dom_helpers_transition___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_dom_helpers_transition__); +exports.__esModule = true; +var _contains = __webpack_require__(90); +var _contains2 = _interopRequireDefault(_contains); +var _propTypes = __webpack_require__(6); +var _propTypes2 = _interopRequireDefault(_propTypes); +var _react = __webpack_require__(0); +var _react2 = _interopRequireDefault(_react); +var _reactDom = __webpack_require__(26); +var _reactDom2 = _interopRequireDefault(_reactDom); -var propTypes = { - direction: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.oneOf(['prev', 'next']), - onAnimateOutEnd: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func, - active: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, - animateIn: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, - animateOut: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, - index: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.number -}; +var _addEventListener = __webpack_require__(293); -var defaultProps = { - active: false, - animateIn: false, - animateOut: false -}; +var _addEventListener2 = _interopRequireDefault(_addEventListener); -var CarouselItem = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(CarouselItem, _React$Component); +var _ownerDocument = __webpack_require__(91); - function CarouselItem(props, context) { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, CarouselItem); +var _ownerDocument2 = _interopRequireDefault(_ownerDocument); - var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call(this, props, context)); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - _this.handleAnimateOutEnd = _this.handleAnimateOutEnd.bind(_this); +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - _this.state = { - direction: null - }; +function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - _this.isUnmounted = false; - return _this; - } +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - CarouselItem.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { - if (this.props.active !== nextProps.active) { - this.setState({ direction: null }); - } - }; +var escapeKeyCode = 27; - CarouselItem.prototype.componentDidUpdate = function componentDidUpdate(prevProps) { - var _this2 = this; +function isLeftClickEvent(event) { + return event.button === 0; +} - var active = this.props.active; +function isModifiedEvent(event) { + return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey); +} - var prevActive = prevProps.active; +/** + * The `` component registers your callback on the document + * when rendered. Powers the `` component. This is used achieve modal + * style behavior where your callback is triggered when the user tries to + * interact with the rest of the document or hits the `esc` key. + */ - if (!active && prevActive) { - __WEBPACK_IMPORTED_MODULE_9_dom_helpers_transition___default.a.end(__WEBPACK_IMPORTED_MODULE_8_react_dom___default.a.findDOMNode(this), this.handleAnimateOutEnd); - } +var RootCloseWrapper = function (_React$Component) { + _inherits(RootCloseWrapper, _React$Component); - if (active !== prevActive) { - setTimeout(function () { - return _this2.startAnimation(); - }, 20); - } - }; + function RootCloseWrapper(props, context) { + _classCallCheck(this, RootCloseWrapper); - CarouselItem.prototype.componentWillUnmount = function componentWillUnmount() { - this.isUnmounted = true; - }; + var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context)); - CarouselItem.prototype.handleAnimateOutEnd = function handleAnimateOutEnd() { - if (this.isUnmounted) { - return; - } + _this.addEventListeners = function () { + var event = _this.props.event; - if (this.props.onAnimateOutEnd) { - this.props.onAnimateOutEnd(this.props.index); - } - }; + var doc = (0, _ownerDocument2.default)(_this); - CarouselItem.prototype.startAnimation = function startAnimation() { - if (this.isUnmounted) { - return; - } + // Use capture for this listener so it fires before React's listener, to + // avoid false positives in the contains() check below if the target DOM + // element is removed in the React mouse callback. + _this.documentMouseCaptureListener = (0, _addEventListener2.default)(doc, event, _this.handleMouseCapture, true); - this.setState({ - direction: this.props.direction === 'prev' ? 'right' : 'left' - }); - }; + _this.documentMouseListener = (0, _addEventListener2.default)(doc, event, _this.handleMouse); - CarouselItem.prototype.render = function render() { - var _props = this.props, - direction = _props.direction, - active = _props.active, - animateIn = _props.animateIn, - animateOut = _props.animateOut, - className = _props.className, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['direction', 'active', 'animateIn', 'animateOut', 'className']); + _this.documentKeyupListener = (0, _addEventListener2.default)(doc, 'keyup', _this.handleKeyUp); + }; - delete props.onAnimateOutEnd; - delete props.index; + _this.removeEventListeners = function () { + if (_this.documentMouseCaptureListener) { + _this.documentMouseCaptureListener.remove(); + } - var classes = { - item: true, - active: active && !animateIn || animateOut + if (_this.documentMouseListener) { + _this.documentMouseListener.remove(); + } + + if (_this.documentKeyupListener) { + _this.documentKeyupListener.remove(); + } }; - if (direction && active && animateIn) { - classes[direction] = true; + + _this.handleMouseCapture = function (e) { + _this.preventMouseRootClose = isModifiedEvent(e) || !isLeftClickEvent(e) || (0, _contains2.default)(_reactDom2.default.findDOMNode(_this), e.target); + }; + + _this.handleMouse = function (e) { + if (!_this.preventMouseRootClose && _this.props.onRootClose) { + _this.props.onRootClose(e); + } + }; + + _this.handleKeyUp = function (e) { + if (e.keyCode === escapeKeyCode && _this.props.onRootClose) { + _this.props.onRootClose(e); + } + }; + + _this.preventMouseRootClose = false; + return _this; + } + + RootCloseWrapper.prototype.componentDidMount = function componentDidMount() { + if (!this.props.disabled) { + this.addEventListeners(); } - if (this.state.direction && (animateIn || animateOut)) { - classes[this.state.direction] = true; + }; + + RootCloseWrapper.prototype.componentDidUpdate = function componentDidUpdate(prevProps) { + if (!this.props.disabled && prevProps.disabled) { + this.addEventListeners(); + } else if (this.props.disabled && !prevProps.disabled) { + this.removeEventListeners(); } + }; - return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement('div', __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) })); + RootCloseWrapper.prototype.componentWillUnmount = function componentWillUnmount() { + if (!this.props.disabled) { + this.removeEventListeners(); + } }; - return CarouselItem; -}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); + RootCloseWrapper.prototype.render = function render() { + return this.props.children; + }; -CarouselItem.propTypes = propTypes; -CarouselItem.defaultProps = defaultProps; + return RootCloseWrapper; +}(_react2.default.Component); -/* harmony default export */ __webpack_exports__["a"] = (CarouselItem); +RootCloseWrapper.displayName = 'RootCloseWrapper'; + +RootCloseWrapper.propTypes = { + /** + * Callback fired after click or mousedown. Also triggers when user hits `esc`. + */ + onRootClose: _propTypes2.default.func, + /** + * Children to render. + */ + children: _propTypes2.default.element, + /** + * Disable the the RootCloseWrapper, preventing it from triggering `onRootClose`. + */ + disabled: _propTypes2.default.bool, + /** + * Choose which document mouse event to bind to. + */ + event: _propTypes2.default.oneOf(['click', 'mousedown']) +}; + +RootCloseWrapper.defaultProps = { + event: 'click' +}; + +exports.default = RootCloseWrapper; +module.exports = exports['default']; /***/ }), -/* 310 */ +/* 293 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = camelizeStyleName; +exports.__esModule = true; + +exports.default = function (node, event, handler, capture) { + (0, _on2.default)(node, event, handler, capture); -var _camelize = __webpack_require__(750); + return { + remove: function remove() { + (0, _off2.default)(node, event, handler, capture); + } + }; +}; -var _camelize2 = _interopRequireDefault(_camelize); +var _on = __webpack_require__(194); + +var _on2 = _interopRequireDefault(_on); + +var _off = __webpack_require__(195); + +var _off2 = _interopRequireDefault(_off); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -var msPattern = /^-ms-/; /** - * Copyright 2014-2015, Facebook, Inc. - * All rights reserved. - * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/camelizeStyleName.js - */ -function camelizeStyleName(string) { - return (0, _camelize2.default)(string.replace(msPattern, 'ms-')); -} module.exports = exports['default']; /***/ }), -/* 311 */ +/* 294 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony export (immutable) */ __webpack_exports__["a"] = capitalize; -function capitalize(string) { - return "" + string.charAt(0).toUpperCase() + string.slice(1); -} +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__Button__ = __webpack_require__(104); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__SafeAnchor__ = __webpack_require__(43); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__ = __webpack_require__(9); -/***/ }), -/* 312 */ -/***/ (function(module, exports, __webpack_require__) { -"use strict"; -exports.__esModule = true; -exports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = undefined; -var _propTypes = __webpack_require__(5); -var PropTypes = _interopRequireWildcard(_propTypes); -var _react = __webpack_require__(0); -var _react2 = _interopRequireDefault(_react); -var _reactDom = __webpack_require__(17); -var _reactDom2 = _interopRequireDefault(_reactDom); -var _PropTypes = __webpack_require__(760); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } +var propTypes = { + noCaret: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, + open: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, + title: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, + useAnchor: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool +}; -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } +var defaultProps = { + open: false, + useAnchor: false, + bsRole: 'toggle' +}; -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } +var DropdownToggle = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(DropdownToggle, _React$Component); -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } + function DropdownToggle() { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, DropdownToggle); -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } + return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); + } -var UNMOUNTED = exports.UNMOUNTED = 'unmounted'; -var EXITED = exports.EXITED = 'exited'; -var ENTERING = exports.ENTERING = 'entering'; -var ENTERED = exports.ENTERED = 'entered'; -var EXITING = exports.EXITING = 'exiting'; + DropdownToggle.prototype.render = function render() { + var _props = this.props, + noCaret = _props.noCaret, + open = _props.open, + useAnchor = _props.useAnchor, + bsClass = _props.bsClass, + className = _props.className, + children = _props.children, + props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['noCaret', 'open', 'useAnchor', 'bsClass', 'className', 'children']); -/** - * The Transition component lets you describe a transition from one component - * state to another _over time_ with a simple declarative API. Most commonly - * it's used to animate the mounting and unmounting of a component, but can also - * be used to describe in-place transition states as well. - * - * By default the `Transition` component does not alter the behavior of the - * component it renders, it only tracks "enter" and "exit" states for the components. - * It's up to you to give meaning and effect to those states. For example we can - * add styles to a component when it enters or exits: - * - * ```jsx - * import Transition from 'react-transition-group/Transition'; - * - * const duration = 300; - * - * const defaultStyle = { - * transition: `opacity ${duration}ms ease-in-out`, - * opacity: 0, - * } - * - * const transitionStyles = { - * entering: { opacity: 0 }, - * entered: { opacity: 1 }, - * }; - * - * const Fade = ({ in: inProp }) => ( - * - * {(state) => ( - *
- * I'm A fade Transition! - *
- * )} - *
- * ); - * ``` - * - * As noted the `Transition` component doesn't _do_ anything by itself to its child component. - * What it does do is track transition states over time so you can update the - * component (such as by adding styles or classes) when it changes states. - * - * There are 4 main states a Transition can be in: - * - `ENTERING` - * - `ENTERED` - * - `EXITING` - * - `EXITED` - * - * Transition state is toggled via the `in` prop. When `true` the component begins the - * "Enter" stage. During this stage, the component will shift from its current transition state, - * to `'entering'` for the duration of the transition and then to the `'entered'` stage once - * it's complete. Let's take the following example: - * - * ```jsx - * state= { in: false }; - * - * toggleEnterState = () => { - * this.setState({ in: true }); - * } - * - * render() { - * return ( - *
- * - * - *
- * ); - * } - * ``` - * - * When the button is clicked the component will shift to the `'entering'` state and - * stay there for 500ms (the value of `timeout`) when finally switches to `'entered'`. - * - * When `in` is `false` the same thing happens except the state moves from `'exiting'` to `'exited'`. - */ + delete props.bsRole; -var Transition = function (_React$Component) { - _inherits(Transition, _React$Component); + var Component = useAnchor ? __WEBPACK_IMPORTED_MODULE_9__SafeAnchor__["a" /* default */] : __WEBPACK_IMPORTED_MODULE_8__Button__["a" /* default */]; + var useCaret = !noCaret; - function Transition(props, context) { - _classCallCheck(this, Transition); + // This intentionally forwards bsSize and bsStyle (if set) to the + // underlying component, to allow it to render size and style variants. - var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context)); + // FIXME: Should this really fall back to `title` as children? - var parentGroup = context.transitionGroup; - // In the context of a TransitionGroup all enters are really appears - var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear; + return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement( + Component, + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, { + role: 'button', + className: __WEBPACK_IMPORTED_MODULE_7_classnames___default()(className, bsClass), + 'aria-haspopup': true, + 'aria-expanded': open + }), + children || props.title, + useCaret && ' ', + useCaret && __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement('span', { className: 'caret' }) + ); + }; - var initialStatus = void 0; - _this.nextStatus = null; + return DropdownToggle; +}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.Component); - if (props.in) { - if (appear) { - initialStatus = EXITED; - _this.nextStatus = ENTERING; - } else { - initialStatus = ENTERED; - } - } else { - if (props.unmountOnExit || props.mountOnEnter) { - initialStatus = UNMOUNTED; - } else { - initialStatus = EXITED; - } - } +DropdownToggle.propTypes = propTypes; +DropdownToggle.defaultProps = defaultProps; - _this.state = { status: initialStatus }; +/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsClass"])('dropdown-toggle', DropdownToggle)); - _this.nextCallback = null; - return _this; - } +/***/ }), +/* 295 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { - Transition.prototype.getChildContext = function getChildContext() { - return { transitionGroup: null }; // allows for nested Transitions - }; +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType__ = __webpack_require__(15); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__ = __webpack_require__(9); - Transition.prototype.componentDidMount = function componentDidMount() { - this.updateStatus(true); - }; - Transition.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { - var _ref = this.pendingState || this.state, - status = _ref.status; - if (nextProps.in) { - if (status === UNMOUNTED) { - this.setState({ status: EXITED }); - } - if (status !== ENTERING && status !== ENTERED) { - this.nextStatus = ENTERING; - } - } else { - if (status === ENTERING || status === ENTERED) { - this.nextStatus = EXITING; - } - } - }; - Transition.prototype.componentDidUpdate = function componentDidUpdate() { - this.updateStatus(); - }; - Transition.prototype.componentWillUnmount = function componentWillUnmount() { - this.cancelNextCallback(); - }; - Transition.prototype.getTimeouts = function getTimeouts() { - var timeout = this.props.timeout; - var exit = void 0, - enter = void 0, - appear = void 0; - exit = enter = appear = timeout; - if (timeout != null && typeof timeout !== 'number') { - exit = timeout.exit; - enter = timeout.enter; - appear = timeout.appear; - } - return { exit: exit, enter: enter, appear: appear }; - }; - - Transition.prototype.updateStatus = function updateStatus() { - var mounting = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; - var nextStatus = this.nextStatus; - if (nextStatus !== null) { - this.nextStatus = null; - // nextStatus will always be ENTERING or EXITING. - this.cancelNextCallback(); - var node = _reactDom2.default.findDOMNode(this); - if (nextStatus === ENTERING) { - this.performEnter(node, mounting); - } else { - this.performExit(node); - } - } else if (this.props.unmountOnExit && this.state.status === EXITED) { - this.setState({ status: UNMOUNTED }); - } - }; +var propTypes = { + /** + * Turn any fixed-width grid layout into a full-width layout by this property. + * + * Adds `container-fluid` class. + */ + fluid: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + /** + * You can use a custom element for this component + */ + componentClass: __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType___default.a +}; - Transition.prototype.performEnter = function performEnter(node, mounting) { - var _this2 = this; +var defaultProps = { + componentClass: 'div', + fluid: false +}; - var enter = this.props.enter; +var Grid = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(Grid, _React$Component); - var appearing = this.context.transitionGroup ? this.context.transitionGroup.isMounting : mounting; + function Grid() { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, Grid); - var timeouts = this.getTimeouts(); + return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); + } - // no enter animation skip right to ENTERED - // if we are mounting and running this it means appear _must_ be set - if (!mounting && !enter) { - this.safeSetState({ status: ENTERED }, function () { - _this2.props.onEntered(node); - }); - return; - } + Grid.prototype.render = function render() { + var _props = this.props, + fluid = _props.fluid, + Component = _props.componentClass, + className = _props.className, + props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['fluid', 'componentClass', 'className']); - this.props.onEnter(node, appearing); + var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["splitBsProps"])(props), + bsProps = _splitBsProps[0], + elementProps = _splitBsProps[1]; - this.safeSetState({ status: ENTERING }, function () { - _this2.props.onEntering(node, appearing); + var classes = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["prefix"])(bsProps, fluid && 'fluid'); - // FIXME: appear timeout? - _this2.onTransitionEnd(node, timeouts.enter, function () { - _this2.safeSetState({ status: ENTERED }, function () { - _this2.props.onEntered(node, appearing); - }); - }); - }); + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(Component, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, elementProps, { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) })); }; - Transition.prototype.performExit = function performExit(node) { - var _this3 = this; + return Grid; +}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); - var exit = this.props.exit; +Grid.propTypes = propTypes; +Grid.defaultProps = defaultProps; - var timeouts = this.getTimeouts(); +/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsClass"])('container', Grid)); - // no exit animation skip right to EXITED - if (!exit) { - this.safeSetState({ status: EXITED }, function () { - _this3.props.onExited(node); - }); - return; - } - this.props.onExit(node); +/***/ }), +/* 296 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { - this.safeSetState({ status: EXITING }, function () { - _this3.props.onExiting(node); +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values__ = __webpack_require__(88); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_objectWithoutProperties__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__ = __webpack_require__(9); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_StyleConfig__ = __webpack_require__(24); - _this3.onTransitionEnd(node, timeouts.exit, function () { - _this3.safeSetState({ status: EXITED }, function () { - _this3.props.onExited(node); - }); - }); - }); - }; - Transition.prototype.cancelNextCallback = function cancelNextCallback() { - if (this.nextCallback !== null) { - this.nextCallback.cancel(); - this.nextCallback = null; - } - }; - Transition.prototype.safeSetState = function safeSetState(nextState, callback) { - var _this4 = this; - // We need to track pending updates for instances where a cWRP fires quickly - // after cDM and before the state flushes, which would double trigger a - // transition - this.pendingState = nextState; - // This shouldn't be necessary, but there are weird race conditions with - // setState callbacks and unmounting in testing, so always make sure that - // we can cancel any pending setState callbacks after we unmount. - callback = this.setNextCallback(callback); - this.setState(nextState, function () { - _this4.pendingState = null; - callback(); - }); - }; - Transition.prototype.setNextCallback = function setNextCallback(callback) { - var _this5 = this; - var active = true; - this.nextCallback = function (event) { - if (active) { - active = false; - _this5.nextCallback = null; - callback(event); - } - }; - this.nextCallback.cancel = function () { - active = false; - }; - return this.nextCallback; - }; - Transition.prototype.onTransitionEnd = function onTransitionEnd(node, timeout, handler) { - this.setNextCallback(handler); - if (node) { - if (this.props.addEndListener) { - this.props.addEndListener(node, this.nextCallback); - } - if (timeout != null) { - setTimeout(this.nextCallback, timeout); - } - } else { - setTimeout(this.nextCallback, 0); - } - }; +var propTypes = { + active: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.any, + disabled: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.any, + header: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, + listItem: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, + onClick: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, + href: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, + type: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string +}; - Transition.prototype.render = function render() { - var status = this.state.status; - if (status === UNMOUNTED) { - return null; - } +var defaultProps = { + listItem: false +}; - var _props = this.props, - children = _props.children, - childProps = _objectWithoutProperties(_props, ['children']); - // filter props for Transtition +var ListGroupItem = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(ListGroupItem, _React$Component); + function ListGroupItem() { + __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, ListGroupItem); - delete childProps.in; - delete childProps.mountOnEnter; - delete childProps.unmountOnExit; - delete childProps.appear; - delete childProps.enter; - delete childProps.exit; - delete childProps.timeout; - delete childProps.addEndListener; - delete childProps.onEnter; - delete childProps.onEntering; - delete childProps.onEntered; - delete childProps.onExit; - delete childProps.onExiting; - delete childProps.onExited; + return __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); + } - if (typeof children === 'function') { - return children(status, childProps); + ListGroupItem.prototype.renderHeader = function renderHeader(header, headingClassName) { + if (__WEBPACK_IMPORTED_MODULE_7_react___default.a.isValidElement(header)) { + return Object(__WEBPACK_IMPORTED_MODULE_7_react__["cloneElement"])(header, { + className: __WEBPACK_IMPORTED_MODULE_6_classnames___default()(header.props.className, headingClassName) + }); } - var child = _react2.default.Children.only(children); - return _react2.default.cloneElement(child, childProps); + return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( + 'h4', + { className: headingClassName }, + header + ); }; - return Transition; -}(_react2.default.Component); - -Transition.contextTypes = { - transitionGroup: PropTypes.object -}; -Transition.childContextTypes = { - transitionGroup: function transitionGroup() {} -}; + ListGroupItem.prototype.render = function render() { + var _props = this.props, + active = _props.active, + disabled = _props.disabled, + className = _props.className, + header = _props.header, + listItem = _props.listItem, + children = _props.children, + props = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['active', 'disabled', 'className', 'header', 'listItem', 'children']); + var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["splitBsProps"])(props), + bsProps = _splitBsProps[0], + elementProps = _splitBsProps[1]; -Transition.propTypes = true ? { - /** - * A `function` child can be used instead of a React element. - * This function is called with the current transition status - * ('entering', 'entered', 'exiting', 'exited', 'unmounted'), which can used - * to apply context specific props to a component. - * - * ```jsx - * - * {(status) => ( - * - * )} - * - * ``` - */ - children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired, + var classes = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()({}, Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["getClassSet"])(bsProps), { + active: active, + disabled: disabled + }); - /** - * Show the component; triggers the enter or exit states - */ - in: PropTypes.bool, + var Component = void 0; - /** - * By default the child component is mounted immediately along with - * the parent `Transition` component. If you want to "lazy mount" the component on the - * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay - * mounted, even on "exited", unless you also specify `unmountOnExit`. - */ - mountOnEnter: PropTypes.bool, + if (elementProps.href) { + Component = 'a'; + } else if (elementProps.onClick) { + Component = 'button'; + elementProps.type = elementProps.type || 'button'; + } else if (listItem) { + Component = 'li'; + } else { + Component = 'span'; + } - /** - * By default the child component stays mounted after it reaches the `'exited'` state. - * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting. - */ - unmountOnExit: PropTypes.bool, + elementProps.className = __WEBPACK_IMPORTED_MODULE_6_classnames___default()(className, classes); - /** - * Normally a component is not transitioned if it is shown when the `` component mounts. - * If you want to transition on the first mount set `appear` to `true`, and the - * component will transition in as soon as the `` mounts. - * - * > Note: there are no specific "appear" states. `appear` only adds an additional `enter` transition. - */ - appear: PropTypes.bool, + // TODO: Deprecate `header` prop. + if (header) { + return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( + Component, + elementProps, + this.renderHeader(header, Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["prefix"])(bsProps, 'heading')), + __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( + 'p', + { className: Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["prefix"])(bsProps, 'text') }, + children + ) + ); + } - /** - * Enable or disable enter transitions. - */ - enter: PropTypes.bool, + return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( + Component, + elementProps, + children + ); + }; - /** - * Enable or disable exit transitions. - */ - exit: PropTypes.bool, + return ListGroupItem; +}(__WEBPACK_IMPORTED_MODULE_7_react___default.a.Component); - /** - * The duration of the transition, in milliseconds. - * Required unless `addEventListener` is provided - * - * You may specify a single timeout for all transitions like: `timeout={500}`, - * or individually like: - * - * ```jsx - * timeout={{ - * enter: 300, - * exit: 500, - * }} - * ``` - * - * @type {number | { enter?: number, exit?: number }} - */ - timeout: function timeout(props) { - for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } +ListGroupItem.propTypes = propTypes; +ListGroupItem.defaultProps = defaultProps; - var pt = _PropTypes.timeoutsShape; - if (!props.addEndListener) pt = pt.isRequired; - return pt.apply(undefined, [props].concat(args)); - }, +/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsClass"])('list-group-item', Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsStyles"])(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values___default()(__WEBPACK_IMPORTED_MODULE_10__utils_StyleConfig__["d" /* State */]), ListGroupItem))); - /** - * Add a custom transition end trigger. Called with the transitioning - * DOM node and a `done` callback. Allows for more fine grained transition end - * logic. **Note:** Timeouts are still used as a fallback if provided. - * - * ```jsx - * addEndListener={(node, done) => { - * // use the css transitionend event to mark the finish of a transition - * node.addEventListener('transitionend', done, false); - * }} - * ``` - */ - addEndListener: PropTypes.func, +/***/ }), +/* 297 */ +/***/ (function(module, exports, __webpack_require__) { - /** - * Callback fired before the "entering" status is applied. An extra parameter - * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount - * - * @type Function(node: HtmlElement, isAppearing: bool) -> void - */ - onEnter: PropTypes.func, +"use strict"; - /** - * Callback fired after the "entering" status is applied. An extra parameter - * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount - * - * @type Function(node: HtmlElement, isAppearing: bool) - */ - onEntering: PropTypes.func, - /** - * Callback fired after the "entered" status is applied. An extra parameter - * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount - * - * @type Function(node: HtmlElement, isAppearing: bool) -> void - */ - onEntered: PropTypes.func, +Object.defineProperty(exports, "__esModule", { + value: true +}); - /** - * Callback fired before the "exiting" status is applied. - * - * @type Function(node: HtmlElement) -> void - */ - onExit: PropTypes.func, +exports.default = function (recalc) { + if (!size && size !== 0 || recalc) { + if (_inDOM2.default) { + var scrollDiv = document.createElement('div'); - /** - * Callback fired after the "exiting" status is applied. - * - * @type Function(node: HtmlElement) -> void - */ - onExiting: PropTypes.func, + scrollDiv.style.position = 'absolute'; + scrollDiv.style.top = '-9999px'; + scrollDiv.style.width = '50px'; + scrollDiv.style.height = '50px'; + scrollDiv.style.overflow = 'scroll'; - /** - * Callback fired after the "exited" status is applied. - * - * @type Function(node: HtmlElement) -> void - */ - onExited: PropTypes.func -} : {}; + document.body.appendChild(scrollDiv); + size = scrollDiv.offsetWidth - scrollDiv.clientWidth; + document.body.removeChild(scrollDiv); + } + } -// Name the function so it is clearer in the documentation -function noop() {} + return size; +}; -Transition.defaultProps = { - in: false, - mountOnEnter: false, - unmountOnExit: false, - appear: false, - enter: true, - exit: true, +var _inDOM = __webpack_require__(61); - onEnter: noop, - onEntering: noop, - onEntered: noop, +var _inDOM2 = _interopRequireDefault(_inDOM); - onExit: noop, - onExiting: noop, - onExited: noop -}; +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -Transition.UNMOUNTED = 0; -Transition.EXITED = 1; -Transition.ENTERING = 2; -Transition.ENTERED = 3; -Transition.EXITING = 4; +var size = void 0; -exports.default = Transition; +module.exports = exports['default']; /***/ }), -/* 313 */ +/* 298 */ /***/ (function(module, exports, __webpack_require__) { -module.exports = { "default": __webpack_require__(762), __esModule: true }; +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = hasClass; +function hasClass(element, className) { + if (element.classList) return !!className && element.classList.contains(className);else return (" " + (element.className.baseVal || element.className) + " ").indexOf(" " + className + " ") !== -1; +} +module.exports = exports["default"]; /***/ }), -/* 314 */ +/* 299 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; +exports.default = isOverflowing; -var _contains = __webpack_require__(60); +var _isWindow = __webpack_require__(133); -var _contains2 = _interopRequireDefault(_contains); +var _isWindow2 = _interopRequireDefault(_isWindow); -var _propTypes = __webpack_require__(5); +var _ownerDocument = __webpack_require__(89); -var _propTypes2 = _interopRequireDefault(_propTypes); +var _ownerDocument2 = _interopRequireDefault(_ownerDocument); -var _react = __webpack_require__(0); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -var _react2 = _interopRequireDefault(_react); +function isBody(node) { + return node && node.tagName.toLowerCase() === 'body'; +} -var _reactDom = __webpack_require__(17); +function bodyIsOverflowing(node) { + var doc = (0, _ownerDocument2.default)(node); + var win = (0, _isWindow2.default)(doc); + var fullWidth = win.innerWidth; -var _reactDom2 = _interopRequireDefault(_reactDom); + // Support: ie8, no innerWidth + if (!fullWidth) { + var documentElementRect = doc.documentElement.getBoundingClientRect(); + fullWidth = documentElementRect.right - Math.abs(documentElementRect.left); + } -var _addEventListener = __webpack_require__(315); + return doc.body.clientWidth < fullWidth; +} -var _addEventListener2 = _interopRequireDefault(_addEventListener); +function isOverflowing(container) { + var win = (0, _isWindow2.default)(container); -var _ownerDocument = __webpack_require__(101); + return win || isBody(container) ? bodyIsOverflowing(container) : container.scrollHeight > container.clientHeight; +} +module.exports = exports['default']; -var _ownerDocument2 = _interopRequireDefault(_ownerDocument); +/***/ }), +/* 300 */ +/***/ (function(module, exports, __webpack_require__) { -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +"use strict"; -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } +exports.__esModule = true; -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } +var _propTypes = __webpack_require__(6); -var escapeKeyCode = 27; +var _propTypes2 = _interopRequireDefault(_propTypes); -function isLeftClickEvent(event) { - return event.button === 0; -} +var _componentOrElement = __webpack_require__(132); -function isModifiedEvent(event) { - return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey); -} +var _componentOrElement2 = _interopRequireDefault(_componentOrElement); -/** - * The `` component registers your callback on the document - * when rendered. Powers the `` component. This is used achieve modal - * style behavior where your callback is triggered when the user tries to - * interact with the rest of the document or hits the `esc` key. - */ +var _react = __webpack_require__(0); -var RootCloseWrapper = function (_React$Component) { - _inherits(RootCloseWrapper, _React$Component); +var _react2 = _interopRequireDefault(_react); - function RootCloseWrapper(props, context) { - _classCallCheck(this, RootCloseWrapper); +var _reactDom = __webpack_require__(26); - var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context)); +var _reactDom2 = _interopRequireDefault(_reactDom); - _this.addEventListeners = function () { - var event = _this.props.event; +var _getContainer = __webpack_require__(134); - var doc = (0, _ownerDocument2.default)(_this); +var _getContainer2 = _interopRequireDefault(_getContainer); - // Use capture for this listener so it fires before React's listener, to - // avoid false positives in the contains() check below if the target DOM - // element is removed in the React mouse callback. - _this.documentMouseCaptureListener = (0, _addEventListener2.default)(doc, event, _this.handleMouseCapture, true); +var _ownerDocument = __webpack_require__(91); - _this.documentMouseListener = (0, _addEventListener2.default)(doc, event, _this.handleMouse); +var _ownerDocument2 = _interopRequireDefault(_ownerDocument); - _this.documentKeyupListener = (0, _addEventListener2.default)(doc, 'keyup', _this.handleKeyUp); - }; +var _LegacyPortal = __webpack_require__(757); - _this.removeEventListeners = function () { - if (_this.documentMouseCaptureListener) { - _this.documentMouseCaptureListener.remove(); - } +var _LegacyPortal2 = _interopRequireDefault(_LegacyPortal); - if (_this.documentMouseListener) { - _this.documentMouseListener.remove(); - } +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - if (_this.documentKeyupListener) { - _this.documentKeyupListener.remove(); - } - }; +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - _this.handleMouseCapture = function (e) { - _this.preventMouseRootClose = isModifiedEvent(e) || !isLeftClickEvent(e) || (0, _contains2.default)(_reactDom2.default.findDOMNode(_this), e.target); - }; +function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - _this.handleMouse = function (e) { - if (!_this.preventMouseRootClose && _this.props.onRootClose) { - _this.props.onRootClose(e); - } - }; +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - _this.handleKeyUp = function (e) { - if (e.keyCode === escapeKeyCode && _this.props.onRootClose) { - _this.props.onRootClose(e); - } - }; +/** + * The `` component renders its children into a new "subtree" outside of current component hierarchy. + * You can think of it as a declarative `appendChild()`, or jQuery's `$.fn.appendTo()`. + * The children of `` component will be appended to the `container` specified. + */ +var Portal = function (_React$Component) { + _inherits(Portal, _React$Component); - _this.preventMouseRootClose = false; - return _this; - } + function Portal() { + var _temp, _this, _ret; - RootCloseWrapper.prototype.componentDidMount = function componentDidMount() { - if (!this.props.disabled) { - this.addEventListeners(); + _classCallCheck(this, Portal); + + for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; } + + return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.setContainer = function () { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _this.props; + + _this._portalContainerNode = (0, _getContainer2.default)(props.container, (0, _ownerDocument2.default)(_this).body); + }, _this.getMountNode = function () { + return _this._portalContainerNode; + }, _temp), _possibleConstructorReturn(_this, _ret); + } + + Portal.prototype.componentDidMount = function componentDidMount() { + this.setContainer(); + this.forceUpdate(this.props.onRendered); }; - RootCloseWrapper.prototype.componentDidUpdate = function componentDidUpdate(prevProps) { - if (!this.props.disabled && prevProps.disabled) { - this.addEventListeners(); - } else if (this.props.disabled && !prevProps.disabled) { - this.removeEventListeners(); + Portal.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { + if (nextProps.container !== this.props.container) { + this.setContainer(nextProps); } }; - RootCloseWrapper.prototype.componentWillUnmount = function componentWillUnmount() { - if (!this.props.disabled) { - this.removeEventListeners(); - } + Portal.prototype.componentWillUnmount = function componentWillUnmount() { + this._portalContainerNode = null; }; - RootCloseWrapper.prototype.render = function render() { - return this.props.children; + Portal.prototype.render = function render() { + return this.props.children && this._portalContainerNode ? _reactDom2.default.createPortal(this.props.children, this._portalContainerNode) : null; }; - return RootCloseWrapper; + return Portal; }(_react2.default.Component); -RootCloseWrapper.displayName = 'RootCloseWrapper'; - -RootCloseWrapper.propTypes = { - /** - * Callback fired after click or mousedown. Also triggers when user hits `esc`. - */ - onRootClose: _propTypes2.default.func, - /** - * Children to render. - */ - children: _propTypes2.default.element, - /** - * Disable the the RootCloseWrapper, preventing it from triggering `onRootClose`. - */ - disabled: _propTypes2.default.bool, +Portal.displayName = 'Portal'; +Portal.propTypes = { /** - * Choose which document mouse event to bind to. + * A Node, Component instance, or function that returns either. The `container` will have the Portal children + * appended to it. */ - event: _propTypes2.default.oneOf(['click', 'mousedown']) -}; - -RootCloseWrapper.defaultProps = { - event: 'click' -}; - -exports.default = RootCloseWrapper; -module.exports = exports['default']; - -/***/ }), -/* 315 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.__esModule = true; - -exports.default = function (node, event, handler, capture) { - (0, _on2.default)(node, event, handler, capture); + container: _propTypes2.default.oneOfType([_componentOrElement2.default, _propTypes2.default.func]), - return { - remove: function remove() { - (0, _off2.default)(node, event, handler, capture); - } - }; + onRendered: _propTypes2.default.func }; - -var _on = __webpack_require__(117); - -var _on2 = _interopRequireDefault(_on); - -var _off = __webpack_require__(144); - -var _off2 = _interopRequireDefault(_off); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - +exports.default = _reactDom2.default.createPortal ? Portal : _LegacyPortal2.default; module.exports = exports['default']; /***/ }), -/* 316 */ +/* 301 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_classnames__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__Button__ = __webpack_require__(116); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__SafeAnchor__ = __webpack_require__(49); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__ = __webpack_require__(9); - - +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__ = __webpack_require__(15); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__ = __webpack_require__(9); @@ -24746,94 +22857,67 @@ module.exports = exports['default']; var propTypes = { - noCaret: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, - open: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, - title: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, - useAnchor: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool + componentClass: __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default.a }; var defaultProps = { - open: false, - useAnchor: false, - bsRole: 'toggle' + componentClass: 'div' }; -var DropdownToggle = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(DropdownToggle, _React$Component); +var ModalBody = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(ModalBody, _React$Component); - function DropdownToggle() { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, DropdownToggle); + function ModalBody() { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, ModalBody); return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); } - DropdownToggle.prototype.render = function render() { + ModalBody.prototype.render = function render() { var _props = this.props, - noCaret = _props.noCaret, - open = _props.open, - useAnchor = _props.useAnchor, - bsClass = _props.bsClass, + Component = _props.componentClass, className = _props.className, - children = _props.children, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['noCaret', 'open', 'useAnchor', 'bsClass', 'className', 'children']); - - delete props.bsRole; - - var Component = useAnchor ? __WEBPACK_IMPORTED_MODULE_9__SafeAnchor__["a" /* default */] : __WEBPACK_IMPORTED_MODULE_8__Button__["a" /* default */]; - var useCaret = !noCaret; + props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['componentClass', 'className']); - // This intentionally forwards bsSize and bsStyle (if set) to the - // underlying component, to allow it to render size and style variants. + var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["splitBsProps"])(props), + bsProps = _splitBsProps[0], + elementProps = _splitBsProps[1]; - // FIXME: Should this really fall back to `title` as children? + var classes = Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["getClassSet"])(bsProps); - return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement( - Component, - __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, props, { - role: 'button', - className: __WEBPACK_IMPORTED_MODULE_7_classnames___default()(className, bsClass), - 'aria-haspopup': true, - 'aria-expanded': open - }), - children || props.title, - useCaret && ' ', - useCaret && __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement('span', { className: 'caret' }) - ); + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(Component, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, elementProps, { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) })); }; - return DropdownToggle; -}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.Component); + return ModalBody; +}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); -DropdownToggle.propTypes = propTypes; -DropdownToggle.defaultProps = defaultProps; +ModalBody.propTypes = propTypes; +ModalBody.defaultProps = defaultProps; -/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_10__utils_bootstrapUtils__["bsClass"])('dropdown-toggle', DropdownToggle)); +/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["bsClass"])('modal-body', ModalBody)); /***/ }), -/* 317 */ +/* 302 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType__ = __webpack_require__(11); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__ = __webpack_require__(9); - +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__ = __webpack_require__(15); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__ = __webpack_require__(9); @@ -24846,81 +22930,70 @@ DropdownToggle.defaultProps = defaultProps; var propTypes = { - /** - * Turn any fixed-width grid layout into a full-width layout by this property. - * - * Adds `container-fluid` class. - */ - fluid: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, - /** - * You can use a custom element for this component - */ - componentClass: __WEBPACK_IMPORTED_MODULE_8_prop_types_extra_lib_elementType___default.a + componentClass: __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default.a }; var defaultProps = { - componentClass: 'div', - fluid: false + componentClass: 'div' }; -var Grid = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(Grid, _React$Component); +var ModalFooter = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(ModalFooter, _React$Component); - function Grid() { - __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, Grid); + function ModalFooter() { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, ModalFooter); return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); } - Grid.prototype.render = function render() { + ModalFooter.prototype.render = function render() { var _props = this.props, - fluid = _props.fluid, Component = _props.componentClass, className = _props.className, - props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['fluid', 'componentClass', 'className']); + props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['componentClass', 'className']); - var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["splitBsProps"])(props), + var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["splitBsProps"])(props), bsProps = _splitBsProps[0], elementProps = _splitBsProps[1]; - var classes = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["prefix"])(bsProps, fluid && 'fluid'); + var classes = Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["getClassSet"])(bsProps); return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(Component, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, elementProps, { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) })); }; - return Grid; + return ModalFooter; }(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); -Grid.propTypes = propTypes; -Grid.defaultProps = defaultProps; +ModalFooter.propTypes = propTypes; +ModalFooter.defaultProps = defaultProps; -/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsClass"])('container', Grid)); +/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["bsClass"])('modal-footer', ModalFooter)); /***/ }), -/* 318 */ +/* 303 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values__ = __webpack_require__(45); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__ = __webpack_require__(4); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(6); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_objectWithoutProperties__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(2); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(3); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(5); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__ = __webpack_require__(9); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_StyleConfig__ = __webpack_require__(27); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__ = __webpack_require__(9); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_createChainedFunction__ = __webpack_require__(21); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__CloseButton__ = __webpack_require__(188); + @@ -24933,413 +23006,567 @@ Grid.defaultProps = defaultProps; +// TODO: `aria-label` should be `closeLabel`. var propTypes = { - active: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.any, - disabled: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.any, - header: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.node, - listItem: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, - onClick: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, - href: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, - type: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string + /** + * Provides an accessible label for the close + * button. It is used for Assistive Technology when the label text is not + * readable. + */ + closeLabel: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.string, + + /** + * Specify whether the Component should contain a close button + */ + closeButton: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.bool, + + /** + * A Callback fired when the close button is clicked. If used directly inside + * a Modal component, the onHide will automatically be propagated up to the + * parent Modal `onHide`. + */ + onHide: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func }; var defaultProps = { - listItem: false + closeLabel: 'Close', + closeButton: false }; -var ListGroupItem = function (_React$Component) { - __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(ListGroupItem, _React$Component); - - function ListGroupItem() { - __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_classCallCheck___default()(this, ListGroupItem); +var contextTypes = { + $bs_modal: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.shape({ + onHide: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.func + }) +}; - return __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); - } +var ModalHeader = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(ModalHeader, _React$Component); - ListGroupItem.prototype.renderHeader = function renderHeader(header, headingClassName) { - if (__WEBPACK_IMPORTED_MODULE_7_react___default.a.isValidElement(header)) { - return Object(__WEBPACK_IMPORTED_MODULE_7_react__["cloneElement"])(header, { - className: __WEBPACK_IMPORTED_MODULE_6_classnames___default()(header.props.className, headingClassName) - }); - } + function ModalHeader() { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, ModalHeader); - return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( - 'h4', - { className: headingClassName }, - header - ); - }; + return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); + } - ListGroupItem.prototype.render = function render() { + ModalHeader.prototype.render = function render() { var _props = this.props, - active = _props.active, - disabled = _props.disabled, + closeLabel = _props.closeLabel, + closeButton = _props.closeButton, + onHide = _props.onHide, className = _props.className, - header = _props.header, - listItem = _props.listItem, children = _props.children, - props = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['active', 'disabled', 'className', 'header', 'listItem', 'children']); + props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['closeLabel', 'closeButton', 'onHide', 'className', 'children']); - var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["splitBsProps"])(props), + var modal = this.context.$bs_modal; + + var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["splitBsProps"])(props), bsProps = _splitBsProps[0], elementProps = _splitBsProps[1]; - var classes = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_extends___default()({}, Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["getClassSet"])(bsProps), { - active: active, - disabled: disabled - }); - - var Component = void 0; - - if (elementProps.href) { - Component = 'a'; - } else if (elementProps.onClick) { - Component = 'button'; - elementProps.type = elementProps.type || 'button'; - } else if (listItem) { - Component = 'li'; - } else { - Component = 'span'; - } - - elementProps.className = __WEBPACK_IMPORTED_MODULE_6_classnames___default()(className, classes); - - // TODO: Deprecate `header` prop. - if (header) { - return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( - Component, - elementProps, - this.renderHeader(header, Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["prefix"])(bsProps, 'heading')), - __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( - 'p', - { className: Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["prefix"])(bsProps, 'text') }, - children - ) - ); - } + var classes = Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["getClassSet"])(bsProps); return __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement( - Component, - elementProps, + 'div', + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, elementProps, { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) }), + closeButton && __WEBPACK_IMPORTED_MODULE_7_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_10__CloseButton__["a" /* default */], { + label: closeLabel, + onClick: Object(__WEBPACK_IMPORTED_MODULE_9__utils_createChainedFunction__["a" /* default */])(modal && modal.onHide, onHide) + }), children ); }; - return ListGroupItem; + return ModalHeader; }(__WEBPACK_IMPORTED_MODULE_7_react___default.a.Component); -ListGroupItem.propTypes = propTypes; -ListGroupItem.defaultProps = defaultProps; +ModalHeader.propTypes = propTypes; +ModalHeader.defaultProps = defaultProps; +ModalHeader.contextTypes = contextTypes; -/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsClass"])('list-group-item', Object(__WEBPACK_IMPORTED_MODULE_9__utils_bootstrapUtils__["bsStyles"])(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_values___default()(__WEBPACK_IMPORTED_MODULE_10__utils_StyleConfig__["d" /* State */]), ListGroupItem))); +/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["bsClass"])('modal-header', ModalHeader)); /***/ }), -/* 319 */ -/***/ (function(module, exports, __webpack_require__) { +/* 304 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__ = __webpack_require__(15); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__ = __webpack_require__(9); -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.listen = exports.filter = exports.off = exports.on = undefined; - -var _on = __webpack_require__(117); -var _on2 = _interopRequireDefault(_on); -var _off = __webpack_require__(144); -var _off2 = _interopRequireDefault(_off); -var _filter = __webpack_require__(792); -var _filter2 = _interopRequireDefault(_filter); -var _listen = __webpack_require__(794); -var _listen2 = _interopRequireDefault(_listen); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -exports.on = _on2.default; -exports.off = _off2.default; -exports.filter = _filter2.default; -exports.listen = _listen2.default; -exports.default = { on: _on2.default, off: _off2.default, filter: _filter2.default, listen: _listen2.default }; +var propTypes = { + componentClass: __WEBPACK_IMPORTED_MODULE_7_prop_types_extra_lib_elementType___default.a +}; -/***/ }), -/* 320 */ -/***/ (function(module, exports, __webpack_require__) { +var defaultProps = { + componentClass: 'h4' +}; -"use strict"; +var ModalTitle = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(ModalTitle, _React$Component); + function ModalTitle() { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, ModalTitle); -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = deprecated; + return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); + } -var _warning = __webpack_require__(12); + ModalTitle.prototype.render = function render() { + var _props = this.props, + Component = _props.componentClass, + className = _props.className, + props = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default()(_props, ['componentClass', 'className']); -var _warning2 = _interopRequireDefault(_warning); + var _splitBsProps = Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["splitBsProps"])(props), + bsProps = _splitBsProps[0], + elementProps = _splitBsProps[1]; -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + var classes = Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["getClassSet"])(bsProps); -var warned = {}; + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(Component, __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, elementProps, { className: __WEBPACK_IMPORTED_MODULE_5_classnames___default()(className, classes) })); + }; -function deprecated(validator, reason) { - return function validate(props, propName, componentName, location, propFullName) { - var componentNameSafe = componentName || '<>'; - var propFullNameSafe = propFullName || propName; + return ModalTitle; +}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); - if (props[propName] != null) { - var messageKey = componentName + '.' + propName; +ModalTitle.propTypes = propTypes; +ModalTitle.defaultProps = defaultProps; - (0, _warning2.default)(warned[messageKey], 'The ' + location + ' `' + propFullNameSafe + '` of ' + ('`' + componentNameSafe + '` is deprecated. ' + reason + '.')); +/* harmony default export */ __webpack_exports__["a"] = (Object(__WEBPACK_IMPORTED_MODULE_8__utils_bootstrapUtils__["bsClass"])('modal-title', ModalTitle)); - warned[messageKey] = true; - } +/***/ }), +/* 305 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { - for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) { - args[_key - 5] = arguments[_key]; - } +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_objectWithoutProperties__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(2); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_keycode__ = __webpack_require__(193); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_keycode___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_keycode__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types__ = __webpack_require__(6); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_dom__ = __webpack_require__(26); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_react_dom__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types_extra_lib_all__ = __webpack_require__(126); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_prop_types_extra_lib_all___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_prop_types_extra_lib_all__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_warning__ = __webpack_require__(14); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_warning__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__utils_bootstrapUtils__ = __webpack_require__(9); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__utils_createChainedFunction__ = __webpack_require__(21); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__utils_ValidComponentChildren__ = __webpack_require__(30); - return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args)); - }; -} -/* eslint-disable no-underscore-dangle */ -function _resetWarned() { - warned = {}; -} -deprecated._resetWarned = _resetWarned; -/* eslint-enable no-underscore-dangle */ -module.exports = exports['default']; -/***/ }), -/* 321 */ -/***/ (function(module, exports, __webpack_require__) { -"use strict"; -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.hasClass = exports.removeClass = exports.addClass = undefined; -var _addClass = __webpack_require__(797); -var _addClass2 = _interopRequireDefault(_addClass); -var _removeClass = __webpack_require__(798); -var _removeClass2 = _interopRequireDefault(_removeClass); -var _hasClass = __webpack_require__(322); -var _hasClass2 = _interopRequireDefault(_hasClass); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -exports.addClass = _addClass2.default; -exports.removeClass = _removeClass2.default; -exports.hasClass = _hasClass2.default; -exports.default = { addClass: _addClass2.default, removeClass: _removeClass2.default, hasClass: _hasClass2.default }; -/***/ }), -/* 322 */ -/***/ (function(module, exports, __webpack_require__) { +// TODO: Should we expose `` as ``? -"use strict"; +// TODO: This `bsStyle` is very unlike the others. Should we rename it? +// TODO: `pullRight` and `pullLeft` don't render right outside of `navbar`. +// Consider renaming or replacing them. -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = hasClass; -function hasClass(element, className) { - if (element.classList) return !!className && element.classList.contains(className);else return (" " + (element.className.baseVal || element.className) + " ").indexOf(" " + className + " ") !== -1; -} -module.exports = exports["default"]; +var propTypes = { + /** + * Marks the NavItem with a matching `eventKey` as active. Has a + * higher precedence over `activeHref`. + */ + activeKey: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.any, -/***/ }), -/* 323 */ -/***/ (function(module, exports, __webpack_require__) { + /** + * Marks the child NavItem with a matching `href` prop as active. + */ + activeHref: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, -"use strict"; + /** + * NavItems are be positioned vertically. + */ + stacked: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, + justified: __WEBPACK_IMPORTED_MODULE_10_prop_types_extra_lib_all___default()(__WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, function (_ref) { + var justified = _ref.justified, + navbar = _ref.navbar; + return justified && navbar ? Error('justified navbar `Nav`s are not supported') : null; + }), -exports.__esModule = true; -exports.default = isOverflowing; + /** + * A callback fired when a NavItem is selected. + * + * ```js + * function ( + * Any eventKey, + * SyntheticEvent event? + * ) + * ``` + */ + onSelect: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func, -var _isWindow = __webpack_require__(118); + /** + * ARIA role for the Nav, in the context of a TabContainer, the default will + * be set to "tablist", but can be overridden by the Nav when set explicitly. + * + * When the role is set to "tablist" NavItem focus is managed according to + * the ARIA authoring practices for tabs: + * https://www.w3.org/TR/2013/WD-wai-aria-practices-20130307/#tabpanel + */ + role: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, -var _isWindow2 = _interopRequireDefault(_isWindow); + /** + * Apply styling an alignment for use in a Navbar. This prop will be set + * automatically when the Nav is used inside a Navbar. + */ + navbar: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, -var _ownerDocument = __webpack_require__(65); + /** + * Float the Nav to the right. When `navbar` is `true` the appropriate + * contextual classes are added as well. + */ + pullRight: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool, -var _ownerDocument2 = _interopRequireDefault(_ownerDocument); + /** + * Float the Nav to the left. When `navbar` is `true` the appropriate + * contextual classes are added as well. + */ + pullLeft: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.bool +}; -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var defaultProps = { + justified: false, + pullRight: false, + pullLeft: false, + stacked: false +}; -function isBody(node) { - return node && node.tagName.toLowerCase() === 'body'; -} +var contextTypes = { + $bs_navbar: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.shape({ + bsClass: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.string, + onSelect: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func + }), -function bodyIsOverflowing(node) { - var doc = (0, _ownerDocument2.default)(node); - var win = (0, _isWindow2.default)(doc); - var fullWidth = win.innerWidth; + $bs_tabContainer: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.shape({ + activeKey: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.any, + onSelect: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired, + getTabId: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired, + getPaneId: __WEBPACK_IMPORTED_MODULE_8_prop_types___default.a.func.isRequired + }) +}; - // Support: ie8, no innerWidth - if (!fullWidth) { - var documentElementRect = doc.documentElement.getBoundingClientRect(); - fullWidth = documentElementRect.right - Math.abs(documentElementRect.left); +var Nav = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(Nav, _React$Component); + + function Nav() { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, Nav); + + return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.apply(this, arguments)); } - return doc.body.clientWidth < fullWidth; -} + Nav.prototype.componentDidUpdate = function componentDidUpdate() { + var _this2 = this; -function isOverflowing(container) { - var win = (0, _isWindow2.default)(container); + if (!this._needsRefocus) { + return; + } - return win || isBody(container) ? bodyIsOverflowing(container) : container.scrollHeight > container.clientHeight; -} -module.exports = exports['default']; + this._needsRefocus = false; -/***/ }), -/* 324 */ -/***/ (function(module, exports, __webpack_require__) { + var children = this.props.children; -"use strict"; + var _getActiveProps = this.getActiveProps(), + activeKey = _getActiveProps.activeKey, + activeHref = _getActiveProps.activeHref; + var activeChild = __WEBPACK_IMPORTED_MODULE_14__utils_ValidComponentChildren__["a" /* default */].find(children, function (child) { + return _this2.isActive(child, activeKey, activeHref); + }); -exports.__esModule = true; + var childrenArray = __WEBPACK_IMPORTED_MODULE_14__utils_ValidComponentChildren__["a" /* default */].toArray(children); + var activeChildIndex = childrenArray.indexOf(activeChild); -var _propTypes = __webpack_require__(5); + var childNodes = __WEBPACK_IMPORTED_MODULE_9_react_dom___default.a.findDOMNode(this).children; + var activeNode = childNodes && childNodes[activeChildIndex]; -var _propTypes2 = _interopRequireDefault(_propTypes); + if (!activeNode || !activeNode.firstChild) { + return; + } -var _componentOrElement = __webpack_require__(73); + activeNode.firstChild.focus(); + }; -var _componentOrElement2 = _interopRequireDefault(_componentOrElement); + Nav.prototype.getActiveProps = function getActiveProps() { + var tabContainer = this.context.$bs_tabContainer; -var _react = __webpack_require__(0); + if (tabContainer) { + true ? __WEBPACK_IMPORTED_MODULE_11_warning___default()(this.props.activeKey == null && !this.props.activeHref, 'Specifying a `