diff --git a/integration/hapi-engine/package.json b/integration/hapi-engine/package.json
index a77e657be..a53f7859b 100644
--- a/integration/hapi-engine/package.json
+++ b/integration/hapi-engine/package.json
@@ -29,7 +29,7 @@
"babel-loader": "^6.4.0",
"babel-preset-es2015": "^6.22.0",
"concurrently": "3.1.0",
- "inert": "^4.2.1",
+ "inert": "^5.1.0",
"protractor": "file:../../node_modules/protractor",
"raw-loader": "^0.5.1",
"webpack": "^2.2.1"
diff --git a/integration/hapi-engine/src/server.ts b/integration/hapi-engine/src/server.ts
index 0aaf0ac55..7b200fb2d 100644
--- a/integration/hapi-engine/src/server.ts
+++ b/integration/hapi-engine/src/server.ts
@@ -11,55 +11,48 @@ import {ngHapiEngine} from '@nguniversal/hapi-engine';
require('zone.js/dist/zone-node.js');
import {enableProdMode} from '@angular/core';
-import * as Hapi from 'hapi';
+import {Server, Request} from 'hapi';
import * as Inert from 'inert';
import {HelloWorldServerModuleNgFactory} from './helloworld/app.server.ngfactory';
-import {Base_Reply} from 'hapi';
const helloworld = require('raw-loader!./helloworld/index.html');
-const server = new Hapi.Server();
-server.connection({ port: 9876, host: 'localhost' });
-server.register(Inert, () => {});
+const server = new Server({ port: 9876, host: 'localhost' });
enableProdMode();
-// Client bundles will be statically served from the built/ directory.
-server.route({
- method: 'GET',
- path: '/built/{file*}',
- handler: {
- directory: {
- path: 'built'
- }
- }
-});
-
// Keep the browser logs free of errors.
server.route({
method: 'GET',
path: '/favicon.ico',
- handler: function (request, reply) {
- reply('');
- }
+ handler: () => ''
});
//-----------ADD YOUR SERVER SIDE RENDERED APP HERE ----------------------
server.route({
method: 'GET',
path: '/helloworld',
- handler: (req: Request, reply: Base_Reply) => {
+ handler: (req: Request) =>
ngHapiEngine({
bootstrap: HelloWorldServerModuleNgFactory,
req,
document: helloworld
- } as any).then(html => reply(html));
- }
+ })
});
-server.start((err) => {
- if (err) {
- throw err;
- }
- console.log('Server listening on port 9876!');
-});
+(async() => {
+ await server.register(Inert);
+
+ // Client bundles will be statically served from the built/ directory.
+ server.route({
+ method: 'GET',
+ path: '/built/{file*}',
+ handler: {
+ directory: {
+ path: 'built'
+ }
+ }
+ });
+
+ await server.start();
+})();
diff --git a/modules/express-engine/package.json b/modules/express-engine/package.json
index 379d3d603..62d076f4f 100644
--- a/modules/express-engine/package.json
+++ b/modules/express-engine/package.json
@@ -12,7 +12,7 @@
"@angular/common": "NG_VERSION",
"@angular/core": "NG_VERSION",
"@angular/platform-server": "NG_VERSION",
- "express": "^4.15.2"
+ "express": "EXPRESS_VERSION"
},
"ng-update": {
"packageGroup": "NG_UPDATE_PACKAGE_GROUP"
diff --git a/modules/hapi-engine/README.md b/modules/hapi-engine/README.md
index 1e8585729..bd7a06fdd 100644
--- a/modules/hapi-engine/README.md
+++ b/modules/hapi-engine/README.md
@@ -9,7 +9,7 @@ This is a Hapi Engine for running Angular Apps on the server for server side ren
To use it, set the engine and then route requests to it
```ts
-import { Base_Reply, Request, Server } from 'hapi';
+import { Request, Server } from 'hapi';
import { ngHapiEngine } from '@nguniversal/hapi-engine';
const server = new Server();
@@ -18,20 +18,10 @@ server.connection({
port: 8000
});
-// Set the engine
-const hapiEngine = ngHapiEngine({
- bootstrap: ServerAppModule // Give it a module to bootstrap
-});
-
server.route({
method: 'GET',
path: '/{path*}',
- handler: (req: Request, reply: Base_Reply) => {
- hapiEngine({
- req
- }).then(html => reply(html))
- .then(err => reply(boom.wrap(err)));
- }
+ handler: (req: Request) => ngHapiEngine({req, bootstrap: ServerAppModule})
});
```
@@ -44,15 +34,14 @@ is called. To do so, simply pass in a `url` and/or `document` string to the rend
server.route({
method: 'GET',
path: '/{path*}',
- handler: (req: Request, reply: Base_Reply) => {
- let url = 'http://someurl.com';
- let doc = '
New doc';
- hapiEngine({
+ handler: (req: Request) => {
+ const url = 'http://someurl.com';
+ const document = 'New doc';
+ return ngHapiEngine({
req,
url,
- document: doc
- }).then(html => reply(html))
- .then(err => reply(boom.wrap(err)));
+ document,
+ });
}
});
```
@@ -80,23 +69,21 @@ The Bootstrap module as well as more providers can be passed on request
server.route({
method: 'GET',
path: '/{path*}',
- handler: (req: Request, reply: Base_Reply) => {
- hapiEngine({
+ handler: (req: Request) =>
+ ngHapiEngine({
bootstrap: OtherServerAppModule,
providers: [
OtherServerService
],
req
- }).then(html => reply(html))
- .then(err => reply(boom.wrap(err)));
- }
+ })
});
```
### Using the Request and Response
The Request and Response objects are injected into the app via injection tokens.
-You can access them by @Inject
+You can access them by `@Inject`
```ts
import { Request } from 'hapi';
diff --git a/modules/hapi-engine/package.json b/modules/hapi-engine/package.json
index 831fe652f..c52a75b4e 100644
--- a/modules/hapi-engine/package.json
+++ b/modules/hapi-engine/package.json
@@ -12,7 +12,7 @@
"@angular/common": "NG_VERSION",
"@angular/core": "NG_VERSION",
"@angular/platform-server": "NG_VERSION",
- "hapi": "^16.1.1"
+ "hapi": "HAPI_VERSION"
},
"ng-update": {
"packageGroup": "NG_UPDATE_PACKAGE_GROUP"
diff --git a/modules/hapi-engine/spec/index.spec.ts b/modules/hapi-engine/spec/index.spec.ts
index 9db53d563..5f479f994 100644
--- a/modules/hapi-engine/spec/index.spec.ts
+++ b/modules/hapi-engine/spec/index.spec.ts
@@ -1,5 +1,69 @@
+import {Component, destroyPlatform, getPlatform, NgModule} from '@angular/core';
+import {ServerModule} from '@angular/platform-server';
+import {ngHapiEngine} from '@nguniversal/hapi-engine';
+import {ServerInjectResponse, Request, Server} from 'hapi';
+import 'zone.js';
+import {BrowserModule} from '@angular/platform-browser';
+
+@Component({selector: 'app', template: `Works!`})
+class MyServerApp {
+}
+
+
+@NgModule({
+ bootstrap: [MyServerApp],
+ declarations: [MyServerApp],
+ imports: [ServerModule, BrowserModule.withServerTransition({appId: 'hapi-test'})],
+})
+class ExampleModule {
+}
+
+
describe('test runner', () => {
- it('can run a test', () => {
- expect(true).toBe(true);
+
+ const server = new Server({ debug: false });
+ server.route([
+ {
+ method: 'GET',
+ path: '/',
+ handler: (req: Request) => ngHapiEngine({
+ bootstrap: ExampleModule,
+ req,
+ document: ''
+ })
+ },
+ {
+ method: 'GET',
+ path: '/test',
+ handler: () => 'ok'
+ },
+ ]);
+
+ beforeEach(async () => {
+ if (getPlatform()) {
+ destroyPlatform();
+ }
+ });
+
+ it('should test the server', async () => {
+ const request = {
+ method: 'GET',
+ url: '/test'
+ };
+
+ const res = await server.inject(request);
+ expect(res.result).toBeDefined();
+ expect(res.result).toBe('ok' as any);
+ });
+
+ it('Returns a reply on successful request', async () => {
+ const request = {
+ method: 'GET',
+ url: '/'
+ };
+
+ const res: ServerInjectResponse = await server.inject(request);
+ expect(res.result).toBeDefined();
+ expect(res.result).toContain('Works!');
});
});
diff --git a/modules/hapi-engine/src/main.ts b/modules/hapi-engine/src/main.ts
index cb4e4258c..fd3bad07d 100644
--- a/modules/hapi-engine/src/main.ts
+++ b/modules/hapi-engine/src/main.ts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.io/license
*/
import * as fs from 'fs';
-import { Request, Response } from 'hapi';
+import { Request, ResponseToolkit } from 'hapi';
import { NgModuleFactory, Type, CompilerFactory, Compiler, StaticProvider } from '@angular/core';
import { ResourceLoader } from '@angular/compiler';
@@ -32,7 +32,7 @@ export interface NgSetupOptions {
*/
export interface RenderOptions extends NgSetupOptions {
req: Request;
- res?: Response;
+ res?: ResponseToolkit;
url?: string;
document?: string;
}
@@ -90,16 +90,8 @@ export function ngHapiEngine(options: RenderOptions) {
]);
getFactory(moduleOrFactory, compiler)
- .then(factory => {
- return renderModuleFactory(factory, {
- extraProviders
- });
- })
- .then((html: string) => {
- resolve(html);
- }, (err) => {
- reject(err);
- });
+ .then(factory => renderModuleFactory(factory, {extraProviders}))
+ .then(resolve, reject);
});
}
@@ -128,9 +120,7 @@ function getFactory(
.then((factory) => {
factoryCacheMap.set(moduleOrFactory, factory);
resolve(factory);
- }, (err => {
- reject(err);
- }));
+ }, reject);
}
});
}
diff --git a/modules/hapi-engine/tokens/tokens.ts b/modules/hapi-engine/tokens/tokens.ts
index 4b3c30b53..166075574 100644
--- a/modules/hapi-engine/tokens/tokens.ts
+++ b/modules/hapi-engine/tokens/tokens.ts
@@ -5,8 +5,8 @@
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.io/license
*/
-import { Request, Response } from 'hapi';
+import { Request, ResponseToolkit } from 'hapi';
import { InjectionToken } from '@angular/core';
export const REQUEST = new InjectionToken('REQUEST');
-export const RESPONSE = new InjectionToken('RESPONSE');
+export const RESPONSE = new InjectionToken('RESPONSE');
diff --git a/package.json b/package.json
index b2fa73eb2..3d4c71c22 100644
--- a/package.json
+++ b/package.json
@@ -87,14 +87,14 @@
"@bazel/ibazel": "^0.3.1",
"@types/express": "^4.0.39",
"@types/fs-extra": "^4.0.5",
- "@types/hapi": "^16.1.2",
+ "@types/hapi": "^17.0.12",
"@types/jasmine": "^2.8.6",
"@types/node": "^9.4.6",
"camelcase": "^4.1.0",
"express": "^4.15.2",
"fs-extra": "^3.0.1",
"glob": "^7.1.2",
- "hapi": "^16.1.1",
+ "hapi": "^17.5.1",
"jasmine-core": "^2.8.0",
"karma": "^2.0.0",
"karma-chrome-launcher": "^2.2.0",
diff --git a/tools/defaults.bzl b/tools/defaults.bzl
index e176c3589..a4ce1c219 100644
--- a/tools/defaults.bzl
+++ b/tools/defaults.bzl
@@ -8,6 +8,8 @@ DEFAULT_NODE_MODULES = "//:node_modules"
NG_VERSION = "^6.0.0-rc.0"
RXJS_VERSION = "^6.0.0-beta.0"
+HAPI_VERSION = "^17.0.0"
+EXPRESS_VERSION = "^4.15.2"
NGUNIVERSAL_SCOPED_PACKAGES = ["@nguniversal/%s" % p for p in [
"aspnetcore-engine",
@@ -20,6 +22,8 @@ NGUNIVERSAL_SCOPED_PACKAGES = ["@nguniversal/%s" % p for p in [
PKG_GROUP_REPLACEMENTS = {
"NG_VERSION": NG_VERSION,
"RXJS_VERSION": RXJS_VERSION,
+ "HAPI_VERSION": HAPI_VERSION,
+ "EXPRESS_VERSION": EXPRESS_VERSION,
"\"NG_UPDATE_PACKAGE_GROUP\"": """[
%s
]""" % ",\n ".join(["\"%s\"" % s for s in NGUNIVERSAL_SCOPED_PACKAGES])
@@ -39,14 +43,14 @@ GLOBALS = {
"@nguniversal/express-engine/tokens": "nguniversal.expressEngine.tokens",
"@nguniversal/hapi-engine/tokens": "nguniversal.hapiEngine.tokens",
'tslib': 'tslib',
- "rxjs": "Rx",
- "rxjs/operators": "Rx.operators",
+ "rxjs": "rxjs",
+ "rxjs/operators": "rxjs.operators",
"fs": "fs",
"express": "express",
"hapi": "hapi"
}
-# TODO: when a better api for defaults is avilable use that isntead of these macros
+# TODO(Toxicable): when a better api for defaults is avilable use that instead of these macros
def ts_test_library(node_modules=None, **kwargs):
ts_library(testonly=1, **kwargs)
diff --git a/yarn.lock b/yarn.lock
index 75a56298f..3849fe7d4 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -98,15 +98,13 @@
"@types/connect" "*"
"@types/node" "*"
-"@types/boom@^4":
- version "4.3.10"
- resolved "https://registry.yarnpkg.com/@types/boom/-/boom-4.3.10.tgz#39dad8c0614c26b91ef016a57d7eee4ffe4f8a25"
+"@types/boom@*":
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/@types/boom/-/boom-7.2.0.tgz#19c36cbb5811a7493f0f2e37f31d42b28df1abc1"
-"@types/catbox@^7":
- version "7.1.6"
- resolved "https://registry.yarnpkg.com/@types/catbox/-/catbox-7.1.6.tgz#be44e3cf3137b4c7997998ec60628709d5db904a"
- dependencies:
- "@types/boom" "^4"
+"@types/catbox@*":
+ version "10.0.0"
+ resolved "https://registry.yarnpkg.com/@types/catbox/-/catbox-10.0.0.tgz#1e01e5ad83e224f110cc59f6f57c56558f7eeb61"
"@types/connect@*":
version "3.4.32"
@@ -148,19 +146,25 @@
"@types/minimatch" "*"
"@types/node" "*"
-"@types/hapi@^16.1.2":
- version "16.1.14"
- resolved "https://registry.yarnpkg.com/@types/hapi/-/hapi-16.1.14.tgz#cdda84296fc08c02526301f88964fa74ab9090a6"
+"@types/hapi@^17.0.12":
+ version "17.0.12"
+ resolved "https://registry.yarnpkg.com/@types/hapi/-/hapi-17.0.12.tgz#5751f4d8db4decb4eae6671a4efbeae671278ceb"
dependencies:
- "@types/boom" "^4"
- "@types/catbox" "^7"
- "@types/events" "*"
+ "@types/boom" "*"
+ "@types/catbox" "*"
+ "@types/iron" "*"
"@types/joi" "*"
"@types/mimos" "*"
"@types/node" "*"
"@types/podium" "*"
"@types/shot" "*"
+"@types/iron@*":
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/@types/iron/-/iron-5.0.1.tgz#5420bbda8623c48ee51b9a78ebad05d7305b4b24"
+ dependencies:
+ "@types/node" "*"
+
"@types/jasmine@^2.8.6":
version "2.8.8"
resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-2.8.8.tgz#bf53a7d193ea8b03867a38bfdb4fbb0e0bf066c9"
@@ -254,12 +258,12 @@ abbrev@1.0.x:
version "1.0.9"
resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135"
-accept@^2.1.4:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/accept/-/accept-2.1.4.tgz#887af54ceee5c7f4430461971ec400c61d09acbb"
+accept@3.x.x:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/accept/-/accept-3.0.2.tgz#83e41cec7e1149f3fd474880423873db6c6cc9ac"
dependencies:
- boom "5.x.x"
- hoek "4.x.x"
+ boom "7.x.x"
+ hoek "5.x.x"
accepts@~1.3.4, accepts@~1.3.5:
version "1.3.5"
@@ -319,12 +323,11 @@ amdefine@>=0.0.4, amdefine@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
-ammo@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/ammo/-/ammo-2.0.4.tgz#bf80aab211698ea78f63ef5e7f113dd5d9e8917f"
+ammo@3.x.x:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/ammo/-/ammo-3.0.1.tgz#c79ceeac36fb4e55085ea3fe0c2f42bfa5f7c914"
dependencies:
- boom "5.x.x"
- hoek "4.x.x"
+ hoek "5.x.x"
amqplib@^0.5.2:
version "0.5.2"
@@ -534,9 +537,9 @@ axios@^0.15.3:
dependencies:
follow-redirects "1.0.0"
-b64@3.x.x:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/b64/-/b64-3.0.3.tgz#36afeee0d9345f046387ce6de8a6702afe5bb56e"
+b64@4.x.x:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/b64/-/b64-4.0.0.tgz#c37f587f0a383c7019e821120e8c3f58f0d22772"
babel-code-frame@^6.22.0:
version "6.26.0"
@@ -578,6 +581,10 @@ better-assert@~1.0.0:
dependencies:
callsite "1.0.0"
+big-time@2.x.x:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/big-time/-/big-time-2.0.1.tgz#68c7df8dc30f97e953f25a67a76ac9713c16c9de"
+
binary-extensions@^1.0.0:
version "1.11.0"
resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205"
@@ -648,11 +655,18 @@ boom@2.x.x:
dependencies:
hoek "2.x.x"
-boom@5.x.x, boom@^5.2.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02"
+boom@7.x.x:
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/boom/-/boom-7.2.0.tgz#2bff24a55565767fde869ec808317eb10c48e966"
+ dependencies:
+ hoek "5.x.x"
+
+bounce@1.x.x:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/bounce/-/bounce-1.2.0.tgz#e3bac68c73fd256e38096551efc09f504873c8c8"
dependencies:
- hoek "4.x.x"
+ boom "7.x.x"
+ hoek "5.x.x"
brace-expansion@^1.1.7:
version "1.1.11"
@@ -794,12 +808,12 @@ bytes@3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048"
-call@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/call/-/call-4.0.2.tgz#df76f5f51ee8dd48b856ac8400f7e69e6d7399c4"
+call@5.x.x:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/call/-/call-5.0.1.tgz#ac1b5c106d9edc2a17af2a4a4f74dd4f0c06e910"
dependencies:
- boom "5.x.x"
- hoek "4.x.x"
+ boom "7.x.x"
+ hoek "5.x.x"
callsite@1.0.0:
version "1.0.0"
@@ -840,19 +854,22 @@ caseless@~0.12.0:
version "0.12.0"
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
-catbox-memory@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/catbox-memory/-/catbox-memory-2.0.4.tgz#433e255902caf54233d1286429c8f4df14e822d5"
+catbox-memory@3.x.x:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/catbox-memory/-/catbox-memory-3.1.2.tgz#4aeec1bc994419c0f7e60087f172aaedd9b4911c"
dependencies:
- hoek "4.x.x"
+ big-time "2.x.x"
+ boom "7.x.x"
+ hoek "5.x.x"
-catbox@^7.1.5:
- version "7.1.5"
- resolved "https://registry.yarnpkg.com/catbox/-/catbox-7.1.5.tgz#c56f7e8e9555d27c0dc038a96ef73e57d186bb1f"
+catbox@10.x.x:
+ version "10.0.2"
+ resolved "https://registry.yarnpkg.com/catbox/-/catbox-10.0.2.tgz#e6ac1f35102d1a9bd07915b82e508d12b50a8bfa"
dependencies:
- boom "5.x.x"
- hoek "4.x.x"
- joi "10.x.x"
+ boom "7.x.x"
+ bounce "1.x.x"
+ hoek "5.x.x"
+ joi "13.x.x"
center-align@^0.1.1:
version "0.1.3"
@@ -1051,11 +1068,11 @@ content-type@~1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
-content@3.x.x:
- version "3.0.7"
- resolved "https://registry.yarnpkg.com/content/-/content-3.0.7.tgz#0cbb88e82702d35ccf59800b8add609bb5c1dfc2"
+content@4.x.x:
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/content/-/content-4.0.5.tgz#bc547deabc889ab69bce17faf3585c29f4c41bf2"
dependencies:
- boom "5.x.x"
+ boom "7.x.x"
conventional-changelog-angular@^1.6.6:
version "1.6.6"
@@ -1267,11 +1284,11 @@ cryptiles@2.x.x:
dependencies:
boom "2.x.x"
-cryptiles@3.x.x, cryptiles@^3.1.2:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe"
+cryptiles@4.x.x:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-4.1.1.tgz#169256b9df9fe3c73f8085c99e30b32247d4ab46"
dependencies:
- boom "5.x.x"
+ boom "7.x.x"
crypto-browserify@^3.11.1:
version "3.12.0"
@@ -2073,28 +2090,27 @@ handlebars@^4.0.1, handlebars@^4.0.2:
optionalDependencies:
uglify-js "^2.6"
-hapi@^16.1.1:
- version "16.6.3"
- resolved "https://registry.yarnpkg.com/hapi/-/hapi-16.6.3.tgz#ca9ae1d028afb64d98ac07a1219a1b5eff14d01a"
- dependencies:
- accept "^2.1.4"
- ammo "^2.0.4"
- boom "^5.2.0"
- call "^4.0.2"
- catbox "^7.1.5"
- catbox-memory "^2.0.4"
- cryptiles "^3.1.2"
- heavy "^4.0.4"
- hoek "^4.2.0"
- iron "^4.0.5"
- items "^2.1.1"
- joi "^11.1.0"
- mimos "^3.0.3"
- podium "^1.3.0"
- shot "^3.4.2"
- statehood "^5.0.3"
- subtext "^5.0.0"
- topo "^2.0.2"
+hapi@^17.5.1:
+ version "17.5.1"
+ resolved "https://registry.yarnpkg.com/hapi/-/hapi-17.5.1.tgz#0e6ca5d3d908c4c96203221c9c246e23fce4b49b"
+ dependencies:
+ accept "3.x.x"
+ ammo "3.x.x"
+ boom "7.x.x"
+ bounce "1.x.x"
+ call "5.x.x"
+ catbox "10.x.x"
+ catbox-memory "3.x.x"
+ heavy "6.x.x"
+ hoek "5.x.x"
+ joi "13.x.x"
+ mimos "4.x.x"
+ podium "3.x.x"
+ shot "4.x.x"
+ statehood "6.x.x"
+ subtext "6.x.x"
+ teamwork "3.x.x"
+ topo "3.x.x"
har-schema@^2.0.0:
version "2.0.0"
@@ -2167,13 +2183,13 @@ hawk@~3.1.3:
hoek "2.x.x"
sntp "1.x.x"
-heavy@^4.0.4:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/heavy/-/heavy-4.0.4.tgz#36c91336c00ccfe852caa4d153086335cd2f00e9"
+heavy@6.x.x:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/heavy/-/heavy-6.1.0.tgz#1bbfa43dc61dd4b543ede3ff87db8306b7967274"
dependencies:
- boom "5.x.x"
- hoek "4.x.x"
- joi "10.x.x"
+ boom "7.x.x"
+ hoek "5.x.x"
+ joi "13.x.x"
hipchat-notifier@^1.1.0:
version "1.1.0"
@@ -2194,9 +2210,9 @@ hoek@2.x.x:
version "2.16.3"
resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed"
-hoek@4.x.x, hoek@^4.2.0:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.1.tgz#9634502aa12c445dd5a7c5734b572bb8738aacbb"
+hoek@5.x.x:
+ version "5.0.3"
+ resolved "https://registry.yarnpkg.com/hoek/-/hoek-5.0.3.tgz#b71d40d943d0a95da01956b547f83c4a5b4a34ac"
homedir-polyfill@^1.0.1:
version "1.0.1"
@@ -2370,13 +2386,13 @@ ipaddr.js@1.6.0:
version "1.6.0"
resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.6.0.tgz#e3fa357b773da619f26e95f049d055c72796f86b"
-iron@4.x.x, iron@^4.0.5:
- version "4.0.5"
- resolved "https://registry.yarnpkg.com/iron/-/iron-4.0.5.tgz#4f042cceb8b9738f346b59aa734c83a89bc31428"
+iron@5.x.x:
+ version "5.0.4"
+ resolved "https://registry.yarnpkg.com/iron/-/iron-5.0.4.tgz#003ed822f656f07c2b62762815f5de3947326867"
dependencies:
- boom "5.x.x"
- cryptiles "3.x.x"
- hoek "4.x.x"
+ boom "7.x.x"
+ cryptiles "4.x.x"
+ hoek "5.x.x"
is-arrayish@^0.2.1:
version "0.2.1"
@@ -2544,10 +2560,6 @@ isbinaryfile@^3.0.0:
version "3.0.2"
resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.2.tgz#4a3e974ec0cba9004d3fc6cde7209ea69368a621"
-isemail@2.x.x:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/isemail/-/isemail-2.2.1.tgz#0353d3d9a62951080c262c2aa0a42b8ea8e9e2a6"
-
isemail@3.x.x:
version "3.1.2"
resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.1.2.tgz#937cf919002077999a73ea8b1951d590e84e01dd"
@@ -2587,10 +2599,6 @@ istanbul@0.4.5, istanbul@^0.4.0:
which "^1.1.1"
wordwrap "^1.0.0"
-items@2.x.x, items@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/items/-/items-2.1.1.tgz#8bd16d9c83b19529de5aea321acaada78364a198"
-
jasmine-core@^2.8.0:
version "2.99.1"
resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.99.1.tgz#e6400df1e6b56e130b61c4bcd093daa7f6e8ca15"
@@ -2611,22 +2619,13 @@ jasminewd2@^2.1.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/jasminewd2/-/jasminewd2-2.2.0.tgz#e37cf0b17f199cce23bea71b2039395246b4ec4e"
-joi@10.x.x:
- version "10.6.0"
- resolved "https://registry.yarnpkg.com/joi/-/joi-10.6.0.tgz#52587f02d52b8b75cdb0c74f0b164a191a0e1fc2"
+joi@13.x.x:
+ version "13.4.0"
+ resolved "https://registry.yarnpkg.com/joi/-/joi-13.4.0.tgz#afc359ee3d8bc5f9b9ba6cdc31b46d44af14cecc"
dependencies:
- hoek "4.x.x"
- isemail "2.x.x"
- items "2.x.x"
- topo "2.x.x"
-
-joi@^11.1.0:
- version "11.4.0"
- resolved "https://registry.yarnpkg.com/joi/-/joi-11.4.0.tgz#f674897537b625e9ac3d0b7e1604c828ad913ccb"
- dependencies:
- hoek "4.x.x"
+ hoek "5.x.x"
isemail "3.x.x"
- topo "2.x.x"
+ topo "3.x.x"
js-tokens@^3.0.2:
version "3.0.2"
@@ -3118,11 +3117,11 @@ mimic-fn@^1.0.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
-mimos@^3.0.3:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/mimos/-/mimos-3.0.3.tgz#b9109072ad378c2b72f6a0101c43ddfb2b36641f"
+mimos@4.x.x:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/mimos/-/mimos-4.0.0.tgz#76e3d27128431cb6482fd15b20475719ad626a5a"
dependencies:
- hoek "4.x.x"
+ hoek "5.x.x"
mime-db "1.x.x"
minimalistic-assert@^1.0.0:
@@ -3205,12 +3204,12 @@ netmask@^1.0.6:
version "1.0.6"
resolved "https://registry.yarnpkg.com/netmask/-/netmask-1.0.6.tgz#20297e89d86f6f6400f250d9f4f6b4c1945fcd35"
-nigel@2.x.x:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/nigel/-/nigel-2.0.2.tgz#93a1866fb0c52d87390aa75e2b161f4b5c75e5b1"
+nigel@3.x.x:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/nigel/-/nigel-3.0.1.tgz#48a08859d65177312f1c25af7252c1e07bb07c2a"
dependencies:
- hoek "4.x.x"
- vise "2.x.x"
+ hoek "5.x.x"
+ vise "3.x.x"
node-pre-gyp@^0.10.0:
version "0.10.0"
@@ -3615,15 +3614,15 @@ performance-now@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
-pez@2.x.x:
- version "2.1.5"
- resolved "https://registry.yarnpkg.com/pez/-/pez-2.1.5.tgz#5ec2cc62500cc3eb4236d4a414cf5a17b5eb5007"
+pez@4.x.x:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/pez/-/pez-4.0.2.tgz#0a7c81b64968e90b0e9562b398f390939e9c4b53"
dependencies:
- b64 "3.x.x"
- boom "5.x.x"
- content "3.x.x"
- hoek "4.x.x"
- nigel "2.x.x"
+ b64 "4.x.x"
+ boom "7.x.x"
+ content "4.x.x"
+ hoek "5.x.x"
+ nigel "3.x.x"
pify@^2.0.0, pify@^2.3.0:
version "2.3.0"
@@ -3653,13 +3652,12 @@ plugin-error@^0.1.2:
arr-union "^2.0.1"
extend-shallow "^1.1.2"
-podium@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/podium/-/podium-1.3.0.tgz#3c490f54d16f10f5260cbe98641f1cb733a8851c"
+podium@3.x.x:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/podium/-/podium-3.1.2.tgz#b701429739cf6bdde6b3015ae6b48d400817ce9e"
dependencies:
- hoek "4.x.x"
- items "2.x.x"
- joi "10.x.x"
+ hoek "5.x.x"
+ joi "13.x.x"
prelude-ls@~1.1.2:
version "1.1.2"
@@ -4316,12 +4314,12 @@ shelljs@0.7.8:
interpret "^1.0.0"
rechoir "^0.6.2"
-shot@^3.4.2:
- version "3.4.2"
- resolved "https://registry.yarnpkg.com/shot/-/shot-3.4.2.tgz#1e5c3f6f2b26649adc42f7eb350214a5a0291d67"
+shot@4.x.x:
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/shot/-/shot-4.0.5.tgz#c7e7455d11d60f6b6cd3c43e15a3b431c17e5566"
dependencies:
- hoek "4.x.x"
- joi "10.x.x"
+ hoek "5.x.x"
+ joi "13.x.x"
signal-exit@^3.0.0:
version "3.0.2"
@@ -4542,16 +4540,16 @@ standard-version@^4.3.0:
semver "^5.1.0"
yargs "^8.0.1"
-statehood@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/statehood/-/statehood-5.0.3.tgz#c07a75620db5379b60d2edd47f538002a8ac7dd6"
+statehood@6.x.x:
+ version "6.0.6"
+ resolved "https://registry.yarnpkg.com/statehood/-/statehood-6.0.6.tgz#0dbd7c50774d3f61a24e42b0673093bbc81fa5f0"
dependencies:
- boom "5.x.x"
- cryptiles "3.x.x"
- hoek "4.x.x"
- iron "4.x.x"
- items "2.x.x"
- joi "10.x.x"
+ boom "7.x.x"
+ bounce "1.x.x"
+ cryptiles "4.x.x"
+ hoek "5.x.x"
+ iron "5.x.x"
+ joi "13.x.x"
"statuses@>= 1.3.1 < 2", "statuses@>= 1.4.0 < 2":
version "1.5.0"
@@ -4669,15 +4667,15 @@ strip-json-comments@^2.0.0, strip-json-comments@^2.0.1, strip-json-comments@~2.0
version "2.0.1"
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
-subtext@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/subtext/-/subtext-5.0.0.tgz#9c3f083018bb1586b167ad8cfd87083f5ccdfe0f"
+subtext@6.x.x:
+ version "6.0.7"
+ resolved "https://registry.yarnpkg.com/subtext/-/subtext-6.0.7.tgz#8e40a67901a734d598142665c90e398369b885f9"
dependencies:
- boom "5.x.x"
- content "3.x.x"
- hoek "4.x.x"
- pez "2.x.x"
- wreck "12.x.x"
+ boom "7.x.x"
+ content "4.x.x"
+ hoek "5.x.x"
+ pez "4.x.x"
+ wreck "14.x.x"
supports-color@^2.0.0:
version "2.0.0"
@@ -4713,6 +4711,10 @@ tar@^4:
safe-buffer "^5.1.2"
yallist "^3.0.2"
+teamwork@3.x.x:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/teamwork/-/teamwork-3.0.1.tgz#ff38c7161f41f8070b7813716eb6154036ece196"
+
text-extensions@^1.0.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.7.0.tgz#faaaba2625ed746d568a23e4d0aacd9bf08a8b39"
@@ -4779,11 +4781,11 @@ to-arraybuffer@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
-topo@2.x.x, topo@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/topo/-/topo-2.0.2.tgz#cd5615752539057c0dc0491a621c3bc6fbe1d182"
+topo@3.x.x:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/topo/-/topo-3.0.0.tgz#37e48c330efeac784538e0acd3e62ca5e231fe7a"
dependencies:
- hoek "4.x.x"
+ hoek "5.x.x"
tough-cookie@~2.3.0, tough-cookie@~2.3.3:
version "2.3.4"
@@ -5023,11 +5025,11 @@ verror@1.10.0:
core-util-is "1.0.2"
extsprintf "^1.2.0"
-vise@2.x.x:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/vise/-/vise-2.0.2.tgz#6b08e8fb4cb76e3a50cd6dd0ec37338e811a0d39"
+vise@3.x.x:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/vise/-/vise-3.0.0.tgz#76ad14ab31669c50fbb0817bc0e72fedcbb3bf4c"
dependencies:
- hoek "4.x.x"
+ hoek "5.x.x"
vlq@^0.2.2:
version "0.2.3"
@@ -5127,12 +5129,12 @@ wrappy@1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
-wreck@12.x.x:
- version "12.5.1"
- resolved "https://registry.yarnpkg.com/wreck/-/wreck-12.5.1.tgz#cd2ffce167449e1f0242ed9cf80552e20fb6902a"
+wreck@14.x.x:
+ version "14.0.2"
+ resolved "https://registry.yarnpkg.com/wreck/-/wreck-14.0.2.tgz#89c17a9061c745ed1c3aebcb66ea181dbaab454c"
dependencies:
- boom "5.x.x"
- hoek "4.x.x"
+ boom "7.x.x"
+ hoek "5.x.x"
ws@^1.0.1:
version "1.1.5"