From f89a6f98c41c5a049afb494b566b3d0d7a03ecab Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sat, 23 Jul 2016 19:13:18 +0200
Subject: [PATCH 01/27] adding changelog

---
 CHANGELOG.md | 4 ++++
 1 file changed, 4 insertions(+)
 create mode 100644 CHANGELOG.md

diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..0751610
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,4 @@
+<a name="3.0.0-alpha1"></a>
+### 3.0.0-alpha1 (2016-07-23)
+
+First version for ng2. 
\ No newline at end of file

From 30bead4e30c2bd26b90b83ccb5e7d1fb86815c41 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sat, 23 Jul 2016 21:58:40 +0200
Subject: [PATCH 02/27] adding missing typings file

---
 .gitignore             | 1 -
 package.json           | 1 -
 typings/.gitignore     | 3 +++
 typings/overwrite.d.ts | 1 +
 4 files changed, 4 insertions(+), 2 deletions(-)
 create mode 100644 typings/.gitignore
 create mode 100644 typings/overwrite.d.ts

diff --git a/.gitignore b/.gitignore
index c76aac3..a483b45 100644
--- a/.gitignore
+++ b/.gitignore
@@ -29,4 +29,3 @@ node_modules
 
 www/
 config.json
-typings
\ No newline at end of file
diff --git a/package.json b/package.json
index c8d348a..1c76c2d 100644
--- a/package.json
+++ b/package.json
@@ -6,7 +6,6 @@
   "scripts": {
     "start": "webpack-dev-server --port 8080 --json --progress --config webpack.config.js",
     "build": "npm run dumpdev && npm run dumpprod",
-    "publish": "npm run build && npm publish dist",
     "dumpdev": "ENV=dev webpack --progress --colors --config webpack.config.dist.js -d",
     "dumpprod": "ENV=prod webpack --progress --colors --config webpack.config.dist.js -p",
     "watch": "ENV=dev webpack --watch --progress --colors --config webpack.config.dist.js -d",
diff --git a/typings/.gitignore b/typings/.gitignore
new file mode 100644
index 0000000..f22e387
--- /dev/null
+++ b/typings/.gitignore
@@ -0,0 +1,3 @@
+*
+!.gitignore
+!overwrite.d.ts
diff --git a/typings/overwrite.d.ts b/typings/overwrite.d.ts
new file mode 100644
index 0000000..ac7b22b
--- /dev/null
+++ b/typings/overwrite.d.ts
@@ -0,0 +1 @@
+declare function require(string): any;

From 83bb8a8b75f1070dc287a0dff3fb8e3b94ccb358 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sat, 23 Jul 2016 22:06:14 +0200
Subject: [PATCH 03/27] adding config

---
 config.dist.json | 35 ++++++++++++++---------------------
 1 file changed, 14 insertions(+), 21 deletions(-)

diff --git a/config.dist.json b/config.dist.json
index 1e8927e..be88403 100644
--- a/config.dist.json
+++ b/config.dist.json
@@ -3,7 +3,7 @@
     "api" : {
       "wpApiPosts": {
         "getList": [{
-            "per_page": 1
+          "search": "_embed=true&per_page=1"
         }],
         "get": [2016],
         "getMetaList": [2016],
@@ -18,20 +18,14 @@
       "wpApiCustom": {
         "movie": {
             "getList": [{
-                "per_page": 1
+              "search": "_embed=true&per_page=1"
             }],
-            "get": [295]
-        },
-        "plane": {
-            "getList": [{
-                "per_page": 1
-            }],
-            "get": [295]
+            "get": [2595]
         }
       },
       "wpApiPages": {
           "getList": [{
-              "per_page": 1
+            "search": "_embed=true&per_page=1"
           }],
           "get": [535],
           "getMetaList": [535],
@@ -41,13 +35,13 @@
       },
       "wpApiMedia": {
           "getList": [{
-              "per_page": 1
+            "search": "_embed=true&per_page=1"
           }],
-          "get": [2032]
+          "get": [2499]
       },
       "wpApiTypes": {
           "getList": [{
-              "per_page": 1
+            "search": "_embed=true&per_page=1"
           }],
           "get": ["attachment"]
       },
@@ -59,14 +53,13 @@
           "getList": [],
           "get": ["category"]
       },
-      "wpApiTerms": {
-          "getCategoryList": [],
-          "getCategory": [2],
-          "getTagList": [],
-          "getTag": [11],
-          "getCustomList": ["audience"],
-          "getCustom": ["audience", 6]
-      },
+      "wpApiTerms": [{
+          "getList": ["tags"],
+          "get": ["tags", 11]
+      },{
+          "getList": ["categories"],
+          "get": ["categories", 2]
+      }],
       "wpApiUsers": {
           "getList": [],
           "get": [1],

From 2aef6197c9762b18cefab5675a97f3af23d3cf60 Mon Sep 17 00:00:00 2001
From: The Gitter Badger <badger@gitter.im>
Date: Sat, 23 Jul 2016 20:07:46 +0000
Subject: [PATCH 04/27] Add Gitter badge

---
 README.md | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/README.md b/README.md
index d03a6fa..d019feb 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,8 @@
 wp-api-angularjs
 ================
 
+[![Join the chat at https://gitter.im/shprink/wp-api-angularjs](https://badges.gitter.im/shprink/wp-api-angularjs.svg)](https://gitter.im/shprink/wp-api-angularjs?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+
 Angular2 services to consume [WP-API v2](http://v2.wp-api.org/) (< 2.5kb gziped)
 
 If you want to use AngularJS v1, here is the latest version: [v2.0.0-rc3](https://github.com/shprink/wp-api-angularjs/tree/v2.0.0-rc3)

From fc2a009a6a206ae7e1119cba23024a69e476f628 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sun, 24 Jul 2016 10:15:05 +0200
Subject: [PATCH 05/27] bump alpha2

---
 CHANGELOG.md                 |  5 +++++
 README.md                    | 12 +-----------
 dist/wp-api-angularjs.js     |  2 +-
 dist/wp-api-angularjs.min.js |  2 +-
 package.json                 |  8 +++++---
 5 files changed, 13 insertions(+), 16 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0751610..0ea6dd6 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+<a name="3.0.0-alpha2"></a>
+### 3.0.0-alpha2 (2016-07-24)
+
+Adding peer dependencies 
+
 <a name="3.0.0-alpha1"></a>
 ### 3.0.0-alpha1 (2016-07-23)
 
diff --git a/README.md b/README.md
index d03a6fa..13fa467 100644
--- a/README.md
+++ b/README.md
@@ -7,18 +7,8 @@ If you want to use AngularJS v1, here is the latest version: [v2.0.0-rc3](https:
 
 ## Installation
 
-### Dependencies 
-
-make sure you have those packages installed:
-
-- '@angular/core'
-- '@angular/http'
-- 'rxjs'
-
-### via npm
-
 ```shell
-npm install wp-api-angularjs@v3.0.x
+npm install wp-api-angularjs
 ```
 
 ## Bootstrap
diff --git a/dist/wp-api-angularjs.js b/dist/wp-api-angularjs.js
index e5c027f..fbc3677 100644
--- a/dist/wp-api-angularjs.js
+++ b/dist/wp-api-angularjs.js
@@ -2,7 +2,7 @@
  * wp-api-angularjs
  *  ---
  * WordPress WP-API v2 client for Angular2
- * @version: v3.0.0-alpha1
+ * @version: v3.0.0-alpha2
  * @author: shprink <contact@julienrenaux.fr>
  * @link: https://github.com/shprink/wp-api-angularjs
  * @license: MIT
diff --git a/dist/wp-api-angularjs.min.js b/dist/wp-api-angularjs.min.js
index f4deef4..242a24d 100644
--- a/dist/wp-api-angularjs.min.js
+++ b/dist/wp-api-angularjs.min.js
@@ -2,7 +2,7 @@
  * wp-api-angularjs
  *  ---
  * WordPress WP-API v2 client for Angular2
- * @version: v3.0.0-alpha1
+ * @version: v3.0.0-alpha2
  * @author: shprink <contact@julienrenaux.fr>
  * @link: https://github.com/shprink/wp-api-angularjs
  * @license: MIT
diff --git a/package.json b/package.json
index 1c76c2d..a076982 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angularjs",
-  "version": "3.0.0-alpha1",
+  "version": "3.0.0-alpha2",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "dist/wp-api-angularjs.js",
   "scripts": {
@@ -52,7 +52,9 @@
     "webpack-dev-server": "~1.14.1",
     "zone.js": "^0.6.12"
   },
-  "dependencies": {
-    "js-base64": "^2.1.9"
+  "peerDependencies": {
+    "@angular/core": "2.0.0-rc.2 || 2.0.0-rc.3 || 2.0.0-rc.4 || 2.0.0-rc.5 || 2.0.0-rc.6 || 2.0.0-rc.7 || 2.0.0-rc.8 || 2.0.0-rc.9",
+    "@angular/http": "2.0.0-rc.2 || 2.0.0-rc.3 || 2.0.0-rc.4 || 2.0.0-rc.5 || 2.0.0-rc.6 || 2.0.0-rc.7 || 2.0.0-rc.8 || 2.0.0-rc.9",
+    "rxjs": "5.0.0-beta.6"
   }
 }

From b0c162b654cb5d43a7fd29bed234fff91d27bb4f Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sun, 24 Jul 2016 11:11:38 +0200
Subject: [PATCH 06/27] adding live demo

---
 README.md | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 627889c..c5d551c 100644
--- a/README.md
+++ b/README.md
@@ -5,6 +5,8 @@ wp-api-angularjs
 
 Angular2 services to consume [WP-API v2](http://v2.wp-api.org/) (< 2.5kb gziped)
 
+[Live Demo](https://plnkr.co/edit/hqE4bvbM6HXql5Insjx8?p=preview)
+
 If you want to use AngularJS v1, here is the latest version: [v2.0.0-rc3](https://github.com/shprink/wp-api-angularjs/tree/v2.0.0-rc3)
 
 ## Installation
@@ -68,7 +70,21 @@ class RequestOptionsArgs {
 }
 ```
 
-This is where you can add query string to your request or change the headers.
+This is where you can add query string to your request or change the headers (see below).
+
+```
+import { Headers } from '@angular/http';
+
+const headers = new Headers({
+  'Content-Type': 'application/json;charset=UTF-8',
+  'Access-Control-Allow-Origin': '*',
+  'Access-Control-Max-Age': '1728000',
+  'Access-Control-Allow-Headers': 'Content-Type, Content-Range, Content-Disposition, Content-Description'
+  'Access-Control-Allow-Methods': 'DELETE, HEAD, GET, OPTIONS, POST, PUT'
+});
+
+wpApiPosts.getList({ headers });
+```
 
 ### WpApiPosts
 

From a26e72d3d9522c9b071f9c845eeb2db78293f1e9 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sat, 30 Jul 2016 11:12:52 +0200
Subject: [PATCH 07/27] ignore dist folder

---
 .gitignore                   |   1 +
 dist/wp-api-angularjs.js     | 888 -----------------------------------
 dist/wp-api-angularjs.js.map |   1 -
 dist/wp-api-angularjs.min.js |  11 -
 4 files changed, 1 insertion(+), 900 deletions(-)
 delete mode 100644 dist/wp-api-angularjs.js
 delete mode 100644 dist/wp-api-angularjs.js.map
 delete mode 100644 dist/wp-api-angularjs.min.js

diff --git a/.gitignore b/.gitignore
index a483b45..0cf64a0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -29,3 +29,4 @@ node_modules
 
 www/
 config.json
+dist/
diff --git a/dist/wp-api-angularjs.js b/dist/wp-api-angularjs.js
deleted file mode 100644
index fbc3677..0000000
--- a/dist/wp-api-angularjs.js
+++ /dev/null
@@ -1,888 +0,0 @@
-/*!
- * wp-api-angularjs
- *  ---
- * WordPress WP-API v2 client for Angular2
- * @version: v3.0.0-alpha2
- * @author: shprink <contact@julienrenaux.fr>
- * @link: https://github.com/shprink/wp-api-angularjs
- * @license: MIT
- * 
- */
-(function webpackUniversalModuleDefinition(root, factory) {
-	if(typeof exports === 'object' && typeof module === 'object')
-		module.exports = factory(require("@angular/core"), require("rxjs"), require("@angular/http"));
-	else if(typeof define === 'function' && define.amd)
-		define(["@angular/core", "rxjs", "@angular/http"], factory);
-	else {
-		var a = typeof exports === 'object' ? factory(require("@angular/core"), require("rxjs"), require("@angular/http")) : factory(root["@angular/core"], root["rxjs"], root["@angular/http"]);
-		for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
-	}
-})(this, function(__WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_3__) {
-return /******/ (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] = {
-/******/ 			exports: {},
-/******/ 			id: moduleId,
-/******/ 			loaded: false
-/******/ 		};
-/******/
-/******/ 		// Execute the module function
-/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
-/******/
-/******/ 		// Flag the module as loaded
-/******/ 		module.loaded = 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;
-/******/
-/******/ 	// __webpack_public_path__
-/******/ 	__webpack_require__.p = "";
-/******/
-/******/ 	// Load entry module and return exports
-/******/ 	return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ([
-/* 0 */
-/*!**********************!*\
-  !*** ./src/index.ts ***!
-  \**********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	function __export(m) {
-	    for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
-	}
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	__webpack_require__(/*! rxjs */ 2);
-	var http_1 = __webpack_require__(/*! @angular/http */ 3);
-	var utils_1 = __webpack_require__(/*! ./utils */ 4);
-	var tokens_1 = __webpack_require__(/*! ./tokens */ 5);
-	var Posts_1 = __webpack_require__(/*! ./Posts */ 6);
-	var Pages_1 = __webpack_require__(/*! ./Pages */ 8);
-	var Comments_1 = __webpack_require__(/*! ./Comments */ 9);
-	var Types_1 = __webpack_require__(/*! ./Types */ 10);
-	var Media_1 = __webpack_require__(/*! ./Media */ 11);
-	var Users_1 = __webpack_require__(/*! ./Users */ 12);
-	var Taxonomies_1 = __webpack_require__(/*! ./Taxonomies */ 13);
-	var Statuses_1 = __webpack_require__(/*! ./Statuses */ 14);
-	var Terms_1 = __webpack_require__(/*! ./Terms */ 15);
-	var Custom_1 = __webpack_require__(/*! ./Custom */ 16);
-	__export(__webpack_require__(/*! ./Posts */ 6));
-	__export(__webpack_require__(/*! ./Pages */ 8));
-	__export(__webpack_require__(/*! ./Comments */ 9));
-	__export(__webpack_require__(/*! ./Types */ 10));
-	__export(__webpack_require__(/*! ./Media */ 11));
-	__export(__webpack_require__(/*! ./Users */ 12));
-	__export(__webpack_require__(/*! ./Taxonomies */ 13));
-	__export(__webpack_require__(/*! ./Statuses */ 14));
-	__export(__webpack_require__(/*! ./Terms */ 15));
-	__export(__webpack_require__(/*! ./Custom */ 16));
-	exports.defaultWpApi = function (config) {
-	    // remove a trailing slash
-	    config.baseUrl = utils_1.stripTrailingSlash(config.baseUrl);
-	    config.namespace = config.namespace || '/wp/v2';
-	    return core_1.provide(tokens_1.WpApiConfig, {
-	        useValue: config
-	    });
-	};
-	exports.WPAPI_PROVIDERS = [
-	    http_1.HTTP_PROVIDERS,
-	    createProvider(Posts_1.WpApiPosts),
-	    createProvider(Pages_1.WpApiPages),
-	    createProvider(Comments_1.WpApiComments),
-	    createProvider(Types_1.WpApiTypes),
-	    createProvider(Media_1.WpApiMedia),
-	    createProvider(Users_1.WpApiUsers),
-	    createProvider(Taxonomies_1.WpApiTaxonomies),
-	    createProvider(Statuses_1.WpApiStatuses),
-	    createProvider(Terms_1.WpApiTerms),
-	    createProvider(Custom_1.WpApiCustom)
-	];
-	function createProvider(service) {
-	    return {
-	        provide: service,
-	        useFactory: function (config, http) { return new service(config, http); },
-	        deps: [tokens_1.WpApiConfig, http_1.Http]
-	    };
-	}
-
-
-/***/ },
-/* 1 */
-/*!********************************!*\
-  !*** external "@angular/core" ***!
-  \********************************/
-/***/ function(module, exports) {
-
-	module.exports = __WEBPACK_EXTERNAL_MODULE_1__;
-
-/***/ },
-/* 2 */
-/*!***********************!*\
-  !*** external "rxjs" ***!
-  \***********************/
-/***/ function(module, exports) {
-
-	module.exports = __WEBPACK_EXTERNAL_MODULE_2__;
-
-/***/ },
-/* 3 */
-/*!********************************!*\
-  !*** external "@angular/http" ***!
-  \********************************/
-/***/ function(module, exports) {
-
-	module.exports = __WEBPACK_EXTERNAL_MODULE_3__;
-
-/***/ },
-/* 4 */
-/*!**********************!*\
-  !*** ./src/utils.ts ***!
-  \**********************/
-/***/ function(module, exports) {
-
-	"use strict";
-	function stripTrailingSlash(value) {
-	    // Is the last char a /
-	    if (value.substring(value.length - 1, value.length) === '/') {
-	        return value.substring(0, value.length - 1);
-	    }
-	    else {
-	        return value;
-	    }
-	}
-	exports.stripTrailingSlash = stripTrailingSlash;
-
-
-/***/ },
-/* 5 */
-/*!***********************!*\
-  !*** ./src/tokens.ts ***!
-  \***********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	exports.WpApiApp = new core_1.OpaqueToken('WpApiApp');
-	exports.WpApiConfig = new core_1.OpaqueToken('WpApiConfig');
-
-
-/***/ },
-/* 6 */
-/*!**********************!*\
-  !*** ./src/Posts.ts ***!
-  \**********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var WpApiPosts = (function (_super) {
-	    __extends(WpApiPosts, _super);
-	    function WpApiPosts() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiPosts.prototype.getList = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts", options);
-	    };
-	    WpApiPosts.prototype.get = function (postId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts/" + postId, options);
-	    };
-	    WpApiPosts.prototype.create = function (body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/posts", body, options);
-	    };
-	    WpApiPosts.prototype.update = function (postId, body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/posts/" + postId, body, options);
-	    };
-	    WpApiPosts.prototype.delete = function (postId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpDelete("/posts/" + postId, options);
-	    };
-	    WpApiPosts.prototype.getMetaList = function (postId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts/" + postId + "/meta", options);
-	    };
-	    WpApiPosts.prototype.getMeta = function (postId, metaId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts/" + postId + "/meta/" + metaId, options);
-	    };
-	    WpApiPosts.prototype.getRevisionList = function (postId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts/" + postId + "/revisions", options);
-	    };
-	    WpApiPosts.prototype.getRevision = function (postId, revisionId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts/" + postId + "/revisions/" + revisionId, options);
-	    };
-	    WpApiPosts.prototype.getCategoryList = function (postId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts/" + postId + "/terms/category", options);
-	    };
-	    WpApiPosts.prototype.getCategory = function (postId, categoryId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts/" + postId + "/terms/category/" + categoryId, options);
-	    };
-	    WpApiPosts.prototype.getTagList = function (postId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts/" + postId + "/terms/tag", options);
-	    };
-	    WpApiPosts.prototype.getTag = function (postId, tagId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/posts/" + postId + "/terms/tag/" + tagId, options);
-	    };
-	    WpApiPosts = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiPosts);
-	    return WpApiPosts;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiPosts = WpApiPosts;
-
-
-/***/ },
-/* 7 */
-/*!***********************!*\
-  !*** ./src/parent.ts ***!
-  \***********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var http_1 = __webpack_require__(/*! @angular/http */ 3);
-	var WpApiParent = (function () {
-	    function WpApiParent(config, http) {
-	        this.config = config;
-	        this.http = http;
-	    }
-	    WpApiParent.prototype.getFullUrl = function (postfix) {
-	        return "" + this.config.baseUrl + this.config.namespace + postfix;
-	    };
-	    WpApiParent.prototype.httpGet = function (url, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.http.get(this.getFullUrl(url), options);
-	    };
-	    WpApiParent.prototype.httpHead = function (url, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.http.head(this.getFullUrl(url), options);
-	    };
-	    WpApiParent.prototype.httpDelete = function (url, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.http.delete(this.getFullUrl(url), options);
-	    };
-	    WpApiParent.prototype.httpPost = function (url, body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.http.post(this.getFullUrl(url), body, options);
-	    };
-	    WpApiParent.prototype.httpPut = function (url, body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.http.put(this.getFullUrl(url), body, options);
-	    };
-	    WpApiParent.prototype.httpPatch = function (url, body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.http.patch(this.getFullUrl(url), body, options);
-	    };
-	    WpApiParent = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [Object, http_1.Http])
-	    ], WpApiParent);
-	    return WpApiParent;
-	}());
-	exports.WpApiParent = WpApiParent;
-
-
-/***/ },
-/* 8 */
-/*!**********************!*\
-  !*** ./src/Pages.ts ***!
-  \**********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var WpApiPages = (function (_super) {
-	    __extends(WpApiPages, _super);
-	    function WpApiPages() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiPages.prototype.getList = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/pages", options);
-	    };
-	    WpApiPages.prototype.get = function (pageId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/pages/" + pageId, options);
-	    };
-	    WpApiPages.prototype.create = function (body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/pages", body, options);
-	    };
-	    WpApiPages.prototype.update = function (pageId, body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/pages/" + pageId, body, options);
-	    };
-	    WpApiPages.prototype.delete = function (pageId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpDelete("/pages/" + pageId, options);
-	    };
-	    WpApiPages.prototype.getMetaList = function (pageId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/pages/" + pageId + "/meta", options);
-	    };
-	    WpApiPages.prototype.getMeta = function (pageId, metaId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/pages/" + pageId + "/meta/" + metaId, options);
-	    };
-	    WpApiPages.prototype.getRevisionList = function (pageId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/pages/" + pageId + "/revisions", options);
-	    };
-	    WpApiPages.prototype.getRevision = function (pageId, revisionId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/pages/" + pageId + "/revisions/" + revisionId, options);
-	    };
-	    WpApiPages = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiPages);
-	    return WpApiPages;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiPages = WpApiPages;
-
-
-/***/ },
-/* 9 */
-/*!*************************!*\
-  !*** ./src/Comments.ts ***!
-  \*************************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var WpApiComments = (function (_super) {
-	    __extends(WpApiComments, _super);
-	    function WpApiComments() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiComments.prototype.getList = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/comments", options);
-	    };
-	    WpApiComments.prototype.get = function (commentId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/comments/" + commentId, options);
-	    };
-	    WpApiComments.prototype.create = function (body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/comments", body, options);
-	    };
-	    WpApiComments.prototype.update = function (commentId, body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/comments/" + commentId, body, options);
-	    };
-	    WpApiComments.prototype.delete = function (commentId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpDelete("/comments/" + commentId, options);
-	    };
-	    WpApiComments = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiComments);
-	    return WpApiComments;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiComments = WpApiComments;
-
-
-/***/ },
-/* 10 */
-/*!**********************!*\
-  !*** ./src/Types.ts ***!
-  \**********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var WpApiTypes = (function (_super) {
-	    __extends(WpApiTypes, _super);
-	    function WpApiTypes() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiTypes.prototype.getList = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/types", options);
-	    };
-	    WpApiTypes.prototype.get = function (postType, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/types/" + postType, options);
-	    };
-	    WpApiTypes = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiTypes);
-	    return WpApiTypes;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiTypes = WpApiTypes;
-
-
-/***/ },
-/* 11 */
-/*!**********************!*\
-  !*** ./src/Media.ts ***!
-  \**********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var WpApiMedia = (function (_super) {
-	    __extends(WpApiMedia, _super);
-	    function WpApiMedia() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiMedia.prototype.getList = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/media", options);
-	    };
-	    WpApiMedia.prototype.get = function (mediaId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/media/" + mediaId, options);
-	    };
-	    WpApiMedia.prototype.create = function (body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/media", body, options);
-	    };
-	    WpApiMedia.prototype.update = function (mediaId, body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/media/" + mediaId, body, options);
-	    };
-	    WpApiMedia.prototype.delete = function (mediaId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpDelete("/media/" + mediaId, options);
-	    };
-	    WpApiMedia = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiMedia);
-	    return WpApiMedia;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiMedia = WpApiMedia;
-
-
-/***/ },
-/* 12 */
-/*!**********************!*\
-  !*** ./src/Users.ts ***!
-  \**********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var WpApiUsers = (function (_super) {
-	    __extends(WpApiUsers, _super);
-	    function WpApiUsers() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiUsers.prototype.getList = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/users", options);
-	    };
-	    WpApiUsers.prototype.me = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/users/me", options);
-	    };
-	    WpApiUsers.prototype.get = function (userId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/users/" + userId, options);
-	    };
-	    WpApiUsers.prototype.create = function (body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/users", body, options);
-	    };
-	    WpApiUsers.prototype.update = function (userId, body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/users/" + userId, body, options);
-	    };
-	    WpApiUsers.prototype.delete = function (userId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpDelete("/users/" + userId, options);
-	    };
-	    WpApiUsers = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiUsers);
-	    return WpApiUsers;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiUsers = WpApiUsers;
-
-
-/***/ },
-/* 13 */
-/*!***************************!*\
-  !*** ./src/Taxonomies.ts ***!
-  \***************************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var WpApiTaxonomies = (function (_super) {
-	    __extends(WpApiTaxonomies, _super);
-	    function WpApiTaxonomies() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiTaxonomies.prototype.getList = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/taxonomies", options);
-	    };
-	    WpApiTaxonomies.prototype.get = function (taxonomiesType, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/taxonomies/" + taxonomiesType, options);
-	    };
-	    WpApiTaxonomies = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiTaxonomies);
-	    return WpApiTaxonomies;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiTaxonomies = WpApiTaxonomies;
-
-
-/***/ },
-/* 14 */
-/*!*************************!*\
-  !*** ./src/Statuses.ts ***!
-  \*************************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var WpApiStatuses = (function (_super) {
-	    __extends(WpApiStatuses, _super);
-	    function WpApiStatuses() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiStatuses.prototype.getList = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/statuses", options);
-	    };
-	    WpApiStatuses.prototype.get = function (statusesName, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/statuses/" + statusesName, options);
-	    };
-	    WpApiStatuses = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiStatuses);
-	    return WpApiStatuses;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiStatuses = WpApiStatuses;
-
-
-/***/ },
-/* 15 */
-/*!**********************!*\
-  !*** ./src/Terms.ts ***!
-  \**********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var defaultTaxoType = 'categories';
-	var WpApiTerms = (function (_super) {
-	    __extends(WpApiTerms, _super);
-	    function WpApiTerms() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiTerms.prototype.getList = function (taxonomiesType, options) {
-	        if (taxonomiesType === void 0) { taxonomiesType = defaultTaxoType; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/" + taxonomiesType, options);
-	    };
-	    WpApiTerms.prototype.get = function (taxonomiesType, termId, options) {
-	        if (taxonomiesType === void 0) { taxonomiesType = defaultTaxoType; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/" + taxonomiesType + "/" + termId, options);
-	    };
-	    WpApiTerms.prototype.create = function (taxonomiesType, body, options) {
-	        if (taxonomiesType === void 0) { taxonomiesType = defaultTaxoType; }
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/" + taxonomiesType, body, options);
-	    };
-	    WpApiTerms.prototype.update = function (taxonomiesType, termId, body, options) {
-	        if (taxonomiesType === void 0) { taxonomiesType = defaultTaxoType; }
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/" + taxonomiesType + "/" + termId, body, options);
-	    };
-	    WpApiTerms.prototype.delete = function (taxonomiesType, termId, options) {
-	        if (taxonomiesType === void 0) { taxonomiesType = defaultTaxoType; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpDelete("/" + taxonomiesType + "/" + termId, options);
-	    };
-	    WpApiTerms = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiTerms);
-	    return WpApiTerms;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiTerms = WpApiTerms;
-
-
-/***/ },
-/* 16 */
-/*!***********************!*\
-  !*** ./src/Custom.ts ***!
-  \***********************/
-/***/ function(module, exports, __webpack_require__) {
-
-	"use strict";
-	var __extends = (this && this.__extends) || function (d, b) {
-	    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
-	    function __() { this.constructor = d; }
-	    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
-	};
-	var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
-	    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
-	    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
-	    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
-	    return c > 3 && r && Object.defineProperty(target, key, r), r;
-	};
-	var __metadata = (this && this.__metadata) || function (k, v) {
-	    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
-	};
-	var core_1 = __webpack_require__(/*! @angular/core */ 1);
-	var parent_ts_1 = __webpack_require__(/*! ./parent.ts */ 7);
-	var WpApiCustom = (function (_super) {
-	    __extends(WpApiCustom, _super);
-	    function WpApiCustom() {
-	        _super.apply(this, arguments);
-	    }
-	    WpApiCustom.prototype.getInstance = function (entityName) {
-	        if (entityName === void 0) { entityName = null; }
-	        if (!entityName) {
-	            throw new Error("getInstance needs an entity name");
-	        }
-	        return new Custom(this.config, this.http, entityName);
-	    };
-	    WpApiCustom = __decorate([
-	        core_1.Injectable(), 
-	        __metadata('design:paramtypes', [])
-	    ], WpApiCustom);
-	    return WpApiCustom;
-	}(parent_ts_1.WpApiParent));
-	exports.WpApiCustom = WpApiCustom;
-	var Custom = (function (_super) {
-	    __extends(Custom, _super);
-	    function Custom(config, http, entityName) {
-	        _super.call(this, config, http);
-	        this.entityName = entityName;
-	    }
-	    Custom.prototype.getList = function (options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/" + this.entityName, options);
-	    };
-	    Custom.prototype.get = function (customId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpGet("/" + this.entityName + "/" + customId, options);
-	    };
-	    Custom.prototype.create = function (body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/" + this.entityName, body, options);
-	    };
-	    Custom.prototype.update = function (customId, body, options) {
-	        if (body === void 0) { body = {}; }
-	        if (options === void 0) { options = {}; }
-	        return this.httpPost("/" + this.entityName + "/" + customId, body, options);
-	    };
-	    Custom.prototype.delete = function (customId, options) {
-	        if (options === void 0) { options = {}; }
-	        return this.httpDelete("/" + this.entityName + "/" + customId, options);
-	    };
-	    return Custom;
-	}(parent_ts_1.WpApiParent));
-	exports.Custom = Custom;
-
-
-/***/ }
-/******/ ])
-});
-;
-//# sourceMappingURL=wp-api-angularjs.js.map
\ No newline at end of file
diff --git a/dist/wp-api-angularjs.js.map b/dist/wp-api-angularjs.js.map
deleted file mode 100644
index 5c62ebb..0000000
--- a/dist/wp-api-angularjs.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap fc20de08fab880746ac8","webpack:///./src/index.ts","webpack:///external \"@angular/core\"","webpack:///external \"rxjs\"","webpack:///external \"@angular/http\"","webpack:///./src/utils.ts","webpack:///./src/tokens.ts","webpack:///./src/Posts.ts","webpack:///./src/parent.ts","webpack:///./src/Pages.ts","webpack:///./src/Comments.ts","webpack:///./src/Types.ts","webpack:///./src/Media.ts","webpack:///./src/Users.ts","webpack:///./src/Taxonomies.ts","webpack:///./src/Statuses.ts","webpack:///./src/Terms.ts","webpack:///./src/Custom.ts"],"names":[],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;ACVA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uBAAe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;;;ACtCA,kCAGO,sBAAe,CAAC;AACvB,qBAAO,aAAM,CAAC;AACd,kCAAqC,sBAAe,CAAC;AAErD,mCAAmC,gBAAS,CAAC;AAE7C,oCAAsC,iBAAU,CAAC;AAEjD,mCAA2B,gBAAS,CAAC;AACrC,mCAA2B,gBAAS,CAAC;AACrC,sCAA8B,mBAAY,CAAC;AAC3C,mCAA2B,iBAAS,CAAC;AACrC,mCAA2B,iBAAS,CAAC;AACrC,mCAA2B,iBAAS,CAAC;AACrC,wCAAgC,sBAAc,CAAC;AAC/C,sCAA8B,oBAAY,CAAC;AAC3C,mCAA2B,iBAAS,CAAC;AACrC,oCAA4B,kBAAU,CAAC;AAEvC,8BAAc,gBAAS,CAAC;AACxB,8BAAc,gBAAS,CAAC;AACxB,8BAAc,mBAAY,CAAC;AAC3B,8BAAc,iBAAS,CAAC;AACxB,8BAAc,iBAAS,CAAC;AACxB,8BAAc,iBAAS,CAAC;AACxB,8BAAc,sBAAc,CAAC;AAC7B,8BAAc,oBAAY,CAAC;AAC3B,8BAAc,iBAAS,CAAC;AACxB,8BAAc,kBAAU,CAAC;AAGZ,qBAAY,GAAG,UAAC,MAAsB;KACjD,0BAA0B;KAC1B,MAAM,CAAC,OAAO,GAAG,0BAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACpD,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,QAAQ,CAAC;KAChD,MAAM,CAAC,cAAO,CAAC,oBAAW,EAAE;SAC1B,QAAQ,EAAE,MAAM;MACjB,CAAC,CAAC;AACL,EAAC,CAAC;AAEW,wBAAe,GAAU;KACpC,qBAAc;KACd,cAAc,CAAC,kBAAU,CAAC;KAC1B,cAAc,CAAC,kBAAU,CAAC;KAC1B,cAAc,CAAC,wBAAa,CAAC;KAC7B,cAAc,CAAC,kBAAU,CAAC;KAC1B,cAAc,CAAC,kBAAU,CAAC;KAC1B,cAAc,CAAC,kBAAU,CAAC;KAC1B,cAAc,CAAC,4BAAe,CAAC;KAC/B,cAAc,CAAC,wBAAa,CAAC;KAC7B,cAAc,CAAC,kBAAU,CAAC;KAC1B,cAAc,CAAC,oBAAW,CAAC;EAC5B,CAAC;AAEF,yBAAwB,OAAO;KAC7B,MAAM,CAAC;SACL,OAAO,EAAE,OAAO;SAChB,UAAU,EAAE,UAAC,MAAsB,EAAE,IAAU,IAAK,WAAI,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAzB,CAAyB;SAC7E,IAAI,EAAE,CAAC,oBAAW,EAAE,WAAI,CAAC;MAC1B;AACH,EAAC;;;;;;;;;;AC/DD,gD;;;;;;;;;ACAA,gD;;;;;;;;;ACAA,gD;;;;;;;;;;ACAA,6BAAmC,KAAa;KAC9C,uBAAuB;KACvB,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;SAC5D,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KAC9C,CAAC;KAAC,IAAI,CAAC,CAAC;SACN,MAAM,CAAC,KAAK,CAAC;KACf,CAAC;AACH,EAAC;AAPe,2BAAkB,qBAOjC;;;;;;;;;;;ACPD,kCAA0B,sBAAe,CAAC;AAE7B,iBAAQ,GAAG,IAAI,kBAAW,CAAC,UAAU,CAAC;AACtC,oBAAW,GAAG,IAAI,kBAAW,CAAC,aAAa,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;ACH1D,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAI1C;KAAgC,8BAAW;KAA3C;SAAgC,8BAAW;KAwC3C,CAAC;KAvCC,4BAAO,GAAP,UAAQ,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC;KACxC,CAAC;KACD,wBAAG,GAAH,UAAI,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC9B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAQ,EAAE,OAAO,CAAC;KAClD,CAAC;KACD,2BAAM,GAAN,UAAO,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;KAC/C,CAAC;KACD,2BAAM,GAAN,UAAO,MAAc,EAAE,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAU,MAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;KACzD,CAAC;KACD,2BAAM,GAAN,UAAO,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACjC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,YAAU,MAAQ,EAAE,OAAO,CAAC;KACrD,CAAC;KACD,gCAAW,GAAX,UAAY,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACtC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,UAAO,EAAE,OAAO,CAAC;KACvD,CAAC;KACD,4BAAO,GAAP,UAAQ,MAAc,EAAE,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,cAAS,MAAQ,EAAE,OAAO,CAAC;KACjE,CAAC;KACD,oCAAe,GAAf,UAAgB,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,eAAY,EAAE,OAAO,CAAC;KAC5D,CAAC;KACD,gCAAW,GAAX,UAAY,MAAc,EAAE,UAAkB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC1D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,mBAAc,UAAY,EAAE,OAAO,CAAC;KAC1E,CAAC;KACD,oCAAe,GAAf,UAAgB,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,oBAAiB,EAAE,OAAO,CAAC;KACjE,CAAC;KACD,gCAAW,GAAX,UAAY,MAAc,EAAE,UAAkB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC1D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,wBAAmB,UAAY,EAAE,OAAO,CAAC;KAC/E,CAAC;KACD,+BAAU,GAAV,UAAW,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACrC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,eAAY,EAAE,OAAO,CAAC;KAC5D,CAAC;KACD,2BAAM,GAAN,UAAO,MAAc,EAAE,KAAa,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAChD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,mBAAc,KAAO,EAAE,OAAO,CAAC;KACrE,CAAC;KAxCH;SAAC,iBAAU,EAAE;;mBAAA;KAyCb,iBAAC;AAAD,EAAC,CAxC+B,uBAAW,GAwC1C;AAxCY,mBAAU,aAwCtB;;;;;;;;;;;;;;;;;;;;AC7CD,kCAA2B,sBAAe,CAAC;AAC3C,kCAAqB,sBAAe,CAAC;AAKrC;KACE,qBACS,MAAsB,EACtB,IAAU;SADV,WAAM,GAAN,MAAM,CAAgB;SACtB,SAAI,GAAJ,IAAI,CAAM;KACf,CAAC;KAEL,gCAAU,GAAV,UAAW,OAAe;SACxB,MAAM,CAAC,KAAG,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,OAAS,CAAC;KACpE,CAAC;KACD,6BAAO,GAAP,UAAQ,GAAW,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;KACtD,CAAC;KACD,8BAAQ,GAAR,UAAS,GAAW,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAChC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;KACvD,CAAC;KACD,gCAAU,GAAV,UAAW,GAAW,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;KACzD,CAAC;KACD,8BAAQ,GAAR,UAAS,GAAW,EAAE,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC3C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;KAC7D,CAAC;KACD,6BAAO,GAAP,UAAQ,GAAW,EAAE,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC1C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;KAC5D,CAAC;KACD,+BAAS,GAAT,UAAU,GAAW,EAAE,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;KAC9D,CAAC;KA3BH;SAAC,iBAAU,EAAE;;oBAAA;KA4Bb,kBAAC;AAAD,EAAC;AA3BY,oBAAW,cA2BvB;;;;;;;;;;;;;;;;;;;;;;;;;ACjCD,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAI1C;KAAgC,8BAAW;KAA3C;SAAgC,8BAAW;KA4B3C,CAAC;KA3BC,4BAAO,GAAP,UAAQ,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC;KACxC,CAAC;KACD,wBAAG,GAAH,UAAI,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC9B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAQ,EAAE,OAAO,CAAC;KAClD,CAAC;KACD,2BAAM,GAAN,UAAO,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;KAC/C,CAAC;KACD,2BAAM,GAAN,UAAO,MAAc,EAAE,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAU,MAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;KACzD,CAAC;KACD,2BAAM,GAAN,UAAO,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACjC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,YAAU,MAAQ,EAAE,OAAO,CAAC;KACrD,CAAC;KACD,gCAAW,GAAX,UAAY,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACtC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,UAAO,EAAE,OAAO,CAAC;KACvD,CAAC;KACD,4BAAO,GAAP,UAAQ,MAAc,EAAE,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,cAAS,MAAQ,EAAE,OAAO,CAAC;KACjE,CAAC;KACD,oCAAe,GAAf,UAAgB,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,eAAY,EAAE,OAAO,CAAC;KAC5D,CAAC;KACD,gCAAW,GAAX,UAAY,MAAc,EAAE,UAAkB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC1D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAM,mBAAc,UAAY,EAAE,OAAO,CAAC;KAC1E,CAAC;KA5BH;SAAC,iBAAU,EAAE;;mBAAA;KA6Bb,iBAAC;AAAD,EAAC,CA5B+B,uBAAW,GA4B1C;AA5BY,mBAAU,aA4BtB;;;;;;;;;;;;;;;;;;;;;;;;;ACjCD,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAI1C;KAAmC,iCAAW;KAA9C;SAAmC,8BAAW;KAgB9C,CAAC;KAfC,+BAAO,GAAP,UAAQ,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC;KAC3C,CAAC;KACD,2BAAG,GAAH,UAAI,SAAiB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACjC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,eAAa,SAAW,EAAE,OAAO,CAAC;KACxD,CAAC;KACD,8BAAM,GAAN,UAAO,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC;KAClD,CAAC;KACD,8BAAM,GAAN,UAAO,SAAiB,EAAE,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC/C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAa,SAAW,EAAE,IAAI,EAAE,OAAO,CAAC;KAC/D,CAAC;KACD,8BAAM,GAAN,UAAO,SAAiB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACpC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,eAAa,SAAW,EAAE,OAAO,CAAC;KAC3D,CAAC;KAhBH;SAAC,iBAAU,EAAE;;sBAAA;KAiBb,oBAAC;AAAD,EAAC,CAhBkC,uBAAW,GAgB7C;AAhBY,sBAAa,gBAgBzB;;;;;;;;;;;;;;;;;;;;;;;;;ACrBD,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAI1C;KAAgC,8BAAW;KAA3C;SAAgC,8BAAW;KAO3C,CAAC;KANC,4BAAO,GAAP,UAAQ,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC;KACxC,CAAC;KACD,wBAAG,GAAH,UAAI,QAAgB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAChC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,QAAU,EAAE,OAAO,CAAC;KACpD,CAAC;KAPH;SAAC,iBAAU,EAAE;;mBAAA;KAQb,iBAAC;AAAD,EAAC,CAP+B,uBAAW,GAO1C;AAPY,mBAAU,aAOtB;;;;;;;;;;;;;;;;;;;;;;;;;ACZD,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAI1C;KAAgC,8BAAW;KAA3C;SAAgC,8BAAW;KAgB3C,CAAC;KAfC,4BAAO,GAAP,UAAQ,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC;KACxC,CAAC;KACD,wBAAG,GAAH,UAAI,OAAe,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC/B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,OAAS,EAAE,OAAO,CAAC;KACnD,CAAC;KACD,2BAAM,GAAN,UAAO,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;KAC/C,CAAC;KACD,2BAAM,GAAN,UAAO,OAAe,EAAE,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC7C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAU,OAAS,EAAE,IAAI,EAAE,OAAO,CAAC;KAC1D,CAAC;KACD,2BAAM,GAAN,UAAO,OAAe,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,YAAU,OAAS,EAAE,OAAO,CAAC;KACtD,CAAC;KAhBH;SAAC,iBAAU,EAAE;;mBAAA;KAiBb,iBAAC;AAAD,EAAC,CAhB+B,uBAAW,GAgB1C;AAhBY,mBAAU,aAgBtB;;;;;;;;;;;;;;;;;;;;;;;;;ACrBD,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAI1C;KAAgC,8BAAW;KAA3C;SAAgC,8BAAW;KAmB3C,CAAC;KAlBC,4BAAO,GAAP,UAAQ,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC;KACxC,CAAC;KACD,uBAAE,GAAF,UAAG,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACb,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC;KAC3C,CAAC;KACD,wBAAG,GAAH,UAAI,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAC9B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAU,MAAQ,EAAE,OAAO,CAAC;KAClD,CAAC;KACD,2BAAM,GAAN,UAAO,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;KAC/C,CAAC;KACD,2BAAM,GAAN,UAAO,MAAc,EAAE,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAU,MAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;KACzD,CAAC;KACD,2BAAM,GAAN,UAAO,MAAc,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACjC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,YAAU,MAAQ,EAAE,OAAO,CAAC;KACrD,CAAC;KAnBH;SAAC,iBAAU,EAAE;;mBAAA;KAoBb,iBAAC;AAAD,EAAC,CAnB+B,uBAAW,GAmB1C;AAnBY,mBAAU,aAmBtB;;;;;;;;;;;;;;;;;;;;;;;;;ACxBD,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAI1C;KAAqC,mCAAW;KAAhD;SAAqC,8BAAW;KAOhD,CAAC;KANC,iCAAO,GAAP,UAAQ,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC;KAC7C,CAAC;KACD,6BAAG,GAAH,UAAI,cAAsB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACtC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAe,cAAgB,EAAE,OAAO,CAAC;KAC/D,CAAC;KAPH;SAAC,iBAAU,EAAE;;wBAAA;KAQb,sBAAC;AAAD,EAAC,CAPoC,uBAAW,GAO/C;AAPY,wBAAe,kBAO3B;;;;;;;;;;;;;;;;;;;;;;;;;ACZD,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAI1C;KAAmC,iCAAW;KAA9C;SAAmC,8BAAW;KAO9C,CAAC;KANC,+BAAO,GAAP,UAAQ,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC;KAC3C,CAAC;KACD,2BAAG,GAAH,UAAI,YAAoB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACpC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,eAAa,YAAc,EAAE,OAAO,CAAC;KAC3D,CAAC;KAPH;SAAC,iBAAU,EAAE;;sBAAA;KAQb,oBAAC;AAAD,EAAC,CAPkC,uBAAW,GAO7C;AAPY,sBAAa,gBAOzB;;;;;;;;;;;;;;;;;;;;;;;;;ACZD,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAG1C,KAAM,eAAe,GAAG,YAAY,CAAC;AAGrC;KAAgC,8BAAW;KAA3C;SAAgC,8BAAW;KAgB3C,CAAC;KAfC,4BAAO,GAAP,UAAQ,cAAgC,EAAG,OAAY;SAA/C,8BAAgC,GAAhC,gCAAgC;SAAG,uBAAY,GAAZ,YAAY;SACrD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAI,cAAgB,EAAE,OAAO,CAAC;KACpD,CAAC;KACD,wBAAG,GAAH,UAAI,cAAgC,EAAE,MAAc,EAAE,OAAY;SAA9D,8BAAgC,GAAhC,gCAAgC;SAAkB,uBAAY,GAAZ,YAAY;SAChE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAI,cAAc,SAAI,MAAQ,EAAE,OAAO,CAAC;KAC9D,CAAC;KACD,2BAAM,GAAN,UAAO,cAAgC,EAAE,IAAS,EAAE,OAAY;SAAzD,8BAAgC,GAAhC,gCAAgC;SAAE,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC9D,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAI,cAAgB,EAAE,IAAI,EAAE,OAAO,CAAC;KAC3D,CAAC;KACD,2BAAM,GAAN,UAAO,cAAgC,EAAE,MAAc,EAAE,IAAS,EAAE,OAAY;SAAzE,8BAAgC,GAAhC,gCAAgC;SAAkB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC9E,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAI,cAAc,SAAI,MAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;KACrE,CAAC;KACD,2BAAM,GAAN,UAAO,cAAgC,EAAE,MAAc,EAAE,OAAY;SAA9D,8BAAgC,GAAhC,gCAAgC;SAAkB,uBAAY,GAAZ,YAAY;SACnE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAI,cAAc,SAAI,MAAQ,EAAE,OAAO,CAAC;KACjE,CAAC;KAhBH;SAAC,iBAAU,EAAE;;mBAAA;KAiBb,iBAAC;AAAD,EAAC,CAhB+B,uBAAW,GAgB1C;AAhBY,mBAAU,aAgBtB;;;;;;;;;;;;;;;;;;;;;;;;;ACvBD,kCAA2B,sBAAe,CAAC;AAC3C,uCAA4B,oBAAa,CAAC;AAI1C;KAAiC,+BAAW;KAA5C;SAAiC,8BAAW;KAO5C,CAAC;KANC,iCAAW,GAAX,UAAY,UAAiB;SAAjB,0BAAiB,GAAjB,iBAAiB;SAC3B,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;aAChB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACtD,CAAC;SACD,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;KACxD,CAAC;KAPH;SAAC,iBAAU,EAAE;;oBAAA;KAQb,kBAAC;AAAD,EAAC,CAPgC,uBAAW,GAO3C;AAPY,oBAAW,cAOvB;AAED;KAA4B,0BAAW;KACrC,gBAAY,MAAM,EAAE,IAAI,EAAU,UAAkB;SAClD,kBAAM,MAAM,EAAE,IAAI,CAAC,CAAC;SADY,eAAU,GAAV,UAAU,CAAQ;KAEpD,CAAC;KACD,wBAAO,GAAP,UAAQ,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAI,IAAI,CAAC,UAAY,EAAE,OAAO,CAAC;KACrD,CAAC;KACD,oBAAG,GAAH,UAAI,QAAgB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SAChC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAI,IAAI,CAAC,UAAU,SAAI,QAAU,EAAE,OAAO,CAAC;KACjE,CAAC;KACD,uBAAM,GAAN,UAAO,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC5B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAI,IAAI,CAAC,UAAY,EAAE,IAAI,EAAE,OAAO,CAAC;KAC5D,CAAC;KACD,uBAAM,GAAN,UAAO,QAAgB,EAAE,IAAS,EAAE,OAAY;SAAvB,oBAAS,GAAT,SAAS;SAAE,uBAAY,GAAZ,YAAY;SAC9C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAI,IAAI,CAAC,UAAU,SAAI,QAAU,EAAE,IAAI,EAAE,OAAO,CAAC;KACxE,CAAC;KACD,uBAAM,GAAN,UAAO,QAAgB,EAAE,OAAY;SAAZ,uBAAY,GAAZ,YAAY;SACnC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAI,IAAI,CAAC,UAAU,SAAI,QAAU,EAAE,OAAO,CAAC;KACpE,CAAC;KACH,aAAC;AAAD,EAAC,CAnB2B,uBAAW,GAmBtC;AAnBY,eAAM,SAmBlB","file":"wp-api-angularjs.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"@angular/core\"), require(\"rxjs\"), require(\"@angular/http\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"@angular/core\", \"rxjs\", \"@angular/http\"], factory);\n\telse {\n\t\tvar a = typeof exports === 'object' ? factory(require(\"@angular/core\"), require(\"rxjs\"), require(\"@angular/http\")) : factory(root[\"@angular/core\"], root[\"rxjs\"], root[\"@angular/http\"]);\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(this, function(__WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_3__) {\nreturn \n\n\n/** WEBPACK FOOTER **\n ** webpack/universalModuleDefinition\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap fc20de08fab880746ac8\n **/","import {\n  provide,\n  Provider\n} from '@angular/core';\nimport 'rxjs';\nimport { Http, HTTP_PROVIDERS } from '@angular/http';\n\nimport { stripTrailingSlash } from './utils';\nimport { WpApiAppConfig } from './interfaces';\nimport { WpApiApp, WpApiConfig } from './tokens';\n\nimport { WpApiPosts } from './Posts';\nimport { WpApiPages } from './Pages';\nimport { WpApiComments } from './Comments';\nimport { WpApiTypes } from './Types';\nimport { WpApiMedia } from './Media';\nimport { WpApiUsers } from './Users';\nimport { WpApiTaxonomies } from './Taxonomies';\nimport { WpApiStatuses } from './Statuses';\nimport { WpApiTerms } from './Terms';\nimport { WpApiCustom } from './Custom';\n\nexport * from './Posts';\nexport * from './Pages';\nexport * from './Comments';\nexport * from './Types';\nexport * from './Media';\nexport * from './Users';\nexport * from './Taxonomies';\nexport * from './Statuses';\nexport * from './Terms';\nexport * from './Custom';\n\n\nexport const defaultWpApi = (config: WpApiAppConfig): Provider => {\n  // remove a trailing slash\n  config.baseUrl = stripTrailingSlash(config.baseUrl);\n  config.namespace = config.namespace || '/wp/v2';\n  return provide(WpApiConfig, {\n    useValue: config\n  });\n};\n\nexport const WPAPI_PROVIDERS: any[] = [\n  HTTP_PROVIDERS,\n  createProvider(WpApiPosts),\n  createProvider(WpApiPages),\n  createProvider(WpApiComments),\n  createProvider(WpApiTypes),\n  createProvider(WpApiMedia),\n  createProvider(WpApiUsers),\n  createProvider(WpApiTaxonomies),\n  createProvider(WpApiStatuses),\n  createProvider(WpApiTerms),\n  createProvider(WpApiCustom)\n];\n\nfunction createProvider(service) {\n  return {\n    provide: service,\n    useFactory: (config: WpApiAppConfig, http: Http) => new service(config, http),\n    deps: [WpApiConfig, Http]\n  }\n}\n\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/index.ts\n **/","module.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** external \"@angular/core\"\n ** module id = 1\n ** module chunks = 0\n **/","module.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** external \"rxjs\"\n ** module id = 2\n ** module chunks = 0\n **/","module.exports = __WEBPACK_EXTERNAL_MODULE_3__;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** external \"@angular/http\"\n ** module id = 3\n ** module chunks = 0\n **/","export function stripTrailingSlash(value: string): string {\n  // Is the last char a /\n  if (value.substring(value.length - 1, value.length) === '/') {\n    return value.substring(0, value.length - 1);\n  } else {\n    return value;\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/utils.ts\n **/","import {OpaqueToken} from '@angular/core';\n\nexport const WpApiApp = new OpaqueToken('WpApiApp')\nexport const WpApiConfig = new OpaqueToken('WpApiConfig');\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/tokens.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiPosts } from './interfaces';\n\n@Injectable()\nexport class WpApiPosts extends WpApiParent implements IWpApiPosts {\n  getList(options = {}) {\n    return this.httpGet(`/posts`, options)\n  }\n  get(postId: number, options = {}) {\n    return this.httpGet(`/posts/${postId}`, options)\n  }\n  create(body = {}, options = {}) {\n    return this.httpPost(`/posts`, body, options)\n  }\n  update(postId: number, body = {}, options = {}) {\n    return this.httpPost(`/posts/${postId}`, body, options)\n  }\n  delete(postId: number, options = {}) {\n    return this.httpDelete(`/posts/${postId}`, options)\n  }\n  getMetaList(postId: number, options = {}) {\n    return this.httpGet(`/posts/${postId}/meta`, options)\n  }\n  getMeta(postId: number, metaId: number, options = {}) {\n    return this.httpGet(`/posts/${postId}/meta/${metaId}`, options)\n  }\n  getRevisionList(postId: number, options = {}) {\n    return this.httpGet(`/posts/${postId}/revisions`, options)\n  }\n  getRevision(postId: number, revisionId: number, options = {}) {\n    return this.httpGet(`/posts/${postId}/revisions/${revisionId}`, options)\n  }\n  getCategoryList(postId: number, options = {}) {\n    return this.httpGet(`/posts/${postId}/terms/category`, options)\n  }\n  getCategory(postId: number, categoryId: number, options = {}) {\n    return this.httpGet(`/posts/${postId}/terms/category/${categoryId}`, options)\n  }\n  getTagList(postId: number, options = {}) {\n    return this.httpGet(`/posts/${postId}/terms/tag`, options)\n  }\n  getTag(postId: number, tagId: number, options = {}) {\n    return this.httpGet(`/posts/${postId}/terms/tag/${tagId}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Posts.ts\n **/","import { Injectable } from '@angular/core';\nimport { Http } from '@angular/http';\n\nimport { WpApiAppConfig, IParent } from './interfaces';\n\n@Injectable()\nexport class WpApiParent implements IParent {\n  constructor(\n    public config: WpApiAppConfig,\n    public http: Http\n  ) { }\n\n  getFullUrl(postfix: string): string {\n    return `${this.config.baseUrl}${this.config.namespace}${postfix}`;\n  }\n  httpGet(url: string, options = {}) {\n    return this.http.get(this.getFullUrl(url), options);\n  }\n  httpHead(url: string, options = {}) {\n    return this.http.head(this.getFullUrl(url), options);\n  }\n  httpDelete(url: string, options = {}) {\n    return this.http.delete(this.getFullUrl(url), options);\n  }\n  httpPost(url: string, body = {}, options = {}) {\n    return this.http.post(this.getFullUrl(url), body, options);\n  }\n  httpPut(url: string, body = {}, options = {}) {\n    return this.http.put(this.getFullUrl(url), body, options);\n  }\n  httpPatch(url: string, body = {}, options = {}) {\n    return this.http.patch(this.getFullUrl(url), body, options);\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/parent.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiPages } from './interfaces';\n\n@Injectable()\nexport class WpApiPages extends WpApiParent implements IWpApiPages {\n  getList(options = {}) {\n    return this.httpGet(`/pages`, options)\n  }\n  get(pageId: number, options = {}) {\n    return this.httpGet(`/pages/${pageId}`, options)\n  }\n  create(body = {}, options = {}) {\n    return this.httpPost(`/pages`, body, options)\n  }\n  update(pageId: number, body = {}, options = {}) {\n    return this.httpPost(`/pages/${pageId}`, body, options)\n  }\n  delete(pageId: number, options = {}) {\n    return this.httpDelete(`/pages/${pageId}`, options)\n  }\n  getMetaList(pageId: number, options = {}) {\n    return this.httpGet(`/pages/${pageId}/meta`, options)\n  }\n  getMeta(pageId: number, metaId: number, options = {}) {\n    return this.httpGet(`/pages/${pageId}/meta/${metaId}`, options)\n  }\n  getRevisionList(pageId: number, options = {}) {\n    return this.httpGet(`/pages/${pageId}/revisions`, options)\n  }\n  getRevision(pageId: number, revisionId: number, options = {}) {\n    return this.httpGet(`/pages/${pageId}/revisions/${revisionId}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Pages.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiComments } from './interfaces';\n\n@Injectable()\nexport class WpApiComments extends WpApiParent implements IWpApiComments {\n  getList(options = {}) {\n    return this.httpGet(`/comments`, options)\n  }\n  get(commentId: number, options = {}) {\n    return this.httpGet(`/comments/${commentId}`, options)\n  }\n  create(body = {}, options = {}) {\n    return this.httpPost(`/comments`, body, options)\n  }\n  update(commentId: number, body = {}, options = {}) {\n    return this.httpPost(`/comments/${commentId}`, body, options)\n  }\n  delete(commentId: number, options = {}) {\n    return this.httpDelete(`/comments/${commentId}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Comments.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiTypes } from './interfaces';\n\n@Injectable()\nexport class WpApiTypes extends WpApiParent implements IWpApiTypes {\n  getList(options = {}) {\n    return this.httpGet(`/types`, options)\n  }\n  get(postType: string, options = {}) {\n    return this.httpGet(`/types/${postType}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Types.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiMedia } from './interfaces';\n\n@Injectable()\nexport class WpApiMedia extends WpApiParent implements IWpApiMedia {\n  getList(options = {}) {\n    return this.httpGet(`/media`, options)\n  }\n  get(mediaId: number, options = {}) {\n    return this.httpGet(`/media/${mediaId}`, options)\n  }\n  create(body = {}, options = {}) {\n    return this.httpPost(`/media`, body, options)\n  }\n  update(mediaId: number, body = {}, options = {}) {\n    return this.httpPost(`/media/${mediaId}`, body, options)\n  }\n  delete(mediaId: number, options = {}) {\n    return this.httpDelete(`/media/${mediaId}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Media.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiUsers } from './interfaces';\n\n@Injectable()\nexport class WpApiUsers extends WpApiParent implements IWpApiUsers {\n  getList(options = {}) {\n    return this.httpGet(`/users`, options)\n  }\n  me(options = {}) {\n    return this.httpGet(`/users/me`, options)\n  }\n  get(userId: number, options = {}) {\n    return this.httpGet(`/users/${userId}`, options)\n  }\n  create(body = {}, options = {}) {\n    return this.httpPost(`/users`, body, options)\n  }\n  update(userId: number, body = {}, options = {}) {\n    return this.httpPost(`/users/${userId}`, body, options)\n  }\n  delete(userId: number, options = {}) {\n    return this.httpDelete(`/users/${userId}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Users.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiTaxonomies } from './interfaces';\n\n@Injectable()\nexport class WpApiTaxonomies extends WpApiParent implements IWpApiTaxonomies {\n  getList(options = {}) {\n    return this.httpGet(`/taxonomies`, options)\n  }\n  get(taxonomiesType: string, options = {}) {\n    return this.httpGet(`/taxonomies/${taxonomiesType}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Taxonomies.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiStatuses } from './interfaces';\n\n@Injectable()\nexport class WpApiStatuses extends WpApiParent implements IWpApiStatuses {\n  getList(options = {}) {\n    return this.httpGet(`/statuses`, options)\n  }\n  get(statusesName: string, options = {}) {\n    return this.httpGet(`/statuses/${statusesName}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Statuses.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiTerms } from './interfaces';\n\nconst defaultTaxoType = 'categories';\n\n@Injectable()\nexport class WpApiTerms extends WpApiParent implements IWpApiTerms {\n  getList(taxonomiesType = defaultTaxoType , options = {}) {\n    return this.httpGet(`/${taxonomiesType}`, options)\n  }\n  get(taxonomiesType = defaultTaxoType, termId: number, options = {}) {\n    return this.httpGet(`/${taxonomiesType}/${termId}`, options)\n  }\n  create(taxonomiesType = defaultTaxoType, body = {}, options = {}) {\n    return this.httpPost(`/${taxonomiesType}`, body, options)\n  }\n  update(taxonomiesType = defaultTaxoType, termId: number, body = {}, options = {}) {\n    return this.httpPost(`/${taxonomiesType}/${termId}`, body, options)\n  }\n  delete(taxonomiesType = defaultTaxoType, termId: number, options = {}) {\n    return this.httpDelete(`/${taxonomiesType}/${termId}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Terms.ts\n **/","import { Injectable } from '@angular/core';\nimport { WpApiParent } from './parent.ts';\nimport { IWpApiCustom } from './interfaces';\n\n@Injectable()\nexport class WpApiCustom extends WpApiParent {\n  getInstance(entityName = null) {\n    if (!entityName) {\n      throw new Error(`getInstance needs an entity name`);\n    }\n    return new Custom(this.config, this.http, entityName);\n  }\n}\n\nexport class Custom extends WpApiParent implements IWpApiCustom {\n  constructor(config, http, private entityName: string) {\n    super(config, http);\n  }\n  getList(options = {}) {\n    return this.httpGet(`/${this.entityName}`, options)\n  }\n  get(customId: number, options = {}) {\n    return this.httpGet(`/${this.entityName}/${customId}`, options)\n  }\n  create(body = {}, options = {}) {\n    return this.httpPost(`/${this.entityName}`, body, options)\n  }\n  update(customId: number, body = {}, options = {}) {\n    return this.httpPost(`/${this.entityName}/${customId}`, body, options)\n  }\n  delete(customId: number, options = {}) {\n    return this.httpDelete(`/${this.entityName}/${customId}`, options)\n  }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/Custom.ts\n **/"],"sourceRoot":""}
\ No newline at end of file
diff --git a/dist/wp-api-angularjs.min.js b/dist/wp-api-angularjs.min.js
deleted file mode 100644
index 242a24d..0000000
--- a/dist/wp-api-angularjs.min.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*!
- * wp-api-angularjs
- *  ---
- * WordPress WP-API v2 client for Angular2
- * @version: v3.0.0-alpha2
- * @author: shprink <contact@julienrenaux.fr>
- * @link: https://github.com/shprink/wp-api-angularjs
- * @license: MIT
- * 
- */
-!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e(require("@angular/core"),require("@angular/http"),require("rxjs"));else if("function"==typeof define&&define.amd)define(["@angular/core","@angular/http","rxjs"],e);else{var o="object"==typeof exports?e(require("@angular/core"),require("@angular/http"),require("rxjs")):e(t["@angular/core"],t["@angular/http"],t.rxjs);for(var n in o)("object"==typeof exports?exports:t)[n]=o[n]}}(this,function(t,e,o){return function(t){function e(n){if(o[n])return o[n].exports;var r=o[n]={exports:{},id:n,loaded:!1};return t[n].call(r.exports,r,r.exports,e),r.loaded=!0,r.exports}var o={};return e.m=t,e.c=o,e.p="",e(0)}([function(t,e,o){"use strict";function n(t){for(var o in t)e.hasOwnProperty(o)||(e[o]=t[o])}function r(t){return{provide:t,useFactory:function(e,o){return new t(e,o)},deps:[c.WpApiConfig,p.Http]}}var i=o(1);o(16);var p=o(13),s=o(15),c=o(14),u=o(7),a=o(6),f=o(3),h=o(11),l=o(5),d=o(12),y=o(9),v=o(8),g=o(10),m=o(4);n(o(7)),n(o(6)),n(o(3)),n(o(11)),n(o(5)),n(o(12)),n(o(9)),n(o(8)),n(o(10)),n(o(4)),e.defaultWpApi=function(t){return t.baseUrl=s.stripTrailingSlash(t.baseUrl),t.namespace=t.namespace||"/wp/v2",i.provide(c.WpApiConfig,{useValue:t})},e.WPAPI_PROVIDERS=[p.HTTP_PROVIDERS,r(u.WpApiPosts),r(a.WpApiPages),r(f.WpApiComments),r(h.WpApiTypes),r(l.WpApiMedia),r(d.WpApiUsers),r(y.WpApiTaxonomies),r(v.WpApiStatuses),r(g.WpApiTerms),r(m.WpApiCustom)]},function(e,o){e.exports=t},function(t,e,o){"use strict";var n=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},r=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},i=o(1),p=o(13),s=function(){function t(t,e){this.config=t,this.http=e}return t.prototype.getFullUrl=function(t){return""+this.config.baseUrl+this.config.namespace+t},t.prototype.httpGet=function(t,e){return void 0===e&&(e={}),this.http.get(this.getFullUrl(t),e)},t.prototype.httpHead=function(t,e){return void 0===e&&(e={}),this.http.head(this.getFullUrl(t),e)},t.prototype.httpDelete=function(t,e){return void 0===e&&(e={}),this.http["delete"](this.getFullUrl(t),e)},t.prototype.httpPost=function(t,e,o){return void 0===e&&(e={}),void 0===o&&(o={}),this.http.post(this.getFullUrl(t),e,o)},t.prototype.httpPut=function(t,e,o){return void 0===e&&(e={}),void 0===o&&(o={}),this.http.put(this.getFullUrl(t),e,o)},t.prototype.httpPatch=function(t,e,o){return void 0===e&&(e={}),void 0===o&&(o={}),this.http.patch(this.getFullUrl(t),e,o)},t=n([i.Injectable(),r("design:paramtypes",[Object,p.Http])],t)}();e.WpApiParent=s},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getList=function(t){return void 0===t&&(t={}),this.httpGet("/comments",t)},e.prototype.get=function(t,e){return void 0===e&&(e={}),this.httpGet("/comments/"+t,e)},e.prototype.create=function(t,e){return void 0===t&&(t={}),void 0===e&&(e={}),this.httpPost("/comments",t,e)},e.prototype.update=function(t,e,o){return void 0===e&&(e={}),void 0===o&&(o={}),this.httpPost("/comments/"+t,e,o)},e.prototype["delete"]=function(t,e){return void 0===e&&(e={}),this.httpDelete("/comments/"+t,e)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiComments=c},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getInstance=function(t){if(void 0===t&&(t=null),!t)throw new Error("getInstance needs an entity name");return new u(this.config,this.http,t)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiCustom=c;var u=function(t){function e(e,o,n){t.call(this,e,o),this.entityName=n}return n(e,t),e.prototype.getList=function(t){return void 0===t&&(t={}),this.httpGet("/"+this.entityName,t)},e.prototype.get=function(t,e){return void 0===e&&(e={}),this.httpGet("/"+this.entityName+"/"+t,e)},e.prototype.create=function(t,e){return void 0===t&&(t={}),void 0===e&&(e={}),this.httpPost("/"+this.entityName,t,e)},e.prototype.update=function(t,e,o){return void 0===e&&(e={}),void 0===o&&(o={}),this.httpPost("/"+this.entityName+"/"+t,e,o)},e.prototype["delete"]=function(t,e){return void 0===e&&(e={}),this.httpDelete("/"+this.entityName+"/"+t,e)},e}(s.WpApiParent);e.Custom=u},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getList=function(t){return void 0===t&&(t={}),this.httpGet("/media",t)},e.prototype.get=function(t,e){return void 0===e&&(e={}),this.httpGet("/media/"+t,e)},e.prototype.create=function(t,e){return void 0===t&&(t={}),void 0===e&&(e={}),this.httpPost("/media",t,e)},e.prototype.update=function(t,e,o){return void 0===e&&(e={}),void 0===o&&(o={}),this.httpPost("/media/"+t,e,o)},e.prototype["delete"]=function(t,e){return void 0===e&&(e={}),this.httpDelete("/media/"+t,e)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiMedia=c},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getList=function(t){return void 0===t&&(t={}),this.httpGet("/pages",t)},e.prototype.get=function(t,e){return void 0===e&&(e={}),this.httpGet("/pages/"+t,e)},e.prototype.create=function(t,e){return void 0===t&&(t={}),void 0===e&&(e={}),this.httpPost("/pages",t,e)},e.prototype.update=function(t,e,o){return void 0===e&&(e={}),void 0===o&&(o={}),this.httpPost("/pages/"+t,e,o)},e.prototype["delete"]=function(t,e){return void 0===e&&(e={}),this.httpDelete("/pages/"+t,e)},e.prototype.getMetaList=function(t,e){return void 0===e&&(e={}),this.httpGet("/pages/"+t+"/meta",e)},e.prototype.getMeta=function(t,e,o){return void 0===o&&(o={}),this.httpGet("/pages/"+t+"/meta/"+e,o)},e.prototype.getRevisionList=function(t,e){return void 0===e&&(e={}),this.httpGet("/pages/"+t+"/revisions",e)},e.prototype.getRevision=function(t,e,o){return void 0===o&&(o={}),this.httpGet("/pages/"+t+"/revisions/"+e,o)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiPages=c},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getList=function(t){return void 0===t&&(t={}),this.httpGet("/posts",t)},e.prototype.get=function(t,e){return void 0===e&&(e={}),this.httpGet("/posts/"+t,e)},e.prototype.create=function(t,e){return void 0===t&&(t={}),void 0===e&&(e={}),this.httpPost("/posts",t,e)},e.prototype.update=function(t,e,o){return void 0===e&&(e={}),void 0===o&&(o={}),this.httpPost("/posts/"+t,e,o)},e.prototype["delete"]=function(t,e){return void 0===e&&(e={}),this.httpDelete("/posts/"+t,e)},e.prototype.getMetaList=function(t,e){return void 0===e&&(e={}),this.httpGet("/posts/"+t+"/meta",e)},e.prototype.getMeta=function(t,e,o){return void 0===o&&(o={}),this.httpGet("/posts/"+t+"/meta/"+e,o)},e.prototype.getRevisionList=function(t,e){return void 0===e&&(e={}),this.httpGet("/posts/"+t+"/revisions",e)},e.prototype.getRevision=function(t,e,o){return void 0===o&&(o={}),this.httpGet("/posts/"+t+"/revisions/"+e,o)},e.prototype.getCategoryList=function(t,e){return void 0===e&&(e={}),this.httpGet("/posts/"+t+"/terms/category",e)},e.prototype.getCategory=function(t,e,o){return void 0===o&&(o={}),this.httpGet("/posts/"+t+"/terms/category/"+e,o)},e.prototype.getTagList=function(t,e){return void 0===e&&(e={}),this.httpGet("/posts/"+t+"/terms/tag",e)},e.prototype.getTag=function(t,e,o){return void 0===o&&(o={}),this.httpGet("/posts/"+t+"/terms/tag/"+e,o)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiPosts=c},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getList=function(t){return void 0===t&&(t={}),this.httpGet("/statuses",t)},e.prototype.get=function(t,e){return void 0===e&&(e={}),this.httpGet("/statuses/"+t,e)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiStatuses=c},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getList=function(t){return void 0===t&&(t={}),this.httpGet("/taxonomies",t)},e.prototype.get=function(t,e){return void 0===e&&(e={}),this.httpGet("/taxonomies/"+t,e)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiTaxonomies=c},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c="categories",u=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getList=function(t,e){return void 0===t&&(t=c),void 0===e&&(e={}),this.httpGet("/"+t,e)},e.prototype.get=function(t,e,o){return void 0===t&&(t=c),void 0===o&&(o={}),this.httpGet("/"+t+"/"+e,o)},e.prototype.create=function(t,e,o){return void 0===t&&(t=c),void 0===e&&(e={}),void 0===o&&(o={}),this.httpPost("/"+t,e,o)},e.prototype.update=function(t,e,o,n){return void 0===t&&(t=c),void 0===o&&(o={}),void 0===n&&(n={}),this.httpPost("/"+t+"/"+e,o,n)},e.prototype["delete"]=function(t,e,o){return void 0===t&&(t=c),void 0===o&&(o={}),this.httpDelete("/"+t+"/"+e,o)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiTerms=u},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getList=function(t){return void 0===t&&(t={}),this.httpGet("/types",t)},e.prototype.get=function(t,e){return void 0===e&&(e={}),this.httpGet("/types/"+t,e)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiTypes=c},function(t,e,o){"use strict";var n=this&&this.__extends||function(t,e){function o(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)},r=this&&this.__decorate||function(t,e,o,n){var r,i=arguments.length,p=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(t,e,o,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(p=(i<3?r(p):i>3?r(e,o,p):r(e,o))||p);return i>3&&p&&Object.defineProperty(e,o,p),p},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=o(1),s=o(2),c=function(t){function e(){t.apply(this,arguments)}return n(e,t),e.prototype.getList=function(t){return void 0===t&&(t={}),this.httpGet("/users",t)},e.prototype.me=function(t){return void 0===t&&(t={}),this.httpGet("/users/me",t)},e.prototype.get=function(t,e){return void 0===e&&(e={}),this.httpGet("/users/"+t,e)},e.prototype.create=function(t,e){return void 0===t&&(t={}),void 0===e&&(e={}),this.httpPost("/users",t,e)},e.prototype.update=function(t,e,o){return void 0===e&&(e={}),void 0===o&&(o={}),this.httpPost("/users/"+t,e,o)},e.prototype["delete"]=function(t,e){return void 0===e&&(e={}),this.httpDelete("/users/"+t,e)},e=r([p.Injectable(),i("design:paramtypes",[])],e)}(s.WpApiParent);e.WpApiUsers=c},function(t,o){t.exports=e},function(t,e,o){"use strict";var n=o(1);e.WpApiApp=new n.OpaqueToken("WpApiApp"),e.WpApiConfig=new n.OpaqueToken("WpApiConfig")},function(t,e){"use strict";function o(t){return"/"===t.substring(t.length-1,t.length)?t.substring(0,t.length-1):t}e.stripTrailingSlash=o},function(t,e){t.exports=o}])});
\ No newline at end of file

From 77487e59069c4db9a0465b9c6ed6a47c5c02f341 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sat, 30 Jul 2016 12:33:41 +0200
Subject: [PATCH 08/27] export correct d.ts files

---
 README.md                           | 20 ++++++++++++++------
 demo/app.ts                         |  2 +-
 demo/index.ts                       |  2 +-
 package.json                        | 22 +++++++++++++---------
 src/Comments.ts                     | 18 ++++++++++++++++--
 src/Custom.ts                       | 18 ++++++++++++++++--
 src/Media.ts                        | 18 ++++++++++++++++--
 src/Pages.ts                        | 22 ++++++++++++++++++++--
 src/Parent.ts                       | 17 ++++++++++++++++-
 src/Posts.ts                        | 26 ++++++++++++++++++++++++--
 src/Statuses.ts                     | 15 +++++++++++++--
 src/Taxonomies.ts                   | 15 +++++++++++++--
 src/Terms.ts                        | 18 ++++++++++++++++--
 src/Types.ts                        | 15 +++++++++++++--
 src/Users.ts                        | 19 +++++++++++++++++--
 src/interfaces.ts                   |  6 +-----
 src/{index.ts => wp-api-angular.ts} |  5 ++++-
 tsconfig.demo.json                  | 22 ++++++++++++++++++++++
 tsconfig.json                       | 21 +++++++++++++--------
 webpack.config.dist.js              | 11 +++++++++--
 webpack.config.js                   |  6 +++---
 21 files changed, 261 insertions(+), 57 deletions(-)
 rename src/{index.ts => wp-api-angular.ts} (95%)
 create mode 100644 tsconfig.demo.json

diff --git a/README.md b/README.md
index c5d551c..1730414 100644
--- a/README.md
+++ b/README.md
@@ -1,20 +1,28 @@
-wp-api-angularjs
+wp-api-angular
 ================
 
-[![Join the chat at https://gitter.im/shprink/wp-api-angularjs](https://badges.gitter.im/shprink/wp-api-angularjs.svg)](https://gitter.im/shprink/wp-api-angularjs?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+[![Join the chat at https://gitter.im/shprink/wp-api-angular](https://badges.gitter.im/shprink/wp-api-angular.svg)](https://gitter.im/shprink/wp-api-angular?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
 
-Angular2 services to consume [WP-API v2](http://v2.wp-api.org/) (< 2.5kb gziped)
+Angular2 services to consume [WP-API v2](http://v2.wp-api.org/)
 
 [Live Demo](https://plnkr.co/edit/hqE4bvbM6HXql5Insjx8?p=preview)
 
-If you want to use AngularJS v1, here is the latest version: [v2.0.0-rc3](https://github.com/shprink/wp-api-angularjs/tree/v2.0.0-rc3)
+If you want to use AngularJS v1, here is the latest version: [v2.0.0-rc3](https://github.com/shprink/wp-api-angular/tree/v2.0.0-rc3)
 
 ## Installation
 
 ```shell
-npm install wp-api-angularjs
+npm install wp-api-angular
 ```
 
+### TypeScript
+
+Nothing special if you use TS
+
+### UMD
+
+UMD files are available `wp-api-angular.umd.js` and `wp-api-angular.umd.min.js`, the [Live Demo](https://plnkr.co/edit/hqE4bvbM6HXql5Insjx8?p=preview) uses them with systemJS
+
 ## Bootstrap
 
 
@@ -22,7 +30,7 @@ npm install wp-api-angularjs
 import {
   WPAPI_PROVIDERS,
   defaultWpApi
-} from 'wp-api-angularjs';
+} from 'wp-api-angular';
 
 import {App} from './app';
 
diff --git a/demo/app.ts b/demo/app.ts
index dc18042..d45fa19 100644
--- a/demo/app.ts
+++ b/demo/app.ts
@@ -10,7 +10,7 @@ import {
   WpApiStatuses,
   WpApiTerms,
   WpApiCustom
-} from 'wp-api-angularjs';
+} from '../dist/wp-api-angular';
 let config = require('../config.json');
 
 @Component({
diff --git a/demo/index.ts b/demo/index.ts
index 7e2f3a1..289c525 100644
--- a/demo/index.ts
+++ b/demo/index.ts
@@ -4,7 +4,7 @@ import 'rxjs/add/operator/toPromise';
 import {
   WPAPI_PROVIDERS,
   defaultWpApi
-} from 'wp-api-angularjs'
+} from '../dist/wp-api-angular'
 let config = require('../config.json');
 
 import {App} from './app';
diff --git a/package.json b/package.json
index a076982..507bec9 100644
--- a/package.json
+++ b/package.json
@@ -1,20 +1,24 @@
 {
-  "name": "wp-api-angularjs",
-  "version": "3.0.0-alpha2",
+  "name": "wp-api-angular",
+  "version": "3.0.0-alpha7",
   "description": "WordPress WP-API v2 client for Angular2",
-  "main": "dist/wp-api-angularjs.js",
+  "main": "wp-api-angular.js",
+  "typings": "wp-api-angular.d.ts",
   "scripts": {
     "start": "webpack-dev-server --port 8080 --json --progress --config webpack.config.js",
-    "build": "npm run dumpdev && npm run dumpprod",
+    "prebuild": "rm -rf dist",
+    "build": "tsc && npm run dumpdev && npm run dumpprod",
+    "postbuild": "cp package.json README.md dist/",
+    "watch": "rm -rf dist && tsc -w",
+    "publish": "npm run build && npm publish dist",
     "dumpdev": "ENV=dev webpack --progress --colors --config webpack.config.dist.js -d",
     "dumpprod": "ENV=prod webpack --progress --colors --config webpack.config.dist.js -p",
-    "watch": "ENV=dev webpack --watch --progress --colors --config webpack.config.dist.js -d",
     "postinstall": "typings install",
     "typings": "typings"
   },
   "repository": {
     "type": "git",
-    "url": "https://github.com/shprink/wp-api-angularjs"
+    "url": "https://github.com/shprink/wp-api-angular"
   },
   "keywords": [
     "wp-api",
@@ -27,9 +31,9 @@
   "author": "shprink <contact@julienrenaux.fr>",
   "license": "MIT",
   "bugs": {
-    "url": "https://github.com/shprink/wp-api-angularjs/issues"
+    "url": "https://github.com/shprink/wp-api-angular/issues"
   },
-  "homepage": "https://github.com/shprink/wp-api-angularjs",
+  "homepage": "https://github.com/shprink/wp-api-angular",
   "devDependencies": {
     "@angular/common": "^2.0.0-rc.4",
     "@angular/compiler": "^2.0.0-rc.4",
@@ -45,7 +49,7 @@
     "path": "^0.4.9",
     "reflect-metadata": "^0.1.3",
     "rxjs": "5.0.0-beta.6",
-    "ts-loader": "^0.8.2",
+    "ts-loader": "0.8.1",
     "typescript": "~1.8.10",
     "util": "^0.10.3",
     "webpack": "~1.13.1",
diff --git a/src/Comments.ts b/src/Comments.ts
index 6fee913..6b2beab 100644
--- a/src/Comments.ts
+++ b/src/Comments.ts
@@ -1,6 +1,20 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiComments } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiComments {
+  getList(options?: RequestOptionsArgs): Observable<Response>;
+  get(commentId: number, options?: RequestOptionsArgs): Observable<Response>;
+  create(body: any, options?: RequestOptionsArgs): Observable<Response>;
+  update(commentId: number, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  delete(commentId: number, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiComments extends WpApiParent implements IWpApiComments {
diff --git a/src/Custom.ts b/src/Custom.ts
index 95b1477..84cbc06 100644
--- a/src/Custom.ts
+++ b/src/Custom.ts
@@ -1,6 +1,20 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiCustom } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiCustom {
+  getList(options?: RequestOptionsArgs): Observable<Response>;
+  get(customId: number, options?: RequestOptionsArgs): Observable<Response>;
+  create(body: any, options?: RequestOptionsArgs): Observable<Response>;
+  update(customId: number, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  delete(customId: number, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiCustom extends WpApiParent {
diff --git a/src/Media.ts b/src/Media.ts
index d62286a..6a134b7 100644
--- a/src/Media.ts
+++ b/src/Media.ts
@@ -1,6 +1,20 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiMedia } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiMedia {
+  getList(options?: RequestOptionsArgs): Observable<Response>;
+  get(mediaId: number, options?: RequestOptionsArgs): Observable<Response>;
+  create(body: any, options?: RequestOptionsArgs): Observable<Response>;
+  update(mediaId: number, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  delete(mediaId: number, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiMedia extends WpApiParent implements IWpApiMedia {
diff --git a/src/Pages.ts b/src/Pages.ts
index fea3b1e..dc9bc46 100644
--- a/src/Pages.ts
+++ b/src/Pages.ts
@@ -1,6 +1,24 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiPages } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiPages {
+  getList(options?: RequestOptionsArgs): Observable<Response>;
+  get(pageId: number, options?: RequestOptionsArgs): Observable<Response>;
+  create(body: any, options?: RequestOptionsArgs): Observable<Response>;
+  update(pageId: number, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  delete(pageId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getMetaList(pageId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getMeta(pageId: number, metaId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getRevisionList(pageId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getRevision(pageId: number, revisionId: number, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiPages extends WpApiParent implements IWpApiPages {
diff --git a/src/Parent.ts b/src/Parent.ts
index 91f7a4b..343b99d 100644
--- a/src/Parent.ts
+++ b/src/Parent.ts
@@ -1,7 +1,22 @@
 import { Injectable } from '@angular/core';
 import { Http } from '@angular/http';
 
-import { WpApiAppConfig, IParent } from './interfaces';
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiAppConfig } from './wp-api-angular';
+
+export interface IParent {
+  httpGet(url: string, options?: RequestOptionsArgs): Observable<Response>;
+  httpHead(url: string, options?: RequestOptionsArgs): Observable<Response>;
+  httpDelete(url: string, options?: RequestOptionsArgs): Observable<Response>;
+  httpPost(url: string, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  httpPut(url: string, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  httpPatch(url: string, body: any, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiParent implements IParent {
diff --git a/src/Posts.ts b/src/Posts.ts
index 48dc15f..5a45032 100644
--- a/src/Posts.ts
+++ b/src/Posts.ts
@@ -1,6 +1,28 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiPosts } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiPosts {
+  getList(options?: RequestOptionsArgs): Observable<Response>;
+  get(postId: number, options?: RequestOptionsArgs): Observable<Response>;
+  create(body: any, options?: RequestOptionsArgs): Observable<Response>;
+  update(postId: number, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  delete(postId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getMetaList(postId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getMeta(postId: number, metaId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getRevisionList(postId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getRevision(postId: number, revisionId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getCategoryList(postId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getCategory(postId: number, categoryId, options?: RequestOptionsArgs): Observable<Response>;
+  getTagList(postId: number, options?: RequestOptionsArgs): Observable<Response>;
+  getTag(postId: number, tagId, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiPosts extends WpApiParent implements IWpApiPosts {
diff --git a/src/Statuses.ts b/src/Statuses.ts
index 059f0e6..4e86eae 100644
--- a/src/Statuses.ts
+++ b/src/Statuses.ts
@@ -1,6 +1,17 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiStatuses } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiStatuses {
+  getList(options?: RequestOptionsArgs): Observable<Response>;
+  get(statusesName: string, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiStatuses extends WpApiParent implements IWpApiStatuses {
diff --git a/src/Taxonomies.ts b/src/Taxonomies.ts
index 3603076..b2766d6 100644
--- a/src/Taxonomies.ts
+++ b/src/Taxonomies.ts
@@ -1,6 +1,17 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiTaxonomies } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiTaxonomies {
+  getList(options?: RequestOptionsArgs): Observable<Response>;
+  get(taxonomiesType: string, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiTaxonomies extends WpApiParent implements IWpApiTaxonomies {
diff --git a/src/Terms.ts b/src/Terms.ts
index ea82d8a..8445d37 100644
--- a/src/Terms.ts
+++ b/src/Terms.ts
@@ -1,6 +1,20 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiTerms } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiTerms {
+  getList(taxonomiesType: string, options?: RequestOptionsArgs): Observable<Response>;
+  get(taxonomiesType: string, termId: number, options?: RequestOptionsArgs): Observable<Response>;
+  create(taxonomiesType: string, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  update(taxonomiesType: string, termId: number, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  delete(taxonomiesType: string, termId: number, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 const defaultTaxoType = 'categories';
 
diff --git a/src/Types.ts b/src/Types.ts
index 68f6481..ad5da17 100644
--- a/src/Types.ts
+++ b/src/Types.ts
@@ -1,6 +1,17 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiTypes } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiTypes {
+  getList(options?: RequestOptionsArgs): Observable<Response>;
+  get(postType: string, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiTypes extends WpApiParent implements IWpApiTypes {
diff --git a/src/Users.ts b/src/Users.ts
index 807c3b5..492f503 100644
--- a/src/Users.ts
+++ b/src/Users.ts
@@ -1,6 +1,21 @@
 import { Injectable } from '@angular/core';
-import { WpApiParent } from './parent.ts';
-import { IWpApiUsers } from './interfaces';
+
+// Need to import interfaces dependencies
+// Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
+import { Observable } from 'rxjs/Observable.d.ts';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
+import { Response } from '@angular/http/src/static_response.d.ts';
+
+import { WpApiParent } from './Parent';
+
+export interface IWpApiUsers {
+  getList(options?: RequestOptionsArgs): Observable<Response>;
+  me(options?: RequestOptionsArgs): Observable<Response>;
+  get(userId: number, options?: RequestOptionsArgs): Observable<Response>;
+  create(body: any, options?: RequestOptionsArgs): Observable<Response>;
+  update(userId: number, body: any, options?: RequestOptionsArgs): Observable<Response>;
+  delete(userId: number, options?: RequestOptionsArgs): Observable<Response>;
+}
 
 @Injectable()
 export class WpApiUsers extends WpApiParent implements IWpApiUsers {
diff --git a/src/interfaces.ts b/src/interfaces.ts
index 66f5b6d..e9475d7 100644
--- a/src/interfaces.ts
+++ b/src/interfaces.ts
@@ -1,11 +1,7 @@
-import { Observable } from 'rxjs/Observable';
+import { Observable } from 'rxjs/Observable.d.ts';
 import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
 import { Response } from '@angular/http/src/static_response.d.ts';
 
-export interface WpApiAppConfig {
-  baseUrl: string;
-  namespace?: string;
-}
 
 export interface IParent {
   httpGet(url: string, options?: RequestOptionsArgs): Observable<Response>;
diff --git a/src/index.ts b/src/wp-api-angular.ts
similarity index 95%
rename from src/index.ts
rename to src/wp-api-angular.ts
index e0f9e05..2d94c53 100644
--- a/src/index.ts
+++ b/src/wp-api-angular.ts
@@ -6,7 +6,6 @@ import 'rxjs';
 import { Http, HTTP_PROVIDERS } from '@angular/http';
 
 import { stripTrailingSlash } from './utils';
-import { WpApiAppConfig } from './interfaces';
 import { WpApiApp, WpApiConfig } from './tokens';
 
 import { WpApiPosts } from './Posts';
@@ -31,6 +30,10 @@ export * from './Statuses';
 export * from './Terms';
 export * from './Custom';
 
+export interface WpApiAppConfig {
+  baseUrl: string;
+  namespace?: string;
+}
 
 export const defaultWpApi = (config: WpApiAppConfig): Provider => {
   // remove a trailing slash
diff --git a/tsconfig.demo.json b/tsconfig.demo.json
new file mode 100644
index 0000000..31607ee
--- /dev/null
+++ b/tsconfig.demo.json
@@ -0,0 +1,22 @@
+{
+  "compilerOptions": {
+    "target": "es5",
+    "module": "commonjs",
+    "moduleResolution": "node",
+    "sourceMap": true,
+    "emitDecoratorMetadata": true,
+    "experimentalDecorators": true,
+    "removeComments": false,
+    "noImplicitAny": false
+  },
+  "files": [
+    "demo/index.ts",
+    "typings/overwrite.d.ts",
+    "typings/index.d.ts",
+    "node_modules/rxjs/add/operator/toPromise.d.ts"
+  ],
+  "compileOnSave": false,
+  "atom": {
+    "rewriteTsconfig": false
+  }
+}
diff --git a/tsconfig.json b/tsconfig.json
index 31607ee..e2a0c8b 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -2,18 +2,23 @@
   "compilerOptions": {
     "target": "es5",
     "module": "commonjs",
-    "moduleResolution": "node",
-    "sourceMap": true,
     "emitDecoratorMetadata": true,
     "experimentalDecorators": true,
-    "removeComments": false,
-    "noImplicitAny": false
+    "noImplicitAny": false,
+    "rootDir": "src",
+    "outDir": "dist",
+    "sourceMap": true,
+    "inlineSources": true,
+    "declaration": true,
+    "removeComments": true
   },
   "files": [
-    "demo/index.ts",
-    "typings/overwrite.d.ts",
-    "typings/index.d.ts",
-    "node_modules/rxjs/add/operator/toPromise.d.ts"
+    "./src/wp-api-angular.ts",
+    "./typings/overwrite.d.ts",
+    "./typings/index.d.ts"
+  ],
+  "exclude": [
+    "node_modules"
   ],
   "compileOnSave": false,
   "atom": {
diff --git a/webpack.config.dist.js b/webpack.config.dist.js
index 0e32e90..4b9c615 100644
--- a/webpack.config.dist.js
+++ b/webpack.config.dist.js
@@ -8,7 +8,7 @@ let path = require('path'),
   HtmlWebpackPlugin = require('html-webpack-plugin');
 
 const isProd = process.env.ENV === 'prod';
-const filename = isProd ? 'wp-api-angularjs.min.js' : 'wp-api-angularjs.js'
+const filename = isProd ? 'wp-api-angular.umd.min.js' : 'wp-api-angular.umd.js'
 
 copyright = copyright.replace('{pkg.name}', pkg.name)
   .replace('{pkg.description}', pkg.description)
@@ -30,7 +30,7 @@ if (isProd) {
 }
 
 module.exports = {
-  entry: path.join(srcPath, 'index.ts'),
+  entry: path.join(srcPath, 'wp-api-angular.ts'),
   output: {
     path: distPath,
     libraryTarget: "umd",
@@ -43,6 +43,7 @@ module.exports = {
     {
       'rxjs': 'rxjs',
       'rxjs/Observable': 'rxjs/Observable',
+      'rxjs/Observable.d.ts': 'rxjs/Observable.d.ts',
       '@angular/core': '@angular/core',
       '@angular/http': '@angular/http'
     }
@@ -54,5 +55,11 @@ module.exports = {
       loader: 'ts'
     }]
   },
+  ts: {
+    compilerOptions: {
+      outDir: '.',
+      declaration: false
+    }
+  },
   plugins: plugins
 }
diff --git a/webpack.config.js b/webpack.config.js
index 217a6df..b230e43 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -39,11 +39,11 @@ module.exports = {
   },
   resolve: {
     root: path.resolve(__dirname),
-    alias: {
-      [pkg.name]: pkg.main
-    },
     extensions: ['', '.ts', '.js', '.json']
   },
+  ts: {
+    configFileName: './tsconfig.demo.json'
+  },
   plugins: [
     new webpack.optimize.OccurrenceOrderPlugin(),
     new HtmlWebpackPlugin({

From be1961c63889e652a485ad378e4ee8f8e1ccf0e8 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sat, 30 Jul 2016 12:34:49 +0200
Subject: [PATCH 09/27] bump

---
 CHANGELOG.md | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0ea6dd6..38ee2be 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+<a name="3.0.0-alpha7"></a>
+### 3.0.0-alpha7 (2016-07-30)
+
+Making sure it is usable via TypeScript as well (export d.ts files).
+
 <a name="3.0.0-alpha2"></a>
 ### 3.0.0-alpha2 (2016-07-24)
 
@@ -6,4 +11,4 @@ Adding peer dependencies
 <a name="3.0.0-alpha1"></a>
 ### 3.0.0-alpha1 (2016-07-23)
 
-First version for ng2. 
\ No newline at end of file
+First version for ng2. 

From bb8cf8372054fd1d28be7e79ce66b3eb40327018 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Tue, 2 Aug 2016 17:03:23 +0200
Subject: [PATCH 10/27] update docs

---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 1730414..32d6f2b 100644
--- a/README.md
+++ b/README.md
@@ -7,7 +7,7 @@ Angular2 services to consume [WP-API v2](http://v2.wp-api.org/)
 
 [Live Demo](https://plnkr.co/edit/hqE4bvbM6HXql5Insjx8?p=preview)
 
-If you want to use AngularJS v1, here is the latest version: [v2.0.0-rc3](https://github.com/shprink/wp-api-angular/tree/v2.0.0-rc3)
+If you want to use AngularJS v1, here is the latest version: [v2.0.0-rc3](https://www.npmjs.com/package/wp-api-angularjs). `npm i wp-api-angularjs@v2.0.0-rc3`
 
 ## Installation
 

From 319fbe8ff2d0780c94a546caec81928ca6f8da58 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sun, 30 Oct 2016 13:45:56 +0100
Subject: [PATCH 11/27] upgrade to ng2 with ngModules

---
 README.md             |   32 +-
 demo/app.ts           |    6 +-
 demo/index.ts         |   19 +-
 demo/module.ts        |   23 +
 package.json          |   21 +-
 src/wp-api-angular.ts |   55 +-
 webpack.config.js     |    2 +-
 yarn.lock             | 2378 +++++++++++++++++++++++++++++++++++++++++
 8 files changed, 2465 insertions(+), 71 deletions(-)
 create mode 100644 demo/module.ts
 create mode 100644 yarn.lock

diff --git a/README.md b/README.md
index 32d6f2b..ce33737 100644
--- a/README.md
+++ b/README.md
@@ -27,21 +27,23 @@ UMD files are available `wp-api-angular.umd.js` and `wp-api-angular.umd.min.js`,
 
 
 ```js
-import {
-  WPAPI_PROVIDERS,
-  defaultWpApi
-} from 'wp-api-angular';
-
-import {App} from './app';
-
-bootstrap(App, [
-  WPAPI_PROVIDERS,
-  defaultWpApi({
-    baseUrl: "http://YOUR_DOMAIN/wp-json/",
-    namespace: '/wp/v2' // (optional, default: '/wp/v2')
-  })
-]);
-
+import { NgModule } from '@angular/core';
+import { BrowserModule } from '@angular/platform-browser';
+import { WpApiModule } from 'wp-api-angular'
+import { App } from './app';
+
+@NgModule({
+  imports: [
+    BrowserModule,
+    WpApiModule.initializeApp({
+      baseUrl: "http://YOUR_DOMAIN/wp-json/",
+      namespace: '/wp/v2' // (optional, default: '/wp/v2')
+    })
+  ],
+  declarations: [App],
+  bootstrap: [App]
+})
+export class AppModule { }
 ```
 
 ## API
diff --git a/demo/app.ts b/demo/app.ts
index d45fa19..fa84e53 100644
--- a/demo/app.ts
+++ b/demo/app.ts
@@ -84,9 +84,9 @@ export class App {
       service[method].apply(service, parameters).toPromise()
         .then(response => response.json())
         .then(body => {
-          console.groupCollapsed(serviceName, method, JSON.stringify(parameters));
-          console.log(body);
-          console.groupEnd()
+          // console.groupCollapsed(serviceName, method, JSON.stringify(parameters));
+          // console.log(body);
+          // console.groupEnd()
           this.requests.push({ serviceName: serviceName.slice(5), method, success: true })
         })
         .catch(error => {
diff --git a/demo/index.ts b/demo/index.ts
index 289c525..b8628b5 100644
--- a/demo/index.ts
+++ b/demo/index.ts
@@ -1,17 +1,4 @@
-import {provide} from '@angular/core';
-import { bootstrap } from '@angular/platform-browser-dynamic';
-import 'rxjs/add/operator/toPromise';
-import {
-  WPAPI_PROVIDERS,
-  defaultWpApi
-} from '../dist/wp-api-angular'
-let config = require('../config.json');
+import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
+import { AppModule } from './module';
 
-import {App} from './app';
-
-bootstrap(App, [
-  WPAPI_PROVIDERS,
-  defaultWpApi({
-    baseUrl: config.baseUrl
-  })
-]);
+platformBrowserDynamic().bootstrapModule(AppModule);
diff --git a/demo/module.ts b/demo/module.ts
new file mode 100644
index 0000000..6799aec
--- /dev/null
+++ b/demo/module.ts
@@ -0,0 +1,23 @@
+import { NgModule } from '@angular/core';
+import { BrowserModule } from '@angular/platform-browser';
+import 'rxjs/add/operator/toPromise';
+import {
+  WpApiModule
+} from '../dist/wp-api-angular'
+import { App } from './app';
+
+let config = require('../config.json');
+
+console.info('config', config);
+
+@NgModule({
+  imports: [
+    BrowserModule,
+    WpApiModule.initializeApp({
+      baseUrl: config.baseUrl
+    })
+  ],
+  declarations: [App],
+  bootstrap: [App]
+})
+export class AppModule { }
diff --git a/package.json b/package.json
index 507bec9..f2abfb1 100644
--- a/package.json
+++ b/package.json
@@ -34,13 +34,16 @@
     "url": "https://github.com/shprink/wp-api-angular/issues"
   },
   "homepage": "https://github.com/shprink/wp-api-angular",
+  "dependencies": {
+    "@angular/common": "^2.0.0",
+    "@angular/compiler": "^2.0.0",
+    "@angular/core": "^2.0.0",
+    "@angular/http": "^2.1.2",
+    "@angular/platform-browser": "^2.0.0",
+    "@angular/platform-browser-dynamic": "^2.0.0",
+    "rxjs": "5.0.0-beta.12"
+  },
   "devDependencies": {
-    "@angular/common": "^2.0.0-rc.4",
-    "@angular/compiler": "^2.0.0-rc.4",
-    "@angular/core": "^2.0.0-rc.4",
-    "@angular/http": "^2.0.0-rc.4",
-    "@angular/platform-browser": "^2.0.0-rc.4",
-    "@angular/platform-browser-dynamic": "^2.0.0-rc.4",
     "babel-core": "^6.10.4",
     "babel-loader": "^6.2.4",
     "core-js": "^2.4.0",
@@ -48,17 +51,11 @@
     "json-loader": "^0.5.2",
     "path": "^0.4.9",
     "reflect-metadata": "^0.1.3",
-    "rxjs": "5.0.0-beta.6",
     "ts-loader": "0.8.1",
     "typescript": "~1.8.10",
     "util": "^0.10.3",
     "webpack": "~1.13.1",
     "webpack-dev-server": "~1.14.1",
     "zone.js": "^0.6.12"
-  },
-  "peerDependencies": {
-    "@angular/core": "2.0.0-rc.2 || 2.0.0-rc.3 || 2.0.0-rc.4 || 2.0.0-rc.5 || 2.0.0-rc.6 || 2.0.0-rc.7 || 2.0.0-rc.8 || 2.0.0-rc.9",
-    "@angular/http": "2.0.0-rc.2 || 2.0.0-rc.3 || 2.0.0-rc.4 || 2.0.0-rc.5 || 2.0.0-rc.6 || 2.0.0-rc.7 || 2.0.0-rc.8 || 2.0.0-rc.9",
-    "rxjs": "5.0.0-beta.6"
   }
 }
diff --git a/src/wp-api-angular.ts b/src/wp-api-angular.ts
index 2d94c53..684a7a7 100644
--- a/src/wp-api-angular.ts
+++ b/src/wp-api-angular.ts
@@ -1,9 +1,10 @@
 import {
-  provide,
-  Provider
+  Provider,
+  NgModule,
+  ModuleWithProviders
 } from '@angular/core';
 import 'rxjs';
-import { Http, HTTP_PROVIDERS } from '@angular/http';
+import { Http, HttpModule } from '@angular/http';
 
 import { stripTrailingSlash } from './utils';
 import { WpApiApp, WpApiConfig } from './tokens';
@@ -35,28 +36,34 @@ export interface WpApiAppConfig {
   namespace?: string;
 }
 
-export const defaultWpApi = (config: WpApiAppConfig): Provider => {
-  // remove a trailing slash
-  config.baseUrl = stripTrailingSlash(config.baseUrl);
-  config.namespace = config.namespace || '/wp/v2';
-  return provide(WpApiConfig, {
-    useValue: config
-  });
-};
+@NgModule({
+  imports: [
+    HttpModule
+  ]
+})
+export class WpApiModule {
+  static initializeApp(config: WpApiAppConfig): ModuleWithProviders {
+    config.baseUrl = stripTrailingSlash(config.baseUrl);
+    config.namespace = config.namespace || '/wp/v2';
 
-export const WPAPI_PROVIDERS: any[] = [
-  HTTP_PROVIDERS,
-  createProvider(WpApiPosts),
-  createProvider(WpApiPages),
-  createProvider(WpApiComments),
-  createProvider(WpApiTypes),
-  createProvider(WpApiMedia),
-  createProvider(WpApiUsers),
-  createProvider(WpApiTaxonomies),
-  createProvider(WpApiStatuses),
-  createProvider(WpApiTerms),
-  createProvider(WpApiCustom)
-];
+    return {
+      ngModule: WpApiModule,
+      providers: [
+        { provide: WpApiConfig, useValue: config },
+        createProvider(WpApiPosts),
+        createProvider(WpApiPages),
+        createProvider(WpApiComments),
+        createProvider(WpApiTypes),
+        createProvider(WpApiMedia),
+        createProvider(WpApiUsers),
+        createProvider(WpApiTaxonomies),
+        createProvider(WpApiStatuses),
+        createProvider(WpApiTerms),
+        createProvider(WpApiCustom)
+      ]
+    };
+  }
+}
 
 function createProvider(service) {
   return {
diff --git a/webpack.config.js b/webpack.config.js
index b230e43..93c474b 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -10,7 +10,7 @@ module.exports = {
   entry: {
     aPolyfills: [
       'core-js',
-      'reflect-metadata',
+      'reflect-metadata/Reflect.js',
       'zone.js'
     ],
     bVendors: [
diff --git a/yarn.lock b/yarn.lock
new file mode 100644
index 0000000..2ff6967
--- /dev/null
+++ b/yarn.lock
@@ -0,0 +1,2378 @@
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
+# yarn lockfile v1
+"@angular/common@^2.0.0":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@angular/common/-/common-2.1.2.tgz#5c5b37c21d6e573def1670f43962c262bc9be82e"
+
+"@angular/compiler@^2.0.0":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-2.1.2.tgz#bd2a6c558de5350bdd43aa8e8de757943ac01d2a"
+
+"@angular/core@^2.0.0":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@angular/core/-/core-2.1.2.tgz#ce39521643f3d97bc5923d5a7aa76604e973dac8"
+
+"@angular/http":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@angular/http/-/http-2.1.2.tgz#50aa96c3b68a44b98e3f837886c96e5930eb543a"
+
+"@angular/platform-browser-dynamic@^2.0.0":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-2.1.2.tgz#3d51b494cfe0a29354c8c1f28369883679982af4"
+
+"@angular/platform-browser@^2.0.0":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-2.1.2.tgz#1f07c3a5668ac2381a7324f9001521deede159bc"
+
+abbrev@1:
+  version "1.0.9"
+  resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135"
+
+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@^3.0.0:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a"
+
+align-text@^0.1.1, align-text@^0.1.3:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
+  dependencies:
+    kind-of "^3.0.2"
+    longest "^1.0.1"
+    repeat-string "^1.5.2"
+
+amdefine@>=0.0.4:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.0.tgz#fd17474700cb5cc9c2b709f0be9d23ce3c198c33"
+
+ansi-regex@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.0.0.tgz#c5061b6e0ef8a81775e50f5d66151bf6bf371107"
+
+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.0.4"
+  resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.0.4.tgz#2713680775e7614c8ba186c065d4e2e52d1072c0"
+
+are-we-there-yet@~1.1.2:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz#80e470e95a084794fe1899262c5667c6e88de1b3"
+  dependencies:
+    delegates "^1.0.0"
+    readable-stream "^2.0.0 || ^1.1.13"
+
+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.0.1"
+  resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.1.tgz#e5ffe54d45e19f32f216e91eb99c8ce892bb604b"
+
+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@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234"
+
+assert-plus@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
+
+assert@^1.1.1:
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91"
+  dependencies:
+    util "0.10.3"
+
+async-each@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
+
+async@^0.9.0:
+  version "0.9.2"
+  resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d"
+
+async@^1.3.0:
+  version "1.5.2"
+  resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
+
+async@~0.2.6:
+  version "0.2.10"
+  resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1"
+
+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.5.0"
+  resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.5.0.tgz#0a29ffb79c31c9e712eeb087e8e7a64b4a56d755"
+
+babel-code-frame@^6.16.0:
+  version "6.16.0"
+  resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.16.0.tgz#f90e60da0862909d3ce098733b5d3987c97cb8de"
+  dependencies:
+    chalk "^1.1.0"
+    esutils "^2.0.2"
+    js-tokens "^2.0.0"
+
+babel-core@^6.10.4, babel-core@^6.18.0:
+  version "6.18.0"
+  resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.18.0.tgz#bb5ce9bc0a956e6e94e2f12d597abb3b0b330deb"
+  dependencies:
+    babel-code-frame "^6.16.0"
+    babel-generator "^6.18.0"
+    babel-helpers "^6.16.0"
+    babel-messages "^6.8.0"
+    babel-register "^6.18.0"
+    babel-runtime "^6.9.1"
+    babel-template "^6.16.0"
+    babel-traverse "^6.18.0"
+    babel-types "^6.18.0"
+    babylon "^6.11.0"
+    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.18.0:
+  version "6.18.0"
+  resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.18.0.tgz#e4f104cb3063996d9850556a45aae4a022060a07"
+  dependencies:
+    babel-messages "^6.8.0"
+    babel-runtime "^6.9.0"
+    babel-types "^6.18.0"
+    detect-indent "^4.0.0"
+    jsesc "^1.3.0"
+    lodash "^4.2.0"
+    source-map "^0.5.0"
+
+babel-helpers@^6.16.0:
+  version "6.16.0"
+  resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.16.0.tgz#1095ec10d99279460553e67eb3eee9973d3867e3"
+  dependencies:
+    babel-runtime "^6.0.0"
+    babel-template "^6.16.0"
+
+babel-loader@^6.2.4:
+  version "6.2.7"
+  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.2.7.tgz#16fdbf64328030dc5a606827d389c8b92a2a8032"
+  dependencies:
+    find-cache-dir "^0.1.1"
+    loader-utils "^0.2.11"
+    mkdirp "^0.5.1"
+    object-assign "^4.0.1"
+
+babel-messages@^6.8.0:
+  version "6.8.0"
+  resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.8.0.tgz#bf504736ca967e6d65ef0adb5a2a5f947c8e0eb9"
+  dependencies:
+    babel-runtime "^6.0.0"
+
+babel-register@^6.18.0:
+  version "6.18.0"
+  resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.18.0.tgz#892e2e03865078dd90ad2c715111ec4449b32a68"
+  dependencies:
+    babel-core "^6.18.0"
+    babel-runtime "^6.11.6"
+    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.0.0, babel-runtime@^6.11.6, babel-runtime@^6.9.0, babel-runtime@^6.9.1:
+  version "6.18.0"
+  resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.18.0.tgz#0f4177ffd98492ef13b9f823e9994a02584c9078"
+  dependencies:
+    core-js "^2.4.0"
+    regenerator-runtime "^0.9.5"
+
+babel-template@^6.16.0:
+  version "6.16.0"
+  resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.16.0.tgz#e149dd1a9f03a35f817ddbc4d0481988e7ebc8ca"
+  dependencies:
+    babel-runtime "^6.9.0"
+    babel-traverse "^6.16.0"
+    babel-types "^6.16.0"
+    babylon "^6.11.0"
+    lodash "^4.2.0"
+
+babel-traverse@^6.16.0, babel-traverse@^6.18.0:
+  version "6.18.0"
+  resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.18.0.tgz#5aeaa980baed2a07c8c47329cd90c3b90c80f05e"
+  dependencies:
+    babel-code-frame "^6.16.0"
+    babel-messages "^6.8.0"
+    babel-runtime "^6.9.0"
+    babel-types "^6.18.0"
+    babylon "^6.11.0"
+    debug "^2.2.0"
+    globals "^9.0.0"
+    invariant "^2.2.0"
+    lodash "^4.2.0"
+
+babel-types@^6.16.0, babel-types@^6.18.0:
+  version "6.18.0"
+  resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.18.0.tgz#1f7d5a73474c59eb9151b2417bbff4e4fce7c3f8"
+  dependencies:
+    babel-runtime "^6.9.1"
+    esutils "^2.0.2"
+    lodash "^4.2.0"
+    to-fast-properties "^1.0.1"
+
+babylon@^6.11.0:
+  version "6.13.1"
+  resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.13.1.tgz#adca350e088f0467647157652bafead6ddb8dfdb"
+
+balanced-match@^0.4.1:
+  version "0.4.2"
+  resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838"
+
+base64-js@^1.0.2:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1"
+
+Base64@~0.2.0:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/Base64/-/Base64-0.2.1.tgz#ba3a4230708e186705065e66babdd4c35cf60028"
+
+batch@0.5.3:
+  version "0.5.3"
+  resolved "https://registry.yarnpkg.com/batch/-/batch-0.5.3.tgz#3f3414f380321743bfc1042f9a83ff1d5824d464"
+
+bcrypt-pbkdf@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz#3ca76b85241c7170bf7d9703e7b9aa74630040d4"
+  dependencies:
+    tweetnacl "^0.14.3"
+
+big.js@^3.1.3:
+  version "3.1.3"
+  resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.1.3.tgz#4cada2193652eb3ca9ec8e55c9015669c9806978"
+
+binary-extensions@^1.0.0:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.7.0.tgz#6c1610db163abfb34edfe42fa423343a1e01185d"
+
+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.4.1:
+  version "3.4.6"
+  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.6.tgz#01da8d821d87813d158967e743d5fe6c62cf8c0f"
+
+boolbase@~1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
+
+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.0.0:
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9"
+  dependencies:
+    balanced-match "^0.4.1"
+    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"
+
+browserify-zlib@~0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d"
+  dependencies:
+    pako "~0.2.0"
+
+buffer-shims@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51"
+
+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"
+
+bytes@2.3.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.3.0.tgz#d5b680a165b6201739acb611542aabc2d8ceb070"
+
+camel-case@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73"
+  dependencies:
+    no-case "^2.2.0"
+    upper-case "^1.1.1"
+
+camelcase@^1.0.2:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
+
+caseless@~0.11.0:
+  version "0.11.0"
+  resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7"
+
+center-align@^0.1.1:
+  version "0.1.3"
+  resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad"
+  dependencies:
+    align-text "^0.1.3"
+    lazy-cache "^1.0.3"
+
+chalk@^1.1.0, chalk@^1.1.1:
+  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"
+
+change-case@3.0.x:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/change-case/-/change-case-3.0.0.tgz#6c9c8e35f8790870a82b6b0745be8c3cbef9b081"
+  dependencies:
+    camel-case "^3.0.0"
+    constant-case "^2.0.0"
+    dot-case "^2.1.0"
+    header-case "^1.0.0"
+    is-lower-case "^1.1.0"
+    is-upper-case "^1.1.0"
+    lower-case "^1.1.1"
+    lower-case-first "^1.0.0"
+    no-case "^2.2.0"
+    param-case "^2.1.0"
+    pascal-case "^2.0.0"
+    path-case "^2.1.0"
+    sentence-case "^2.1.0"
+    snake-case "^2.1.0"
+    swap-case "^1.1.0"
+    title-case "^2.1.0"
+    upper-case "^1.1.1"
+    upper-case-first "^1.1.0"
+
+chokidar@^1.0.0:
+  version "1.6.1"
+  resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.6.1.tgz#2f4447ab5e96e50fb3d789fd90d4c72e0e4c70c2"
+  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"
+
+clean-css@3.4.x:
+  version "3.4.20"
+  resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.20.tgz#c0d8963b5448e030f0bcd3ddd0dac4dfe3dea501"
+  dependencies:
+    commander "2.8.x"
+    source-map "0.4.x"
+
+cliui@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1"
+  dependencies:
+    center-align "^0.1.1"
+    right-align "^0.1.1"
+    wordwrap "0.0.2"
+
+clone@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149"
+
+code-point-at@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.0.1.tgz#1104cd34f9b5b45d3eba88f1babc1924e1ce35fb"
+  dependencies:
+    number-is-nan "^1.0.0"
+
+colors@^1.0.3:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
+
+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.9.0, commander@2.9.x:
+  version "2.9.0"
+  resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4"
+  dependencies:
+    graceful-readlink ">= 1.0.0"
+
+commander@2.8.x:
+  version "2.8.1"
+  resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4"
+  dependencies:
+    graceful-readlink ">= 1.0.0"
+
+commondir@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
+
+compressible@~2.0.8:
+  version "2.0.8"
+  resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.8.tgz#7162e6c46d3b9d200ffb45cb4e4a0f7832732503"
+  dependencies:
+    mime-db ">= 1.23.0 < 2"
+
+compression@^1.5.2:
+  version "1.6.2"
+  resolved "https://registry.yarnpkg.com/compression/-/compression-1.6.2.tgz#cceb121ecc9d09c52d7ad0c3350ea93ddd402bc3"
+  dependencies:
+    accepts "~1.3.3"
+    bytes "2.3.0"
+    compressible "~2.0.8"
+    debug "~2.2.0"
+    on-headers "~1.0.1"
+    vary "~1.1.0"
+
+concat-map@0.0.1:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
+
+connect-history-api-fallback@1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.1.0.tgz#5a6dee82d9a648cb29131d3f9dd400ffa4593742"
+
+console-browserify@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10"
+  dependencies:
+    date-now "^0.1.4"
+
+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"
+
+constant-case@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-2.0.0.tgz#4175764d389d3fa9c8ecd29186ed6005243b6a46"
+  dependencies:
+    snake-case "^2.1.0"
+    upper-case "^1.1.1"
+
+constants-browserify@0.0.1:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-0.0.1.tgz#92577db527ba6c4cf0a4568d84bc031f441e21f2"
+
+content-disposition@0.5.1:
+  version "0.5.1"
+  resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.1.tgz#87476c6a67c8daa87e32e87616df883ba7fb071b"
+
+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.3.0"
+  resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.3.0.tgz#e9f3e9c6e2728efc2676696a70eb382f73106a67"
+
+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@^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"
+
+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-browserify@~3.2.6:
+  version "3.2.8"
+  resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.2.8.tgz#b9b11dbe6d9651dd882a01e6cc467df718ecf189"
+  dependencies:
+    pbkdf2-compat "2.0.1"
+    ripemd160 "0.2.0"
+    sha.js "2.2.6"
+
+css-select@^1.1.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858"
+  dependencies:
+    boolbase "~1.0.0"
+    css-what "2.1"
+    domutils "1.5.1"
+    nth-check "~1.0.1"
+
+css-what@2.1:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd"
+
+dashdash@^1.12.0:
+  version "1.14.0"
+  resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.0.tgz#29e486c5418bf0f356034a993d51686a33e84141"
+  dependencies:
+    assert-plus "^1.0.0"
+
+date-now@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
+
+debug@^2.1.1, debug@^2.2.0, debug@~2.2.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
+  dependencies:
+    ms "0.7.1"
+
+decamelize@^1.0.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
+
+deep-extend@~0.4.0:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253"
+
+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:
+  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-converter@~0.1:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.1.4.tgz#a45ef5727b890c9bffe6d7c876e7b19cb0e17f3b"
+  dependencies:
+    utila "~0.3"
+
+dom-serializer@0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82"
+  dependencies:
+    domelementtype "~1.1.1"
+    entities "~1.1.1"
+
+domain-browser@^1.1.1:
+  version "1.1.7"
+  resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc"
+
+domelementtype@~1.1.1:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b"
+
+domelementtype@1:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2"
+
+domhandler@2.1:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594"
+  dependencies:
+    domelementtype "1"
+
+domutils@1.1:
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485"
+  dependencies:
+    domelementtype "1"
+
+domutils@1.5.1:
+  version "1.5.1"
+  resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf"
+  dependencies:
+    dom-serializer "0"
+    domelementtype "1"
+
+dot-case@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-2.1.0.tgz#4b43dd0d7403c34cb645424add397e80bfe85ca6"
+  dependencies:
+    no-case "^2.2.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"
+
+emojis-list@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389"
+
+encodeurl@~1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20"
+
+enhanced-resolve@^0.9.0, enhanced-resolve@~0.9.0:
+  version "0.9.1"
+  resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-0.9.1.tgz#4d6e689b3725f86090927ccc86cd9f1635b89e2e"
+  dependencies:
+    graceful-fs "^4.1.2"
+    memory-fs "^0.2.0"
+    tapable "^0.1.8"
+
+entities@~1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0"
+
+errno@^0.1.3:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.4.tgz#b896e23a9e5e8ba33871fc996abd3635fc9a1c7d"
+  dependencies:
+    prr "~0.0.0"
+
+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"
+
+esutils@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
+
+etag@~1.7.0:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/etag/-/etag-1.7.0.tgz#03d30b5f67dd6e632d2945d30d6652731a34d5d8"
+
+eventemitter3@1.x.x:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508"
+
+events@^1.0.0:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924"
+
+eventsource@~0.1.6:
+  version "0.1.6"
+  resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232"
+  dependencies:
+    original ">=0.0.5"
+
+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"
+
+express@^4.13.3:
+  version "4.14.0"
+  resolved "https://registry.yarnpkg.com/express/-/express-4.14.0.tgz#c1ee3f42cdc891fb3dc650a8922d51ec847d0d66"
+  dependencies:
+    accepts "~1.3.3"
+    array-flatten "1.1.1"
+    content-disposition "0.5.1"
+    content-type "~1.0.2"
+    cookie "0.3.1"
+    cookie-signature "1.0.6"
+    debug "~2.2.0"
+    depd "~1.1.0"
+    encodeurl "~1.0.1"
+    escape-html "~1.0.3"
+    etag "~1.7.0"
+    finalhandler "0.5.0"
+    fresh "0.3.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.2"
+    qs "6.2.0"
+    range-parser "~1.2.0"
+    send "0.14.1"
+    serve-static "~1.11.1"
+    type-is "~1.6.13"
+    utils-merge "1.0.0"
+    vary "~1.1.0"
+
+extend@~3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4"
+
+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"
+
+faye-websocket@^0.10.0:
+  version "0.10.0"
+  resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4"
+  dependencies:
+    websocket-driver ">=0.5.1"
+
+faye-websocket@~0.11.0:
+  version "0.11.0"
+  resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.0.tgz#d9ccf0e789e7db725d74bc4877d23aa42972ac50"
+  dependencies:
+    websocket-driver ">=0.5.1"
+
+filename-regex@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.0.tgz#996e3e80479b98b9897f15a8a58b3d084e926775"
+
+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@0.5.0:
+  version "0.5.0"
+  resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.0.tgz#e9508abece9b6dba871a6942a1d7911b91911ac7"
+  dependencies:
+    debug "~2.2.0"
+    escape-html "~1.0.3"
+    on-finished "~2.3.0"
+    statuses "~1.3.0"
+    unpipe "~1.0.0"
+
+find-cache-dir@^0.1.1:
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9"
+  dependencies:
+    commondir "^1.0.1"
+    mkdirp "^0.5.1"
+    pkg-dir "^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-in@^0.1.5:
+  version "0.1.6"
+  resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.6.tgz#c9f96e89bfad18a545af5ec3ed352a1d9e5b4dc8"
+
+for-own@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.4.tgz#0149b41a39088c7515f51ebe1c1386d45f935072"
+  dependencies:
+    for-in "^0.1.5"
+
+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.1"
+  resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.1.tgz#4adf0342e1a79afa1e84c8c320a9ffc82392a1f3"
+  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"
+
+fresh@0.3.0:
+  version "0.3.0"
+  resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.3.0.tgz#651f838e22424e7566de161d8358caa199f83d4f"
+
+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.0.14"
+  resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.0.14.tgz#558e8cc38643d8ef40fe45158486d0d25758eee4"
+  dependencies:
+    nan "^2.3.0"
+    node-pre-gyp "^0.6.29"
+
+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.2, fstream@~1.0.10:
+  version "1.0.10"
+  resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.10.tgz#604e8a92fe26ffd9f6fae30399d4984e1ab22822"
+  dependencies:
+    graceful-fs "^4.1.2"
+    inherits "~2.0.0"
+    mkdirp ">=0.5 0"
+    rimraf "2"
+
+gauge@~2.6.0:
+  version "2.6.0"
+  resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.6.0.tgz#d35301ad18e96902b4751dcbbe40f4218b942a46"
+  dependencies:
+    aproba "^1.0.3"
+    console-control-strings "^1.0.0"
+    has-color "^0.1.7"
+    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.1.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"
+
+getpass@^0.1.1:
+  version "0.1.6"
+  resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6"
+  dependencies:
+    assert-plus "^1.0.0"
+
+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.5:
+  version "7.1.1"
+  resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8"
+  dependencies:
+    fs.realpath "^1.0.0"
+    inflight "^1.0.4"
+    inherits "2"
+    minimatch "^3.0.2"
+    once "^1.3.0"
+    path-is-absolute "^1.0.0"
+
+globals@^9.0.0:
+  version "9.12.0"
+  resolved "https://registry.yarnpkg.com/globals/-/globals-9.12.0.tgz#992ce90828c3a55fa8f16fada177adb64664cf9d"
+
+graceful-fs@^4.1.2:
+  version "4.1.9"
+  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.9.tgz#baacba37d19d11f9d146d3578bc99958c3787e29"
+
+"graceful-readlink@>= 1.0.0":
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725"
+
+har-validator@~2.0.6:
+  version "2.0.6"
+  resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d"
+  dependencies:
+    chalk "^1.1.1"
+    commander "^2.9.0"
+    is-my-json-valid "^2.12.4"
+    pinkie-promise "^2.0.0"
+
+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-color@^0.1.7:
+  version "0.1.7"
+  resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f"
+
+has-flag@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa"
+
+has-unicode@^2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
+
+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"
+
+he@1.1.x:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/he/-/he-1.1.0.tgz#29319d49beec13a9b1f3c4f9b2a6dde4859bb2a7"
+
+header-case@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/header-case/-/header-case-1.0.0.tgz#d9e335909505d56051ec16a0106821889e910781"
+  dependencies:
+    no-case "^2.2.0"
+    upper-case "^1.1.3"
+
+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"
+
+html-minifier@^2.1.6:
+  version "2.1.7"
+  resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-2.1.7.tgz#9051d6fcbbcf214ed307e1ad74f432bb9ad655cc"
+  dependencies:
+    change-case "3.0.x"
+    clean-css "3.4.x"
+    commander "2.9.x"
+    he "1.1.x"
+    ncname "1.0.x"
+    relateurl "0.2.x"
+    uglify-js "2.6.x"
+
+html-webpack-plugin@~2.22.0:
+  version "2.22.0"
+  resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-2.22.0.tgz#7eb02ff9039da84e5ba71004d4693c04b92d2905"
+  dependencies:
+    bluebird "^3.4.1"
+    html-minifier "^2.1.6"
+    loader-utils "^0.2.15"
+    lodash "^4.13.1"
+    pretty-error "^2.0.0"
+    toposort "^1.0.0"
+
+htmlparser2@~3.3.0:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe"
+  dependencies:
+    domelementtype "1"
+    domhandler "2.1"
+    domutils "1.1"
+    readable-stream "1.0"
+
+http-browserify@^1.3.2:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/http-browserify/-/http-browserify-1.7.0.tgz#33795ade72df88acfbfd36773cefeda764735b20"
+  dependencies:
+    Base64 "~0.2.0"
+    inherits "~2.0.1"
+
+http-errors@~1.5.0:
+  version "1.5.0"
+  resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.0.tgz#b1cb3d8260fd8e2386cad3189045943372d48211"
+  dependencies:
+    inherits "2.0.1"
+    setprototypeof "1.0.1"
+    statuses ">= 1.3.0 < 2"
+
+http-proxy@^1.11.2:
+  version "1.15.2"
+  resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.15.2.tgz#642fdcaffe52d3448d2bda3b0079e9409064da31"
+  dependencies:
+    eventemitter3 "1.x.x"
+    requires-port "1.x.x"
+
+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"
+
+https-browserify@0.0.0:
+  version "0.0.0"
+  resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.0.tgz#b3ffdfe734b2a3d4a9efd58e8654c91fce86eafd"
+
+ieee754@^1.1.4:
+  version "1.1.8"
+  resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4"
+
+indexof@0.0.1:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d"
+
+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.0.1, inherits@~2.0.0, inherits@~2.0.1, inherits@2:
+  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"
+
+interpret@^0.6.4:
+  version "0.6.6"
+  resolved "https://registry.yarnpkg.com/interpret/-/interpret-0.6.6.tgz#fecd7a18e7ce5ca6abfb953e1f86213a49f1625b"
+
+invariant@^2.2.0:
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.1.tgz#b097010547668c7e337028ebe816ebe36c8a8d54"
+  dependencies:
+    loose-envify "^1.0.0"
+
+ipaddr.js@1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.1.1.tgz#c791d95f52b29c1247d5df80ada39b8a73647230"
+
+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.0.2:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.4.tgz#cfc86ccd5dc5a52fa80489111c6920c457e2d98b"
+
+is-dotfile@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.2.tgz#2c132383f39199f8edc268ca01b9b007d205cc4d"
+
+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-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-lower-case@^1.1.0:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/is-lower-case/-/is-lower-case-1.1.3.tgz#7e147be4768dc466db3bfb21cc60b31e6ad69393"
+  dependencies:
+    lower-case "^1.1.0"
+
+is-my-json-valid@^2.12.4:
+  version "2.15.0"
+  resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.15.0.tgz#936edda3ca3c211fd98f3b2d3e08da43f7b2915b"
+  dependencies:
+    generate-function "^2.0.0"
+    generate-object-property "^1.1.0"
+    jsonpointer "^4.0.0"
+    xtend "^4.0.0"
+
+is-number@^2.0.2, 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-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-typedarray@~1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
+
+is-upper-case@^1.1.0:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/is-upper-case/-/is-upper-case-1.1.2.tgz#8d0b1fa7e7933a1e58483600ec7d9661cbaf756f"
+  dependencies:
+    upper-case "^1.1.0"
+
+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"
+
+isarray@0.0.1:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
+
+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"
+
+isstream@~0.1.2:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
+
+jodid25519@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/jodid25519/-/jodid25519-1.0.2.tgz#06d4912255093419477d425633606e0e90782967"
+  dependencies:
+    jsbn "~0.1.0"
+
+js-tokens@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-2.0.0.tgz#79903f5563ee778cc1162e6dcf1a0027c97f9cb5"
+
+jsbn@~0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.0.tgz#650987da0dd74f4ebf5a11377a2aa2d273e97dfd"
+
+jsesc@^1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
+
+json-loader@^0.5.2:
+  version "0.5.4"
+  resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.4.tgz#8baa1365a632f58a3c46d20175fc6002c96e37de"
+
+json-schema@0.2.3:
+  version "0.2.3"
+  resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
+
+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"
+
+json3@^3.3.2:
+  version "3.3.2"
+  resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1"
+
+json5@^0.5.0:
+  version "0.5.0"
+  resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.0.tgz#9b20715b026cbe3778fd769edccd822d8332a5b2"
+
+jsonpointer@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.0.tgz#6661e161d2fc445f19f98430231343722e1fcbd5"
+
+jsprim@^1.2.2:
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.3.1.tgz#2a7256f70412a29ee3670aaca625994c4dcff252"
+  dependencies:
+    extsprintf "1.0.2"
+    json-schema "0.2.3"
+    verror "1.3.6"
+
+kind-of@^3.0.2:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.0.4.tgz#7b8ecf18a4e17f8269d73b501c9f232c96887a74"
+  dependencies:
+    is-buffer "^1.0.2"
+
+lazy-cache@^1.0.3:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
+
+loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0.2.6:
+  version "0.2.16"
+  resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.16.tgz#f08632066ed8282835dff88dfb52704765adee6d"
+  dependencies:
+    big.js "^3.1.3"
+    emojis-list "^2.0.0"
+    json5 "^0.5.0"
+    object-assign "^4.0.1"
+
+lodash@^4.13.1, lodash@^4.2.0:
+  version "4.16.4"
+  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.16.4.tgz#01ce306b9bad1319f2a5528674f88297aeb70127"
+
+longest@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
+
+loose-envify@^1.0.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.0.tgz#6b26248c42f6d4fa4b0d8542f78edfcde35642a8"
+  dependencies:
+    js-tokens "^2.0.0"
+
+lower-case-first@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/lower-case-first/-/lower-case-first-1.0.2.tgz#e5da7c26f29a7073be02d52bac9980e5922adfa1"
+  dependencies:
+    lower-case "^1.1.2"
+
+lower-case@^1.1.0, lower-case@^1.1.1, lower-case@^1.1.2:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.3.tgz#c92393d976793eee5ba4edb583cf8eae35bd9bfb"
+
+media-typer@0.3.0:
+  version "0.3.0"
+  resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
+
+memory-fs@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.2.0.tgz#f2bb25368bc121e391c2520de92969caee0a0290"
+
+memory-fs@~0.3.0:
+  version "0.3.0"
+  resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.3.0.tgz#7bcc6b629e3a43e871d7e29aca6ae8a7f15cbb20"
+  dependencies:
+    errno "^0.1.3"
+    readable-stream "^2.0.1"
+
+merge-descriptors@1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
+
+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.23.0 < 2", mime-db@~1.24.0:
+  version "1.24.0"
+  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.24.0.tgz#e2d13f939f0016c6e4e9ad25a8652f126c467f0c"
+
+mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.7:
+  version "2.1.12"
+  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.12.tgz#152ba256777020dd4663f54c2e7bc26381e71729"
+  dependencies:
+    mime-db "~1.24.0"
+
+mime@^1.3.4, mime@1.3.4:
+  version "1.3.4"
+  resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53"
+
+minimatch@^3.0.0, minimatch@^3.0.2:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774"
+  dependencies:
+    brace-expansion "^1.0.0"
+
+minimist@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
+
+minimist@~0.0.1:
+  version "0.0.10"
+  resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
+
+minimist@0.0.8:
+  version "0.0.8"
+  resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
+
+mkdirp@^0.5.1, "mkdirp@>=0.5 0", 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@0.7.1:
+  version "0.7.1"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098"
+
+nan@^2.3.0:
+  version "2.4.0"
+  resolved "https://registry.yarnpkg.com/nan/-/nan-2.4.0.tgz#fb3c59d45fe4effe215f0b890f8adf6eb32d2232"
+
+ncname@1.0.x:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/ncname/-/ncname-1.0.0.tgz#5b57ad18b1ca092864ef62b0b1ed8194f383b71c"
+  dependencies:
+    xml-char-classes "^1.0.0"
+
+negotiator@0.6.1:
+  version "0.6.1"
+  resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9"
+
+no-case@^2.2.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.0.tgz#ca2825ccb76b18e6f79d573dcfbf1eace33dd164"
+  dependencies:
+    lower-case "^1.1.1"
+
+node-libs-browser@^0.6.0:
+  version "0.6.0"
+  resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-0.6.0.tgz#244806d44d319e048bc8607b5cc4eaf9a29d2e3c"
+  dependencies:
+    assert "^1.1.1"
+    browserify-zlib "~0.1.4"
+    buffer "^4.9.0"
+    console-browserify "^1.1.0"
+    constants-browserify "0.0.1"
+    crypto-browserify "~3.2.6"
+    domain-browser "^1.1.1"
+    events "^1.0.0"
+    http-browserify "^1.3.2"
+    https-browserify "0.0.0"
+    os-browserify "~0.1.2"
+    path-browserify "0.0.0"
+    process "^0.11.0"
+    punycode "^1.2.4"
+    querystring-es3 "~0.2.0"
+    readable-stream "^1.1.13"
+    stream-browserify "^1.0.0"
+    string_decoder "~0.10.25"
+    timers-browserify "^1.0.1"
+    tty-browserify "0.0.0"
+    url "~0.10.1"
+    util "~0.10.3"
+    vm-browserify "0.0.4"
+
+node-pre-gyp@^0.6.29:
+  version "0.6.31"
+  resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.31.tgz#d8a00ddaa301a940615dbcc8caad4024d58f6017"
+  dependencies:
+    mkdirp "~0.5.1"
+    nopt "~3.0.6"
+    npmlog "^4.0.0"
+    rc "~1.1.6"
+    request "^2.75.0"
+    rimraf "~2.5.4"
+    semver "~5.3.0"
+    tar "~2.2.1"
+    tar-pack "~3.3.0"
+
+node-uuid@~1.4.7:
+  version "1.4.7"
+  resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.7.tgz#6da5a17668c4b3dd59623bda11cf7fa4c1f60a6f"
+
+nopt@~3.0.6:
+  version "3.0.6"
+  resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
+  dependencies:
+    abbrev "1"
+
+normalize-path@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.0.1.tgz#47886ac1662760d4261b7d979d241709d3ce3f7a"
+
+npmlog@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.0.tgz#e094503961c70c1774eb76692080e8d578a9f88f"
+  dependencies:
+    are-we-there-yet "~1.1.2"
+    console-control-strings "~1.1.0"
+    gauge "~2.6.0"
+    set-blocking "~2.0.0"
+
+nth-check@~1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4"
+  dependencies:
+    boolbase "~1.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@^2.0.0:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa"
+
+object-assign@^4.0.1, object-assign@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0"
+
+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"
+
+on-headers@~1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7"
+
+once@^1.3.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
+  dependencies:
+    wrappy "1"
+
+once@~1.3.3:
+  version "1.3.3"
+  resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20"
+  dependencies:
+    wrappy "1"
+
+optimist@~0.6.0:
+  version "0.6.1"
+  resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686"
+  dependencies:
+    minimist "~0.0.1"
+    wordwrap "~0.0.2"
+
+original@>=0.0.5:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/original/-/original-1.0.0.tgz#9147f93fa1696d04be61e01bd50baeaca656bd3b"
+  dependencies:
+    url-parse "1.0.x"
+
+os-browserify@~0.1.2:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.1.2.tgz#49ca0293e0b19590a5f5de10c7f265a617d8fe54"
+
+os-homedir@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
+
+os-tmpdir@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
+
+pako@~0.2.0:
+  version "0.2.9"
+  resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75"
+
+param-case@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.0.tgz#2619f90fd6c829ed0b958f1c84ed03a745a6d70a"
+  dependencies:
+    no-case "^2.2.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"
+
+parseurl@~1.3.1:
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56"
+
+pascal-case@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-2.0.0.tgz#39c248bde5a8dc02d5160696bdb01e044d016ee1"
+  dependencies:
+    camel-case "^3.0.0"
+    upper-case-first "^1.1.0"
+
+path-browserify@0.0.0:
+  version "0.0.0"
+  resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a"
+
+path-case@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/path-case/-/path-case-2.1.0.tgz#5ac491de642936e5dfe0e18d16c461b8be8cf073"
+  dependencies:
+    no-case "^2.2.0"
+
+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-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-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@^0.4.9:
+  version "0.4.10"
+  resolved "https://registry.yarnpkg.com/path/-/path-0.4.10.tgz#22fef27b7cd6eaf30fb13fc027801e956e518ef1"
+
+pbkdf2-compat@2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz#b6e0c8fa99494d94e0511575802a59a5c142f288"
+
+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"
+
+pkg-dir@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4"
+  dependencies:
+    find-up "^1.0.0"
+
+preserve@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
+
+pretty-error@^2.0.0:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.0.2.tgz#a7db19cbb529ca9f0af3d3a2f77d5caf8e5dec23"
+  dependencies:
+    renderkid "~2.0.0"
+    utila "~0.4"
+
+private@^0.1.6:
+  version "0.1.6"
+  resolved "https://registry.yarnpkg.com/private/-/private-0.1.6.tgz#55c6a976d0f9bafb9924851350fe47b9b5fbb7c1"
+
+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.11.0, process@~0.11.0:
+  version "0.11.9"
+  resolved "https://registry.yarnpkg.com/process/-/process-0.11.9.tgz#7bd5ad21aa6253e7da8682264f1e11d11c0318c1"
+
+proxy-addr@~1.1.2:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.2.tgz#b4cc5f22610d9535824c123aef9d3cf73c40ba37"
+  dependencies:
+    forwarded "~0.1.0"
+    ipaddr.js "1.1.1"
+
+prr@~0.0.0:
+  version "0.0.0"
+  resolved "https://registry.yarnpkg.com/prr/-/prr-0.0.0.tgz#1a84b85908325501411853d0081ee3fa86e2926a"
+
+punycode@^1.2.4, punycode@^1.4.1:
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
+
+punycode@1.3.2:
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
+
+qs@~6.3.0:
+  version "6.3.0"
+  resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442"
+
+qs@6.2.0:
+  version "6.2.0"
+  resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.0.tgz#3b7848c03c2dece69a9522b0fae8c4126d745f3b"
+
+querystring-es3@~0.2.0:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
+
+querystring@0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620"
+
+querystringify@0.0.x:
+  version "0.0.4"
+  resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-0.0.4.tgz#0cf7f84f9463ff0ae51c4c4b142d95be37724d9c"
+
+randomatic@^1.1.3:
+  version "1.1.5"
+  resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.5.tgz#5e9ef5f2d573c67bd2b8124ae90b5156e457840b"
+  dependencies:
+    is-number "^2.0.2"
+    kind-of "^3.0.2"
+
+range-parser@^1.0.3, range-parser@~1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e"
+
+rc@~1.1.6:
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/rc/-/rc-1.1.6.tgz#43651b76b6ae53b5c802f1151fa3fc3b059969c9"
+  dependencies:
+    deep-extend "~0.4.0"
+    ini "~1.3.0"
+    minimist "^1.2.0"
+    strip-json-comments "~1.0.4"
+
+readable-stream@^1.0.27-1, readable-stream@^1.1.13:
+  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 || ^1.1.13", readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@~2.1.4:
+  version "2.1.5"
+  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0"
+  dependencies:
+    buffer-shims "^1.0.0"
+    core-util-is "~1.0.0"
+    inherits "~2.0.1"
+    isarray "~1.0.0"
+    process-nextick-args "~1.0.6"
+    string_decoder "~0.10.x"
+    util-deprecate "~1.0.1"
+
+readable-stream@1.0:
+  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"
+
+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"
+
+reflect-metadata@^0.1.3:
+  version "0.1.8"
+  resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.8.tgz#72426d570b60776e3688968bd5ab9537a15cecf6"
+
+regenerator-runtime@^0.9.5:
+  version "0.9.5"
+  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.9.5.tgz#403d6d40a4bdff9c330dd9392dcbb2d9a8bba1fc"
+
+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"
+
+relateurl@0.2.x:
+  version "0.2.7"
+  resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
+
+renderkid@~2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.0.tgz#1859753e7a5adbf35443aba0d4e4579e78abee85"
+  dependencies:
+    css-select "^1.1.0"
+    dom-converter "~0.1"
+    htmlparser2 "~3.3.0"
+    strip-ansi "^3.0.0"
+    utila "~0.3"
+
+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@^2.75.0:
+  version "2.76.0"
+  resolved "https://registry.yarnpkg.com/request/-/request-2.76.0.tgz#be44505afef70360a0436955106be3945d95560e"
+  dependencies:
+    aws-sign2 "~0.6.0"
+    aws4 "^1.2.1"
+    caseless "~0.11.0"
+    combined-stream "~1.0.5"
+    extend "~3.0.0"
+    forever-agent "~0.6.1"
+    form-data "~2.1.1"
+    har-validator "~2.0.6"
+    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"
+    node-uuid "~1.4.7"
+    oauth-sign "~0.8.1"
+    qs "~6.3.0"
+    stringstream "~0.0.4"
+    tough-cookie "~2.3.0"
+    tunnel-agent "~0.4.1"
+
+requires-port@1.0.x, requires-port@1.x.x:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff"
+
+right-align@^0.1.1:
+  version "0.1.3"
+  resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef"
+  dependencies:
+    align-text "^0.1.1"
+
+rimraf@~2.5.1, rimraf@~2.5.4, rimraf@2:
+  version "2.5.4"
+  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04"
+  dependencies:
+    glob "^7.0.5"
+
+ripemd160@0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-0.2.0.tgz#2bf198bde167cacfa51c0a928e84b68bbe171fce"
+
+rxjs@5.0.0-beta.12:
+  version "5.0.0-beta.12"
+  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.0.0-beta.12.tgz#cdfde2d8c4639d20ae7794bff8fddf32da7ad337"
+  dependencies:
+    symbol-observable "^1.0.1"
+
+semver@^5.0.1, semver@~5.3.0:
+  version "5.3.0"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
+
+send@0.14.1:
+  version "0.14.1"
+  resolved "https://registry.yarnpkg.com/send/-/send-0.14.1.tgz#a954984325392f51532a7760760e459598c89f7a"
+  dependencies:
+    debug "~2.2.0"
+    depd "~1.1.0"
+    destroy "~1.0.4"
+    encodeurl "~1.0.1"
+    escape-html "~1.0.3"
+    etag "~1.7.0"
+    fresh "0.3.0"
+    http-errors "~1.5.0"
+    mime "1.3.4"
+    ms "0.7.1"
+    on-finished "~2.3.0"
+    range-parser "~1.2.0"
+    statuses "~1.3.0"
+
+sentence-case@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-2.1.0.tgz#d592fbed457fd1a59e3af0ee17e99f6fd70d7efd"
+  dependencies:
+    no-case "^2.2.0"
+    upper-case-first "^1.1.2"
+
+serve-index@^1.7.2:
+  version "1.8.0"
+  resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.8.0.tgz#7c5d96c13fb131101f93c1c5774f8516a1e78d3b"
+  dependencies:
+    accepts "~1.3.3"
+    batch "0.5.3"
+    debug "~2.2.0"
+    escape-html "~1.0.3"
+    http-errors "~1.5.0"
+    mime-types "~2.1.11"
+    parseurl "~1.3.1"
+
+serve-static@~1.11.1:
+  version "1.11.1"
+  resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.11.1.tgz#d6cce7693505f733c759de57befc1af76c0f0805"
+  dependencies:
+    encodeurl "~1.0.1"
+    escape-html "~1.0.3"
+    parseurl "~1.3.1"
+    send "0.14.1"
+
+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.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.1.tgz#52009b27888c4dc48f591949c0a8275834c1ca7e"
+
+sha.js@2.2.6:
+  version "2.2.6"
+  resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.2.6.tgz#17ddeddc5f722fb66501658895461977867315ba"
+
+signal-exit@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.1.tgz#5a4c884992b63a7acd9badb7894c3ee9cfccad81"
+
+slash@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
+
+snake-case@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-2.1.0.tgz#41bdb1b73f30ec66a04d4e2cad1b76387d4d6d9f"
+  dependencies:
+    no-case "^2.2.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"
+
+sockjs-client@^1.0.3:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.1.tgz#284843e9a9784d7c474b1571b3240fca9dda4bb0"
+  dependencies:
+    debug "^2.2.0"
+    eventsource "~0.1.6"
+    faye-websocket "~0.11.0"
+    inherits "^2.0.1"
+    json3 "^3.3.2"
+    url-parse "^1.1.1"
+
+sockjs@^0.3.15:
+  version "0.3.18"
+  resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.18.tgz#d9b289316ca7df77595ef299e075f0f937eb4207"
+  dependencies:
+    faye-websocket "^0.10.0"
+    uuid "^2.0.2"
+
+source-list-map@~0.1.0:
+  version "0.1.6"
+  resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.6.tgz#e1e6f94f0b40c4d28dcf8f5b8766e0e45636877f"
+
+source-map-support@^0.4.2:
+  version "0.4.5"
+  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.5.tgz#4438df4219e1b3c7feb674614b4c67f9722db1e4"
+  dependencies:
+    source-map "^0.5.3"
+
+source-map@^0.5.0, source-map@^0.5.3, source-map@~0.5.1:
+  version "0.5.6"
+  resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
+
+source-map@~0.4.1, source-map@0.4.x:
+  version "0.4.4"
+  resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
+  dependencies:
+    amdefine ">=0.0.4"
+
+sshpk@^1.7.0:
+  version "1.10.1"
+  resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.1.tgz#30e1a5d329244974a1af61511339d595af6638b0"
+  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"
+    jodid25519 "^1.0.0"
+    jsbn "~0.1.0"
+    tweetnacl "~0.14.0"
+
+"statuses@>= 1.3.0 < 2", statuses@~1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.0.tgz#8e55758cb20e7682c1f4fce8dcab30bf01d1e07a"
+
+stream-browserify@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-1.0.0.tgz#bf9b4abfb42b274d751479e44e0ff2656b6f1193"
+  dependencies:
+    inherits "~2.0.1"
+    readable-stream "^1.0.27-1"
+
+stream-cache@~0.0.1:
+  version "0.0.2"
+  resolved "https://registry.yarnpkg.com/stream-cache/-/stream-cache-0.0.2.tgz#1ac5ad6832428ca55667dbdee395dad4e6db118f"
+
+string_decoder@~0.10.25, string_decoder@~0.10.x:
+  version "0.10.31"
+  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
+
+string-width@^1.0.1:
+  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"
+
+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-json-comments@~1.0.4:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91"
+
+supports-color@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
+
+supports-color@^3.1.0, supports-color@^3.1.1:
+  version "3.1.2"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5"
+  dependencies:
+    has-flag "^1.0.0"
+
+swap-case@^1.1.0:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/swap-case/-/swap-case-1.1.2.tgz#c39203a4587385fad3c850a0bd1bcafa081974e3"
+  dependencies:
+    lower-case "^1.1.1"
+    upper-case "^1.1.1"
+
+symbol-observable@^1.0.1:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.4.tgz#29bf615d4aa7121bdd898b22d4b3f9bc4e2aa03d"
+
+tapable@^0.1.8, tapable@~0.1.8:
+  version "0.1.10"
+  resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.1.10.tgz#29c35707c2b70e50d07482b5d202e8ed446dafd4"
+
+tar-pack@~3.3.0:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.3.0.tgz#30931816418f55afc4d21775afdd6720cee45dae"
+  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@~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"
+
+timers-browserify@^1.0.1:
+  version "1.4.2"
+  resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-1.4.2.tgz#c9c58b575be8407375cb5e2462dacee74359f41d"
+  dependencies:
+    process "~0.11.0"
+
+title-case@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/title-case/-/title-case-2.1.0.tgz#c68ccb4232079ded64f94b91b4941ade91391979"
+  dependencies:
+    no-case "^2.2.0"
+    upper-case "^1.0.3"
+
+to-fast-properties@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320"
+
+toposort@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.0.tgz#b66cf385a1a8a8e68e45b8259e7f55875e8b06ef"
+
+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"
+
+ts-loader@0.8.1:
+  version "0.8.1"
+  resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-0.8.1.tgz#aa5d3aa013cd18c7e0535d47f85512850227564e"
+  dependencies:
+    arrify "^1.0.0"
+    colors "^1.0.3"
+    enhanced-resolve "^0.9.0"
+    loader-utils "^0.2.6"
+    object-assign "^2.0.0"
+    semver "^5.0.1"
+
+tty-browserify@0.0.0:
+  version "0.0.0"
+  resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
+
+tunnel-agent@~0.4.1:
+  version "0.4.3"
+  resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb"
+
+tweetnacl@^0.14.3, tweetnacl@~0.14.0:
+  version "0.14.3"
+  resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.3.tgz#3da382f670f25ded78d7b3d1792119bca0b7132d"
+
+type-is@~1.6.13:
+  version "1.6.13"
+  resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.13.tgz#6e83ba7bc30cd33a7bb0b7fb00737a2085bf9d08"
+  dependencies:
+    media-typer "0.3.0"
+    mime-types "~2.1.11"
+
+typescript@~1.8.10:
+  version "1.8.10"
+  resolved "https://registry.yarnpkg.com/typescript/-/typescript-1.8.10.tgz#b475d6e0dff0bf50f296e5ca6ef9fbb5c7320f1e"
+
+uglify-js@~2.7.3:
+  version "2.7.4"
+  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.7.4.tgz#a295a0de12b6a650c031c40deb0dc40b14568bd2"
+  dependencies:
+    async "~0.2.6"
+    source-map "~0.5.1"
+    uglify-to-browserify "~1.0.0"
+    yargs "~3.10.0"
+
+uglify-js@2.6.x:
+  version "2.6.4"
+  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.6.4.tgz#65ea2fb3059c9394692f15fed87c2b36c16b9adf"
+  dependencies:
+    async "~0.2.6"
+    source-map "~0.5.1"
+    uglify-to-browserify "~1.0.0"
+    yargs "~3.10.0"
+
+uglify-to-browserify@~1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
+
+uid-number@~0.0.6:
+  version "0.0.6"
+  resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81"
+
+unpipe@~1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
+
+upper-case-first@^1.1.0, upper-case-first@^1.1.2:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-1.1.2.tgz#5d79bedcff14419518fd2edb0a0507c9b6859115"
+  dependencies:
+    upper-case "^1.1.1"
+
+upper-case@^1.0.3, upper-case@^1.1.0, upper-case@^1.1.1, upper-case@^1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598"
+
+url-parse@^1.1.1:
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.6.tgz#ab8ff5aea1388071961255e2236147c52ca5fc48"
+  dependencies:
+    querystringify "0.0.x"
+    requires-port "1.0.x"
+
+url-parse@1.0.x:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b"
+  dependencies:
+    querystringify "0.0.x"
+    requires-port "1.0.x"
+
+url@~0.10.1:
+  version "0.10.3"
+  resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64"
+  dependencies:
+    punycode "1.3.2"
+    querystring "0.2.0"
+
+util-deprecate@~1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
+
+util@^0.10.3, util@~0.10.3, util@0.10.3:
+  version "0.10.3"
+  resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
+  dependencies:
+    inherits "2.0.1"
+
+utila@~0.3:
+  version "0.3.3"
+  resolved "https://registry.yarnpkg.com/utila/-/utila-0.3.3.tgz#d7e8e7d7e309107092b05f8d9688824d633a4226"
+
+utila@~0.4:
+  version "0.4.0"
+  resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c"
+
+utils-merge@1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8"
+
+uuid@^2.0.2:
+  version "2.0.3"
+  resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a"
+
+vary@~1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.0.tgz#e1e5affbbd16ae768dd2674394b9ad3022653140"
+
+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"
+
+vm-browserify@0.0.4:
+  version "0.0.4"
+  resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73"
+  dependencies:
+    indexof "0.0.1"
+
+watchpack@^0.2.1:
+  version "0.2.9"
+  resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-0.2.9.tgz#62eaa4ab5e5ba35fdfc018275626e3c0f5e3fb0b"
+  dependencies:
+    async "^0.9.0"
+    chokidar "^1.0.0"
+    graceful-fs "^4.1.2"
+
+webpack-core@~0.6.0:
+  version "0.6.8"
+  resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.8.tgz#edf9135de00a6a3c26dd0f14b208af0aa4af8d0a"
+  dependencies:
+    source-list-map "~0.1.0"
+    source-map "~0.4.1"
+
+webpack-dev-middleware@^1.4.0:
+  version "1.8.4"
+  resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.8.4.tgz#e8765c9122887ce9e3abd4cc9c3eb31b61e0948d"
+  dependencies:
+    memory-fs "~0.3.0"
+    mime "^1.3.4"
+    path-is-absolute "^1.0.0"
+    range-parser "^1.0.3"
+
+webpack-dev-server@~1.14.1:
+  version "1.14.1"
+  resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-1.14.1.tgz#e51de228071258b0db6d55e0f5fee55eec6755de"
+  dependencies:
+    compression "^1.5.2"
+    connect-history-api-fallback "1.1.0"
+    express "^4.13.3"
+    http-proxy "^1.11.2"
+    optimist "~0.6.0"
+    serve-index "^1.7.2"
+    sockjs "^0.3.15"
+    sockjs-client "^1.0.3"
+    stream-cache "~0.0.1"
+    strip-ansi "^3.0.0"
+    supports-color "^3.1.1"
+    webpack-dev-middleware "^1.4.0"
+
+webpack@~1.13.1:
+  version "1.13.3"
+  resolved "https://registry.yarnpkg.com/webpack/-/webpack-1.13.3.tgz#e79c46fe5a37c5ca70084ba0894c595cdcb42815"
+  dependencies:
+    acorn "^3.0.0"
+    async "^1.3.0"
+    clone "^1.0.2"
+    enhanced-resolve "~0.9.0"
+    interpret "^0.6.4"
+    loader-utils "^0.2.11"
+    memory-fs "~0.3.0"
+    mkdirp "~0.5.0"
+    node-libs-browser "^0.6.0"
+    optimist "~0.6.0"
+    supports-color "^3.1.0"
+    tapable "~0.1.8"
+    uglify-js "~2.7.3"
+    watchpack "^0.2.1"
+    webpack-core "~0.6.0"
+
+websocket-driver@>=0.5.1:
+  version "0.6.5"
+  resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz#5cb2556ceb85f4373c6d8238aa691c8454e13a36"
+  dependencies:
+    websocket-extensions ">=0.1.1"
+
+websocket-extensions@>=0.1.1:
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.1.tgz#76899499c184b6ef754377c2dbb0cd6cb55d29e7"
+
+wide-align@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.0.tgz#40edde802a71fea1f070da3e62dcda2e7add96ad"
+  dependencies:
+    string-width "^1.0.1"
+
+window-size@0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
+
+wordwrap@~0.0.2:
+  version "0.0.3"
+  resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
+
+wordwrap@0.0.2:
+  version "0.0.2"
+  resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
+
+wrappy@1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
+
+xml-char-classes@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d"
+
+xtend@^4.0.0:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
+
+yargs@~3.10.0:
+  version "3.10.0"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
+  dependencies:
+    camelcase "^1.0.2"
+    cliui "^2.1.0"
+    decamelize "^1.0.0"
+    window-size "0.1.0"
+
+zone.js@^0.6.12:
+  version "0.6.26"
+  resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.6.26.tgz#067c13b8b80223a89b62e9dc82680f09762c4636"
+

From c7259f9e9ae4b81eeb86aba491a681a4d902515a Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sun, 30 Oct 2016 14:01:03 +0100
Subject: [PATCH 12/27] bump alpha8

---
 CHANGELOG.md | 6 ++++++
 package.json | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 38ee2be..6f4acd8 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,8 +1,14 @@
+<a name="3.0.0-alpha8"></a>
+### 3.0.0-alpha8 (2016-10-30)
+
+Upgrade to Angular 2.0.0 / NgModules
+
 <a name="3.0.0-alpha7"></a>
 ### 3.0.0-alpha7 (2016-07-30)
 
 Making sure it is usable via TypeScript as well (export d.ts files).
 
+
 <a name="3.0.0-alpha2"></a>
 ### 3.0.0-alpha2 (2016-07-24)
 
diff --git a/package.json b/package.json
index f2abfb1..de2420b 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angular",
-  "version": "3.0.0-alpha7",
+  "version": "3.0.0-alpha8",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "wp-api-angular.js",
   "typings": "wp-api-angular.d.ts",

From c365fed1fc3ccb542c140ed6d0052e61b1cf3bb0 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Mon, 14 Nov 2016 23:51:04 +0100
Subject: [PATCH 13/27] bump beta01

---
 CHANGELOG.md      |  5 +++++
 package.json      |  2 +-
 src/Comments.ts   |  6 +++---
 src/Custom.ts     |  6 +++---
 src/Media.ts      |  6 +++---
 src/Pages.ts      |  6 +++---
 src/Parent.ts     |  6 +++---
 src/Posts.ts      |  6 +++---
 src/Statuses.ts   |  6 +++---
 src/Taxonomies.ts |  6 +++---
 src/Terms.ts      |  6 +++---
 src/Types.ts      |  6 +++---
 src/Users.ts      |  6 +++---
 src/interfaces.ts |  6 +++---
 webpack.config.js | 12 +++++-------
 15 files changed, 47 insertions(+), 44 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6f4acd8..75dec82 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+<a name="3.0.0-beta1"></a>
+### 3.0.0-beta1 (2016-11-14)
+
+Remove `d.ts` extensions <https://github.com/shprink/wp-api-angular/issues/15>
+
 <a name="3.0.0-alpha8"></a>
 ### 3.0.0-alpha8 (2016-10-30)
 
diff --git a/package.json b/package.json
index de2420b..478c5c8 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angular",
-  "version": "3.0.0-alpha8",
+  "version": "3.0.0-alpha9",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "wp-api-angular.js",
   "typings": "wp-api-angular.d.ts",
diff --git a/src/Comments.ts b/src/Comments.ts
index 6b2beab..d2ab246 100644
--- a/src/Comments.ts
+++ b/src/Comments.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/Custom.ts b/src/Custom.ts
index 84cbc06..6d489ec 100644
--- a/src/Custom.ts
+++ b/src/Custom.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/Media.ts b/src/Media.ts
index 6a134b7..1381552 100644
--- a/src/Media.ts
+++ b/src/Media.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/Pages.ts b/src/Pages.ts
index dc9bc46..9cd2cbd 100644
--- a/src/Pages.ts
+++ b/src/Pages.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/Parent.ts b/src/Parent.ts
index 343b99d..6b2c666 100644
--- a/src/Parent.ts
+++ b/src/Parent.ts
@@ -3,9 +3,9 @@ import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiAppConfig } from './wp-api-angular';
 
diff --git a/src/Posts.ts b/src/Posts.ts
index 5a45032..57dffdc 100644
--- a/src/Posts.ts
+++ b/src/Posts.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/Statuses.ts b/src/Statuses.ts
index 4e86eae..45c40ce 100644
--- a/src/Statuses.ts
+++ b/src/Statuses.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/Taxonomies.ts b/src/Taxonomies.ts
index b2766d6..93bbee8 100644
--- a/src/Taxonomies.ts
+++ b/src/Taxonomies.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/Terms.ts b/src/Terms.ts
index 8445d37..462497d 100644
--- a/src/Terms.ts
+++ b/src/Terms.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/Types.ts b/src/Types.ts
index ad5da17..7b0b1c4 100644
--- a/src/Types.ts
+++ b/src/Types.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/Users.ts b/src/Users.ts
index 492f503..39573db 100644
--- a/src/Users.ts
+++ b/src/Users.ts
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
 
diff --git a/src/interfaces.ts b/src/interfaces.ts
index e9475d7..d888f7d 100644
--- a/src/interfaces.ts
+++ b/src/interfaces.ts
@@ -1,6 +1,6 @@
-import { Observable } from 'rxjs/Observable.d.ts';
-import { RequestOptionsArgs } from '@angular/http/src/interfaces.d.ts';
-import { Response } from '@angular/http/src/static_response.d.ts';
+import { Observable } from 'rxjs/Observable';
+import { RequestOptionsArgs } from '@angular/http/src/interfaces';
+import { Response } from '@angular/http/src/static_response';
 
 
 export interface IParent {
diff --git a/webpack.config.js b/webpack.config.js
index 93c474b..67da5ef 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -8,17 +8,15 @@ var path = require('path'),
 
 module.exports = {
   entry: {
-    aPolyfills: [
+    bundle: [
       'core-js',
       'reflect-metadata/Reflect.js',
-      'zone.js'
-    ],
-    bVendors: [
+      'zone.js',
       '@angular/core',
       'rxjs',
-      'rxjs/add/operator/toPromise'
-    ],
-    cApp: path.join(demoPath, 'index.ts')
+      'rxjs/add/operator/toPromise',
+      path.join(demoPath, 'index.ts')
+    ]
   },
   output: {
     path: wwwPath,

From ecc18d524fd96bb8f8f0f99790721e19119cd601 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Mon, 14 Nov 2016 23:54:52 +0100
Subject: [PATCH 14/27] fix release mistake

---
 CHANGELOG.md | 4 ++--
 package.json | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 75dec82..2bc44ec 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,5 @@
-<a name="3.0.0-beta1"></a>
-### 3.0.0-beta1 (2016-11-14)
+<a name="3.0.0-beta2"></a>
+### 3.0.0-beta2 (2016-11-14)
 
 Remove `d.ts` extensions <https://github.com/shprink/wp-api-angular/issues/15>
 
diff --git a/package.json b/package.json
index 478c5c8..13b896c 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angular",
-  "version": "3.0.0-alpha9",
+  "version": "3.0.0-beta2",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "wp-api-angular.js",
   "typings": "wp-api-angular.d.ts",

From 692b6262edce996146507e8a2b30a4556128fdc0 Mon Sep 17 00:00:00 2001
From: Julien Renaux <julien.renaux@gmail.com>
Date: Wed, 28 Dec 2016 16:51:13 +0100
Subject: [PATCH 15/27] Update README.md

---
 README.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/README.md b/README.md
index ce33737..747fad1 100644
--- a/README.md
+++ b/README.md
@@ -12,6 +12,7 @@ If you want to use AngularJS v1, here is the latest version: [v2.0.0-rc3](https:
 ## Installation
 
 ```shell
+npm install -g typings
 npm install wp-api-angular
 ```
 

From e281159327447517343039c4122c1db80ae4b843 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sun, 22 Jan 2017 02:26:35 +0100
Subject: [PATCH 16/27] AOT support

---
 .gitignore            |   1 +
 README.md             |  10 ++-
 package.json          |   9 +-
 src/Custom.ts         |  28 +++---
 src/wp-api-angular.ts |   3 +
 tsconfig.json         |  26 +++---
 yarn.lock             | 192 ++++++++++++++++++++++--------------------
 7 files changed, 146 insertions(+), 123 deletions(-)

diff --git a/.gitignore b/.gitignore
index 0cf64a0..1f13606 100644
--- a/.gitignore
+++ b/.gitignore
@@ -30,3 +30,4 @@ node_modules
 www/
 config.json
 dist/
+aot/
diff --git a/README.md b/README.md
index 747fad1..0351332 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,8 @@
-wp-api-angular
+<p align="center">
+  <h1 align="center">wp-api-angular</h1>
+  <p align="center">Angular >=2 services for WordPress >= 4.7 Rest API</p>
+</p>
+
 ================
 
 [![Join the chat at https://gitter.im/shprink/wp-api-angular](https://badges.gitter.im/shprink/wp-api-angular.svg)](https://gitter.im/shprink/wp-api-angular?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
@@ -217,8 +221,8 @@ cp config.dist.json config.json
 # and run watch to build on the lib files changes
 npm run watch
 
-# in the other terminal run following to build the test page and the doc
-npm run devserver
+# in the other terminal run following to build the test page
+npm start
 ```
 
 Open ```http://localhost:8080```
diff --git a/package.json b/package.json
index 13b896c..f84a854 100644
--- a/package.json
+++ b/package.json
@@ -7,9 +7,9 @@
   "scripts": {
     "start": "webpack-dev-server --port 8080 --json --progress --config webpack.config.js",
     "prebuild": "rm -rf dist",
-    "build": "tsc && npm run dumpdev && npm run dumpprod",
+    "build": "node ./node_modules/@angular/compiler-cli/src/main.js && npm run dumpdev && npm run dumpprod",
     "postbuild": "cp package.json README.md dist/",
-    "watch": "rm -rf dist && tsc -w",
+    "watch": "rm -rf dist && node ./node_modules/@angular/compiler-cli/src/main.js",
     "publish": "npm run build && npm publish dist",
     "dumpdev": "ENV=dev webpack --progress --colors --config webpack.config.dist.js -d",
     "dumpprod": "ENV=prod webpack --progress --colors --config webpack.config.dist.js -p",
@@ -37,11 +37,12 @@
   "dependencies": {
     "@angular/common": "^2.0.0",
     "@angular/compiler": "^2.0.0",
+    "@angular/compiler-cli": "^2.4.4",
     "@angular/core": "^2.0.0",
     "@angular/http": "^2.1.2",
     "@angular/platform-browser": "^2.0.0",
     "@angular/platform-browser-dynamic": "^2.0.0",
-    "rxjs": "5.0.0-beta.12"
+    "rxjs": "^5.0.1"
   },
   "devDependencies": {
     "babel-core": "^6.10.4",
@@ -52,7 +53,7 @@
     "path": "^0.4.9",
     "reflect-metadata": "^0.1.3",
     "ts-loader": "0.8.1",
-    "typescript": "~1.8.10",
+    "typescript": "^2.1.5",
     "util": "^0.10.3",
     "webpack": "~1.13.1",
     "webpack-dev-server": "~1.14.1",
diff --git a/src/Custom.ts b/src/Custom.ts
index 6d489ec..e2da8d3 100644
--- a/src/Custom.ts
+++ b/src/Custom.ts
@@ -1,4 +1,5 @@
 import { Injectable } from '@angular/core';
+import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
@@ -7,6 +8,7 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiCustom {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -16,18 +18,11 @@ export interface IWpApiCustom {
   delete(customId: number, options?: RequestOptionsArgs): Observable<Response>;
 }
 
-@Injectable()
-export class WpApiCustom extends WpApiParent {
-  getInstance(entityName = null) {
-    if (!entityName) {
-      throw new Error(`getInstance needs an entity name`);
-    }
-    return new Custom(this.config, this.http, entityName);
-  }
-}
-
 export class Custom extends WpApiParent implements IWpApiCustom {
-  constructor(config, http, private entityName: string) {
+  constructor(
+    public config: WpApiAppConfig,
+    public http: Http,
+    public entityName: string) {
     super(config, http);
   }
   getList(options = {}) {
@@ -46,3 +41,14 @@ export class Custom extends WpApiParent implements IWpApiCustom {
     return this.httpDelete(`/${this.entityName}/${customId}`, options)
   }
 }
+
+
+@Injectable()
+export class WpApiCustom extends WpApiParent {
+  getInstance(entityName = '') {
+    if (typeof entityName !== 'string') {
+      throw new Error(`getInstance needs an entity name`);
+    }
+    return new Custom(this.config, this.http, entityName);
+  }
+}
diff --git a/src/wp-api-angular.ts b/src/wp-api-angular.ts
index 684a7a7..e01fb59 100644
--- a/src/wp-api-angular.ts
+++ b/src/wp-api-angular.ts
@@ -39,6 +39,9 @@ export interface WpApiAppConfig {
 @NgModule({
   imports: [
     HttpModule
+  ],
+  exports: [
+    HttpModule
   ]
 })
 export class WpApiModule {
diff --git a/tsconfig.json b/tsconfig.json
index e2a0c8b..f42c2fd 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,27 +1,25 @@
 {
   "compilerOptions": {
-    "target": "es5",
-    "module": "commonjs",
-    "emitDecoratorMetadata": true,
     "experimentalDecorators": true,
+    "emitDecoratorMetadata": true,
+    "module": "commonjs",
+    "target": "es5",
     "noImplicitAny": false,
-    "rootDir": "src",
     "outDir": "dist",
+    "rootDir": "src",
     "sourceMap": true,
     "inlineSources": true,
     "declaration": true,
-    "removeComments": true
+    "removeComments": true,
+    "skipLibCheck": true,
+    "moduleResolution": "node"
   },
   "files": [
-    "./src/wp-api-angular.ts",
-    "./typings/overwrite.d.ts",
-    "./typings/index.d.ts"
-  ],
-  "exclude": [
-    "node_modules"
+    "./src/wp-api-angular.ts"
   ],
-  "compileOnSave": false,
-  "atom": {
-    "rewriteTsconfig": false
+  "angularCompilerOptions": {
+    "skipTemplateCodegen": true,
+    "strictMetadataEmit": true,
+    "debug": true
   }
 }
diff --git a/yarn.lock b/yarn.lock
index 2ff6967..400ce80 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1,9 +1,19 @@
 # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
 # yarn lockfile v1
+
+
 "@angular/common@^2.0.0":
   version "2.1.2"
   resolved "https://registry.yarnpkg.com/@angular/common/-/common-2.1.2.tgz#5c5b37c21d6e573def1670f43962c262bc9be82e"
 
+"@angular/compiler-cli@^2.4.4":
+  version "2.4.4"
+  resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-2.4.4.tgz#726598f850e599677fa1638d1728096384665a63"
+  dependencies:
+    "@angular/tsc-wrapped" "0.5.1"
+    minimist "^1.2.0"
+    reflect-metadata "^0.1.2"
+
 "@angular/compiler@^2.0.0":
   version "2.1.2"
   resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-2.1.2.tgz#bd2a6c558de5350bdd43aa8e8de757943ac01d2a"
@@ -24,6 +34,16 @@
   version "2.1.2"
   resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-2.1.2.tgz#1f07c3a5668ac2381a7324f9001521deede159bc"
 
+"@angular/tsc-wrapped@0.5.1":
+  version "0.5.1"
+  resolved "https://registry.yarnpkg.com/@angular/tsc-wrapped/-/tsc-wrapped-0.5.1.tgz#7a69bec999eef41903dddaaccdc862cfcface52c"
+  dependencies:
+    tsickle "^0.2"
+
+Base64@~0.2.0:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/Base64/-/Base64-0.2.1.tgz#ba3a4230708e186705065e66babdd4c35cf60028"
+
 abbrev@1:
   version "1.0.9"
   resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135"
@@ -275,10 +295,6 @@ base64-js@^1.0.2:
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1"
 
-Base64@~0.2.0:
-  version "0.2.1"
-  resolved "https://registry.yarnpkg.com/Base64/-/Base64-0.2.1.tgz#ba3a4230708e186705065e66babdd4c35cf60028"
-
 batch@0.5.3:
   version "0.5.3"
   resolved "https://registry.yarnpkg.com/batch/-/batch-0.5.3.tgz#3f3414f380321743bfc1042f9a83ff1d5824d464"
@@ -459,18 +475,18 @@ combined-stream@^1.0.5, combined-stream@~1.0.5:
   dependencies:
     delayed-stream "~1.0.0"
 
-commander@^2.9.0, commander@2.9.x:
-  version "2.9.0"
-  resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4"
-  dependencies:
-    graceful-readlink ">= 1.0.0"
-
 commander@2.8.x:
   version "2.8.1"
   resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4"
   dependencies:
     graceful-readlink ">= 1.0.0"
 
+commander@2.9.x, commander@^2.9.0:
+  version "2.9.0"
+  resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4"
+  dependencies:
+    graceful-readlink ">= 1.0.0"
+
 commondir@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
@@ -639,14 +655,14 @@ domain-browser@^1.1.1:
   version "1.1.7"
   resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc"
 
-domelementtype@~1.1.1:
-  version "1.1.3"
-  resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b"
-
 domelementtype@1:
   version "1.3.0"
   resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2"
 
+domelementtype@~1.1.1:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b"
+
 domhandler@2.1:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594"
@@ -1109,11 +1125,7 @@ inflight@^1.0.4:
     once "^1.3.0"
     wrappy "1"
 
-inherits@^2.0.1, inherits@~2.0.0, inherits@~2.0.1, inherits@2:
-  version "2.0.3"
-  resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
-
-inherits@2.0.1:
+inherits@2, inherits@2.0.1, inherits@^2.0.1, inherits@~2.0.0, inherits@~2.0.1:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
 
@@ -1224,14 +1236,14 @@ is-upper-case@^1.1.0:
   dependencies:
     upper-case "^1.1.0"
 
-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"
-
 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"
+
 isobject@^2.0.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
@@ -1386,7 +1398,7 @@ mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.7:
   dependencies:
     mime-db "~1.24.0"
 
-mime@^1.3.4, mime@1.3.4:
+mime@1.3.4, mime@^1.3.4:
   version "1.3.4"
   resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53"
 
@@ -1396,19 +1408,15 @@ minimatch@^3.0.0, minimatch@^3.0.2:
   dependencies:
     brace-expansion "^1.0.0"
 
+minimist@0.0.8, minimist@~0.0.1:
+  version "0.0.8"
+  resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
+
 minimist@^1.2.0:
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
 
-minimist@~0.0.1:
-  version "0.0.10"
-  resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
-
-minimist@0.0.8:
-  version "0.0.8"
-  resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
-
-mkdirp@^0.5.1, "mkdirp@>=0.5 0", mkdirp@~0.5.0, mkdirp@~0.5.1:
+"mkdirp@>=0.5 0", mkdirp@^0.5.1, 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:
@@ -1542,13 +1550,7 @@ on-headers@~1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7"
 
-once@^1.3.0:
-  version "1.4.0"
-  resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
-  dependencies:
-    wrappy "1"
-
-once@~1.3.3:
+once@^1.3.0, once@~1.3.3:
   version "1.3.3"
   resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20"
   dependencies:
@@ -1691,22 +1693,22 @@ prr@~0.0.0:
   version "0.0.0"
   resolved "https://registry.yarnpkg.com/prr/-/prr-0.0.0.tgz#1a84b85908325501411853d0081ee3fa86e2926a"
 
-punycode@^1.2.4, punycode@^1.4.1:
-  version "1.4.1"
-  resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
-
 punycode@1.3.2:
   version "1.3.2"
   resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
 
-qs@~6.3.0:
-  version "6.3.0"
-  resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442"
+punycode@^1.2.4, punycode@^1.4.1:
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
 
 qs@6.2.0:
   version "6.2.0"
   resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.0.tgz#3b7848c03c2dece69a9522b0fae8c4126d745f3b"
 
+qs@~6.3.0:
+  version "6.3.0"
+  resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442"
+
 querystring-es3@~0.2.0:
   version "0.2.1"
   resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
@@ -1739,6 +1741,15 @@ rc@~1.1.6:
     minimist "^1.2.0"
     strip-json-comments "~1.0.4"
 
+readable-stream@1.0:
+  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.27-1, readable-stream@^1.1.13:
   version "1.1.14"
   resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
@@ -1760,15 +1771,6 @@ readable-stream@^1.0.27-1, readable-stream@^1.1.13:
     string_decoder "~0.10.x"
     util-deprecate "~1.0.1"
 
-readable-stream@1.0:
-  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"
-
 readdirp@^2.0.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78"
@@ -1778,7 +1780,7 @@ readdirp@^2.0.0:
     readable-stream "^2.0.2"
     set-immediate-shim "^1.0.1"
 
-reflect-metadata@^0.1.3:
+reflect-metadata@^0.1.2, reflect-metadata@^0.1.3:
   version "0.1.8"
   resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.8.tgz#72426d570b60776e3688968bd5ab9537a15cecf6"
 
@@ -1856,7 +1858,7 @@ right-align@^0.1.1:
   dependencies:
     align-text "^0.1.1"
 
-rimraf@~2.5.1, rimraf@~2.5.4, rimraf@2:
+rimraf@2, rimraf@~2.5.1, rimraf@~2.5.4:
   version "2.5.4"
   resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04"
   dependencies:
@@ -1866,9 +1868,9 @@ ripemd160@0.2.0:
   version "0.2.0"
   resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-0.2.0.tgz#2bf198bde167cacfa51c0a928e84b68bbe171fce"
 
-rxjs@5.0.0-beta.12:
-  version "5.0.0-beta.12"
-  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.0.0-beta.12.tgz#cdfde2d8c4639d20ae7794bff8fddf32da7ad337"
+rxjs@^5.0.1:
+  version "5.0.3"
+  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.0.3.tgz#fc8bdf464ebf938812748e4196788f392fef9754"
   dependencies:
     symbol-observable "^1.0.1"
 
@@ -1986,16 +1988,16 @@ source-map-support@^0.4.2:
   dependencies:
     source-map "^0.5.3"
 
-source-map@^0.5.0, source-map@^0.5.3, source-map@~0.5.1:
-  version "0.5.6"
-  resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
-
-source-map@~0.4.1, source-map@0.4.x:
+source-map@0.4.x, source-map@~0.4.1:
   version "0.4.4"
   resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
   dependencies:
     amdefine ">=0.0.4"
 
+source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1:
+  version "0.5.6"
+  resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
+
 sshpk@^1.7.0:
   version "1.10.1"
   resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.1.tgz#30e1a5d329244974a1af61511339d595af6638b0"
@@ -2026,10 +2028,6 @@ stream-cache@~0.0.1:
   version "0.0.2"
   resolved "https://registry.yarnpkg.com/stream-cache/-/stream-cache-0.0.2.tgz#1ac5ad6832428ca55667dbdee395dad4e6db118f"
 
-string_decoder@~0.10.25, string_decoder@~0.10.x:
-  version "0.10.31"
-  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
-
 string-width@^1.0.1:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
@@ -2038,6 +2036,10 @@ string-width@^1.0.1:
     is-fullwidth-code-point "^1.0.0"
     strip-ansi "^3.0.0"
 
+string_decoder@~0.10.25, string_decoder@~0.10.x:
+  version "0.10.31"
+  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
+
 stringstream@~0.0.4:
   version "0.0.5"
   resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878"
@@ -2136,6 +2138,15 @@ ts-loader@0.8.1:
     object-assign "^2.0.0"
     semver "^5.0.1"
 
+tsickle@^0.2:
+  version "0.2.4"
+  resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.2.4.tgz#98f4837bf45eb142a90fec751f8e30c6a5bc7c06"
+  dependencies:
+    minimist "^1.2.0"
+    mkdirp "^0.5.1"
+    source-map "^0.5.6"
+    source-map-support "^0.4.2"
+
 tty-browserify@0.0.0:
   version "0.0.0"
   resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
@@ -2155,22 +2166,22 @@ type-is@~1.6.13:
     media-typer "0.3.0"
     mime-types "~2.1.11"
 
-typescript@~1.8.10:
-  version "1.8.10"
-  resolved "https://registry.yarnpkg.com/typescript/-/typescript-1.8.10.tgz#b475d6e0dff0bf50f296e5ca6ef9fbb5c7320f1e"
+typescript@^2.1.5:
+  version "2.1.5"
+  resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.1.5.tgz#6fe9479e00e01855247cea216e7561bafcdbcd4a"
 
-uglify-js@~2.7.3:
-  version "2.7.4"
-  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.7.4.tgz#a295a0de12b6a650c031c40deb0dc40b14568bd2"
+uglify-js@2.6.x:
+  version "2.6.4"
+  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.6.4.tgz#65ea2fb3059c9394692f15fed87c2b36c16b9adf"
   dependencies:
     async "~0.2.6"
     source-map "~0.5.1"
     uglify-to-browserify "~1.0.0"
     yargs "~3.10.0"
 
-uglify-js@2.6.x:
-  version "2.6.4"
-  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.6.4.tgz#65ea2fb3059c9394692f15fed87c2b36c16b9adf"
+uglify-js@~2.7.3:
+  version "2.7.4"
+  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.7.4.tgz#a295a0de12b6a650c031c40deb0dc40b14568bd2"
   dependencies:
     async "~0.2.6"
     source-map "~0.5.1"
@@ -2199,16 +2210,16 @@ upper-case@^1.0.3, upper-case@^1.1.0, upper-case@^1.1.1, upper-case@^1.1.3:
   version "1.1.3"
   resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598"
 
-url-parse@^1.1.1:
-  version "1.1.6"
-  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.6.tgz#ab8ff5aea1388071961255e2236147c52ca5fc48"
+url-parse@1.0.x:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b"
   dependencies:
     querystringify "0.0.x"
     requires-port "1.0.x"
 
-url-parse@1.0.x:
-  version "1.0.5"
-  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b"
+url-parse@^1.1.1:
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.6.tgz#ab8ff5aea1388071961255e2236147c52ca5fc48"
   dependencies:
     querystringify "0.0.x"
     requires-port "1.0.x"
@@ -2224,7 +2235,7 @@ util-deprecate@~1.0.1:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
 
-util@^0.10.3, util@~0.10.3, util@0.10.3:
+util@0.10.3, util@^0.10.3, util@~0.10.3:
   version "0.10.3"
   resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
   dependencies:
@@ -2343,14 +2354,14 @@ window-size@0.1.0:
   version "0.1.0"
   resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
 
-wordwrap@~0.0.2:
-  version "0.0.3"
-  resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
-
 wordwrap@0.0.2:
   version "0.0.2"
   resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
 
+wordwrap@~0.0.2:
+  version "0.0.3"
+  resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
+
 wrappy@1:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
@@ -2375,4 +2386,3 @@ yargs@~3.10.0:
 zone.js@^0.6.12:
   version "0.6.26"
   resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.6.26.tgz#067c13b8b80223a89b62e9dc82680f09762c4636"
-

From 9ec9bc97de1372d66ad664f41ebb2baf1259d5d0 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sun, 22 Jan 2017 02:29:11 +0100
Subject: [PATCH 17/27] bump beta3

---
 CHANGELOG.md | 5 +++++
 package.json | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2bc44ec..2ef050c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+<a name="3.0.0-beta3"></a>
+### 3.0.0-beta3 (2017-01-22)
+
+Add AOT support <https://github.com/shprink/wp-api-angular/issues/19>
+
 <a name="3.0.0-beta2"></a>
 ### 3.0.0-beta2 (2016-11-14)
 
diff --git a/package.json b/package.json
index f84a854..3560757 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angular",
-  "version": "3.0.0-beta2",
+  "version": "3.0.0-beta3",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "wp-api-angular.js",
   "typings": "wp-api-angular.d.ts",

From af06b89c66efa05e5deb3db4097c2a66f62c2626 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Fri, 27 Jan 2017 15:49:30 +0100
Subject: [PATCH 18/27] Aot compatible... again!

---
 .gitignore            |  1 +
 src/Parent.ts         |  8 +++---
 src/wp-api-angular.ts | 57 +++++++++++++++++--------------------------
 tsconfig.json         |  3 ++-
 4 files changed, 31 insertions(+), 38 deletions(-)

diff --git a/.gitignore b/.gitignore
index 1f13606..a343a3c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -31,3 +31,4 @@ www/
 config.json
 dist/
 aot/
+angular2-webpack-starter/
diff --git a/src/Parent.ts b/src/Parent.ts
index 6b2c666..953267f 100644
--- a/src/Parent.ts
+++ b/src/Parent.ts
@@ -1,4 +1,4 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
 import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
@@ -8,6 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiAppConfig } from './wp-api-angular';
+import { stripTrailingSlash } from './utils';
+import { WpApiConfig } from './tokens';
 
 export interface IParent {
   httpGet(url: string, options?: RequestOptionsArgs): Observable<Response>;
@@ -21,12 +23,12 @@ export interface IParent {
 @Injectable()
 export class WpApiParent implements IParent {
   constructor(
-    public config: WpApiAppConfig,
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
     public http: Http
   ) { }
 
   getFullUrl(postfix: string): string {
-    return `${this.config.baseUrl}${this.config.namespace}${postfix}`;
+    return `${stripTrailingSlash(this.config.baseUrl)}${this.config.namespace || '/wp/v2'}${postfix}`;
   }
   httpGet(url: string, options = {}) {
     return this.http.get(this.getFullUrl(url), options);
diff --git a/src/wp-api-angular.ts b/src/wp-api-angular.ts
index e01fb59..8b1ff91 100644
--- a/src/wp-api-angular.ts
+++ b/src/wp-api-angular.ts
@@ -6,7 +6,6 @@ import {
 import 'rxjs';
 import { Http, HttpModule } from '@angular/http';
 
-import { stripTrailingSlash } from './utils';
 import { WpApiApp, WpApiConfig } from './tokens';
 
 import { WpApiPosts } from './Posts';
@@ -20,16 +19,16 @@ import { WpApiStatuses } from './Statuses';
 import { WpApiTerms } from './Terms';
 import { WpApiCustom } from './Custom';
 
-export * from './Posts';
-export * from './Pages';
-export * from './Comments';
-export * from './Types';
-export * from './Media';
-export * from './Users';
-export * from './Taxonomies';
-export * from './Statuses';
-export * from './Terms';
-export * from './Custom';
+export { WpApiPosts } from './Posts';
+export { WpApiPages } from './Pages';
+export { WpApiComments } from './Comments';
+export { WpApiTypes } from './Types';
+export { WpApiMedia } from './Media';
+export { WpApiUsers } from './Users';
+export { WpApiTaxonomies } from './Taxonomies';
+export { WpApiStatuses } from './Statuses';
+export { WpApiTerms } from './Terms';
+export { WpApiCustom } from './Custom';
 
 export interface WpApiAppConfig {
   baseUrl: string;
@@ -42,37 +41,27 @@ export interface WpApiAppConfig {
   ],
   exports: [
     HttpModule
+  ],
+  providers: [
+    WpApiPosts,
+    WpApiPages,
+    WpApiComments,
+    WpApiTypes,
+    WpApiMedia,
+    WpApiUsers,
+    WpApiTaxonomies,
+    WpApiStatuses,
+    WpApiTerms,
+    WpApiCustom
   ]
 })
 export class WpApiModule {
   static initializeApp(config: WpApiAppConfig): ModuleWithProviders {
-    config.baseUrl = stripTrailingSlash(config.baseUrl);
-    config.namespace = config.namespace || '/wp/v2';
-
     return {
       ngModule: WpApiModule,
       providers: [
-        { provide: WpApiConfig, useValue: config },
-        createProvider(WpApiPosts),
-        createProvider(WpApiPages),
-        createProvider(WpApiComments),
-        createProvider(WpApiTypes),
-        createProvider(WpApiMedia),
-        createProvider(WpApiUsers),
-        createProvider(WpApiTaxonomies),
-        createProvider(WpApiStatuses),
-        createProvider(WpApiTerms),
-        createProvider(WpApiCustom)
+        { provide: WpApiConfig, useValue: config }
       ]
     };
   }
 }
-
-function createProvider(service) {
-  return {
-    provide: service,
-    useFactory: (config: WpApiAppConfig, http: Http) => new service(config, http),
-    deps: [WpApiConfig, Http]
-  }
-}
-
diff --git a/tsconfig.json b/tsconfig.json
index f42c2fd..d1ea5a5 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -20,6 +20,7 @@
   "angularCompilerOptions": {
     "skipTemplateCodegen": true,
     "strictMetadataEmit": true,
-    "debug": true
+    "debug": false,
+    "genDir": "compiled"
   }
 }

From 83b44b23babe0694b373ee9573d09f0ce4bc0757 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Fri, 27 Jan 2017 15:51:05 +0100
Subject: [PATCH 19/27] bump beta4

---
 CHANGELOG.md | 5 +++++
 package.json | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2ef050c..df27d2a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+<a name="3.0.0-beta4"></a>
+### 3.0.0-beta4 (2017-01-27)
+
+Add AOT support for GOOD this time! <https://github.com/shprink/wp-api-angular/issues/19>
+
 <a name="3.0.0-beta3"></a>
 ### 3.0.0-beta3 (2017-01-22)
 
diff --git a/package.json b/package.json
index 3560757..7027701 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angular",
-  "version": "3.0.0-beta3",
+  "version": "3.0.0-beta4",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "wp-api-angular.js",
   "typings": "wp-api-angular.d.ts",

From 16d5fd373dd2dcb72ec004b8b6930d29e04bc843 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Wed, 1 Feb 2017 00:05:37 +0100
Subject: [PATCH 20/27] closes #20

---
 package.json      |   4 +-
 src/Comments.ts   |  12 +-
 src/Custom.ts     |  15 +-
 src/Media.ts      |  11 +-
 src/Pages.ts      |  12 +-
 src/Posts.ts      |  11 +-
 src/Statuses.ts   |  11 +-
 src/Taxonomies.ts |  11 +-
 src/Terms.ts      |  11 +-
 src/Types.ts      |  11 +-
 src/Users.ts      |  11 +-
 yarn.lock         | 545 ++++++++++++++++++++++++----------------------
 12 files changed, 393 insertions(+), 272 deletions(-)

diff --git a/package.json b/package.json
index 7027701..351fe81 100644
--- a/package.json
+++ b/package.json
@@ -39,10 +39,10 @@
     "@angular/compiler": "^2.0.0",
     "@angular/compiler-cli": "^2.4.4",
     "@angular/core": "^2.0.0",
-    "@angular/http": "^2.1.2",
+    "@angular/http": "^2.0.0",
     "@angular/platform-browser": "^2.0.0",
     "@angular/platform-browser-dynamic": "^2.0.0",
-    "rxjs": "^5.0.1"
+    "rxjs": "^5.0.0"
   },
   "devDependencies": {
     "babel-core": "^6.10.4",
diff --git a/src/Comments.ts b/src/Comments.ts
index d2ab246..c7d79bb 100644
--- a/src/Comments.ts
+++ b/src/Comments.ts
@@ -1,5 +1,5 @@
-import { Injectable } from '@angular/core';
-
+import { Injectable, Inject } from '@angular/core';
+import { Http } from '@angular/http';
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
 import { Observable } from 'rxjs/Observable';
@@ -7,6 +7,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiComments {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -18,6 +20,12 @@ export interface IWpApiComments {
 
 @Injectable()
 export class WpApiComments extends WpApiParent implements IWpApiComments {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
   getList(options = {}) {
     return this.httpGet(`/comments`, options)
   }
diff --git a/src/Custom.ts b/src/Custom.ts
index e2da8d3..a3ecf8d 100644
--- a/src/Custom.ts
+++ b/src/Custom.ts
@@ -1,4 +1,4 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
 import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
@@ -8,6 +8,7 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
 import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiCustom {
@@ -20,9 +21,10 @@ export interface IWpApiCustom {
 
 export class Custom extends WpApiParent implements IWpApiCustom {
   constructor(
-    public config: WpApiAppConfig,
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
     public http: Http,
-    public entityName: string) {
+    public entityName: string
+  ) {
     super(config, http);
   }
   getList(options = {}) {
@@ -45,6 +47,13 @@ export class Custom extends WpApiParent implements IWpApiCustom {
 
 @Injectable()
 export class WpApiCustom extends WpApiParent {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
+
   getInstance(entityName = '') {
     if (typeof entityName !== 'string') {
       throw new Error(`getInstance needs an entity name`);
diff --git a/src/Media.ts b/src/Media.ts
index 1381552..68fefdf 100644
--- a/src/Media.ts
+++ b/src/Media.ts
@@ -1,4 +1,5 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
+import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
@@ -7,6 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiMedia {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -18,6 +21,12 @@ export interface IWpApiMedia {
 
 @Injectable()
 export class WpApiMedia extends WpApiParent implements IWpApiMedia {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
   getList(options = {}) {
     return this.httpGet(`/media`, options)
   }
diff --git a/src/Pages.ts b/src/Pages.ts
index 9cd2cbd..f9fb2a5 100644
--- a/src/Pages.ts
+++ b/src/Pages.ts
@@ -1,4 +1,5 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
+import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
@@ -7,6 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiPages {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -22,6 +25,13 @@ export interface IWpApiPages {
 
 @Injectable()
 export class WpApiPages extends WpApiParent implements IWpApiPages {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
+
   getList(options = {}) {
     return this.httpGet(`/pages`, options)
   }
diff --git a/src/Posts.ts b/src/Posts.ts
index 57dffdc..24e30f2 100644
--- a/src/Posts.ts
+++ b/src/Posts.ts
@@ -1,4 +1,5 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
+import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
@@ -7,6 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiPosts {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -26,6 +29,12 @@ export interface IWpApiPosts {
 
 @Injectable()
 export class WpApiPosts extends WpApiParent implements IWpApiPosts {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
   getList(options = {}) {
     return this.httpGet(`/posts`, options)
   }
diff --git a/src/Statuses.ts b/src/Statuses.ts
index 45c40ce..5f9b39e 100644
--- a/src/Statuses.ts
+++ b/src/Statuses.ts
@@ -1,4 +1,5 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
+import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
@@ -7,6 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiStatuses {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -15,6 +18,12 @@ export interface IWpApiStatuses {
 
 @Injectable()
 export class WpApiStatuses extends WpApiParent implements IWpApiStatuses {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
   getList(options = {}) {
     return this.httpGet(`/statuses`, options)
   }
diff --git a/src/Taxonomies.ts b/src/Taxonomies.ts
index 93bbee8..cd24092 100644
--- a/src/Taxonomies.ts
+++ b/src/Taxonomies.ts
@@ -1,4 +1,5 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
+import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
@@ -7,6 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiTaxonomies {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -15,6 +18,12 @@ export interface IWpApiTaxonomies {
 
 @Injectable()
 export class WpApiTaxonomies extends WpApiParent implements IWpApiTaxonomies {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
   getList(options = {}) {
     return this.httpGet(`/taxonomies`, options)
   }
diff --git a/src/Terms.ts b/src/Terms.ts
index 462497d..290afed 100644
--- a/src/Terms.ts
+++ b/src/Terms.ts
@@ -1,4 +1,5 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
+import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
@@ -7,6 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiTerms {
   getList(taxonomiesType: string, options?: RequestOptionsArgs): Observable<Response>;
@@ -20,6 +23,12 @@ const defaultTaxoType = 'categories';
 
 @Injectable()
 export class WpApiTerms extends WpApiParent implements IWpApiTerms {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
   getList(taxonomiesType = defaultTaxoType , options = {}) {
     return this.httpGet(`/${taxonomiesType}`, options)
   }
diff --git a/src/Types.ts b/src/Types.ts
index 7b0b1c4..d083c26 100644
--- a/src/Types.ts
+++ b/src/Types.ts
@@ -1,4 +1,5 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
+import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
@@ -7,6 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiTypes {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -15,6 +18,12 @@ export interface IWpApiTypes {
 
 @Injectable()
 export class WpApiTypes extends WpApiParent implements IWpApiTypes {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
   getList(options = {}) {
     return this.httpGet(`/types`, options)
   }
diff --git a/src/Users.ts b/src/Users.ts
index 39573db..9ee49b5 100644
--- a/src/Users.ts
+++ b/src/Users.ts
@@ -1,4 +1,5 @@
-import { Injectable } from '@angular/core';
+import { Injectable, Inject } from '@angular/core';
+import { Http } from '@angular/http';
 
 // Need to import interfaces dependencies
 // Bug TypeScript https://github.com/Microsoft/TypeScript/issues/5938
@@ -7,6 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
+import { WpApiConfig } from './tokens';
+import { WpApiAppConfig } from './wp-api-angular';
 
 export interface IWpApiUsers {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -19,6 +22,12 @@ export interface IWpApiUsers {
 
 @Injectable()
 export class WpApiUsers extends WpApiParent implements IWpApiUsers {
+  constructor(
+    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public http: Http
+  ) {
+    super(config, http);
+  }
   getList(options = {}) {
     return this.httpGet(`/users`, options)
   }
diff --git a/yarn.lock b/yarn.lock
index 400ce80..a20c836 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -3,36 +3,36 @@
 
 
 "@angular/common@^2.0.0":
-  version "2.1.2"
-  resolved "https://registry.yarnpkg.com/@angular/common/-/common-2.1.2.tgz#5c5b37c21d6e573def1670f43962c262bc9be82e"
+  version "2.4.5"
+  resolved "https://registry.yarnpkg.com/@angular/common/-/common-2.4.5.tgz#ada1a22b7ba01d1fdeb300115584478e031e9a4f"
 
 "@angular/compiler-cli@^2.4.4":
-  version "2.4.4"
-  resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-2.4.4.tgz#726598f850e599677fa1638d1728096384665a63"
+  version "2.4.5"
+  resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-2.4.5.tgz#efabbe10558b233dcdfe985af2bd2e84f1414c97"
   dependencies:
     "@angular/tsc-wrapped" "0.5.1"
     minimist "^1.2.0"
     reflect-metadata "^0.1.2"
 
 "@angular/compiler@^2.0.0":
-  version "2.1.2"
-  resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-2.1.2.tgz#bd2a6c558de5350bdd43aa8e8de757943ac01d2a"
+  version "2.4.5"
+  resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-2.4.5.tgz#521da325e2e002398e8f9de52cfb03d303729e72"
 
 "@angular/core@^2.0.0":
-  version "2.1.2"
-  resolved "https://registry.yarnpkg.com/@angular/core/-/core-2.1.2.tgz#ce39521643f3d97bc5923d5a7aa76604e973dac8"
+  version "2.4.5"
+  resolved "https://registry.yarnpkg.com/@angular/core/-/core-2.4.5.tgz#8b05156398afde9636e65527ffb61fc74236af5a"
 
-"@angular/http":
-  version "2.1.2"
-  resolved "https://registry.yarnpkg.com/@angular/http/-/http-2.1.2.tgz#50aa96c3b68a44b98e3f837886c96e5930eb543a"
+"@angular/http@^2.1.2":
+  version "2.4.5"
+  resolved "https://registry.yarnpkg.com/@angular/http/-/http-2.4.5.tgz#de94b2daa4ff24e8b6c8839ffaf8089b62d4430b"
 
 "@angular/platform-browser-dynamic@^2.0.0":
-  version "2.1.2"
-  resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-2.1.2.tgz#3d51b494cfe0a29354c8c1f28369883679982af4"
+  version "2.4.5"
+  resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-2.4.5.tgz#36fa975a8ee2dfe3f60bab561143974e6bdb1eff"
 
 "@angular/platform-browser@^2.0.0":
-  version "2.1.2"
-  resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-2.1.2.tgz#1f07c3a5668ac2381a7324f9001521deede159bc"
+  version "2.4.5"
+  resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-2.4.5.tgz#fa1bc891b1309bca83845787b9a08db36a787fee"
 
 "@angular/tsc-wrapped@0.5.1":
   version "0.5.1"
@@ -68,12 +68,12 @@ align-text@^0.1.1, align-text@^0.1.3:
     repeat-string "^1.5.2"
 
 amdefine@>=0.0.4:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.0.tgz#fd17474700cb5cc9c2b709f0be9d23ce3c198c33"
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
 
 ansi-regex@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.0.0.tgz#c5061b6e0ef8a81775e50f5d66151bf6bf371107"
+  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"
@@ -165,27 +165,27 @@ aws4@^1.2.1:
   version "1.5.0"
   resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.5.0.tgz#0a29ffb79c31c9e712eeb087e8e7a64b4a56d755"
 
-babel-code-frame@^6.16.0:
-  version "6.16.0"
-  resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.16.0.tgz#f90e60da0862909d3ce098733b5d3987c97cb8de"
+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 "^2.0.0"
-
-babel-core@^6.10.4, babel-core@^6.18.0:
-  version "6.18.0"
-  resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.18.0.tgz#bb5ce9bc0a956e6e94e2f12d597abb3b0b330deb"
-  dependencies:
-    babel-code-frame "^6.16.0"
-    babel-generator "^6.18.0"
-    babel-helpers "^6.16.0"
-    babel-messages "^6.8.0"
-    babel-register "^6.18.0"
-    babel-runtime "^6.9.1"
-    babel-template "^6.16.0"
-    babel-traverse "^6.18.0"
-    babel-types "^6.18.0"
+    js-tokens "^3.0.0"
+
+babel-core@^6.10.4, babel-core@^6.22.0:
+  version "6.22.1"
+  resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.22.1.tgz#9c5fd658ba1772d28d721f6d25d968fc7ae21648"
+  dependencies:
+    babel-code-frame "^6.22.0"
+    babel-generator "^6.22.0"
+    babel-helpers "^6.22.0"
+    babel-messages "^6.22.0"
+    babel-register "^6.22.0"
+    babel-runtime "^6.22.0"
+    babel-template "^6.22.0"
+    babel-traverse "^6.22.1"
+    babel-types "^6.22.0"
     babylon "^6.11.0"
     convert-source-map "^1.1.0"
     debug "^2.1.1"
@@ -197,95 +197,95 @@ babel-core@^6.10.4, babel-core@^6.18.0:
     slash "^1.0.0"
     source-map "^0.5.0"
 
-babel-generator@^6.18.0:
-  version "6.18.0"
-  resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.18.0.tgz#e4f104cb3063996d9850556a45aae4a022060a07"
+babel-generator@^6.22.0:
+  version "6.22.0"
+  resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.22.0.tgz#d642bf4961911a8adc7c692b0c9297f325cda805"
   dependencies:
-    babel-messages "^6.8.0"
-    babel-runtime "^6.9.0"
-    babel-types "^6.18.0"
+    babel-messages "^6.22.0"
+    babel-runtime "^6.22.0"
+    babel-types "^6.22.0"
     detect-indent "^4.0.0"
     jsesc "^1.3.0"
     lodash "^4.2.0"
     source-map "^0.5.0"
 
-babel-helpers@^6.16.0:
-  version "6.16.0"
-  resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.16.0.tgz#1095ec10d99279460553e67eb3eee9973d3867e3"
+babel-helpers@^6.22.0:
+  version "6.22.0"
+  resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.22.0.tgz#d275f55f2252b8101bff07bc0c556deda657392c"
   dependencies:
-    babel-runtime "^6.0.0"
-    babel-template "^6.16.0"
+    babel-runtime "^6.22.0"
+    babel-template "^6.22.0"
 
 babel-loader@^6.2.4:
-  version "6.2.7"
-  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.2.7.tgz#16fdbf64328030dc5a606827d389c8b92a2a8032"
+  version "6.2.10"
+  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.2.10.tgz#adefc2b242320cd5d15e65b31cea0e8b1b02d4b0"
   dependencies:
     find-cache-dir "^0.1.1"
     loader-utils "^0.2.11"
     mkdirp "^0.5.1"
     object-assign "^4.0.1"
 
-babel-messages@^6.8.0:
-  version "6.8.0"
-  resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.8.0.tgz#bf504736ca967e6d65ef0adb5a2a5f947c8e0eb9"
+babel-messages@^6.22.0:
+  version "6.22.0"
+  resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.22.0.tgz#36066a214f1217e4ed4164867669ecb39e3ea575"
   dependencies:
-    babel-runtime "^6.0.0"
+    babel-runtime "^6.22.0"
 
-babel-register@^6.18.0:
-  version "6.18.0"
-  resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.18.0.tgz#892e2e03865078dd90ad2c715111ec4449b32a68"
+babel-register@^6.22.0:
+  version "6.22.0"
+  resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.22.0.tgz#a61dd83975f9ca4a9e7d6eff3059494cd5ea4c63"
   dependencies:
-    babel-core "^6.18.0"
-    babel-runtime "^6.11.6"
+    babel-core "^6.22.0"
+    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.0.0, babel-runtime@^6.11.6, babel-runtime@^6.9.0, babel-runtime@^6.9.1:
-  version "6.18.0"
-  resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.18.0.tgz#0f4177ffd98492ef13b9f823e9994a02584c9078"
+babel-runtime@^6.22.0:
+  version "6.22.0"
+  resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.22.0.tgz#1cf8b4ac67c77a4ddb0db2ae1f74de52ac4ca611"
   dependencies:
     core-js "^2.4.0"
-    regenerator-runtime "^0.9.5"
+    regenerator-runtime "^0.10.0"
 
-babel-template@^6.16.0:
-  version "6.16.0"
-  resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.16.0.tgz#e149dd1a9f03a35f817ddbc4d0481988e7ebc8ca"
+babel-template@^6.22.0:
+  version "6.22.0"
+  resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.22.0.tgz#403d110905a4626b317a2a1fcb8f3b73204b2edb"
   dependencies:
-    babel-runtime "^6.9.0"
-    babel-traverse "^6.16.0"
-    babel-types "^6.16.0"
+    babel-runtime "^6.22.0"
+    babel-traverse "^6.22.0"
+    babel-types "^6.22.0"
     babylon "^6.11.0"
     lodash "^4.2.0"
 
-babel-traverse@^6.16.0, babel-traverse@^6.18.0:
-  version "6.18.0"
-  resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.18.0.tgz#5aeaa980baed2a07c8c47329cd90c3b90c80f05e"
+babel-traverse@^6.22.0, babel-traverse@^6.22.1:
+  version "6.22.1"
+  resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.22.1.tgz#3b95cd6b7427d6f1f757704908f2fc9748a5f59f"
   dependencies:
-    babel-code-frame "^6.16.0"
-    babel-messages "^6.8.0"
-    babel-runtime "^6.9.0"
-    babel-types "^6.18.0"
-    babylon "^6.11.0"
+    babel-code-frame "^6.22.0"
+    babel-messages "^6.22.0"
+    babel-runtime "^6.22.0"
+    babel-types "^6.22.0"
+    babylon "^6.15.0"
     debug "^2.2.0"
     globals "^9.0.0"
     invariant "^2.2.0"
     lodash "^4.2.0"
 
-babel-types@^6.16.0, babel-types@^6.18.0:
-  version "6.18.0"
-  resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.18.0.tgz#1f7d5a73474c59eb9151b2417bbff4e4fce7c3f8"
+babel-types@^6.22.0:
+  version "6.22.0"
+  resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.22.0.tgz#2a447e8d0ea25d2512409e4175479fd78cc8b1db"
   dependencies:
-    babel-runtime "^6.9.1"
+    babel-runtime "^6.22.0"
     esutils "^2.0.2"
     lodash "^4.2.0"
     to-fast-properties "^1.0.1"
 
-babylon@^6.11.0:
-  version "6.13.1"
-  resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.13.1.tgz#adca350e088f0467647157652bafead6ddb8dfdb"
+babylon@^6.11.0, babylon@^6.15.0:
+  version "6.15.0"
+  resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.15.0.tgz#ba65cfa1a80e1759b0e89fb562e27dccae70348e"
 
 balanced-match@^0.4.1:
   version "0.4.2"
@@ -310,8 +310,8 @@ big.js@^3.1.3:
   resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.1.3.tgz#4cada2193652eb3ca9ec8e55c9015669c9806978"
 
 binary-extensions@^1.0.0:
-  version "1.7.0"
-  resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.7.0.tgz#6c1610db163abfb34edfe42fa423343a1e01185d"
+  version "1.8.0"
+  resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.8.0.tgz#48ec8d16df4377eae5fa5884682480af4d95c774"
 
 block-stream@*:
   version "0.0.9"
@@ -320,8 +320,8 @@ block-stream@*:
     inherits "~2.0.0"
 
 bluebird@^3.4.1:
-  version "3.4.6"
-  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.6.tgz#01da8d821d87813d158967e743d5fe6c62cf8c0f"
+  version "3.4.7"
+  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.7.tgz#f72d760be09b7f76d08ed8fae98b289a8d05fab3"
 
 boolbase@~1.0.0:
   version "1.0.0"
@@ -403,8 +403,8 @@ chalk@^1.1.0, chalk@^1.1.1:
     supports-color "^2.0.0"
 
 change-case@3.0.x:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/change-case/-/change-case-3.0.0.tgz#6c9c8e35f8790870a82b6b0745be8c3cbef9b081"
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/change-case/-/change-case-3.0.1.tgz#ee5f5ad0415ad1ad9e8072cf49cd4cfa7660a554"
   dependencies:
     camel-case "^3.0.0"
     constant-case "^2.0.0"
@@ -441,8 +441,8 @@ chokidar@^1.0.0:
     fsevents "^1.0.0"
 
 clean-css@3.4.x:
-  version "3.4.20"
-  resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.20.tgz#c0d8963b5448e030f0bcd3ddd0dac4dfe3dea501"
+  version "3.4.24"
+  resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.24.tgz#89f5a5e9da37ae02394fe049a41388abbe72c3b5"
   dependencies:
     commander "2.8.x"
     source-map "0.4.x"
@@ -460,10 +460,8 @@ clone@^1.0.2:
   resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149"
 
 code-point-at@^1.0.0:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.0.1.tgz#1104cd34f9b5b45d3eba88f1babc1924e1ce35fb"
-  dependencies:
-    number-is-nan "^1.0.0"
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
 
 colors@^1.0.3:
   version "1.1.2"
@@ -492,10 +490,10 @@ commondir@^1.0.1:
   resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
 
 compressible@~2.0.8:
-  version "2.0.8"
-  resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.8.tgz#7162e6c46d3b9d200ffb45cb4e4a0f7832732503"
+  version "2.0.9"
+  resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.9.tgz#6daab4e2b599c2770dd9e21e7a891b1c5a755425"
   dependencies:
-    mime-db ">= 1.23.0 < 2"
+    mime-db ">= 1.24.0 < 2"
 
 compression@^1.5.2:
   version "1.6.2"
@@ -537,9 +535,9 @@ constants-browserify@0.0.1:
   version "0.0.1"
   resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-0.0.1.tgz#92577db527ba6c4cf0a4568d84bc031f441e21f2"
 
-content-disposition@0.5.1:
-  version "0.5.1"
-  resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.1.tgz#87476c6a67c8daa87e32e87616df883ba7fb071b"
+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"
@@ -593,8 +591,8 @@ css-what@2.1:
   resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd"
 
 dashdash@^1.12.0:
-  version "1.14.0"
-  resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.0.tgz#29e486c5418bf0f356034a993d51686a33e84141"
+  version "1.14.1"
+  resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
   dependencies:
     assert-plus "^1.0.0"
 
@@ -602,7 +600,13 @@ date-now@^0.1.4:
   version "0.1.4"
   resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
 
-debug@^2.1.1, debug@^2.2.0, debug@~2.2.0:
+debug@^2.1.1, debug@^2.2.0:
+  version "2.6.0"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.0.tgz#bc596bcabe7617f11d9fa15361eded5608b8499b"
+  dependencies:
+    ms "0.7.2"
+
+debug@~2.2.0:
   version "2.2.0"
   resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
   dependencies:
@@ -748,7 +752,7 @@ events@^1.0.0:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924"
 
-eventsource@~0.1.6:
+eventsource@0.1.6:
   version "0.1.6"
   resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232"
   dependencies:
@@ -767,12 +771,12 @@ expand-range@^1.8.1:
     fill-range "^2.1.0"
 
 express@^4.13.3:
-  version "4.14.0"
-  resolved "https://registry.yarnpkg.com/express/-/express-4.14.0.tgz#c1ee3f42cdc891fb3dc650a8922d51ec847d0d66"
+  version "4.14.1"
+  resolved "https://registry.yarnpkg.com/express/-/express-4.14.1.tgz#646c237f766f148c2120aff073817b9e4d7e0d33"
   dependencies:
     accepts "~1.3.3"
     array-flatten "1.1.1"
-    content-disposition "0.5.1"
+    content-disposition "0.5.2"
     content-type "~1.0.2"
     cookie "0.3.1"
     cookie-signature "1.0.6"
@@ -781,19 +785,19 @@ express@^4.13.3:
     encodeurl "~1.0.1"
     escape-html "~1.0.3"
     etag "~1.7.0"
-    finalhandler "0.5.0"
+    finalhandler "0.5.1"
     fresh "0.3.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.2"
+    proxy-addr "~1.1.3"
     qs "6.2.0"
     range-parser "~1.2.0"
-    send "0.14.1"
-    serve-static "~1.11.1"
-    type-is "~1.6.13"
+    send "0.14.2"
+    serve-static "~1.11.2"
+    type-is "~1.6.14"
     utils-merge "1.0.0"
     vary "~1.1.0"
 
@@ -818,8 +822,8 @@ faye-websocket@^0.10.0:
     websocket-driver ">=0.5.1"
 
 faye-websocket@~0.11.0:
-  version "0.11.0"
-  resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.0.tgz#d9ccf0e789e7db725d74bc4877d23aa42972ac50"
+  version "0.11.1"
+  resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38"
   dependencies:
     websocket-driver ">=0.5.1"
 
@@ -837,14 +841,14 @@ fill-range@^2.1.0:
     repeat-element "^1.1.2"
     repeat-string "^1.5.2"
 
-finalhandler@0.5.0:
-  version "0.5.0"
-  resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.0.tgz#e9508abece9b6dba871a6942a1d7911b91911ac7"
+finalhandler@0.5.1:
+  version "0.5.1"
+  resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.1.tgz#2c400d8d4530935bc232549c5fa385ec07de6fcd"
   dependencies:
     debug "~2.2.0"
     escape-html "~1.0.3"
     on-finished "~2.3.0"
-    statuses "~1.3.0"
+    statuses "~1.3.1"
     unpipe "~1.0.0"
 
 find-cache-dir@^0.1.1:
@@ -877,8 +881,8 @@ forever-agent@~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.1"
-  resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.1.tgz#4adf0342e1a79afa1e84c8c320a9ffc82392a1f3"
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.2.tgz#89c3534008b97eada4cbb157d58f6f5df025eae4"
   dependencies:
     asynckit "^0.4.0"
     combined-stream "^1.0.5"
@@ -897,8 +901,8 @@ fs.realpath@^1.0.0:
   resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
 
 fsevents@^1.0.0:
-  version "1.0.14"
-  resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.0.14.tgz#558e8cc38643d8ef40fe45158486d0d25758eee4"
+  version "1.0.17"
+  resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.0.17.tgz#8537f3f12272678765b4fd6528c0f1f66f8f4558"
   dependencies:
     nan "^2.3.0"
     node-pre-gyp "^0.6.29"
@@ -920,18 +924,18 @@ fstream@^1.0.0, fstream@^1.0.2, fstream@~1.0.10:
     mkdirp ">=0.5 0"
     rimraf "2"
 
-gauge@~2.6.0:
-  version "2.6.0"
-  resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.6.0.tgz#d35301ad18e96902b4751dcbbe40f4218b942a46"
+gauge@~2.7.1:
+  version "2.7.2"
+  resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.2.tgz#15cecc31b02d05345a5d6b0e171cdb3ad2307774"
   dependencies:
     aproba "^1.0.3"
     console-control-strings "^1.0.0"
-    has-color "^0.1.7"
     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"
+    supports-color "^0.2.0"
     wide-align "^1.1.0"
 
 generate-function@^2.0.0:
@@ -975,12 +979,12 @@ glob@^7.0.5:
     path-is-absolute "^1.0.0"
 
 globals@^9.0.0:
-  version "9.12.0"
-  resolved "https://registry.yarnpkg.com/globals/-/globals-9.12.0.tgz#992ce90828c3a55fa8f16fada177adb64664cf9d"
+  version "9.14.0"
+  resolved "https://registry.yarnpkg.com/globals/-/globals-9.14.0.tgz#8859936af0038741263053b39d0e76ca241e4034"
 
 graceful-fs@^4.1.2:
-  version "4.1.9"
-  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.9.tgz#baacba37d19d11f9d146d3578bc99958c3787e29"
+  version "4.1.11"
+  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
 
 "graceful-readlink@>= 1.0.0":
   version "1.0.1"
@@ -1001,10 +1005,6 @@ has-ansi@^2.0.0:
   dependencies:
     ansi-regex "^2.0.0"
 
-has-color@^0.1.7:
-  version "0.1.7"
-  resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f"
-
 has-flag@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa"
@@ -1023,8 +1023,8 @@ hawk@~3.1.3:
     sntp "1.x.x"
 
 he@1.1.x:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/he/-/he-1.1.0.tgz#29319d49beec13a9b1f3c4f9b2a6dde4859bb2a7"
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd"
 
 header-case@^1.0.0:
   version "1.0.0"
@@ -1083,17 +1083,17 @@ http-browserify@^1.3.2:
     Base64 "~0.2.0"
     inherits "~2.0.1"
 
-http-errors@~1.5.0:
-  version "1.5.0"
-  resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.0.tgz#b1cb3d8260fd8e2386cad3189045943372d48211"
+http-errors@~1.5.0, http-errors@~1.5.1:
+  version "1.5.1"
+  resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.1.tgz#788c0d2c1de2c81b9e6e8c01843b6b97eb920750"
   dependencies:
-    inherits "2.0.1"
-    setprototypeof "1.0.1"
-    statuses ">= 1.3.0 < 2"
+    inherits "2.0.3"
+    setprototypeof "1.0.2"
+    statuses ">= 1.3.1 < 2"
 
 http-proxy@^1.11.2:
-  version "1.15.2"
-  resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.15.2.tgz#642fdcaffe52d3448d2bda3b0079e9409064da31"
+  version "1.16.2"
+  resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742"
   dependencies:
     eventemitter3 "1.x.x"
     requires-port "1.x.x"
@@ -1125,7 +1125,11 @@ inflight@^1.0.4:
     once "^1.3.0"
     wrappy "1"
 
-inherits@2, inherits@2.0.1, inherits@^2.0.1, inherits@~2.0.0, inherits@~2.0.1:
+inherits@2, inherits@2.0.3, inherits@~2.0.0, inherits@~2.0.1:
+  version "2.0.3"
+  resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
+
+inherits@2.0.1, inherits@^2.0.1:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
 
@@ -1138,14 +1142,14 @@ interpret@^0.6.4:
   resolved "https://registry.yarnpkg.com/interpret/-/interpret-0.6.6.tgz#fecd7a18e7ce5ca6abfb953e1f86213a49f1625b"
 
 invariant@^2.2.0:
-  version "2.2.1"
-  resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.1.tgz#b097010547668c7e337028ebe816ebe36c8a8d54"
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360"
   dependencies:
     loose-envify "^1.0.0"
 
-ipaddr.js@1.1.1:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.1.1.tgz#c791d95f52b29c1247d5df80ada39b8a73647230"
+ipaddr.js@1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.2.0.tgz#8aba49c9192799585bdd643e0ccb50e8ae777ba4"
 
 is-binary-path@^1.0.0:
   version "1.0.1"
@@ -1260,9 +1264,9 @@ jodid25519@^1.0.0:
   dependencies:
     jsbn "~0.1.0"
 
-js-tokens@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-2.0.0.tgz#79903f5563ee778cc1162e6dcf1a0027c97f9cb5"
+js-tokens@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7"
 
 jsbn@~0.1.0:
   version "0.1.0"
@@ -1289,12 +1293,12 @@ json3@^3.3.2:
   resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1"
 
 json5@^0.5.0:
-  version "0.5.0"
-  resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.0.tgz#9b20715b026cbe3778fd769edccd822d8332a5b2"
+  version "0.5.1"
+  resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
 
 jsonpointer@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.0.tgz#6661e161d2fc445f19f98430231343722e1fcbd5"
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
 
 jsprim@^1.2.2:
   version "1.3.1"
@@ -1305,8 +1309,8 @@ jsprim@^1.2.2:
     verror "1.3.6"
 
 kind-of@^3.0.2:
-  version "3.0.4"
-  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.0.4.tgz#7b8ecf18a4e17f8269d73b501c9f232c96887a74"
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47"
   dependencies:
     is-buffer "^1.0.2"
 
@@ -1324,18 +1328,18 @@ loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0.2.6:
     object-assign "^4.0.1"
 
 lodash@^4.13.1, lodash@^4.2.0:
-  version "4.16.4"
-  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.16.4.tgz#01ce306b9bad1319f2a5528674f88297aeb70127"
+  version "4.17.4"
+  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
 
 longest@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
 
 loose-envify@^1.0.0:
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.0.tgz#6b26248c42f6d4fa4b0d8542f78edfcde35642a8"
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848"
   dependencies:
-    js-tokens "^2.0.0"
+    js-tokens "^3.0.0"
 
 lower-case-first@^1.0.0:
   version "1.0.2"
@@ -1362,6 +1366,13 @@ memory-fs@~0.3.0:
     errno "^0.1.3"
     readable-stream "^2.0.1"
 
+memory-fs@~0.4.1:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552"
+  dependencies:
+    errno "^0.1.3"
+    readable-stream "^2.0.1"
+
 merge-descriptors@1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
@@ -1388,15 +1399,15 @@ micromatch@^2.1.5:
     parse-glob "^3.0.4"
     regex-cache "^0.4.2"
 
-"mime-db@>= 1.23.0 < 2", mime-db@~1.24.0:
-  version "1.24.0"
-  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.24.0.tgz#e2d13f939f0016c6e4e9ad25a8652f126c467f0c"
+"mime-db@>= 1.24.0 < 2", mime-db@~1.26.0:
+  version "1.26.0"
+  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.26.0.tgz#eaffcd0e4fc6935cf8134da246e2e6c35305adff"
 
-mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.7:
-  version "2.1.12"
-  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.12.tgz#152ba256777020dd4663f54c2e7bc26381e71729"
+mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.13, mime-types@~2.1.7:
+  version "2.1.14"
+  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.14.tgz#f7ef7d97583fcaf3b7d282b6f8b5679dab1e94ee"
   dependencies:
-    mime-db "~1.24.0"
+    mime-db "~1.26.0"
 
 mime@1.3.4, mime@^1.3.4:
   version "1.3.4"
@@ -1426,9 +1437,13 @@ ms@0.7.1:
   version "0.7.1"
   resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098"
 
+ms@0.7.2:
+  version "0.7.2"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765"
+
 nan@^2.3.0:
-  version "2.4.0"
-  resolved "https://registry.yarnpkg.com/nan/-/nan-2.4.0.tgz#fb3c59d45fe4effe215f0b890f8adf6eb32d2232"
+  version "2.5.1"
+  resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.1.tgz#d5b01691253326a97a2bbee9e61c55d8d60351e2"
 
 ncname@1.0.x:
   version "1.0.0"
@@ -1441,8 +1456,8 @@ negotiator@0.6.1:
   resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9"
 
 no-case@^2.2.0:
-  version "2.3.0"
-  resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.0.tgz#ca2825ccb76b18e6f79d573dcfbf1eace33dd164"
+  version "2.3.1"
+  resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.1.tgz#7aeba1c73a52184265554b7dc03baf720df80081"
   dependencies:
     lower-case "^1.1.1"
 
@@ -1475,23 +1490,19 @@ node-libs-browser@^0.6.0:
     vm-browserify "0.0.4"
 
 node-pre-gyp@^0.6.29:
-  version "0.6.31"
-  resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.31.tgz#d8a00ddaa301a940615dbcc8caad4024d58f6017"
+  version "0.6.32"
+  resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.32.tgz#fc452b376e7319b3d255f5f34853ef6fd8fe1fd5"
   dependencies:
     mkdirp "~0.5.1"
     nopt "~3.0.6"
-    npmlog "^4.0.0"
+    npmlog "^4.0.1"
     rc "~1.1.6"
-    request "^2.75.0"
+    request "^2.79.0"
     rimraf "~2.5.4"
     semver "~5.3.0"
     tar "~2.2.1"
     tar-pack "~3.3.0"
 
-node-uuid@~1.4.7:
-  version "1.4.7"
-  resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.7.tgz#6da5a17668c4b3dd59623bda11cf7fa4c1f60a6f"
-
 nopt@~3.0.6:
   version "3.0.6"
   resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
@@ -1502,13 +1513,13 @@ normalize-path@^2.0.1:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.0.1.tgz#47886ac1662760d4261b7d979d241709d3ce3f7a"
 
-npmlog@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.0.tgz#e094503961c70c1774eb76692080e8d578a9f88f"
+npmlog@^4.0.1:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f"
   dependencies:
     are-we-there-yet "~1.1.2"
     console-control-strings "~1.1.0"
-    gauge "~2.6.0"
+    gauge "~2.7.1"
     set-blocking "~2.0.0"
 
 nth-check@~1.0.1:
@@ -1530,8 +1541,8 @@ object-assign@^2.0.0:
   resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa"
 
 object-assign@^4.0.1, object-assign@^4.1.0:
-  version "4.1.0"
-  resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0"
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
 
 object.omit@^2.0.0:
   version "2.0.1"
@@ -1682,12 +1693,12 @@ process@^0.11.0, process@~0.11.0:
   version "0.11.9"
   resolved "https://registry.yarnpkg.com/process/-/process-0.11.9.tgz#7bd5ad21aa6253e7da8682264f1e11d11c0318c1"
 
-proxy-addr@~1.1.2:
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.2.tgz#b4cc5f22610d9535824c123aef9d3cf73c40ba37"
+proxy-addr@~1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.3.tgz#dc97502f5722e888467b3fa2297a7b1ff47df074"
   dependencies:
     forwarded "~0.1.0"
-    ipaddr.js "1.1.1"
+    ipaddr.js "1.2.0"
 
 prr@~0.0.0:
   version "0.0.0"
@@ -1722,8 +1733,8 @@ querystringify@0.0.x:
   resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-0.0.4.tgz#0cf7f84f9463ff0ae51c4c4b142d95be37724d9c"
 
 randomatic@^1.1.3:
-  version "1.1.5"
-  resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.5.tgz#5e9ef5f2d573c67bd2b8124ae90b5156e457840b"
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.6.tgz#110dcabff397e9dcff7c0789ccc0a49adf1ec5bb"
   dependencies:
     is-number "^2.0.2"
     kind-of "^3.0.2"
@@ -1759,7 +1770,19 @@ readable-stream@^1.0.27-1, readable-stream@^1.1.13:
     isarray "0.0.1"
     string_decoder "~0.10.x"
 
-"readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@~2.1.4:
+"readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.1, readable-stream@^2.0.2:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.2.tgz#a9e6fec3c7dda85f8bb1b3ba7028604556fc825e"
+  dependencies:
+    buffer-shims "^1.0.0"
+    core-util-is "~1.0.0"
+    inherits "~2.0.1"
+    isarray "~1.0.0"
+    process-nextick-args "~1.0.6"
+    string_decoder "~0.10.x"
+    util-deprecate "~1.0.1"
+
+readable-stream@~2.1.4:
   version "2.1.5"
   resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0"
   dependencies:
@@ -1781,12 +1804,12 @@ readdirp@^2.0.0:
     set-immediate-shim "^1.0.1"
 
 reflect-metadata@^0.1.2, reflect-metadata@^0.1.3:
-  version "0.1.8"
-  resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.8.tgz#72426d570b60776e3688968bd5ab9537a15cecf6"
+  version "0.1.9"
+  resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.9.tgz#987238dc87a516895fe457f130435ffbd763a4d4"
 
-regenerator-runtime@^0.9.5:
-  version "0.9.5"
-  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.9.5.tgz#403d6d40a4bdff9c330dd9392dcbb2d9a8bba1fc"
+regenerator-runtime@^0.10.0:
+  version "0.10.1"
+  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz#257f41961ce44558b18f7814af48c17559f9faeb"
 
 regex-cache@^0.4.2:
   version "0.4.3"
@@ -1823,9 +1846,9 @@ repeating@^2.0.0:
   dependencies:
     is-finite "^1.0.0"
 
-request@^2.75.0:
-  version "2.76.0"
-  resolved "https://registry.yarnpkg.com/request/-/request-2.76.0.tgz#be44505afef70360a0436955106be3945d95560e"
+request@^2.79.0:
+  version "2.79.0"
+  resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de"
   dependencies:
     aws-sign2 "~0.6.0"
     aws4 "^1.2.1"
@@ -1841,12 +1864,12 @@ request@^2.75.0:
     isstream "~0.1.2"
     json-stringify-safe "~5.0.1"
     mime-types "~2.1.7"
-    node-uuid "~1.4.7"
     oauth-sign "~0.8.1"
     qs "~6.3.0"
     stringstream "~0.0.4"
     tough-cookie "~2.3.0"
     tunnel-agent "~0.4.1"
+    uuid "^3.0.0"
 
 requires-port@1.0.x, requires-port@1.x.x:
   version "1.0.0"
@@ -1878,9 +1901,9 @@ semver@^5.0.1, semver@~5.3.0:
   version "5.3.0"
   resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
 
-send@0.14.1:
-  version "0.14.1"
-  resolved "https://registry.yarnpkg.com/send/-/send-0.14.1.tgz#a954984325392f51532a7760760e459598c89f7a"
+send@0.14.2:
+  version "0.14.2"
+  resolved "https://registry.yarnpkg.com/send/-/send-0.14.2.tgz#39b0438b3f510be5dc6f667a11f71689368cdeef"
   dependencies:
     debug "~2.2.0"
     depd "~1.1.0"
@@ -1889,12 +1912,12 @@ send@0.14.1:
     escape-html "~1.0.3"
     etag "~1.7.0"
     fresh "0.3.0"
-    http-errors "~1.5.0"
+    http-errors "~1.5.1"
     mime "1.3.4"
-    ms "0.7.1"
+    ms "0.7.2"
     on-finished "~2.3.0"
     range-parser "~1.2.0"
-    statuses "~1.3.0"
+    statuses "~1.3.1"
 
 sentence-case@^2.1.0:
   version "2.1.0"
@@ -1915,14 +1938,14 @@ serve-index@^1.7.2:
     mime-types "~2.1.11"
     parseurl "~1.3.1"
 
-serve-static@~1.11.1:
-  version "1.11.1"
-  resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.11.1.tgz#d6cce7693505f733c759de57befc1af76c0f0805"
+serve-static@~1.11.2:
+  version "1.11.2"
+  resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.11.2.tgz#2cf9889bd4435a320cc36895c9aa57bd662e6ac7"
   dependencies:
     encodeurl "~1.0.1"
     escape-html "~1.0.3"
     parseurl "~1.3.1"
-    send "0.14.1"
+    send "0.14.2"
 
 set-blocking@~2.0.0:
   version "2.0.0"
@@ -1932,17 +1955,17 @@ 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.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.1.tgz#52009b27888c4dc48f591949c0a8275834c1ca7e"
+setprototypeof@1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.2.tgz#81a552141ec104b88e89ce383103ad5c66564d08"
 
 sha.js@2.2.6:
   version "2.2.6"
   resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.2.6.tgz#17ddeddc5f722fb66501658895461977867315ba"
 
 signal-exit@^3.0.0:
-  version "3.0.1"
-  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.1.tgz#5a4c884992b63a7acd9badb7894c3ee9cfccad81"
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
 
 slash@^1.0.0:
   version "1.0.0"
@@ -1961,11 +1984,11 @@ sntp@1.x.x:
     hoek "2.x.x"
 
 sockjs-client@^1.0.3:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.1.tgz#284843e9a9784d7c474b1571b3240fca9dda4bb0"
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.2.tgz#f0212a8550e4c9468c8cceaeefd2e3493c033ad5"
   dependencies:
     debug "^2.2.0"
-    eventsource "~0.1.6"
+    eventsource "0.1.6"
     faye-websocket "~0.11.0"
     inherits "^2.0.1"
     json3 "^3.3.2"
@@ -1978,13 +2001,13 @@ sockjs@^0.3.15:
     faye-websocket "^0.10.0"
     uuid "^2.0.2"
 
-source-list-map@~0.1.0:
-  version "0.1.6"
-  resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.6.tgz#e1e6f94f0b40c4d28dcf8f5b8766e0e45636877f"
+source-list-map@~0.1.7:
+  version "0.1.8"
+  resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106"
 
 source-map-support@^0.4.2:
-  version "0.4.5"
-  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.5.tgz#4438df4219e1b3c7feb674614b4c67f9722db1e4"
+  version "0.4.11"
+  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.11.tgz#647f939978b38535909530885303daf23279f322"
   dependencies:
     source-map "^0.5.3"
 
@@ -1999,8 +2022,8 @@ source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1:
   resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
 
 sshpk@^1.7.0:
-  version "1.10.1"
-  resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.1.tgz#30e1a5d329244974a1af61511339d595af6638b0"
+  version "1.10.2"
+  resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.2.tgz#d5a804ce22695515638e798dbe23273de070a5fa"
   dependencies:
     asn1 "~0.2.3"
     assert-plus "^1.0.0"
@@ -2013,9 +2036,9 @@ sshpk@^1.7.0:
     jsbn "~0.1.0"
     tweetnacl "~0.14.0"
 
-"statuses@>= 1.3.0 < 2", statuses@~1.3.0:
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.0.tgz#8e55758cb20e7682c1f4fce8dcab30bf01d1e07a"
+"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"
 
 stream-browserify@^1.0.0:
   version "1.0.0"
@@ -2054,13 +2077,17 @@ strip-json-comments@~1.0.4:
   version "1.0.4"
   resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91"
 
+supports-color@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-0.2.0.tgz#d92de2694eb3f67323973d7ae3d8b55b4c22190a"
+
 supports-color@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
 
 supports-color@^3.1.0, supports-color@^3.1.1:
-  version "3.1.2"
-  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5"
+  version "3.2.3"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6"
   dependencies:
     has-flag "^1.0.0"
 
@@ -2118,8 +2145,8 @@ to-fast-properties@^1.0.1:
   resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320"
 
 toposort@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.0.tgz#b66cf385a1a8a8e68e45b8259e7f55875e8b06ef"
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.2.tgz#be1de72431320fcefe35a7b539c1c336cbcfd32c"
 
 tough-cookie@~2.3.0:
   version "2.3.2"
@@ -2139,8 +2166,8 @@ ts-loader@0.8.1:
     semver "^5.0.1"
 
 tsickle@^0.2:
-  version "0.2.4"
-  resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.2.4.tgz#98f4837bf45eb142a90fec751f8e30c6a5bc7c06"
+  version "0.2.5"
+  resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.2.5.tgz#60d8e12462e6f8fbdac92d5f5fead2bf49085d82"
   dependencies:
     minimist "^1.2.0"
     mkdirp "^0.5.1"
@@ -2156,15 +2183,15 @@ tunnel-agent@~0.4.1:
   resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb"
 
 tweetnacl@^0.14.3, tweetnacl@~0.14.0:
-  version "0.14.3"
-  resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.3.tgz#3da382f670f25ded78d7b3d1792119bca0b7132d"
+  version "0.14.5"
+  resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
 
-type-is@~1.6.13:
-  version "1.6.13"
-  resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.13.tgz#6e83ba7bc30cd33a7bb0b7fb00737a2085bf9d08"
+type-is@~1.6.14:
+  version "1.6.14"
+  resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.14.tgz#e219639c17ded1ca0789092dd54a03826b817cb2"
   dependencies:
     media-typer "0.3.0"
-    mime-types "~2.1.11"
+    mime-types "~2.1.13"
 
 typescript@^2.1.5:
   version "2.1.5"
@@ -2180,8 +2207,8 @@ uglify-js@2.6.x:
     yargs "~3.10.0"
 
 uglify-js@~2.7.3:
-  version "2.7.4"
-  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.7.4.tgz#a295a0de12b6a650c031c40deb0dc40b14568bd2"
+  version "2.7.5"
+  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.7.5.tgz#4612c0c7baaee2ba7c487de4904ae122079f2ca8"
   dependencies:
     async "~0.2.6"
     source-map "~0.5.1"
@@ -2218,8 +2245,8 @@ url-parse@1.0.x:
     requires-port "1.0.x"
 
 url-parse@^1.1.1:
-  version "1.1.6"
-  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.6.tgz#ab8ff5aea1388071961255e2236147c52ca5fc48"
+  version "1.1.7"
+  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.7.tgz#025cff999653a459ab34232147d89514cc87d74a"
   dependencies:
     querystringify "0.0.x"
     requires-port "1.0.x"
@@ -2257,6 +2284,10 @@ uuid@^2.0.2:
   version "2.0.3"
   resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a"
 
+uuid@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1"
+
 vary@~1.1.0:
   version "1.1.0"
   resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.0.tgz#e1e5affbbd16ae768dd2674394b9ad3022653140"
@@ -2282,17 +2313,17 @@ watchpack@^0.2.1:
     graceful-fs "^4.1.2"
 
 webpack-core@~0.6.0:
-  version "0.6.8"
-  resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.8.tgz#edf9135de00a6a3c26dd0f14b208af0aa4af8d0a"
+  version "0.6.9"
+  resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.9.tgz#fc571588c8558da77be9efb6debdc5a3b172bdc2"
   dependencies:
-    source-list-map "~0.1.0"
+    source-list-map "~0.1.7"
     source-map "~0.4.1"
 
 webpack-dev-middleware@^1.4.0:
-  version "1.8.4"
-  resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.8.4.tgz#e8765c9122887ce9e3abd4cc9c3eb31b61e0948d"
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.9.0.tgz#a1c67a3dfd8a5c5d62740aa0babe61758b4c84aa"
   dependencies:
-    memory-fs "~0.3.0"
+    memory-fs "~0.4.1"
     mime "^1.3.4"
     path-is-absolute "^1.0.0"
     range-parser "^1.0.3"

From 14145d96d34e04db478e552ee5a84be0d522112c Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Wed, 1 Feb 2017 00:08:48 +0100
Subject: [PATCH 21/27] bump beta5

---
 CHANGELOG.md | 5 +++++
 package.json | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index df27d2a..56424da 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+<a name="3.0.0-beta5"></a>
+### 3.0.0-beta5 (2017-02-01)
+
+Fix config and http injection <https://github.com/shprink/wp-api-angular/issues/20>
+
 <a name="3.0.0-beta4"></a>
 ### 3.0.0-beta4 (2017-01-27)
 
diff --git a/package.json b/package.json
index 351fe81..abedc9a 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angular",
-  "version": "3.0.0-beta4",
+  "version": "3.0.0-beta5",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "wp-api-angular.js",
   "typings": "wp-api-angular.d.ts",

From bcd88aeb835b6a45881819b6eced58edd40a5e54 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Wed, 1 Feb 2017 02:02:16 +0100
Subject: [PATCH 22/27] export missing tokens to fix aot in ionic cli

---
 .gitignore            | 1 +
 src/wp-api-angular.ts | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/.gitignore b/.gitignore
index a343a3c..8890675 100644
--- a/.gitignore
+++ b/.gitignore
@@ -32,3 +32,4 @@ config.json
 dist/
 aot/
 angular2-webpack-starter/
+testionic/
diff --git a/src/wp-api-angular.ts b/src/wp-api-angular.ts
index 8b1ff91..547da29 100644
--- a/src/wp-api-angular.ts
+++ b/src/wp-api-angular.ts
@@ -30,6 +30,8 @@ export { WpApiStatuses } from './Statuses';
 export { WpApiTerms } from './Terms';
 export { WpApiCustom } from './Custom';
 
+export { WpApiApp, WpApiConfig } from './tokens';
+
 export interface WpApiAppConfig {
   baseUrl: string;
   namespace?: string;

From 620dee366960da1dd29870f3dae71f397f398909 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Wed, 1 Feb 2017 02:03:00 +0100
Subject: [PATCH 23/27] bump beta6

---
 CHANGELOG.md | 5 +++++
 package.json | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 56424da..0b71685 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+<a name="3.0.0-beta56></a>
+### 3.0.0-beta6 (2017-02-01)
+
+export missing tokens to fix aot in ionic cli
+
 <a name="3.0.0-beta5"></a>
 ### 3.0.0-beta5 (2017-02-01)
 
diff --git a/package.json b/package.json
index abedc9a..9f81614 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angular",
-  "version": "3.0.0-beta5",
+  "version": "3.0.0-beta6",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "wp-api-angular.js",
   "typings": "wp-api-angular.d.ts",

From 8a1259078c16873a7e5cbc246fd198a0ec218b97 Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sat, 4 Feb 2017 00:40:59 +0100
Subject: [PATCH 24/27] prepare beta7

---
 CHANGELOG.md          | 38 +++++++++++++++++++++++++++++++++++++-
 README.md             | 24 ++++++++++++++++--------
 demo/module.ts        | 15 ++++++++++++---
 src/Comments.ts       |  8 ++++----
 src/Custom.ts         | 14 +++++++-------
 src/Loaders.ts        | 21 +++++++++++++++++++++
 src/Media.ts          |  8 ++++----
 src/Pages.ts          |  8 ++++----
 src/Parent.ts         | 21 +++++++++------------
 src/Posts.ts          |  8 ++++----
 src/Statuses.ts       |  8 ++++----
 src/Taxonomies.ts     |  8 ++++----
 src/Terms.ts          |  8 ++++----
 src/Types.ts          |  8 ++++----
 src/Users.ts          |  8 ++++----
 src/wp-api-angular.ts | 19 ++++++++++++-------
 16 files changed, 150 insertions(+), 74 deletions(-)
 create mode 100644 src/Loaders.ts

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0b71685..a4177e1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,40 @@
-<a name="3.0.0-beta56></a>
+<a name="3.0.0-beta7></a>
+### 3.0.0-beta7 (2017-02-04)
+
+* BREAKING CHANGE: `WpApiModule.initializeApp` is now `WpApiModule.forRoot`
+
+Follow the following docs to migrate to the new way to bootstrap your module:
+
+An exported function instead `WpApiLoaderFactory` is mandatory to be used with [AoT compilation](https://angular.io/docs/ts/latest/cookbook/aot-compiler.html) or [Ionic 2](http://ionic.io/).
+
+
+```js
+import { Http } from '@angular/http';
+import { 
+  WpApiModule
+  WpApiLoader,
+  WpApiStaticLoader
+} from 'wp-api-angular'
+
+export function WpApiLoaderFactory(http: Http) {
+  return new WpApiStaticLoader(http, 'http://YOUR_DOMAIN/wp-json/', /* namespace is optional, default: '/wp/v2' */);
+}
+
+@NgModule({
+  imports: [
+    BrowserModule,
+    WpApiModule.forRoot({
+      provide: WpApiLoader,
+      useFactory: (WpApiLoaderFactory),
+      deps: [Http]
+    })
+  ],
+  bootstrap: [App]
+})
+export class AppModule { }
+```
+
+<a name="3.0.0-beta6></a>
 ### 3.0.0-beta6 (2017-02-01)
 
 export missing tokens to fix aot in ionic cli
diff --git a/README.md b/README.md
index 0351332..c829cd6 100644
--- a/README.md
+++ b/README.md
@@ -30,22 +30,30 @@ UMD files are available `wp-api-angular.umd.js` and `wp-api-angular.umd.min.js`,
 
 ## Bootstrap
 
+An exported function instead `WpApiLoaderFactory` is mandatory to be used with [AoT compilation](https://angular.io/docs/ts/latest/cookbook/aot-compiler.html) or [Ionic 2](http://ionic.io/).
+
 
 ```js
-import { NgModule } from '@angular/core';
-import { BrowserModule } from '@angular/platform-browser';
-import { WpApiModule } from 'wp-api-angular'
-import { App } from './app';
+import { Http } from '@angular/http';
+import { 
+  WpApiModule
+  WpApiLoader,
+  WpApiStaticLoader
+} from 'wp-api-angular'
+
+export function WpApiLoaderFactory(http: Http) {
+  return new WpApiStaticLoader(http, 'http://YOUR_DOMAIN/wp-json/', /* namespace is optional, default: '/wp/v2' */);
+}
 
 @NgModule({
   imports: [
     BrowserModule,
-    WpApiModule.initializeApp({
-      baseUrl: "http://YOUR_DOMAIN/wp-json/",
-      namespace: '/wp/v2' // (optional, default: '/wp/v2')
+    WpApiModule.forRoot({
+      provide: WpApiLoader,
+      useFactory: (WpApiLoaderFactory),
+      deps: [Http]
     })
   ],
-  declarations: [App],
   bootstrap: [App]
 })
 export class AppModule { }
diff --git a/demo/module.ts b/demo/module.ts
index 6799aec..6fb33bf 100644
--- a/demo/module.ts
+++ b/demo/module.ts
@@ -1,8 +1,11 @@
 import { NgModule } from '@angular/core';
 import { BrowserModule } from '@angular/platform-browser';
 import 'rxjs/add/operator/toPromise';
+import { Http } from '@angular/http';
 import {
-  WpApiModule
+  WpApiModule,
+  WpApiLoader,
+  WpApiStaticLoader
 } from '../dist/wp-api-angular'
 import { App } from './app';
 
@@ -10,11 +13,17 @@ let config = require('../config.json');
 
 console.info('config', config);
 
+export function WpApiLoaderFactory(http: Http) {
+  return new WpApiStaticLoader(http, config.baseUrl);
+}
+
 @NgModule({
   imports: [
     BrowserModule,
-    WpApiModule.initializeApp({
-      baseUrl: config.baseUrl
+    WpApiModule.forRoot({
+      provide: WpApiLoader,
+      useFactory: (WpApiLoaderFactory),
+      deps: [Http]
     })
   ],
   declarations: [App],
diff --git a/src/Comments.ts b/src/Comments.ts
index c7d79bb..2403735 100644
--- a/src/Comments.ts
+++ b/src/Comments.ts
@@ -7,8 +7,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiComments {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -21,10 +21,10 @@ export interface IWpApiComments {
 @Injectable()
 export class WpApiComments extends WpApiParent implements IWpApiComments {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
   getList(options = {}) {
     return this.httpGet(`/comments`, options)
diff --git a/src/Custom.ts b/src/Custom.ts
index a3ecf8d..03697c6 100644
--- a/src/Custom.ts
+++ b/src/Custom.ts
@@ -8,8 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiCustom {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -21,11 +21,11 @@ export interface IWpApiCustom {
 
 export class Custom extends WpApiParent implements IWpApiCustom {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http,
     public entityName: string
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
   getList(options = {}) {
     return this.httpGet(`/${this.entityName}`, options)
@@ -48,16 +48,16 @@ export class Custom extends WpApiParent implements IWpApiCustom {
 @Injectable()
 export class WpApiCustom extends WpApiParent {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
 
   getInstance(entityName = '') {
     if (typeof entityName !== 'string') {
       throw new Error(`getInstance needs an entity name`);
     }
-    return new Custom(this.config, this.http, entityName);
+    return new Custom(this.wpApiLoader, this.http, entityName);
   }
 }
diff --git a/src/Loaders.ts b/src/Loaders.ts
new file mode 100644
index 0000000..1dcc273
--- /dev/null
+++ b/src/Loaders.ts
@@ -0,0 +1,21 @@
+import { Http, HttpModule } from '@angular/http';
+import { stripTrailingSlash } from './utils';
+
+export abstract class WpApiLoader {
+  abstract getWebServiceUrl(postfix: string): string;
+}
+
+export class WpApiStaticLoader implements WpApiLoader {
+  completeUrl: string;
+  constructor(
+    private http: Http,
+    private baseUrl: string = 'http://changeYourDomainHere.com/wp-json',
+    private namespace: string = '/wp/v2'
+  ) {
+    this.completeUrl = `${stripTrailingSlash(this.baseUrl)}${this.namespace}`;
+  }
+
+  public getWebServiceUrl(postfix: string): string {
+    return `${this.completeUrl}${postfix}`
+  }
+}
diff --git a/src/Media.ts b/src/Media.ts
index 68fefdf..c94c5f8 100644
--- a/src/Media.ts
+++ b/src/Media.ts
@@ -8,8 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiMedia {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -22,10 +22,10 @@ export interface IWpApiMedia {
 @Injectable()
 export class WpApiMedia extends WpApiParent implements IWpApiMedia {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
   getList(options = {}) {
     return this.httpGet(`/media`, options)
diff --git a/src/Pages.ts b/src/Pages.ts
index f9fb2a5..52bb621 100644
--- a/src/Pages.ts
+++ b/src/Pages.ts
@@ -8,8 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiPages {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -26,10 +26,10 @@ export interface IWpApiPages {
 @Injectable()
 export class WpApiPages extends WpApiParent implements IWpApiPages {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
 
   getList(options = {}) {
diff --git a/src/Parent.ts b/src/Parent.ts
index 953267f..9ee449c 100644
--- a/src/Parent.ts
+++ b/src/Parent.ts
@@ -7,9 +7,9 @@ import { Observable } from 'rxjs/Observable';
 import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
-import { WpApiAppConfig } from './wp-api-angular';
+import { WpApiLoader } from './Loaders';
 import { stripTrailingSlash } from './utils';
-import { WpApiConfig } from './tokens';
+
 
 export interface IParent {
   httpGet(url: string, options?: RequestOptionsArgs): Observable<Response>;
@@ -23,29 +23,26 @@ export interface IParent {
 @Injectable()
 export class WpApiParent implements IParent {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) { }
 
-  getFullUrl(postfix: string): string {
-    return `${stripTrailingSlash(this.config.baseUrl)}${this.config.namespace || '/wp/v2'}${postfix}`;
-  }
   httpGet(url: string, options = {}) {
-    return this.http.get(this.getFullUrl(url), options);
+    return this.http.get(this.wpApiLoader.getWebServiceUrl(url), options);
   }
   httpHead(url: string, options = {}) {
-    return this.http.head(this.getFullUrl(url), options);
+    return this.http.head(this.wpApiLoader.getWebServiceUrl(url), options);
   }
   httpDelete(url: string, options = {}) {
-    return this.http.delete(this.getFullUrl(url), options);
+    return this.http.delete(this.wpApiLoader.getWebServiceUrl(url), options);
   }
   httpPost(url: string, body = {}, options = {}) {
-    return this.http.post(this.getFullUrl(url), body, options);
+    return this.http.post(this.wpApiLoader.getWebServiceUrl(url), body, options);
   }
   httpPut(url: string, body = {}, options = {}) {
-    return this.http.put(this.getFullUrl(url), body, options);
+    return this.http.put(this.wpApiLoader.getWebServiceUrl(url), body, options);
   }
   httpPatch(url: string, body = {}, options = {}) {
-    return this.http.patch(this.getFullUrl(url), body, options);
+    return this.http.patch(this.wpApiLoader.getWebServiceUrl(url), body, options);
   }
 }
diff --git a/src/Posts.ts b/src/Posts.ts
index 24e30f2..4c2cf1c 100644
--- a/src/Posts.ts
+++ b/src/Posts.ts
@@ -8,8 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiPosts {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -30,10 +30,10 @@ export interface IWpApiPosts {
 @Injectable()
 export class WpApiPosts extends WpApiParent implements IWpApiPosts {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
   getList(options = {}) {
     return this.httpGet(`/posts`, options)
diff --git a/src/Statuses.ts b/src/Statuses.ts
index 5f9b39e..9692ea4 100644
--- a/src/Statuses.ts
+++ b/src/Statuses.ts
@@ -8,8 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiStatuses {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -19,10 +19,10 @@ export interface IWpApiStatuses {
 @Injectable()
 export class WpApiStatuses extends WpApiParent implements IWpApiStatuses {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
   getList(options = {}) {
     return this.httpGet(`/statuses`, options)
diff --git a/src/Taxonomies.ts b/src/Taxonomies.ts
index cd24092..4175ba5 100644
--- a/src/Taxonomies.ts
+++ b/src/Taxonomies.ts
@@ -8,8 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiTaxonomies {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -19,10 +19,10 @@ export interface IWpApiTaxonomies {
 @Injectable()
 export class WpApiTaxonomies extends WpApiParent implements IWpApiTaxonomies {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
   getList(options = {}) {
     return this.httpGet(`/taxonomies`, options)
diff --git a/src/Terms.ts b/src/Terms.ts
index 290afed..ccad587 100644
--- a/src/Terms.ts
+++ b/src/Terms.ts
@@ -8,8 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiTerms {
   getList(taxonomiesType: string, options?: RequestOptionsArgs): Observable<Response>;
@@ -24,10 +24,10 @@ const defaultTaxoType = 'categories';
 @Injectable()
 export class WpApiTerms extends WpApiParent implements IWpApiTerms {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
   getList(taxonomiesType = defaultTaxoType , options = {}) {
     return this.httpGet(`/${taxonomiesType}`, options)
diff --git a/src/Types.ts b/src/Types.ts
index d083c26..7c51478 100644
--- a/src/Types.ts
+++ b/src/Types.ts
@@ -8,8 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiTypes {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -19,10 +19,10 @@ export interface IWpApiTypes {
 @Injectable()
 export class WpApiTypes extends WpApiParent implements IWpApiTypes {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
   getList(options = {}) {
     return this.httpGet(`/types`, options)
diff --git a/src/Users.ts b/src/Users.ts
index 9ee49b5..93f8305 100644
--- a/src/Users.ts
+++ b/src/Users.ts
@@ -8,8 +8,8 @@ import { RequestOptionsArgs } from '@angular/http/src/interfaces';
 import { Response } from '@angular/http/src/static_response';
 
 import { WpApiParent } from './Parent';
-import { WpApiConfig } from './tokens';
-import { WpApiAppConfig } from './wp-api-angular';
+
+import { WpApiLoader } from './Loaders';
 
 export interface IWpApiUsers {
   getList(options?: RequestOptionsArgs): Observable<Response>;
@@ -23,10 +23,10 @@ export interface IWpApiUsers {
 @Injectable()
 export class WpApiUsers extends WpApiParent implements IWpApiUsers {
   constructor(
-    @Inject(WpApiConfig) public config: WpApiAppConfig,
+    public wpApiLoader: WpApiLoader,
     public http: Http
   ) {
-    super(config, http);
+    super(wpApiLoader, http);
   }
   getList(options = {}) {
     return this.httpGet(`/users`, options)
diff --git a/src/wp-api-angular.ts b/src/wp-api-angular.ts
index 547da29..4e7917f 100644
--- a/src/wp-api-angular.ts
+++ b/src/wp-api-angular.ts
@@ -6,7 +6,7 @@ import {
 import 'rxjs';
 import { Http, HttpModule } from '@angular/http';
 
-import { WpApiApp, WpApiConfig } from './tokens';
+import { WpApiApp } from './tokens';
 
 import { WpApiPosts } from './Posts';
 import { WpApiPages } from './Pages';
@@ -18,6 +18,7 @@ import { WpApiTaxonomies } from './Taxonomies';
 import { WpApiStatuses } from './Statuses';
 import { WpApiTerms } from './Terms';
 import { WpApiCustom } from './Custom';
+import { WpApiLoader, WpApiStaticLoader } from './Loaders';
 
 export { WpApiPosts } from './Posts';
 export { WpApiPages } from './Pages';
@@ -29,12 +30,12 @@ export { WpApiTaxonomies } from './Taxonomies';
 export { WpApiStatuses } from './Statuses';
 export { WpApiTerms } from './Terms';
 export { WpApiCustom } from './Custom';
+export { WpApiLoader, WpApiStaticLoader } from './Loaders';
 
-export { WpApiApp, WpApiConfig } from './tokens';
+export { WpApiApp } from './tokens';
 
-export interface WpApiAppConfig {
-  baseUrl: string;
-  namespace?: string;
+export function WpApiLoaderFactory(http: Http) {
+  return new WpApiStaticLoader(http);
 }
 
 @NgModule({
@@ -58,11 +59,15 @@ export interface WpApiAppConfig {
   ]
 })
 export class WpApiModule {
-  static initializeApp(config: WpApiAppConfig): ModuleWithProviders {
+  static forRoot(providedLoader: any = {
+    provide: WpApiLoader,
+    useFactory: WpApiLoaderFactory,
+    deps: [Http]
+  }): ModuleWithProviders {
     return {
       ngModule: WpApiModule,
       providers: [
-        { provide: WpApiConfig, useValue: config }
+        providedLoader
       ]
     };
   }

From 1268926106bab728de3124c988f60556f50328ac Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Sat, 4 Feb 2017 00:47:18 +0100
Subject: [PATCH 25/27] bump beta7

---
 README.md    | 2 +-
 package.json | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index c829cd6..7b6dc9a 100644
--- a/README.md
+++ b/README.md
@@ -36,7 +36,7 @@ An exported function instead `WpApiLoaderFactory` is mandatory to be used with [
 ```js
 import { Http } from '@angular/http';
 import { 
-  WpApiModule
+  WpApiModule,
   WpApiLoader,
   WpApiStaticLoader
 } from 'wp-api-angular'
diff --git a/package.json b/package.json
index 9f81614..bba84b4 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angular",
-  "version": "3.0.0-beta6",
+  "version": "3.0.0-beta7",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "wp-api-angular.js",
   "typings": "wp-api-angular.d.ts",

From 1e754edac0bc1e5a7da10fb04d4bc46cd93064b0 Mon Sep 17 00:00:00 2001
From: Julien Renaux <julien.renaux@gmail.com>
Date: Thu, 9 Feb 2017 10:12:40 +0100
Subject: [PATCH 26/27] Update README.md

---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 7b6dc9a..5aef363 100644
--- a/README.md
+++ b/README.md
@@ -30,7 +30,7 @@ UMD files are available `wp-api-angular.umd.js` and `wp-api-angular.umd.min.js`,
 
 ## Bootstrap
 
-An exported function instead `WpApiLoaderFactory` is mandatory to be used with [AoT compilation](https://angular.io/docs/ts/latest/cookbook/aot-compiler.html) or [Ionic 2](http://ionic.io/).
+An exported function `WpApiLoaderFactory` is mandatory to be used with [AoT compilation](https://angular.io/docs/ts/latest/cookbook/aot-compiler.html) or [Ionic 2](http://ionic.io/).
 
 
 ```js

From da7562f4a21d6261f7a86522be72fadad293d0af Mon Sep 17 00:00:00 2001
From: shprink <julien.renaux@gmail.com>
Date: Wed, 24 May 2017 13:09:33 +0200
Subject: [PATCH 27/27] bump beta8 with ng4 support

---
 .gitignore            |   1 +
 CHANGELOG.md          |   5 +
 demo/app.ts           |   3 +-
 package.json          |  22 +-
 src/tokens.ts         |   4 -
 src/wp-api-angular.ts |   4 -
 yarn.lock             | 874 ++++++++++++++++++++++--------------------
 7 files changed, 478 insertions(+), 435 deletions(-)
 delete mode 100644 src/tokens.ts

diff --git a/.gitignore b/.gitignore
index 8890675..133ada1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -31,5 +31,6 @@ www/
 config.json
 dist/
 aot/
+aot2/
 angular2-webpack-starter/
 testionic/
diff --git a/CHANGELOG.md b/CHANGELOG.md
index a4177e1..f075676 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+<a name="3.0.0-beta8></a>
+### 3.0.0-beta8 (2017-05-24)
+
+Angular 4.x support for AOT
+
 <a name="3.0.0-beta7></a>
 ### 3.0.0-beta7 (2017-02-04)
 
diff --git a/demo/app.ts b/demo/app.ts
index fa84e53..b78dfd2 100644
--- a/demo/app.ts
+++ b/demo/app.ts
@@ -1,4 +1,4 @@
-import { Component } from '@angular/core';
+import { Component, VERSION } from '@angular/core';
 import {
   WpApiPosts,
   WpApiPages,
@@ -56,6 +56,7 @@ export class App {
     private wpApiTerms: WpApiTerms,
     private wpApiCustom: WpApiCustom
   ) {
+    console.log('VERSION', VERSION.full);
     const serviceNames = Object.keys(config.api);
     for (let i = 0, len = serviceNames.length; i <= len; i++) {
       let serviceName = serviceNames[i];
diff --git a/package.json b/package.json
index bba84b4..ee665c7 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "wp-api-angular",
-  "version": "3.0.0-beta7",
+  "version": "3.0.0-beta8",
   "description": "WordPress WP-API v2 client for Angular2",
   "main": "wp-api-angular.js",
   "typings": "wp-api-angular.d.ts",
@@ -12,9 +12,7 @@
     "watch": "rm -rf dist && node ./node_modules/@angular/compiler-cli/src/main.js",
     "publish": "npm run build && npm publish dist",
     "dumpdev": "ENV=dev webpack --progress --colors --config webpack.config.dist.js -d",
-    "dumpprod": "ENV=prod webpack --progress --colors --config webpack.config.dist.js -p",
-    "postinstall": "typings install",
-    "typings": "typings"
+    "dumpprod": "ENV=prod webpack --progress --colors --config webpack.config.dist.js -p"
   },
   "repository": {
     "type": "git",
@@ -34,17 +32,19 @@
     "url": "https://github.com/shprink/wp-api-angular/issues"
   },
   "homepage": "https://github.com/shprink/wp-api-angular",
+  "peerDependencies": {
+    "@angular/core": "^4.0.0",
+    "@angular/http": "^4.0.0"
+  },
   "dependencies": {
-    "@angular/common": "^2.0.0",
-    "@angular/compiler": "^2.0.0",
-    "@angular/compiler-cli": "^2.4.4",
-    "@angular/core": "^2.0.0",
-    "@angular/http": "^2.0.0",
-    "@angular/platform-browser": "^2.0.0",
-    "@angular/platform-browser-dynamic": "^2.0.0",
+    "@angular/common": "^4.0.0",
+    "@angular/compiler": "^4.0.0",
+    "@angular/platform-browser": "^4.0.0",
+    "@angular/platform-browser-dynamic": "^4.0.0",
     "rxjs": "^5.0.0"
   },
   "devDependencies": {
+    "@angular/compiler-cli": "^4.0.0",
     "babel-core": "^6.10.4",
     "babel-loader": "^6.2.4",
     "core-js": "^2.4.0",
diff --git a/src/tokens.ts b/src/tokens.ts
deleted file mode 100644
index b6e18a6..0000000
--- a/src/tokens.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-import {OpaqueToken} from '@angular/core';
-
-export const WpApiApp = new OpaqueToken('WpApiApp')
-export const WpApiConfig = new OpaqueToken('WpApiConfig');
diff --git a/src/wp-api-angular.ts b/src/wp-api-angular.ts
index 4e7917f..5d06eec 100644
--- a/src/wp-api-angular.ts
+++ b/src/wp-api-angular.ts
@@ -6,8 +6,6 @@ import {
 import 'rxjs';
 import { Http, HttpModule } from '@angular/http';
 
-import { WpApiApp } from './tokens';
-
 import { WpApiPosts } from './Posts';
 import { WpApiPages } from './Pages';
 import { WpApiComments } from './Comments';
@@ -32,8 +30,6 @@ export { WpApiTerms } from './Terms';
 export { WpApiCustom } from './Custom';
 export { WpApiLoader, WpApiStaticLoader } from './Loaders';
 
-export { WpApiApp } from './tokens';
-
 export function WpApiLoaderFactory(http: Http) {
   return new WpApiStaticLoader(http);
 }
diff --git a/yarn.lock b/yarn.lock
index a20c836..25200d4 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,51 +2,51 @@
 # yarn lockfile v1
 
 
-"@angular/common@^2.0.0":
-  version "2.4.5"
-  resolved "https://registry.yarnpkg.com/@angular/common/-/common-2.4.5.tgz#ada1a22b7ba01d1fdeb300115584478e031e9a4f"
+"@angular/common@^4.0.0":
+  version "4.1.3"
+  resolved "https://registry.yarnpkg.com/@angular/common/-/common-4.1.3.tgz#e7c4791e32131cf74c239428c2a67daab2eef017"
 
-"@angular/compiler-cli@^2.4.4":
-  version "2.4.5"
-  resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-2.4.5.tgz#efabbe10558b233dcdfe985af2bd2e84f1414c97"
+"@angular/compiler-cli@^4.0.0":
+  version "4.1.3"
+  resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-4.1.3.tgz#c2362ffdf65756471481f839fab675bcac213f96"
   dependencies:
-    "@angular/tsc-wrapped" "0.5.1"
+    "@angular/tsc-wrapped" "4.1.3"
     minimist "^1.2.0"
     reflect-metadata "^0.1.2"
 
-"@angular/compiler@^2.0.0":
-  version "2.4.5"
-  resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-2.4.5.tgz#521da325e2e002398e8f9de52cfb03d303729e72"
+"@angular/compiler@^4.0.0":
+  version "4.1.3"
+  resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-4.1.3.tgz#d2dd30853b0cf4a54758b4a314632c231f9c94c3"
 
-"@angular/core@^2.0.0":
-  version "2.4.5"
-  resolved "https://registry.yarnpkg.com/@angular/core/-/core-2.4.5.tgz#8b05156398afde9636e65527ffb61fc74236af5a"
+"@angular/core@^4.0.0":
+  version "4.1.3"
+  resolved "https://registry.yarnpkg.com/@angular/core/-/core-4.1.3.tgz#285498eb86ab7d0b6f982f8f9f487ef610013b35"
 
-"@angular/http@^2.1.2":
-  version "2.4.5"
-  resolved "https://registry.yarnpkg.com/@angular/http/-/http-2.4.5.tgz#de94b2daa4ff24e8b6c8839ffaf8089b62d4430b"
+"@angular/http@^4.0.0":
+  version "4.1.3"
+  resolved "https://registry.yarnpkg.com/@angular/http/-/http-4.1.3.tgz#eb9d1c302a0172815f9a573310d9be0bdeb845ae"
 
-"@angular/platform-browser-dynamic@^2.0.0":
-  version "2.4.5"
-  resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-2.4.5.tgz#36fa975a8ee2dfe3f60bab561143974e6bdb1eff"
+"@angular/platform-browser-dynamic@^4.0.0":
+  version "4.1.3"
+  resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.1.3.tgz#3c13fdcf591d487f6efdc1d46913f280c6d8c2ec"
 
-"@angular/platform-browser@^2.0.0":
-  version "2.4.5"
-  resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-2.4.5.tgz#fa1bc891b1309bca83845787b9a08db36a787fee"
+"@angular/platform-browser@^4.0.0":
+  version "4.1.3"
+  resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-4.1.3.tgz#4fa1db5119dd178b315ddae5b329bee1a932a5bd"
 
-"@angular/tsc-wrapped@0.5.1":
-  version "0.5.1"
-  resolved "https://registry.yarnpkg.com/@angular/tsc-wrapped/-/tsc-wrapped-0.5.1.tgz#7a69bec999eef41903dddaaccdc862cfcface52c"
+"@angular/tsc-wrapped@4.1.3":
+  version "4.1.3"
+  resolved "https://registry.yarnpkg.com/@angular/tsc-wrapped/-/tsc-wrapped-4.1.3.tgz#2d6372c9187bf1621eacd960b94b39c4f95293cd"
   dependencies:
-    tsickle "^0.2"
+    tsickle "^0.21.0"
 
 Base64@~0.2.0:
   version "0.2.1"
   resolved "https://registry.yarnpkg.com/Base64/-/Base64-0.2.1.tgz#ba3a4230708e186705065e66babdd4c35cf60028"
 
 abbrev@1:
-  version "1.0.9"
-  resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135"
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f"
 
 accepts@~1.3.3:
   version "1.3.3"
@@ -59,6 +59,13 @@ acorn@^3.0.0:
   version "3.3.0"
   resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a"
 
+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"
+
 align-text@^0.1.1, align-text@^0.1.3:
   version "0.1.4"
   resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
@@ -87,15 +94,15 @@ anymatch@^1.3.0:
     micromatch "^2.1.5"
 
 aproba@^1.0.3:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.0.4.tgz#2713680775e7614c8ba186c065d4e2e52d1072c0"
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.1.tgz#95d3600f07710aa0e9298c726ad5ecf2eacbabab"
 
 are-we-there-yet@~1.1.2:
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz#80e470e95a084794fe1899262c5667c6e88de1b3"
+  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.0 || ^1.1.13"
+    readable-stream "^2.0.6"
 
 arr-diff@^2.0.0:
   version "2.0.0"
@@ -104,8 +111,8 @@ arr-diff@^2.0.0:
     arr-flatten "^1.0.1"
 
 arr-flatten@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.1.tgz#e5ffe54d45e19f32f216e91eb99c8ce892bb604b"
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.3.tgz#a274ed85ac08849b6bd7847c4580745dc51adfb1"
 
 array-flatten@1.1.1:
   version "1.1.1"
@@ -123,14 +130,14 @@ 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"
 
-assert-plus@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
-
 assert@^1.1.1:
   version "1.4.1"
   resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91"
@@ -162,8 +169,8 @@ aws-sign2@~0.6.0:
   resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f"
 
 aws4@^1.2.1:
-  version "1.5.0"
-  resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.5.0.tgz#0a29ffb79c31c9e712eeb087e8e7a64b4a56d755"
+  version "1.6.0"
+  resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e"
 
 babel-code-frame@^6.22.0:
   version "6.22.0"
@@ -173,19 +180,19 @@ babel-code-frame@^6.22.0:
     esutils "^2.0.2"
     js-tokens "^3.0.0"
 
-babel-core@^6.10.4, babel-core@^6.22.0:
-  version "6.22.1"
-  resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.22.1.tgz#9c5fd658ba1772d28d721f6d25d968fc7ae21648"
+babel-core@^6.10.4, babel-core@^6.24.1:
+  version "6.24.1"
+  resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.24.1.tgz#8c428564dce1e1f41fb337ec34f4c3b022b5ad83"
   dependencies:
     babel-code-frame "^6.22.0"
-    babel-generator "^6.22.0"
-    babel-helpers "^6.22.0"
-    babel-messages "^6.22.0"
-    babel-register "^6.22.0"
+    babel-generator "^6.24.1"
+    babel-helpers "^6.24.1"
+    babel-messages "^6.23.0"
+    babel-register "^6.24.1"
     babel-runtime "^6.22.0"
-    babel-template "^6.22.0"
-    babel-traverse "^6.22.1"
-    babel-types "^6.22.0"
+    babel-template "^6.24.1"
+    babel-traverse "^6.24.1"
+    babel-types "^6.24.1"
     babylon "^6.11.0"
     convert-source-map "^1.1.0"
     debug "^2.1.1"
@@ -197,45 +204,46 @@ babel-core@^6.10.4, babel-core@^6.22.0:
     slash "^1.0.0"
     source-map "^0.5.0"
 
-babel-generator@^6.22.0:
-  version "6.22.0"
-  resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.22.0.tgz#d642bf4961911a8adc7c692b0c9297f325cda805"
+babel-generator@^6.24.1:
+  version "6.24.1"
+  resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.24.1.tgz#e715f486c58ded25649d888944d52aa07c5d9497"
   dependencies:
-    babel-messages "^6.22.0"
+    babel-messages "^6.23.0"
     babel-runtime "^6.22.0"
-    babel-types "^6.22.0"
+    babel-types "^6.24.1"
     detect-indent "^4.0.0"
     jsesc "^1.3.0"
     lodash "^4.2.0"
     source-map "^0.5.0"
+    trim-right "^1.0.1"
 
-babel-helpers@^6.22.0:
-  version "6.22.0"
-  resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.22.0.tgz#d275f55f2252b8101bff07bc0c556deda657392c"
+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.22.0"
+    babel-template "^6.24.1"
 
 babel-loader@^6.2.4:
-  version "6.2.10"
-  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.2.10.tgz#adefc2b242320cd5d15e65b31cea0e8b1b02d4b0"
+  version "6.4.1"
+  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.4.1.tgz#0b34112d5b0748a8dcdbf51acf6f9bd42d50b8ca"
   dependencies:
     find-cache-dir "^0.1.1"
-    loader-utils "^0.2.11"
+    loader-utils "^0.2.16"
     mkdirp "^0.5.1"
     object-assign "^4.0.1"
 
-babel-messages@^6.22.0:
-  version "6.22.0"
-  resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.22.0.tgz#36066a214f1217e4ed4164867669ecb39e3ea575"
+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-register@^6.22.0:
-  version "6.22.0"
-  resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.22.0.tgz#a61dd83975f9ca4a9e7d6eff3059494cd5ea4c63"
+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.22.0"
+    babel-core "^6.24.1"
     babel-runtime "^6.22.0"
     core-js "^2.4.0"
     home-or-tmp "^2.0.0"
@@ -244,39 +252,39 @@ babel-register@^6.22.0:
     source-map-support "^0.4.2"
 
 babel-runtime@^6.22.0:
-  version "6.22.0"
-  resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.22.0.tgz#1cf8b4ac67c77a4ddb0db2ae1f74de52ac4ca611"
+  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.22.0:
-  version "6.22.0"
-  resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.22.0.tgz#403d110905a4626b317a2a1fcb8f3b73204b2edb"
+babel-template@^6.24.1:
+  version "6.24.1"
+  resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.24.1.tgz#04ae514f1f93b3a2537f2a0f60a5a45fb8308333"
   dependencies:
     babel-runtime "^6.22.0"
-    babel-traverse "^6.22.0"
-    babel-types "^6.22.0"
+    babel-traverse "^6.24.1"
+    babel-types "^6.24.1"
     babylon "^6.11.0"
     lodash "^4.2.0"
 
-babel-traverse@^6.22.0, babel-traverse@^6.22.1:
-  version "6.22.1"
-  resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.22.1.tgz#3b95cd6b7427d6f1f757704908f2fc9748a5f59f"
+babel-traverse@^6.24.1:
+  version "6.24.1"
+  resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.24.1.tgz#ab36673fd356f9a0948659e7b338d5feadb31695"
   dependencies:
     babel-code-frame "^6.22.0"
-    babel-messages "^6.22.0"
+    babel-messages "^6.23.0"
     babel-runtime "^6.22.0"
-    babel-types "^6.22.0"
+    babel-types "^6.24.1"
     babylon "^6.15.0"
     debug "^2.2.0"
     globals "^9.0.0"
     invariant "^2.2.0"
     lodash "^4.2.0"
 
-babel-types@^6.22.0:
-  version "6.22.0"
-  resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.22.0.tgz#2a447e8d0ea25d2512409e4175479fd78cc8b1db"
+babel-types@^6.24.1:
+  version "6.24.1"
+  resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.24.1.tgz#a136879dc15b3606bda0d90c1fc74304c2ff0975"
   dependencies:
     babel-runtime "^6.22.0"
     esutils "^2.0.2"
@@ -284,8 +292,8 @@ babel-types@^6.22.0:
     to-fast-properties "^1.0.1"
 
 babylon@^6.11.0, babylon@^6.15.0:
-  version "6.15.0"
-  resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.15.0.tgz#ba65cfa1a80e1759b0e89fb562e27dccae70348e"
+  version "6.17.1"
+  resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.17.1.tgz#17f14fddf361b695981fe679385e4f1c01ebd86f"
 
 balanced-match@^0.4.1:
   version "0.4.2"
@@ -300,8 +308,8 @@ batch@0.5.3:
   resolved "https://registry.yarnpkg.com/batch/-/batch-0.5.3.tgz#3f3414f380321743bfc1042f9a83ff1d5824d464"
 
 bcrypt-pbkdf@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz#3ca76b85241c7170bf7d9703e7b9aa74630040d4"
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d"
   dependencies:
     tweetnacl "^0.14.3"
 
@@ -320,8 +328,8 @@ block-stream@*:
     inherits "~2.0.0"
 
 bluebird@^3.4.1:
-  version "3.4.7"
-  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.7.tgz#f72d760be09b7f76d08ed8fae98b289a8d05fab3"
+  version "3.5.0"
+  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c"
 
 boolbase@~1.0.0:
   version "1.0.0"
@@ -333,9 +341,9 @@ boom@2.x.x:
   dependencies:
     hoek "2.x.x"
 
-brace-expansion@^1.0.0:
-  version "1.1.6"
-  resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9"
+brace-expansion@^1.1.7:
+  version "1.1.7"
+  resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.7.tgz#3effc3c50e000531fb720eaff80f0ae8ef23cf59"
   dependencies:
     balanced-match "^0.4.1"
     concat-map "0.0.1"
@@ -354,7 +362,7 @@ browserify-zlib@~0.1.4:
   dependencies:
     pako "~0.2.0"
 
-buffer-shims@^1.0.0:
+buffer-shims@~1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51"
 
@@ -381,9 +389,9 @@ camelcase@^1.0.2:
   version "1.2.1"
   resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
 
-caseless@~0.11.0:
-  version "0.11.0"
-  resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7"
+caseless@~0.12.0:
+  version "0.12.0"
+  resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
 
 center-align@^0.1.1:
   version "0.1.3"
@@ -392,7 +400,7 @@ center-align@^0.1.1:
     align-text "^0.1.3"
     lazy-cache "^1.0.3"
 
-chalk@^1.1.0, chalk@^1.1.1:
+chalk@^1.1.0:
   version "1.1.3"
   resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
   dependencies:
@@ -426,8 +434,8 @@ change-case@3.0.x:
     upper-case-first "^1.1.0"
 
 chokidar@^1.0.0:
-  version "1.6.1"
-  resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.6.1.tgz#2f4447ab5e96e50fb3d789fd90d4c72e0e4c70c2"
+  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"
@@ -441,8 +449,8 @@ chokidar@^1.0.0:
     fsevents "^1.0.0"
 
 clean-css@3.4.x:
-  version "3.4.24"
-  resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.24.tgz#89f5a5e9da37ae02394fe049a41388abbe72c3b5"
+  version "3.4.26"
+  resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.26.tgz#55323b344ff3bcee684a2eac81c93df8fa73deeb"
   dependencies:
     commander "2.8.x"
     source-map "0.4.x"
@@ -459,6 +467,10 @@ clone@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149"
 
+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"
@@ -479,7 +491,7 @@ commander@2.8.x:
   dependencies:
     graceful-readlink ">= 1.0.0"
 
-commander@2.9.x, commander@^2.9.0:
+commander@2.9.x:
   version "2.9.0"
   resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4"
   dependencies:
@@ -490,10 +502,10 @@ commondir@^1.0.1:
   resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
 
 compressible@~2.0.8:
-  version "2.0.9"
-  resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.9.tgz#6daab4e2b599c2770dd9e21e7a891b1c5a755425"
+  version "2.0.10"
+  resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.10.tgz#feda1c7f7617912732b29bf8cf26252a20b9eecd"
   dependencies:
-    mime-db ">= 1.24.0 < 2"
+    mime-db ">= 1.27.0 < 2"
 
 compression@^1.5.2:
   version "1.6.2"
@@ -544,8 +556,8 @@ content-type@~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.3.0"
-  resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.3.0.tgz#e9f3e9c6e2728efc2676696a70eb382f73106a67"
+  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"
@@ -600,11 +612,17 @@ date-now@^0.1.4:
   version "0.1.4"
   resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
 
-debug@^2.1.1, debug@^2.2.0:
-  version "2.6.0"
-  resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.0.tgz#bc596bcabe7617f11d9fa15361eded5608b8499b"
+debug@2.6.7:
+  version "2.6.7"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.7.tgz#92bad1f6d05bbb6bba22cca88bcd0ec894c2861e"
+  dependencies:
+    ms "2.0.0"
+
+debug@^2.1.1, debug@^2.2.0, debug@^2.6.6:
+  version "2.6.8"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc"
   dependencies:
-    ms "0.7.2"
+    ms "2.0.0"
 
 debug@~2.2.0:
   version "2.2.0"
@@ -617,8 +635,8 @@ decamelize@^1.0.0:
   resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
 
 deep-extend@~0.4.0:
-  version "0.4.1"
-  resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253"
+  version "0.4.2"
+  resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f"
 
 delayed-stream@~1.0.0:
   version "1.0.0"
@@ -628,7 +646,7 @@ 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, depd@~1.1.0:
   version "1.1.0"
   resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.0.tgz#e1bd82c6aab6ced965b97b88b17ed3e528ca18c3"
 
@@ -687,8 +705,8 @@ domutils@1.5.1:
     domelementtype "1"
 
 dot-case@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-2.1.0.tgz#4b43dd0d7403c34cb645424add397e80bfe85ca6"
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-2.1.1.tgz#34dcf37f50a8e93c2b3bca8bb7fb9155c7da3bee"
   dependencies:
     no-case "^2.2.0"
 
@@ -740,9 +758,9 @@ esutils@^2.0.2:
   version "2.0.2"
   resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
 
-etag@~1.7.0:
-  version "1.7.0"
-  resolved "https://registry.yarnpkg.com/etag/-/etag-1.7.0.tgz#03d30b5f67dd6e632d2945d30d6652731a34d5d8"
+etag@~1.8.0:
+  version "1.8.0"
+  resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.0.tgz#6f631aef336d6c46362b51764044ce216be3c051"
 
 eventemitter3@1.x.x:
   version "1.2.0"
@@ -771,8 +789,8 @@ expand-range@^1.8.1:
     fill-range "^2.1.0"
 
 express@^4.13.3:
-  version "4.14.1"
-  resolved "https://registry.yarnpkg.com/express/-/express-4.14.1.tgz#646c237f766f148c2120aff073817b9e4d7e0d33"
+  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"
@@ -780,30 +798,32 @@ express@^4.13.3:
     content-type "~1.0.2"
     cookie "0.3.1"
     cookie-signature "1.0.6"
-    debug "~2.2.0"
+    debug "2.6.7"
     depd "~1.1.0"
     encodeurl "~1.0.1"
     escape-html "~1.0.3"
-    etag "~1.7.0"
-    finalhandler "0.5.1"
-    fresh "0.3.0"
+    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.3"
-    qs "6.2.0"
+    proxy-addr "~1.1.4"
+    qs "6.4.0"
     range-parser "~1.2.0"
-    send "0.14.2"
-    serve-static "~1.11.2"
-    type-is "~1.6.14"
+    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.0"
+    vary "~1.1.1"
 
 extend@~3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4"
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444"
 
 extglob@^0.3.1:
   version "0.3.2"
@@ -828,8 +848,8 @@ faye-websocket@~0.11.0:
     websocket-driver ">=0.5.1"
 
 filename-regex@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.0.tgz#996e3e80479b98b9897f15a8a58b3d084e926775"
+  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"
@@ -841,13 +861,15 @@ fill-range@^2.1.0:
     repeat-element "^1.1.2"
     repeat-string "^1.5.2"
 
-finalhandler@0.5.1:
-  version "0.5.1"
-  resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.1.tgz#2c400d8d4530935bc232549c5fa385ec07de6fcd"
+finalhandler@~1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.3.tgz#ef47e77950e999780e86022a560e3217e0d0cc89"
   dependencies:
-    debug "~2.2.0"
+    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"
 
@@ -866,23 +888,23 @@ find-up@^1.0.0:
     path-exists "^2.0.0"
     pinkie-promise "^2.0.0"
 
-for-in@^0.1.5:
-  version "0.1.6"
-  resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.6.tgz#c9f96e89bfad18a545af5ec3ed352a1d9e5b4dc8"
+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.4"
-  resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.4.tgz#0149b41a39088c7515f51ebe1c1386d45f935072"
+  version "0.1.5"
+  resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce"
   dependencies:
-    for-in "^0.1.5"
+    for-in "^1.0.1"
 
 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.2"
-  resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.2.tgz#89c3534008b97eada4cbb157d58f6f5df025eae4"
+  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"
@@ -892,22 +914,22 @@ forwarded@~0.1.0:
   version "0.1.0"
   resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.0.tgz#19ef9874c4ae1c297bcf078fde63a09b66a84363"
 
-fresh@0.3.0:
-  version "0.3.0"
-  resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.3.0.tgz#651f838e22424e7566de161d8358caa199f83d4f"
+fresh@0.5.0:
+  version "0.5.0"
+  resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e"
 
 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.0.17"
-  resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.0.17.tgz#8537f3f12272678765b4fd6528c0f1f66f8f4558"
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.1.tgz#f19fd28f43eeaf761680e519a203c4d0b3d31aff"
   dependencies:
     nan "^2.3.0"
     node-pre-gyp "^0.6.29"
 
-fstream-ignore@~1.0.5:
+fstream-ignore@^1.0.5:
   version "1.0.5"
   resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105"
   dependencies:
@@ -915,18 +937,18 @@ fstream-ignore@~1.0.5:
     inherits "2"
     minimatch "^3.0.0"
 
-fstream@^1.0.0, fstream@^1.0.2, fstream@~1.0.10:
-  version "1.0.10"
-  resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.10.tgz#604e8a92fe26ffd9f6fae30399d4984e1ab22822"
+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"
 
-gauge@~2.7.1:
-  version "2.7.2"
-  resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.2.tgz#15cecc31b02d05345a5d6b0e171cdb3ad2307774"
+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"
@@ -935,22 +957,11 @@ gauge@~2.7.1:
     signal-exit "^3.0.0"
     string-width "^1.0.1"
     strip-ansi "^3.0.1"
-    supports-color "^0.2.0"
     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.1.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"
-
 getpass@^0.1.1:
-  version "0.1.6"
-  resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6"
+  version "0.1.7"
+  resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
   dependencies:
     assert-plus "^1.0.0"
 
@@ -968,19 +979,19 @@ glob-parent@^2.0.0:
     is-glob "^2.0.0"
 
 glob@^7.0.5:
-  version "7.1.1"
-  resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8"
+  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.2"
+    minimatch "^3.0.4"
     once "^1.3.0"
     path-is-absolute "^1.0.0"
 
 globals@^9.0.0:
-  version "9.14.0"
-  resolved "https://registry.yarnpkg.com/globals/-/globals-9.14.0.tgz#8859936af0038741263053b39d0e76ca241e4034"
+  version "9.17.0"
+  resolved "https://registry.yarnpkg.com/globals/-/globals-9.17.0.tgz#0c0ca696d9b9bb694d2e5470bd37777caad50286"
 
 graceful-fs@^4.1.2:
   version "4.1.11"
@@ -990,14 +1001,16 @@ graceful-fs@^4.1.2:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725"
 
-har-validator@~2.0.6:
-  version "2.0.6"
-  resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d"
+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:
-    chalk "^1.1.1"
-    commander "^2.9.0"
-    is-my-json-valid "^2.12.4"
-    pinkie-promise "^2.0.0"
+    ajv "^4.9.1"
+    har-schema "^1.0.5"
 
 has-ansi@^2.0.0:
   version "2.0.0"
@@ -1027,8 +1040,8 @@ he@1.1.x:
   resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd"
 
 header-case@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/header-case/-/header-case-1.0.0.tgz#d9e335909505d56051ec16a0106821889e910781"
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/header-case/-/header-case-1.0.1.tgz#9535973197c144b09613cd65d317ef19963bd02d"
   dependencies:
     no-case "^2.2.0"
     upper-case "^1.1.3"
@@ -1083,7 +1096,7 @@ http-browserify@^1.3.2:
     Base64 "~0.2.0"
     inherits "~2.0.1"
 
-http-errors@~1.5.0, http-errors@~1.5.1:
+http-errors@~1.5.0:
   version "1.5.1"
   resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.1.tgz#788c0d2c1de2c81b9e6e8c01843b6b97eb920750"
   dependencies:
@@ -1091,6 +1104,15 @@ http-errors@~1.5.0, http-errors@~1.5.1:
     setprototypeof "1.0.2"
     statuses ">= 1.3.1 < 2"
 
+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-proxy@^1.11.2:
   version "1.16.2"
   resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742"
@@ -1125,11 +1147,11 @@ inflight@^1.0.4:
     once "^1.3.0"
     wrappy "1"
 
-inherits@2, inherits@2.0.3, inherits@~2.0.0, inherits@~2.0.1:
+inherits@2, inherits@2.0.3, inherits@~2.0.0:
   version "2.0.3"
   resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
 
-inherits@2.0.1, inherits@^2.0.1:
+inherits@2.0.1, inherits@^2.0.1, inherits@~2.0.1:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
 
@@ -1147,9 +1169,9 @@ invariant@^2.2.0:
   dependencies:
     loose-envify "^1.0.0"
 
-ipaddr.js@1.2.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.2.0.tgz#8aba49c9192799585bdd643e0ccb50e8ae777ba4"
+ipaddr.js@1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.3.0.tgz#1e03a52fdad83a8bbb2b25cbf4998b4cffcd3dec"
 
 is-binary-path@^1.0.0:
   version "1.0.1"
@@ -1157,9 +1179,9 @@ is-binary-path@^1.0.0:
   dependencies:
     binary-extensions "^1.0.0"
 
-is-buffer@^1.0.2:
-  version "1.1.4"
-  resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.4.tgz#cfc86ccd5dc5a52fa80489111c6920c457e2d98b"
+is-buffer@^1.1.5:
+  version "1.1.5"
+  resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc"
 
 is-dotfile@^1.0.0:
   version "1.0.2"
@@ -1203,15 +1225,6 @@ is-lower-case@^1.1.0:
   dependencies:
     lower-case "^1.1.0"
 
-is-my-json-valid@^2.12.4:
-  version "2.15.0"
-  resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.15.0.tgz#936edda3ca3c211fd98f3b2d3e08da43f7b2915b"
-  dependencies:
-    generate-function "^2.0.0"
-    generate-object-property "^1.1.0"
-    jsonpointer "^4.0.0"
-    xtend "^4.0.0"
-
 is-number@^2.0.2, is-number@^2.1.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f"
@@ -1226,10 +1239,6 @@ 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-typedarray@~1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
@@ -1269,8 +1278,8 @@ js-tokens@^3.0.0:
   resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7"
 
 jsbn@~0.1.0:
-  version "0.1.0"
-  resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.0.tgz#650987da0dd74f4ebf5a11377a2aa2d273e97dfd"
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
 
 jsesc@^1.3.0:
   version "1.3.0"
@@ -1284,6 +1293,12 @@ 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"
@@ -1296,31 +1311,32 @@ json5@^0.5.0:
   version "0.5.1"
   resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
 
-jsonpointer@^4.0.0:
-  version "4.0.1"
-  resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
+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.3.1"
-  resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.3.1.tgz#2a7256f70412a29ee3670aaca625994c4dcff252"
+  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"
 
 kind-of@^3.0.2:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47"
+  version "3.2.2"
+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
   dependencies:
-    is-buffer "^1.0.2"
+    is-buffer "^1.1.5"
 
 lazy-cache@^1.0.3:
   version "1.0.4"
   resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
 
-loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0.2.6:
-  version "0.2.16"
-  resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.16.tgz#f08632066ed8282835dff88dfb52704765adee6d"
+loader-utils@^0.2.11, loader-utils@^0.2.15, loader-utils@^0.2.16, loader-utils@^0.2.6:
+  version "0.2.17"
+  resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
   dependencies:
     big.js "^3.1.3"
     emojis-list "^2.0.0"
@@ -1348,8 +1364,8 @@ lower-case-first@^1.0.0:
     lower-case "^1.1.2"
 
 lower-case@^1.1.0, lower-case@^1.1.1, lower-case@^1.1.2:
-  version "1.1.3"
-  resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.3.tgz#c92393d976793eee5ba4edb583cf8eae35bd9bfb"
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac"
 
 media-typer@0.3.0:
   version "0.3.0"
@@ -1399,25 +1415,33 @@ micromatch@^2.1.5:
     parse-glob "^3.0.4"
     regex-cache "^0.4.2"
 
-"mime-db@>= 1.24.0 < 2", mime-db@~1.26.0:
-  version "1.26.0"
-  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.26.0.tgz#eaffcd0e4fc6935cf8134da246e2e6c35305adff"
+"mime-db@>= 1.27.0 < 2":
+  version "1.28.0"
+  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.28.0.tgz#fedd349be06d2865b7fc57d837c6de4f17d7ac3c"
+
+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.13, mime-types@~2.1.7:
-  version "2.1.14"
-  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.14.tgz#f7ef7d97583fcaf3b7d282b6f8b5679dab1e94ee"
+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.26.0"
+    mime-db "~1.27.0"
 
-mime@1.3.4, mime@^1.3.4:
+mime@1.3.4:
   version "1.3.4"
   resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53"
 
-minimatch@^3.0.0, minimatch@^3.0.2:
-  version "3.0.3"
-  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774"
+mime@^1.3.4:
+  version "1.3.6"
+  resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.6.tgz#591d84d3653a6b0b4a3b9df8de5aa8108e72e5e0"
+
+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.0.0"
+    brace-expansion "^1.1.7"
 
 minimist@0.0.8, minimist@~0.0.1:
   version "0.0.8"
@@ -1427,7 +1451,7 @@ 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, mkdirp@~0.5.0, mkdirp@~0.5.1:
+"mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@~0.5.0:
   version "0.5.1"
   resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
   dependencies:
@@ -1437,13 +1461,13 @@ ms@0.7.1:
   version "0.7.1"
   resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098"
 
-ms@0.7.2:
-  version "0.7.2"
-  resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765"
+ms@2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
 
 nan@^2.3.0:
-  version "2.5.1"
-  resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.1.tgz#d5b01691253326a97a2bbee9e61c55d8d60351e2"
+  version "2.6.2"
+  resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45"
 
 ncname@1.0.x:
   version "1.0.0"
@@ -1490,36 +1514,39 @@ node-libs-browser@^0.6.0:
     vm-browserify "0.0.4"
 
 node-pre-gyp@^0.6.29:
-  version "0.6.32"
-  resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.32.tgz#fc452b376e7319b3d255f5f34853ef6fd8fe1fd5"
-  dependencies:
-    mkdirp "~0.5.1"
-    nopt "~3.0.6"
-    npmlog "^4.0.1"
-    rc "~1.1.6"
-    request "^2.79.0"
-    rimraf "~2.5.4"
-    semver "~5.3.0"
-    tar "~2.2.1"
-    tar-pack "~3.3.0"
-
-nopt@~3.0.6:
-  version "3.0.6"
-  resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
+  version "0.6.34"
+  resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.34.tgz#94ad1c798a11d7fc67381b50d47f8cc18d9799f7"
+  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"
+
+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-path@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.0.1.tgz#47886ac1662760d4261b7d979d241709d3ce3f7a"
+  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:
-  version "4.0.2"
-  resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f"
+npmlog@^4.0.2:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.0.tgz#dc59bee85f64f00ed424efb2af0783df25d1c0b5"
   dependencies:
     are-we-there-yet "~1.1.2"
     console-control-strings "~1.1.0"
-    gauge "~2.7.1"
+    gauge "~2.7.3"
     set-blocking "~2.0.0"
 
 nth-check@~1.0.1:
@@ -1561,9 +1588,9 @@ on-headers@~1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7"
 
-once@^1.3.0, once@~1.3.3:
-  version "1.3.3"
-  resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20"
+once@^1.3.0, once@^1.3.3:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
   dependencies:
     wrappy "1"
 
@@ -1588,17 +1615,24 @@ os-homedir@^1.0.0:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
 
-os-tmpdir@^1.0.1:
+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"
+
 pako@~0.2.0:
   version "0.2.9"
   resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75"
 
 param-case@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.0.tgz#2619f90fd6c829ed0b958f1c84ed03a745a6d70a"
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247"
   dependencies:
     no-case "^2.2.0"
 
@@ -1616,8 +1650,8 @@ parseurl@~1.3.1:
   resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56"
 
 pascal-case@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-2.0.0.tgz#39c248bde5a8dc02d5160696bdb01e044d016ee1"
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-2.0.1.tgz#2d578d3455f660da65eca18ef95b4e0de912761e"
   dependencies:
     camel-case "^3.0.0"
     upper-case-first "^1.1.0"
@@ -1627,8 +1661,8 @@ path-browserify@0.0.0:
   resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a"
 
 path-case@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/path-case/-/path-case-2.1.0.tgz#5ac491de642936e5dfe0e18d16c461b8be8cf073"
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/path-case/-/path-case-2.1.1.tgz#94b8037c372d3fe2906e465bb45e25d226e8eea5"
   dependencies:
     no-case "^2.2.0"
 
@@ -1654,6 +1688,10 @@ pbkdf2-compat@2.0.1:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz#b6e0c8fa99494d94e0511575802a59a5c142f288"
 
+performance-now@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5"
+
 pinkie-promise@^2.0.0:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
@@ -1675,30 +1713,30 @@ preserve@^0.2.0:
   resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
 
 pretty-error@^2.0.0:
-  version "2.0.2"
-  resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.0.2.tgz#a7db19cbb529ca9f0af3d3a2f77d5caf8e5dec23"
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.0.tgz#87f4e9d706a24c87d6cbee9fabec001fcf8c75d8"
   dependencies:
-    renderkid "~2.0.0"
+    renderkid "^2.0.1"
     utila "~0.4"
 
 private@^0.1.6:
-  version "0.1.6"
-  resolved "https://registry.yarnpkg.com/private/-/private-0.1.6.tgz#55c6a976d0f9bafb9924851350fe47b9b5fbb7c1"
+  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.11.0, process@~0.11.0:
-  version "0.11.9"
-  resolved "https://registry.yarnpkg.com/process/-/process-0.11.9.tgz#7bd5ad21aa6253e7da8682264f1e11d11c0318c1"
+  version "0.11.10"
+  resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
 
-proxy-addr@~1.1.3:
-  version "1.1.3"
-  resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.3.tgz#dc97502f5722e888467b3fa2297a7b1ff47df074"
+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.2.0"
+    ipaddr.js "1.3.0"
 
 prr@~0.0.0:
   version "0.0.0"
@@ -1712,13 +1750,9 @@ punycode@^1.2.4, punycode@^1.4.1:
   version "1.4.1"
   resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
 
-qs@6.2.0:
-  version "6.2.0"
-  resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.0.tgz#3b7848c03c2dece69a9522b0fae8c4126d745f3b"
-
-qs@~6.3.0:
-  version "6.3.0"
-  resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442"
+qs@6.4.0, qs@~6.4.0:
+  version "6.4.0"
+  resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
 
 querystring-es3@~0.2.0:
   version "0.2.1"
@@ -1732,6 +1766,10 @@ querystringify@0.0.x:
   version "0.0.4"
   resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-0.0.4.tgz#0cf7f84f9463ff0ae51c4c4b142d95be37724d9c"
 
+querystringify@~1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-1.0.0.tgz#6286242112c5b712fa654e526652bf6a13ff05cb"
+
 randomatic@^1.1.3:
   version "1.1.6"
   resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.6.tgz#110dcabff397e9dcff7c0789ccc0a49adf1ec5bb"
@@ -1743,14 +1781,14 @@ range-parser@^1.0.3, range-parser@~1.2.0:
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e"
 
-rc@~1.1.6:
-  version "1.1.6"
-  resolved "https://registry.yarnpkg.com/rc/-/rc-1.1.6.tgz#43651b76b6ae53b5c802f1151fa3fc3b059969c9"
+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 "~1.0.4"
+    strip-json-comments "~2.0.1"
 
 readable-stream@1.0:
   version "1.0.34"
@@ -1770,28 +1808,16 @@ readable-stream@^1.0.27-1, readable-stream@^1.1.13:
     isarray "0.0.1"
     string_decoder "~0.10.x"
 
-"readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.1, readable-stream@^2.0.2:
-  version "2.2.2"
-  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.2.tgz#a9e6fec3c7dda85f8bb1b3ba7028604556fc825e"
+readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.4:
+  version "2.2.9"
+  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.9.tgz#cf78ec6f4a6d1eb43d26488cac97f042e74b7fc8"
   dependencies:
-    buffer-shims "^1.0.0"
+    buffer-shims "~1.0.0"
     core-util-is "~1.0.0"
     inherits "~2.0.1"
     isarray "~1.0.0"
     process-nextick-args "~1.0.6"
-    string_decoder "~0.10.x"
-    util-deprecate "~1.0.1"
-
-readable-stream@~2.1.4:
-  version "2.1.5"
-  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0"
-  dependencies:
-    buffer-shims "^1.0.0"
-    core-util-is "~1.0.0"
-    inherits "~2.0.1"
-    isarray "~1.0.0"
-    process-nextick-args "~1.0.6"
-    string_decoder "~0.10.x"
+    string_decoder "~1.0.0"
     util-deprecate "~1.0.1"
 
 readdirp@^2.0.0:
@@ -1804,12 +1830,12 @@ readdirp@^2.0.0:
     set-immediate-shim "^1.0.1"
 
 reflect-metadata@^0.1.2, reflect-metadata@^0.1.3:
-  version "0.1.9"
-  resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.9.tgz#987238dc87a516895fe457f130435ffbd763a4d4"
+  version "0.1.10"
+  resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.10.tgz#b4f83704416acad89988c9b15635d47e03b9344a"
 
 regenerator-runtime@^0.10.0:
-  version "0.10.1"
-  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz#257f41961ce44558b18f7814af48c17559f9faeb"
+  version "0.10.5"
+  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658"
 
 regex-cache@^0.4.2:
   version "0.4.3"
@@ -1822,9 +1848,13 @@ relateurl@0.2.x:
   version "0.2.7"
   resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
 
-renderkid@~2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.0.tgz#1859753e7a5adbf35443aba0d4e4579e78abee85"
+remove-trailing-separator@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.1.tgz#615ebb96af559552d4bf4057c8436d486ab63cc4"
+
+renderkid@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.1.tgz#898cabfc8bede4b7b91135a3ffd323e58c0db319"
   dependencies:
     css-select "^1.1.0"
     dom-converter "~0.1"
@@ -1846,18 +1876,18 @@ repeating@^2.0.0:
   dependencies:
     is-finite "^1.0.0"
 
-request@^2.79.0:
-  version "2.79.0"
-  resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de"
+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.11.0"
+    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 "~2.0.6"
+    har-validator "~4.2.1"
     hawk "~3.1.3"
     http-signature "~1.1.0"
     is-typedarray "~1.0.0"
@@ -1865,10 +1895,12 @@ request@^2.79.0:
     json-stringify-safe "~5.0.1"
     mime-types "~2.1.7"
     oauth-sign "~0.8.1"
-    qs "~6.3.0"
+    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.4.1"
+    tunnel-agent "^0.6.0"
     uuid "^3.0.0"
 
 requires-port@1.0.x, requires-port@1.x.x:
@@ -1881,9 +1913,9 @@ right-align@^0.1.1:
   dependencies:
     align-text "^0.1.1"
 
-rimraf@2, rimraf@~2.5.1, rimraf@~2.5.4:
-  version "2.5.4"
-  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04"
+rimraf@2, 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"
 
@@ -1891,37 +1923,41 @@ ripemd160@0.2.0:
   version "0.2.0"
   resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-0.2.0.tgz#2bf198bde167cacfa51c0a928e84b68bbe171fce"
 
-rxjs@^5.0.1:
-  version "5.0.3"
-  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.0.3.tgz#fc8bdf464ebf938812748e4196788f392fef9754"
+rxjs@^5.0.0:
+  version "5.4.0"
+  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.4.0.tgz#a7db14ab157f9d7aac6a56e655e7a3860d39bf26"
   dependencies:
     symbol-observable "^1.0.1"
 
-semver@^5.0.1, semver@~5.3.0:
+safe-buffer@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7"
+
+semver@^5.0.1, semver@^5.3.0:
   version "5.3.0"
   resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
 
-send@0.14.2:
-  version "0.14.2"
-  resolved "https://registry.yarnpkg.com/send/-/send-0.14.2.tgz#39b0438b3f510be5dc6f667a11f71689368cdeef"
+send@0.15.3:
+  version "0.15.3"
+  resolved "https://registry.yarnpkg.com/send/-/send-0.15.3.tgz#5013f9f99023df50d1bd9892c19e3defd1d53309"
   dependencies:
-    debug "~2.2.0"
+    debug "2.6.7"
     depd "~1.1.0"
     destroy "~1.0.4"
     encodeurl "~1.0.1"
     escape-html "~1.0.3"
-    etag "~1.7.0"
-    fresh "0.3.0"
-    http-errors "~1.5.1"
+    etag "~1.8.0"
+    fresh "0.5.0"
+    http-errors "~1.6.1"
     mime "1.3.4"
-    ms "0.7.2"
+    ms "2.0.0"
     on-finished "~2.3.0"
     range-parser "~1.2.0"
     statuses "~1.3.1"
 
 sentence-case@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-2.1.0.tgz#d592fbed457fd1a59e3af0ee17e99f6fd70d7efd"
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-2.1.1.tgz#1f6e2dda39c168bf92d13f86d4a918933f667ed4"
   dependencies:
     no-case "^2.2.0"
     upper-case-first "^1.1.2"
@@ -1938,14 +1974,14 @@ serve-index@^1.7.2:
     mime-types "~2.1.11"
     parseurl "~1.3.1"
 
-serve-static@~1.11.2:
-  version "1.11.2"
-  resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.11.2.tgz#2cf9889bd4435a320cc36895c9aa57bd662e6ac7"
+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.14.2"
+    send "0.15.3"
 
 set-blocking@~2.0.0:
   version "2.0.0"
@@ -1959,6 +1995,10 @@ setprototypeof@1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.2.tgz#81a552141ec104b88e89ce383103ad5c66564d08"
 
+setprototypeof@1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04"
+
 sha.js@2.2.6:
   version "2.2.6"
   resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.2.6.tgz#17ddeddc5f722fb66501658895461977867315ba"
@@ -1984,15 +2024,15 @@ sntp@1.x.x:
     hoek "2.x.x"
 
 sockjs-client@^1.0.3:
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.2.tgz#f0212a8550e4c9468c8cceaeefd2e3493c033ad5"
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.4.tgz#5babe386b775e4cf14e7520911452654016c8b12"
   dependencies:
-    debug "^2.2.0"
+    debug "^2.6.6"
     eventsource "0.1.6"
     faye-websocket "~0.11.0"
     inherits "^2.0.1"
     json3 "^3.3.2"
-    url-parse "^1.1.1"
+    url-parse "^1.1.8"
 
 sockjs@^0.3.15:
   version "0.3.18"
@@ -2006,10 +2046,10 @@ source-list-map@~0.1.7:
   resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106"
 
 source-map-support@^0.4.2:
-  version "0.4.11"
-  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.11.tgz#647f939978b38535909530885303daf23279f322"
+  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.3"
+    source-map "^0.5.6"
 
 source-map@0.4.x, source-map@~0.4.1:
   version "0.4.4"
@@ -2017,13 +2057,13 @@ source-map@0.4.x, source-map@~0.4.1:
   dependencies:
     amdefine ">=0.0.4"
 
-source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1:
+source-map@^0.5.0, source-map@^0.5.6, source-map@~0.5.1:
   version "0.5.6"
   resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
 
 sshpk@^1.7.0:
-  version "1.10.2"
-  resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.2.tgz#d5a804ce22695515638e798dbe23273de070a5fa"
+  version "1.13.0"
+  resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.0.tgz#ff2a3e4fd04497555fed97b39a0fd82fafb3a33c"
   dependencies:
     asn1 "~0.2.3"
     assert-plus "^1.0.0"
@@ -2051,7 +2091,7 @@ stream-cache@~0.0.1:
   version "0.0.2"
   resolved "https://registry.yarnpkg.com/stream-cache/-/stream-cache-0.0.2.tgz#1ac5ad6832428ca55667dbdee395dad4e6db118f"
 
-string-width@^1.0.1:
+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:
@@ -2063,6 +2103,12 @@ string_decoder@~0.10.25, 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.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.1.tgz#62e200f039955a6810d8df0a33ffc0f013662d98"
+  dependencies:
+    safe-buffer "^5.0.1"
+
 stringstream@~0.0.4:
   version "0.0.5"
   resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878"
@@ -2073,13 +2119,9 @@ strip-ansi@^3.0.0, strip-ansi@^3.0.1:
   dependencies:
     ansi-regex "^2.0.0"
 
-strip-json-comments@~1.0.4:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91"
-
-supports-color@^0.2.0:
-  version "0.2.0"
-  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-0.2.0.tgz#d92de2694eb3f67323973d7ae3d8b55b4c22190a"
+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"
@@ -2106,20 +2148,20 @@ tapable@^0.1.8, tapable@~0.1.8:
   version "0.1.10"
   resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.1.10.tgz#29c35707c2b70e50d07482b5d202e8ed446dafd4"
 
-tar-pack@~3.3.0:
-  version "3.3.0"
-  resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.3.0.tgz#30931816418f55afc4d21775afdd6720cee45dae"
+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@~2.2.1:
+    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@^2.2.1:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1"
   dependencies:
@@ -2134,19 +2176,19 @@ timers-browserify@^1.0.1:
     process "~0.11.0"
 
 title-case@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/title-case/-/title-case-2.1.0.tgz#c68ccb4232079ded64f94b91b4941ade91391979"
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/title-case/-/title-case-2.1.1.tgz#3e127216da58d2bc5becf137ab91dae3a7cd8faa"
   dependencies:
     no-case "^2.2.0"
     upper-case "^1.0.3"
 
 to-fast-properties@^1.0.1:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320"
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
 
 toposort@^1.0.0:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.2.tgz#be1de72431320fcefe35a7b539c1c336cbcfd32c"
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.3.tgz#f02cd8a74bd8be2fc0e98611c3bacb95a171869c"
 
 tough-cookie@~2.3.0:
   version "2.3.2"
@@ -2154,6 +2196,10 @@ tough-cookie@~2.3.0:
   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"
+
 ts-loader@0.8.1:
   version "0.8.1"
   resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-0.8.1.tgz#aa5d3aa013cd18c7e0535d47f85512850227564e"
@@ -2165,9 +2211,9 @@ ts-loader@0.8.1:
     object-assign "^2.0.0"
     semver "^5.0.1"
 
-tsickle@^0.2:
-  version "0.2.5"
-  resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.2.5.tgz#60d8e12462e6f8fbdac92d5f5fead2bf49085d82"
+tsickle@^0.21.0:
+  version "0.21.6"
+  resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.21.6.tgz#53b01b979c5c13fdb13afb3fb958177e5991588d"
   dependencies:
     minimist "^1.2.0"
     mkdirp "^0.5.1"
@@ -2178,24 +2224,26 @@ tty-browserify@0.0.0:
   version "0.0.0"
   resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
 
-tunnel-agent@~0.4.1:
-  version "0.4.3"
-  resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb"
+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.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.14:
-  version "1.6.14"
-  resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.14.tgz#e219639c17ded1ca0789092dd54a03826b817cb2"
+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.13"
+    mime-types "~2.1.15"
 
 typescript@^2.1.5:
-  version "2.1.5"
-  resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.1.5.tgz#6fe9479e00e01855247cea216e7561bafcdbcd4a"
+  version "2.3.3"
+  resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.3.3.tgz#9639f3c3b40148e8ca97fe08a51dd1891bb6be22"
 
 uglify-js@2.6.x:
   version "2.6.4"
@@ -2219,7 +2267,7 @@ uglify-to-browserify@~1.0.0:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
 
-uid-number@~0.0.6:
+uid-number@^0.0.6:
   version "0.0.6"
   resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81"
 
@@ -2244,11 +2292,11 @@ url-parse@1.0.x:
     querystringify "0.0.x"
     requires-port "1.0.x"
 
-url-parse@^1.1.1:
-  version "1.1.7"
-  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.7.tgz#025cff999653a459ab34232147d89514cc87d74a"
+url-parse@^1.1.8:
+  version "1.1.9"
+  resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.9.tgz#c67f1d775d51f0a18911dd7b3ffad27bb9e5bd19"
   dependencies:
-    querystringify "0.0.x"
+    querystringify "~1.0.0"
     requires-port "1.0.x"
 
 url@~0.10.1:
@@ -2288,9 +2336,9 @@ uuid@^3.0.0:
   version "3.0.1"
   resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1"
 
-vary@~1.1.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.0.tgz#e1e5affbbd16ae768dd2674394b9ad3022653140"
+vary@~1.1.0, 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"
@@ -2320,8 +2368,8 @@ webpack-core@~0.6.0:
     source-map "~0.4.1"
 
 webpack-dev-middleware@^1.4.0:
-  version "1.9.0"
-  resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.9.0.tgz#a1c67a3dfd8a5c5d62740aa0babe61758b4c84aa"
+  version "1.10.2"
+  resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.10.2.tgz#2e252ce1dfb020dbda1ccb37df26f30ab014dbd1"
   dependencies:
     memory-fs "~0.4.1"
     mime "^1.3.4"
@@ -2376,10 +2424,10 @@ websocket-extensions@>=0.1.1:
   resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.1.tgz#76899499c184b6ef754377c2dbb0cd6cb55d29e7"
 
 wide-align@^1.1.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.0.tgz#40edde802a71fea1f070da3e62dcda2e7add96ad"
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710"
   dependencies:
-    string-width "^1.0.1"
+    string-width "^1.0.2"
 
 window-size@0.1.0:
   version "0.1.0"
@@ -2401,10 +2449,6 @@ xml-char-classes@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d"
 
-xtend@^4.0.0:
-  version "4.0.1"
-  resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
-
 yargs@~3.10.0:
   version "3.10.0"
   resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
