diff --git a/README.md b/README.md
index 7ff69fc..f3b2185 100644
--- a/README.md
+++ b/README.md
@@ -1,13 +1,16 @@
-# dockersock
+# @mojoio/dockersock
+
easy communication with docker remote api from node, TypeScript ready
## Availabililty
+
[![npm](https://mojoio.gitlab.io/assets/repo-button-npm.svg)](https://www.npmjs.com/package/dockersock)
[![git](https://mojoio.gitlab.io/assets/repo-button-git.svg)](https://GitLab.com/mojoio/dockersock)
[![git](https://mojoio.gitlab.io/assets/repo-button-mirror.svg)](https://github.com/mojoio/dockersock)
[![docs](https://mojoio.gitlab.io/assets/repo-button-docs.svg)](https://mojoio.gitlab.io/dockersock/)
## Status for master
+
[![build status](https://GitLab.com/mojoio/dockersock/badges/master/build.svg)](https://GitLab.com/mojoio/dockersock/commits/master)
[![coverage report](https://GitLab.com/mojoio/dockersock/badges/master/coverage.svg)](https://GitLab.com/mojoio/dockersock/commits/master)
[![npm downloads per month](https://img.shields.io/npm/dm/dockersock.svg)](https://www.npmjs.com/package/dockersock)
@@ -19,6 +22,7 @@ easy communication with docker remote api from node, TypeScript ready
[![JavaScript Style Guide](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/)
## Usage
+
Use TypeScript for best in class instellisense.
```TypeScript
@@ -38,12 +42,11 @@ myDockersock.startContainer({ // starts a already present container
myDockersock.newContainer({ // start new Container, equals "docker run" shell command
image: "someimagetag"
})
-
```
For further information read the linked docs at the top of this README.
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
-| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
+> | By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
[![repo-footer](https://mojoio.gitlab.io/assets/repo-footer.svg)](https://mojo.io)
diff --git a/dist/dockersock.classes.dockersock.d.ts b/dist/dockersock.classes.dockersock.d.ts
deleted file mode 100644
index 91b7491..0000000
--- a/dist/dockersock.classes.dockersock.d.ts
+++ /dev/null
@@ -1,49 +0,0 @@
-///
-import "typings-global";
-import * as plugins from "./dockersock.plugins";
-import { Observable } from "rxjs";
-import { Objectmap } from 'lik';
-export declare class Dockersock {
- sockPath: string;
- requestObjectmap: Objectmap;
- constructor(pathArg?: string);
- auth(userArg: string, passArg: string): plugins.q.Promise<{}>;
- listContainers(): plugins.q.Promise<{}>;
- listContainersDetailed(): plugins.q.Promise<{}>;
- listContainersRunning(): plugins.q.Promise<{}>;
- listContainersStopped(): plugins.q.Promise<{}>;
- listImages(): plugins.q.Promise<{}>;
- listImagesDangling(): plugins.q.Promise<{}>;
- pullImage(imageLabelArg: string): plugins.q.Promise<{}>;
- createContainer(optionsArg: any, pullFirstArg?: boolean): plugins.q.Promise<{}>;
- getContainerId(): void;
- startContainer(containerNameArg: any): plugins.q.Promise<{}>;
- stopContainer(containerNameArg: any): plugins.q.Promise<{}>;
- removeContainer(containerNameArg: any): plugins.q.Promise<{}>;
- clean(): plugins.q.Promise<{}>;
- callOnChange(cb: Function): void;
- /**
- * gets you an observable that reports changes in the docker infrastructure
- */
- getChangeObservable(): Observable<{}>;
- /**
- * fire a request
- * @param methodArg
- * @param routeArg
- * @param queryArg
- * @param dataArg
- */
- request(methodArg: string, routeArg: string, queryArg?: string, dataArg?: {}): plugins.q.Promise<{}>;
- /**
- * fire a streaming request
- * @param methodArg
- * @param routeArg
- * @param queryArg
- * @param dataArg
- */
- requestStream(methodArg: string, routeArg: string, queryArg?: string, dataArg?: {}): plugins.q.Promise<{}>;
- /**
- * end all currently streaming requests
- */
- endRequests(): void;
-}
diff --git a/dist/dockersock.classes.dockersock.js b/dist/dockersock.classes.dockersock.js
deleted file mode 100644
index 906dbd5..0000000
--- a/dist/dockersock.classes.dockersock.js
+++ /dev/null
@@ -1,278 +0,0 @@
-"use strict";
-Object.defineProperty(exports, "__esModule", { value: true });
-require("typings-global");
-const plugins = require("./dockersock.plugins");
-const rxjs_1 = require("rxjs");
-class Dockersock {
- constructor(pathArg = "http://unix:/var/run/docker.sock:") {
- this.requestObjectmap = new plugins.lik.Objectmap();
- this.sockPath = pathArg;
- }
- // methods
- auth(userArg, passArg) {
- let done = plugins.q.defer();
- this.request("POST", "");
- return done.promise;
- }
- listContainers() {
- let done = plugins.q.defer();
- this.request("GET", "/containers")
- .then(done.resolve);
- return done.promise;
- }
- ;
- listContainersDetailed() {
- let done = plugins.q.defer();
- let detailedDataObject = [];
- this.listContainers()
- .then((dataArg) => {
- let recursiveCounter = 0;
- let makeDetailed = () => {
- if (typeof dataArg[recursiveCounter] != "undefined") {
- this.request("GET", "/containers/" + dataArg[recursiveCounter].Id)
- .then((dataArg2) => {
- detailedDataObject.push(dataArg2);
- recursiveCounter++;
- // recursive call
- makeDetailed();
- });
- }
- else {
- done.resolve(detailedDataObject);
- }
- };
- makeDetailed();
- });
- return done.promise;
- }
- ;
- listContainersRunning() {
- let done = plugins.q.defer();
- return done.promise;
- }
- listContainersStopped() {
- let done = plugins.q.defer();
- return done.promise;
- }
- listImages() {
- return this.request("GET", "/images", "?all=true");
- }
- listImagesDangling() {
- return this.request("GET", "/images", "?dangling=true");
- }
- pullImage(imageLabelArg) {
- let imageLabel = encodeURI(imageLabelArg);
- return this.requestStream("POST", "/images/create?fromImage=" + imageLabel);
- }
- ;
- createContainer(optionsArg, pullFirstArg = true) {
- let done = plugins.q.defer();
- let create = () => {
- return this.request("POST", "/containers/create", "", optionsArg);
- };
- if (pullFirstArg) {
- this.pullImage(optionsArg.Image)
- .then(create)
- .then(done.resolve);
- }
- else {
- create()
- .then(done.resolve);
- }
- return done.promise;
- }
- ;
- getContainerId() {
- }
- ;
- startContainer(containerNameArg) {
- return this.request("POST", "/containers/" + containerNameArg + "/start");
- }
- ;
- stopContainer(containerNameArg) {
- return this.request("POST", "/containers/" + containerNameArg + "/stop");
- }
- ;
- removeContainer(containerNameArg) {
- return this.request("DELETE", "/containers/" + containerNameArg + "?v=1");
- }
- ;
- clean() {
- let done = plugins.q.defer();
- return done.promise;
- }
- ;
- callOnChange(cb) {
- let cbPromise;
- let changeBuffered = false; // when cb is running then buffer any consequent change
- let requestStream = plugins.request.get(this.sockPath + "/events");
- requestStream.on("response", (response) => {
- if (response.statusCode == 200) {
- plugins.beautylog.ok("request returned status 200, so we are good!");
- }
- else {
- plugins.beautylog.error("request returned error: " + response.statusCode);
- }
- });
- requestStream.on("data", (data) => {
- let status = JSON.parse(data.toString()).status;
- plugins.beautylog.logReduced(status);
- if (typeof cbPromise == "undefined" || cbPromise.state == "pending") {
- cbPromise = cb();
- }
- else if (changeBuffered) {
- changeBuffered = true;
- cbPromise.then(() => {
- changeBuffered = false;
- cbPromise = cb();
- });
- }
- });
- requestStream.on("end", () => {
- });
- }
- ;
- /**
- * gets you an observable that reports changes in the docker infrastructure
- */
- getChangeObservable() {
- let options = {
- method: "GET",
- url: this.sockPath + "/events",
- headers: {
- "Content-Type": "application/json",
- "Host": "docker.sock"
- }
- };
- let requestStream = plugins.request(options, (err, res, body) => {
- if (!err && res.statusCode == 200) {
- }
- else {
- console.log(err);
- console.log(res);
- }
- ;
- });
- let incomingMessage;
- requestStream.on("response", (response) => {
- incomingMessage = response;
- this.requestObjectmap.add(incomingMessage);
- if (response.statusCode == 200) {
- plugins.beautylog.ok("request returned status 200, so we are good!");
- }
- else {
- plugins.beautylog.error("request returned error: " + response.statusCode);
- }
- });
- let changeObservable = rxjs_1.Observable.fromEvent(requestStream, "data");
- requestStream.on("end", () => {
- this.requestObjectmap.remove(incomingMessage);
- });
- return changeObservable;
- }
- /**
- * fire a request
- * @param methodArg
- * @param routeArg
- * @param queryArg
- * @param dataArg
- */
- request(methodArg, routeArg, queryArg = "", dataArg = {}) {
- let done = plugins.q.defer();
- let jsonArg = JSON.stringify(dataArg);
- let suffix = "";
- if (methodArg == "GET")
- suffix = "/json";
- let options = {
- method: methodArg,
- url: this.sockPath + routeArg + suffix + queryArg,
- headers: {
- "Content-Type": "application/json",
- "Host": "docker.sock"
- },
- body: jsonArg
- };
- //console.log(options);
- plugins.request(options, (err, res, body) => {
- if (!err && res.statusCode == 200) {
- var responseObj = JSON.parse(body);
- done.resolve(responseObj);
- }
- else {
- console.log(err);
- console.log(res);
- done.reject(err);
- }
- ;
- });
- return done.promise;
- }
- /**
- * fire a streaming request
- * @param methodArg
- * @param routeArg
- * @param queryArg
- * @param dataArg
- */
- requestStream(methodArg, routeArg, queryArg = "", dataArg = {}) {
- let done = plugins.q.defer();
- let jsonArg = JSON.stringify(dataArg);
- let suffix = "";
- let options = {
- method: methodArg,
- url: this.sockPath + routeArg + suffix + queryArg,
- headers: {
- "Content-Type": "application/json",
- "Host": "docker.sock"
- },
- body: jsonArg
- };
- let requestStream = plugins.request(options, (err, res, body) => {
- if (!err && res.statusCode == 200) {
- done.resolve();
- }
- else {
- console.log(err);
- console.log(res);
- done.reject(err);
- }
- ;
- });
- let incomingMessage;
- requestStream.on("response", (response) => {
- incomingMessage = response;
- this.requestObjectmap.add(incomingMessage);
- if (response.statusCode == 200) {
- plugins.beautylog.ok("request returned status 200, so we are good!");
- }
- else {
- plugins.beautylog.error("request returned error: " + response.statusCode);
- done.reject(response);
- }
- });
- requestStream.on("data", (data) => {
- let status;
- status = JSON.parse(data.toString()).status;
- plugins.beautylog.logReduced(status);
- });
- requestStream.on("end", () => {
- this.requestObjectmap.remove(incomingMessage);
- });
- return done.promise;
- }
- ;
- /**
- * end all currently streaming requests
- */
- endRequests() {
- setTimeout(() => {
- this.requestObjectmap.forEach((itemArg) => {
- itemArg.emit("end");
- });
- this.requestObjectmap.wipe();
- }, 5000);
- }
- ;
-}
-exports.Dockersock = Dockersock;
-//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9ja2Vyc29jay5jbGFzc2VzLmRvY2tlcnNvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9kb2NrZXJzb2NrLmNsYXNzZXMuZG9ja2Vyc29jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBCQUF1QjtBQUN2QixnREFBZ0Q7QUFDaEQsK0JBQWtDO0FBS2xDO0lBR0UsWUFBWSxVQUFrQixtQ0FBbUM7UUFEakUscUJBQWdCLEdBQUcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBMkIsQ0FBQztRQUV0RSxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUMxQixDQUFDO0lBRUQsVUFBVTtJQUNWLElBQUksQ0FBRSxPQUFlLEVBQUUsT0FBZTtRQUNwQyxJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFDRCxjQUFjO1FBQ1osSUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxhQUFhLENBQUM7YUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBQUEsQ0FBQztJQUNGLHNCQUFzQjtRQUNwQixJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzdCLElBQUksa0JBQWtCLEdBQUcsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxjQUFjLEVBQUU7YUFDbEIsSUFBSSxDQUFDLENBQUMsT0FBTztZQUNaLElBQUksZ0JBQWdCLEdBQUcs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
\ No newline at end of file
diff --git a/dist/dockersock.plugins.d.ts b/dist/dockersock.plugins.d.ts
deleted file mode 100644
index 446b8b8..0000000
--- a/dist/dockersock.plugins.d.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-import "typings-global";
-export import beautylog = require("beautylog");
-export import lik = require("lik");
-export import q = require("q");
-export import request = require("request");
-export import rxjs = require("rxjs");
diff --git a/dist/dockersock.plugins.js b/dist/dockersock.plugins.js
deleted file mode 100644
index c942322..0000000
--- a/dist/dockersock.plugins.js
+++ /dev/null
@@ -1,9 +0,0 @@
-"use strict";
-Object.defineProperty(exports, "__esModule", { value: true });
-require("typings-global");
-exports.beautylog = require("beautylog");
-exports.lik = require("lik");
-exports.q = require("q");
-exports.request = require("request");
-exports.rxjs = require("rxjs");
-//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9ja2Vyc29jay5wbHVnaW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvZG9ja2Vyc29jay5wbHVnaW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMEJBQXdCO0FBQ3hCLHlDQUErQztBQUMvQyw2QkFBbUM7QUFDbkMseUJBQStCO0FBQy9CLHFDQUEyQztBQUMzQywrQkFBcUMifQ==
\ No newline at end of file
diff --git a/dist/index.d.ts b/dist/index.d.ts
deleted file mode 100644
index 1f09182..0000000
--- a/dist/index.d.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-import "typings-global";
-export { Dockersock } from "./dockersock.classes.dockersock";
diff --git a/dist/index.js b/dist/index.js
deleted file mode 100644
index ba72e9f..0000000
--- a/dist/index.js
+++ /dev/null
@@ -1,6 +0,0 @@
-"use strict";
-Object.defineProperty(exports, "__esModule", { value: true });
-require("typings-global");
-var dockersock_classes_dockersock_1 = require("./dockersock.classes.dockersock");
-exports.Dockersock = dockersock_classes_dockersock_1.Dockersock;
-//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBCQUF3QjtBQUN4QixpRkFBNkQ7QUFBcEQscURBQUEsVUFBVSxDQUFBIn0=
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index 9b7c0c5..b363c7f 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,18 +1,18 @@
nginx1 :
image: "nginx"
environment:
- VIRTUAL_HOST: "test100.labkomp.de"
+ VIRTUAL_HOST: "test100.bleu.de"
restart: always
container_name: nginx1
nginx2:
image: nginx
environment:
- VIRTUAL_HOST: "test101.labkomp.de"
+ VIRTUAL_HOST: "test101.bleu.de"
restart: always
container_name: nginx2
-npmts-test-container:
- image: "npmts-test-image"
- volumes:
- - "/var/run/docker.sock:/var/run/docker.sock"
+nginx3:
+ image: nginx
+ environment:
+ VIRTUAL_HOST: "test101.bleu.de"
restart: always
- container_name: npmts-test-container
\ No newline at end of file
+ container_name: nginx3
\ No newline at end of file
diff --git a/docs/README.md b/docs/README.md
deleted file mode 100644
index 7ff69fc..0000000
--- a/docs/README.md
+++ /dev/null
@@ -1,49 +0,0 @@
-# dockersock
-easy communication with docker remote api from node, TypeScript ready
-
-## Availabililty
-[![npm](https://mojoio.gitlab.io/assets/repo-button-npm.svg)](https://www.npmjs.com/package/dockersock)
-[![git](https://mojoio.gitlab.io/assets/repo-button-git.svg)](https://GitLab.com/mojoio/dockersock)
-[![git](https://mojoio.gitlab.io/assets/repo-button-mirror.svg)](https://github.com/mojoio/dockersock)
-[![docs](https://mojoio.gitlab.io/assets/repo-button-docs.svg)](https://mojoio.gitlab.io/dockersock/)
-
-## Status for master
-[![build status](https://GitLab.com/mojoio/dockersock/badges/master/build.svg)](https://GitLab.com/mojoio/dockersock/commits/master)
-[![coverage report](https://GitLab.com/mojoio/dockersock/badges/master/coverage.svg)](https://GitLab.com/mojoio/dockersock/commits/master)
-[![npm downloads per month](https://img.shields.io/npm/dm/dockersock.svg)](https://www.npmjs.com/package/dockersock)
-[![Dependency Status](https://david-dm.org/mojoio/dockersock.svg)](https://david-dm.org/mojoio/dockersock)
-[![bitHound Dependencies](https://www.bithound.io/github/mojoio/dockersock/badges/dependencies.svg)](https://www.bithound.io/github/mojoio/dockersock/master/dependencies/npm)
-[![bitHound Code](https://www.bithound.io/github/mojoio/dockersock/badges/code.svg)](https://www.bithound.io/github/mojoio/dockersock)
-[![TypeScript](https://img.shields.io/badge/TypeScript-2.x-blue.svg)](https://nodejs.org/dist/latest-v6.x/docs/api/)
-[![node](https://img.shields.io/badge/node->=%206.x.x-blue.svg)](https://nodejs.org/dist/latest-v6.x/docs/api/)
-[![JavaScript Style Guide](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/)
-
-## Usage
-Use TypeScript for best in class instellisense.
-
-```TypeScript
-import {Dockersock} from "dockersock"; // require Dockersock class
-
-let myDockersock = new Dockersock(); // optional: you can pass a domain to the contructor, defaults to /var/run/docker.sock
-
-myDockersock.listContainers() // promise, resolve gets container data
-myDockersock.listContainersDetailed() // promise, resolve gets more detailed container data (by combining several requests internally)
-myDockersock.listContainersRunning() // promise, resolve gets container data for currently running containers
-myDockersock.listContainersStopped() // promise, resolve gets container data for stopped containers
-
-myDockersock.startContainer({ // starts a already present container
- name: "somecontainername"
-})
-
-myDockersock.newContainer({ // start new Container, equals "docker run" shell command
- image: "someimagetag"
-})
-
-```
-
-For further information read the linked docs at the top of this README.
-
-> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
-| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
-
-[![repo-footer](https://mojoio.gitlab.io/assets/repo-footer.svg)](https://mojo.io)
diff --git a/npmextra.json b/npmextra.json
index 3f1a168..e6eb71d 100644
--- a/npmextra.json
+++ b/npmextra.json
@@ -1,17 +1,15 @@
{
- "npmts":{
- "mode":"default",
- "coverageTreshold":10
- },
- "npmdocker":{
- "baseImage":"hosttoday/ht-docker-node:npmci",
- "command":"(ls -a && rm -r node_modules && yarn global add npmts && yarn install && npmts)",
- "dockerSock": true
- },
- "npmci": {
- "globalNpmTools": [
- "npmts",
- "npmdocker"
- ]
- }
-}
\ No newline at end of file
+ "npmts": {
+ "mode": "default",
+ "coverageTreshold": 10
+ },
+ "npmdocker": {
+ "baseImage": "hosttoday/ht-docker-node:npmci",
+ "command":
+ "(ls -a && rm -r node_modules && yarn global add npmts && yarn install && npmts)",
+ "dockerSock": true
+ },
+ "npmci": {
+ "globalNpmTools": ["npmts", "npmdocker"]
+ }
+}
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 0000000..c420e8a
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,444 @@
+{
+ "name": "@mojoio/docker",
+ "version": "1.0.23",
+ "lockfileVersion": 1,
+ "requires": true,
+ "dependencies": {
+ "@airbnb/node-memwatch": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@airbnb/node-memwatch/-/node-memwatch-1.0.2.tgz",
+ "integrity": "sha512-2R+MEEMSTUdKwQ6NFWkyA/UNoSjL1tMldZqJbZpgXSwNMBzlNlkUWEXKu9RqTTMkDqJRfGJ2VDs8gPlPK2APDQ==",
+ "dev": true,
+ "requires": {
+ "bindings": "^1.3.0",
+ "nan": "^2.9.2"
+ }
+ },
+ "@pushrocks/lik": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@pushrocks/lik/-/lik-3.0.1.tgz",
+ "integrity": "sha512-6dwRg7WMdY9drlqfo6NzOcw5ubVWYvIOSSMZz4Jsojpa8aDVwXd2VkD7sxO/PJRrbZzHkx/JXoY/epcWRjngUw==",
+ "requires": {
+ "@pushrocks/smartpromise": "^2.0.5",
+ "@types/lodash": "^4.14.112",
+ "@types/minimatch": "^3.0.3",
+ "lodash": "^4.17.10",
+ "minimatch": "^3.0.4",
+ "symbol-tree": "^3.2.2"
+ }
+ },
+ "@pushrocks/smartdelay": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@pushrocks/smartdelay/-/smartdelay-2.0.1.tgz",
+ "integrity": "sha512-olWwh2/JWfhmYdgqrR5RdSsgv1GlXBnbP+XKUrdKVk3dcCzkoqDx9lRE9NfpoCg1cUM2VMxbTVgTW9PWyexEuw==",
+ "dev": true,
+ "requires": {
+ "@pushrocks/smartpromise": "^2.0.5"
+ }
+ },
+ "@pushrocks/smartlog": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@pushrocks/smartlog/-/smartlog-2.0.1.tgz",
+ "integrity": "sha512-GtsDTGIUF3VuWPyF8FV5dF31ZCEIcaJ56ZlvJsWxjnyJq57X25mk5/K0QAaRE9IIeHg6fORcukFomb5C+AOQrg==",
+ "requires": {
+ "@pushrocks/smartlog-interfaces": "^1.0.9"
+ }
+ },
+ "@pushrocks/smartlog-interfaces": {
+ "version": "1.0.9",
+ "resolved": "https://registry.npmjs.org/@pushrocks/smartlog-interfaces/-/smartlog-interfaces-1.0.9.tgz",
+ "integrity": "sha512-0qwpomrRN0kFjmhR9m1iHYXoISoNuXtRP0Wr+JtkYyURLwKHMaW8Xoznf8MzXJptRfqufJi3Fxh5HodpPrIZUA=="
+ },
+ "@pushrocks/smartpromise": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@pushrocks/smartpromise/-/smartpromise-2.0.5.tgz",
+ "integrity": "sha512-9j/chLtIiNkR0MDw7Mpxg9slxAVvAQwUZuiaPYX5KpHdKxQaHLI1VZ8IN0vPhwlfgNO4i4vGXV0wB8BvSDj03g=="
+ },
+ "@pushrocks/smartrequest": {
+ "version": "1.0.17",
+ "resolved": "https://registry.npmjs.org/@pushrocks/smartrequest/-/smartrequest-1.0.17.tgz",
+ "integrity": "sha512-kB4+N42rrNNdR72TQ3QduyEtYOoaUiPVtrXS3XhaqQ7AZAtIGDTIfkNMMfzMPJtYXpNGcG1AH+wZDsKvkjW4EQ==",
+ "requires": {
+ "@pushrocks/smartpromise": "^2.0.5"
+ }
+ },
+ "@pushrocks/tapbundle": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@pushrocks/tapbundle/-/tapbundle-3.0.1.tgz",
+ "integrity": "sha512-QWVz5EwB3sjjqHTMa22xuw78TBgVTyqKTF5H6HT9d/rvxL5Ag4ZrTuoadMPcU9hRBx9gtPsKbWq4lEwOHdCmLA==",
+ "dev": true,
+ "requires": {
+ "@pushrocks/smartdelay": "^2.0.1",
+ "@pushrocks/smartpromise": "^2.0.5",
+ "early": "^2.1.1",
+ "leakage": "^0.4.0",
+ "smartchai": "^2.0.1"
+ }
+ },
+ "@types/chai": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.1.4.tgz",
+ "integrity": "sha512-h6+VEw2Vr3ORiFCyyJmcho2zALnUq9cvdB/IO8Xs9itrJVCenC7o26A6+m7D0ihTTr65eS259H5/Ghl/VjYs6g==",
+ "dev": true
+ },
+ "@types/chai-as-promised": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.0.tgz",
+ "integrity": "sha512-MFiW54UOSt+f2bRw8J7LgQeIvE/9b4oGvwU7XW30S9QGAiHGnU/fmiOprsyMkdmH2rl8xSPc0/yrQw8juXU6bQ==",
+ "dev": true,
+ "requires": {
+ "@types/chai": "*"
+ }
+ },
+ "@types/chai-string": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/@types/chai-string/-/chai-string-1.4.1.tgz",
+ "integrity": "sha512-aRNMs6TKgjgPlCHwDfq/YNy5VtRR2hJ4AUWByddrT0TRVVD8eX4MiHW6/iHvmQHRlVuuPZcwnTUE7b4yFt7bEA==",
+ "dev": true,
+ "requires": {
+ "@types/chai": "*"
+ }
+ },
+ "@types/lodash": {
+ "version": "4.14.112",
+ "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.112.tgz",
+ "integrity": "sha512-jDD7sendv3V7iwyRXSlECOR8HCtMN2faVA9ngLdHHihSVIwY7nbfsKl2kA6fimUDU1i5l/zgpG3aevwWnN3zCQ=="
+ },
+ "@types/minimatch": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
+ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="
+ },
+ "ansi-256-colors": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-256-colors/-/ansi-256-colors-1.1.0.tgz",
+ "integrity": "sha1-kQ3lDvzHwJ49gvL4er1rcAwYgYo=",
+ "dev": true
+ },
+ "assertion-error": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
+ "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
+ "dev": true
+ },
+ "balanced-match": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
+ },
+ "beautycolor": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/beautycolor/-/beautycolor-1.0.11.tgz",
+ "integrity": "sha512-Uxl/39+2uqixPzsrV+0NOHf0sJlWmsKnRTV0oz8+bfwnHPA/E+SZuh3Upn3OXobv0W7LZg5BVoLj1nkMj7m5jA==",
+ "dev": true,
+ "requires": {
+ "ansi-256-colors": "^1.1.0",
+ "typings-global": "^1.0.14"
+ }
+ },
+ "bindings": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz",
+ "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==",
+ "dev": true
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "chai": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chai/-/chai-4.1.2.tgz",
+ "integrity": "sha1-D2RYS6ZC8PKs4oBiefTwbKI61zw=",
+ "dev": true,
+ "requires": {
+ "assertion-error": "^1.0.1",
+ "check-error": "^1.0.1",
+ "deep-eql": "^3.0.0",
+ "get-func-name": "^2.0.0",
+ "pathval": "^1.0.0",
+ "type-detect": "^4.0.0"
+ }
+ },
+ "chai-as-promised": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz",
+ "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==",
+ "dev": true,
+ "requires": {
+ "check-error": "^1.0.2"
+ }
+ },
+ "chai-string": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/chai-string/-/chai-string-1.4.0.tgz",
+ "integrity": "sha1-NZFAwFHTak5LGl/GuRAVL0OKjUk=",
+ "dev": true
+ },
+ "check-error": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz",
+ "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=",
+ "dev": true
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
+ },
+ "deep-eql": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz",
+ "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==",
+ "dev": true,
+ "requires": {
+ "type-detect": "^4.0.0"
+ }
+ },
+ "define-properties": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz",
+ "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=",
+ "dev": true,
+ "requires": {
+ "foreach": "^2.0.5",
+ "object-keys": "^1.0.8"
+ }
+ },
+ "early": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/early/-/early-2.1.1.tgz",
+ "integrity": "sha1-hB4jJU6l3FTYr67ugvWrZcAO4jw=",
+ "dev": true,
+ "requires": {
+ "beautycolor": "^1.0.7",
+ "smartq": "^1.1.1",
+ "typings-global": "^1.0.16"
+ }
+ },
+ "es-abstract": {
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz",
+ "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==",
+ "dev": true,
+ "requires": {
+ "es-to-primitive": "^1.1.1",
+ "function-bind": "^1.1.1",
+ "has": "^1.0.1",
+ "is-callable": "^1.1.3",
+ "is-regex": "^1.0.4"
+ }
+ },
+ "es-to-primitive": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz",
+ "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=",
+ "dev": true,
+ "requires": {
+ "is-callable": "^1.1.1",
+ "is-date-object": "^1.0.1",
+ "is-symbol": "^1.0.1"
+ }
+ },
+ "es6-error": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
+ "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==",
+ "dev": true
+ },
+ "foreach": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz",
+ "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=",
+ "dev": true
+ },
+ "function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "get-func-name": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz",
+ "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=",
+ "dev": true
+ },
+ "has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "requires": {
+ "function-bind": "^1.1.1"
+ }
+ },
+ "is-callable": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz",
+ "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==",
+ "dev": true
+ },
+ "is-date-object": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz",
+ "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=",
+ "dev": true
+ },
+ "is-regex": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz",
+ "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=",
+ "dev": true,
+ "requires": {
+ "has": "^1.0.1"
+ }
+ },
+ "is-symbol": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz",
+ "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=",
+ "dev": true
+ },
+ "leakage": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/leakage/-/leakage-0.4.0.tgz",
+ "integrity": "sha512-x7gYK5n5dPkHDZWJ2Kh8Ag1hZNzUh+HtXn8Bv1aDdN6o6ONPCJ8sOfFq+kxcULJFp3lXaCjXb3iXOLmQRbBLwA==",
+ "dev": true,
+ "requires": {
+ "@airbnb/node-memwatch": "^1.0.2",
+ "es6-error": "^4.0.2",
+ "left-pad": "^1.1.3",
+ "minimist": "^1.2.0",
+ "pretty-bytes": "^4.0.2"
+ }
+ },
+ "left-pad": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz",
+ "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==",
+ "dev": true
+ },
+ "lodash": {
+ "version": "4.17.10",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg=="
+ },
+ "minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "minimist": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+ "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
+ "dev": true
+ },
+ "nan": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
+ "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==",
+ "dev": true
+ },
+ "object-keys": {
+ "version": "1.0.12",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz",
+ "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==",
+ "dev": true
+ },
+ "object.getownpropertydescriptors": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz",
+ "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=",
+ "dev": true,
+ "requires": {
+ "define-properties": "^1.1.2",
+ "es-abstract": "^1.5.1"
+ }
+ },
+ "pathval": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz",
+ "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=",
+ "dev": true
+ },
+ "pretty-bytes": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-4.0.2.tgz",
+ "integrity": "sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk=",
+ "dev": true
+ },
+ "rxjs": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz",
+ "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==",
+ "requires": {
+ "tslib": "^1.9.0"
+ }
+ },
+ "smartchai": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/smartchai/-/smartchai-2.0.1.tgz",
+ "integrity": "sha512-9M+R56OhAHXScxgr2vzQqxGx0XMS0QXriNZuP7hjlbVbo2FUT+l60iEzbwPt9Ga+5u2cEEjSSoZEQVqlROaddA==",
+ "dev": true,
+ "requires": {
+ "@types/chai": "^4.1.2",
+ "@types/chai-as-promised": "^7.1.0",
+ "@types/chai-string": "^1.4.0",
+ "chai": "^4.1.2",
+ "chai-as-promised": "^7.1.1",
+ "chai-string": "^1.4.0"
+ }
+ },
+ "smartq": {
+ "version": "1.1.8",
+ "resolved": "https://registry.npmjs.org/smartq/-/smartq-1.1.8.tgz",
+ "integrity": "sha512-FURlYW/C3bLeZjJcBVyw7bxCyQoCXiXbLCZcDUKznhXHaLu35c8m33/a2H8CA0rtb82lvzN8dRLnBZAcNMzNHQ==",
+ "dev": true,
+ "requires": {
+ "util.promisify": "^1.0.0"
+ }
+ },
+ "symbol-tree": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.2.tgz",
+ "integrity": "sha1-rifbOPZgp64uHDt9G8KQgZuFGeY="
+ },
+ "tslib": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz",
+ "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ=="
+ },
+ "type-detect": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
+ "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
+ "dev": true
+ },
+ "typings-global": {
+ "version": "1.0.28",
+ "resolved": "https://registry.npmjs.org/typings-global/-/typings-global-1.0.28.tgz",
+ "integrity": "sha512-6VOwJWEY2971HOMHu/7sURzUXiD4/LiMJPsMAOqkHHAtS3MVpLFE5gzTiHilsH9KY5VE1mBQirWIgWFsDuo90A==",
+ "dev": true
+ },
+ "util.promisify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz",
+ "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==",
+ "dev": true,
+ "requires": {
+ "define-properties": "^1.1.2",
+ "object.getownpropertydescriptors": "^2.0.3"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
index b607794..968c3f1 100644
--- a/package.json
+++ b/package.json
@@ -1,11 +1,12 @@
{
- "name": "dockersock",
+ "name": "@mojoio/docker",
"version": "1.0.23",
"description": "easy communication with docker remote api from node, TypeScript ready",
"main": "dist/index.js",
"typings": "dist/index.d.ts",
"scripts": {
- "test": "(npmts --notest && npmdocker)"
+ "test": "tsrun test/test.ts",
+ "build": "(npmts --notest && npmdocker)"
},
"repository": {
"type": "git",
@@ -25,16 +26,14 @@
},
"homepage": "https://gitlab.com/pushrocks/dockersock#README",
"dependencies": {
- "@types/q": "1.x.x",
- "beautylog": "^6.1.10",
- "lik": "^1.0.38",
- "q": "^1.5.0",
- "request": "^2.81.0",
- "rxjs": "^5.4.2",
- "typings-global": "^1.0.19"
+ "@pushrocks/lik": "^3.0.1",
+ "@pushrocks/smartlog": "^2.0.1",
+ "@pushrocks/smartpromise": "^2.0.5",
+ "@pushrocks/smartrequest": "^1.0.17",
+ "rxjs": "^6.2.2"
},
"devDependencies": {
- "observable-to-promise": "^0.5.0",
- "tapbundle": "^1.1.1"
- }
+ "@pushrocks/tapbundle": "^3.0.1"
+ },
+ "private": false
}
diff --git a/test/test.ts b/test/test.ts
index 06f23c6..02b4376 100644
--- a/test/test.ts
+++ b/test/test.ts
@@ -1,34 +1,28 @@
-import "typings-global";
-import { expect, tap } from 'tapbundle'
-import * as observableToPromise from 'observable-to-promise'
-import { Dockersock } from "../dist/index";
+import { expect, tap } from '@pushrocks/tapbundle';
+import { DockerHost } from '../ts/index';
-let testDockersock: Dockersock;
+let testDockerHost: DockerHost;
-tap.test("should create a new Dockersock instance", async () => {
- testDockersock = new Dockersock();
- return expect(testDockersock).to.be.instanceof(Dockersock);
-})
+tap.test('should create a new Dockersock instance', async () => {
+ testDockerHost = new DockerHost();
+ return expect(testDockerHost).to.be.instanceof(DockerHost);
+});
-tap.test("should list containers", async () => {
- let data = await testDockersock.listContainers()
- console.log(data)
-})
+tap.test('should list containers', async () => {
+ const containers = await testDockerHost.getContainers();
+ console.log(containers);
+});
-tap.test("should list detailed containers", async () => {
- let data = await testDockersock.listContainersDetailed()
- console.log(data)
-})
+/*
+tap.test('should pull an image from imagetag', async () => {
+ await testDockerHost.pullImage('hosttoday/ht-docker-node:npmci');
+});
-tap.test("should pull an image from imagetag", async () => {
- await testDockersock.pullImage("hosttoday/ht-docker-node:npmci")
-})
+tap.skip.test('should return a change Objservable', async () => {
+ let myObservable = testDockerHost.getChangeObservable();
+ testDockerHost.endRequests();
+ let testPromise = observableToPromise(myObservable);
+ return await expect(testPromise).to.eventually.be.fulfilled;
+}); */
-tap.skip.test("should return a change Objservable", async () => {
- let myObservable = testDockersock.getChangeObservable();
- testDockersock.endRequests();
- let testPromise = observableToPromise(myObservable)
- return await expect(testPromise).to.eventually.be.fulfilled
-})
-
-tap.start()
+tap.start();
diff --git a/ts/docker.changes.ts b/ts/docker.changes.ts
new file mode 100644
index 0000000..356f252
--- /dev/null
+++ b/ts/docker.changes.ts
@@ -0,0 +1,2 @@
+import * as plugins from './dockersock.plugins';
+
diff --git a/ts/docker.classes.container.ts b/ts/docker.classes.container.ts
new file mode 100644
index 0000000..7a290de
--- /dev/null
+++ b/ts/docker.classes.container.ts
@@ -0,0 +1,10 @@
+import * as plugins from './dockersock.plugins';
+import { DockerHost } from './docker.classes.host';
+
+export class DockerContainer {
+ static async getContainers(dockerHostArg: DockerHost): Promise {
+ const result = [];
+ await dockerHostArg.request('GET', '/containers/json')
+ return result;
+ }
+}
diff --git a/ts/docker.classes.host.ts b/ts/docker.classes.host.ts
new file mode 100644
index 0000000..02d6651
--- /dev/null
+++ b/ts/docker.classes.host.ts
@@ -0,0 +1,58 @@
+import * as plugins from "./dockersock.plugins";
+import { DockerContainer } from "./docker.classes.container";
+
+export class DockerHost {
+ /**
+ * the path where the docker sock can be found
+ */
+ sockPath: string;
+
+ /**
+ * keeping track of currently active requests to safely end this module at any time
+ */
+ requestObjectmap = new plugins.lik.Objectmap();
+
+ /**
+ * the constructor to instantiate a new docker sock instance
+ * @param pathArg
+ */
+ constructor(pathArg: string = "http://unix:/var/run/docker.sock:") {
+ this.sockPath = pathArg;
+ }
+
+ /**
+ * authenticate against a registry
+ * @param userArg
+ * @param passArg
+ */
+ auth(registryArg: string, userArg: string, passArg: string) {
+ let done = plugins.smartpromise.defer();
+ this.request("POST", "");
+ return done.promise;
+ }
+
+ /**
+ *
+ */
+ async getContainers() {
+ const containerArray = await DockerContainer.getContainers(this);
+ return containerArray;
+ }
+
+ /**
+ * fire a request
+ */
+ async request(methodArg: string, routeArg: string, dataArg = {}) {
+ const requestUrl = `${this.sockPath}${routeArg}`
+ console.log(requestUrl);
+ const response = await plugins.smartrequest.request(requestUrl, {
+ method: methodArg,
+ headers: {
+ "Content-Type": "application/json",
+ "Host": "docker.sock"
+ },
+ requestBody: dataArg
+ });
+ return response
+ }
+}
diff --git a/ts/docker.classes.image.ts b/ts/docker.classes.image.ts
new file mode 100644
index 0000000..0dc9a35
--- /dev/null
+++ b/ts/docker.classes.image.ts
@@ -0,0 +1,14 @@
+import * as plugins from './dockersock.plugins';
+import { DockerHost } from './docker.classes.host';
+
+export class DockerImage {
+ /**
+ * the tags for an image
+ */
+ tags: string[] = [];
+
+ static async createFromRegsitry(dockerHostArg: DockerHost): Promise {
+ const resultingImage = new DockerImage();
+ return resultingImage;
+ }
+}
\ No newline at end of file
diff --git a/ts/docker.classes.network.ts b/ts/docker.classes.network.ts
new file mode 100644
index 0000000..e69de29
diff --git a/ts/docker.classes.service.ts b/ts/docker.classes.service.ts
new file mode 100644
index 0000000..e69de29
diff --git a/ts/dockersock.classes.dockersock.ts b/ts/dockersock.classes.dockersock.ts
deleted file mode 100644
index 2faba8a..0000000
--- a/ts/dockersock.classes.dockersock.ts
+++ /dev/null
@@ -1,262 +0,0 @@
-import "typings-global"
-import * as plugins from "./dockersock.plugins";
-import { Observable } from "rxjs";
-
-// interfaces
-import { Objectmap } from 'lik'
-
-export class Dockersock {
- sockPath: string;
- requestObjectmap = new plugins.lik.Objectmap();
- constructor(pathArg: string = "http://unix:/var/run/docker.sock:") {
- this.sockPath = pathArg;
- }
-
- // methods
- auth (userArg: string, passArg: string) {
- let done = plugins.q.defer();
- this.request("POST", "");
- return done.promise;
- }
- listContainers () {
- let done = plugins.q.defer();
- this.request("GET", "/containers")
- .then(done.resolve);
- return done.promise;
- };
- listContainersDetailed () {
- let done = plugins.q.defer();
- let detailedDataObject = [];
- this.listContainers()
- .then((dataArg) => {
- let recursiveCounter = 0;
- let makeDetailed = () => {
- if (typeof dataArg[ recursiveCounter ] != "undefined") {
- this.request("GET", "/containers/" + dataArg[ recursiveCounter ].Id)
- .then((dataArg2) => {
- detailedDataObject.push(dataArg2);
- recursiveCounter++;
- // recursive call
- makeDetailed();
- });
- } else {
- done.resolve(detailedDataObject);
- }
- };
- makeDetailed();
- });
- return done.promise;
- };
- listContainersRunning () {
- let done = plugins.q.defer();
- return done.promise;
- }
- listContainersStopped () {
- let done = plugins.q.defer();
- return done.promise;
- }
- listImages () {
- return this.request("GET", "/images", "?all=true");
- }
- listImagesDangling () {
- return this.request("GET", "/images", "?dangling=true");
- }
- pullImage (imageLabelArg: string) {
- let imageLabel = encodeURI(imageLabelArg);
- return this.requestStream("POST", "/images/create?fromImage=" + imageLabel);
- };
- createContainer (optionsArg, pullFirstArg: boolean = true) {
- let done = plugins.q.defer();
- let create = () => {
- return this.request("POST", "/containers/create", "", optionsArg);
- }
- if (pullFirstArg) {
- this.pullImage(optionsArg.Image)
- .then(create)
- .then(done.resolve);
- } else {
- create()
- .then(done.resolve)
- }
- return done.promise;
- };
- getContainerId () {
-
- };
- startContainer (containerNameArg) {
- return this.request("POST", "/containers/" + containerNameArg + "/start");
- };
- stopContainer (containerNameArg) {
- return this.request("POST", "/containers/" + containerNameArg + "/stop");
- };
- removeContainer (containerNameArg) {
- return this.request("DELETE", "/containers/" + containerNameArg + "?v=1");
- };
- clean () {
- let done = plugins.q.defer();
- return done.promise;
- };
- callOnChange (cb: Function) {
- let cbPromise;
- let changeBuffered: boolean = false; // when cb is running then buffer any consequent change
- let requestStream = plugins.request.get(this.sockPath + "/events");
- requestStream.on("response", (response) => {
- if (response.statusCode == 200) {
- plugins.beautylog.ok("request returned status 200, so we are good!");
- } else {
- plugins.beautylog.error("request returned error: " + response.statusCode);
- }
- });
- requestStream.on("data", (data: Buffer) => {
- let status = JSON.parse(data.toString()).status;
- plugins.beautylog.logReduced(status);
- if (typeof cbPromise == "undefined" || cbPromise.state == "pending") {
- cbPromise = cb();
- } else if (changeBuffered) {
- changeBuffered = true;
- cbPromise.then(() => {
- changeBuffered = false;
- cbPromise = cb();
- });
- }
- });
- requestStream.on("end", () => {
-
- });
- };
-
- /**
- * gets you an observable that reports changes in the docker infrastructure
- */
- getChangeObservable () {
- let options = {
- method: "GET",
- url: this.sockPath + "/events",
- headers: {
- "Content-Type": "application/json",
- "Host": "docker.sock"
- }
- };
- let requestStream = plugins.request(options, (err, res, body) => {
- if (!err && res.statusCode == 200) {
- } else {
- console.log(err);
- console.log(res);
- };
- });
- let incomingMessage
- requestStream.on("response", (response) => {
- incomingMessage = response
- this.requestObjectmap.add(incomingMessage);
- if (response.statusCode == 200) {
- plugins.beautylog.ok("request returned status 200, so we are good!");
- } else {
- plugins.beautylog.error("request returned error: " + response.statusCode);
- }
- });
- let changeObservable = Observable.fromEvent(requestStream, "data");
- requestStream.on("end", () => {
- this.requestObjectmap.remove(incomingMessage);
- });
- return changeObservable;
- }
-
-
- /**
- * fire a request
- * @param methodArg
- * @param routeArg
- * @param queryArg
- * @param dataArg
- */
- request (methodArg: string, routeArg: string, queryArg: string = "", dataArg = {}) {
- let done = plugins.q.defer();
- let jsonArg: string = JSON.stringify(dataArg);
- let suffix: string = "";
- if (methodArg == "GET") suffix = "/json";
- let options = {
- method: methodArg,
- url: this.sockPath + routeArg + suffix + queryArg,
- headers: {
- "Content-Type": "application/json",
- "Host": "docker.sock"
- },
- body: jsonArg
- };
- //console.log(options);
- plugins.request(options, (err, res, body) => {
- if (!err && res.statusCode == 200) {
- var responseObj = JSON.parse(body);
- done.resolve(responseObj);
- } else {
- console.log(err);
- console.log(res);
- done.reject(err);
- };
- });
- return done.promise;
- }
-
- /**
- * fire a streaming request
- * @param methodArg
- * @param routeArg
- * @param queryArg
- * @param dataArg
- */
- requestStream (methodArg: string, routeArg: string, queryArg: string = "", dataArg = {}) {
- let done = plugins.q.defer();
- let jsonArg: string = JSON.stringify(dataArg);
- let suffix: string = "";
- let options = {
- method: methodArg,
- url: this.sockPath + routeArg + suffix + queryArg,
- headers: {
- "Content-Type": "application/json",
- "Host": "docker.sock"
- },
- body: jsonArg
- };
- let requestStream = plugins.request(options, (err, res, body) => {
- if (!err && res.statusCode == 200) {
- done.resolve();
- } else {
- console.log(err);
- console.log(res);
- done.reject(err);
- };
- });
- let incomingMessage
- requestStream.on("response", (response) => {
- incomingMessage = response
- this.requestObjectmap.add(incomingMessage);
- if (response.statusCode == 200) {
- plugins.beautylog.ok("request returned status 200, so we are good!");
- } else {
- plugins.beautylog.error("request returned error: " + response.statusCode);
- done.reject(response);
- }
- });
- requestStream.on("data", (data: Buffer) => {
- let status;
- status = JSON.parse(data.toString()).status;
- plugins.beautylog.logReduced(status);
- });
- requestStream.on("end", () => {
- this.requestObjectmap.remove(incomingMessage);
- });
- return done.promise;
- };
-
- /**
- * end all currently streaming requests
- */
- endRequests () {
- setTimeout(() => {
- this.requestObjectmap.forEach((itemArg: plugins.request.Request) => {
- itemArg.emit("end");
- });
- this.requestObjectmap.wipe();
- }, 5000);
- };
-}
\ No newline at end of file
diff --git a/ts/dockersock.plugins.ts b/ts/dockersock.plugins.ts
index 446b8b8..0ca242a 100644
--- a/ts/dockersock.plugins.ts
+++ b/ts/dockersock.plugins.ts
@@ -1,6 +1,6 @@
-import "typings-global";
-export import beautylog = require("beautylog");
-export import lik = require("lik");
-export import q = require("q");
-export import request = require("request");
-export import rxjs = require("rxjs");
+import 'typings-global';
+export import smartlog = require('@pushrocks/smartlog');
+export import lik = require('@pushrocks/lik');
+export import smartpromise = require('@pushrocks/smartpromise');
+export import smartrequest = require('@pushrocks/smartrequest');
+export import rxjs = require('rxjs');
diff --git a/ts/index.ts b/ts/index.ts
index 1f09182..c6c0cdf 100644
--- a/ts/index.ts
+++ b/ts/index.ts
@@ -1,2 +1 @@
-import "typings-global";
-export { Dockersock } from "./dockersock.classes.dockersock";
+export { DockerHost } from './docker.classes.host';
diff --git a/yarn.lock b/yarn.lock
deleted file mode 100644
index 95f165d..0000000
--- a/yarn.lock
+++ /dev/null
@@ -1,826 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@types/chai-as-promised@0.0.29":
- version "0.0.29"
- resolved "https://registry.yarnpkg.com/@types/chai-as-promised/-/chai-as-promised-0.0.29.tgz#43d52892aa998e185a3de3e2477edb8573be1d77"
- dependencies:
- "@types/chai" "*"
- "@types/promises-a-plus" "*"
-
-"@types/chai-string@^1.1.30":
- version "1.1.30"
- resolved "https://registry.yarnpkg.com/@types/chai-string/-/chai-string-1.1.30.tgz#4d8744b31a5a2295fc01c981ed1e2d4c8a070f0a"
- dependencies:
- "@types/chai" "*"
-
-"@types/chai@*":
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.0.1.tgz#37fea779617cfec3fd2b19a0247e8bbdd5133bf6"
-
-"@types/chai@^3.4.35":
- version "3.5.2"
- resolved "https://registry.yarnpkg.com/@types/chai/-/chai-3.5.2.tgz#c11cd2817d3a401b7ba0f5a420f35c56139b1c1e"
-
-"@types/lodash@^4.14.55", "@types/lodash@^4.14.67":
- version "4.14.69"
- resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.69.tgz#2bbd48c1565e02506f48ed8d1e8e53ea493fd0e6"
-
-"@types/minimatch@2.x.x":
- version "2.0.29"
- resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-2.0.29.tgz#5002e14f75e2d71e564281df0431c8c1b4a2a36a"
-
-"@types/node@*":
- version "8.0.13"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.13.tgz#530f0f9254209b0335bf5cc6387822594ef47093"
-
-"@types/promises-a-plus@*":
- version "0.0.27"
- resolved "https://registry.yarnpkg.com/@types/promises-a-plus/-/promises-a-plus-0.0.27.tgz#c64651134614c84b8f5d7114ce8901d36a609780"
-
-"@types/q@1.x.x":
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/@types/q/-/q-1.0.2.tgz#41f0b0f6ae0eeed3a51b003e2e08cba5525b74f6"
-
-"@types/shelljs@^0.7.2":
- version "0.7.2"
- resolved "https://registry.yarnpkg.com/@types/shelljs/-/shelljs-0.7.2.tgz#c2bdb3fe80cd7a3da08750ca898ae44c589671f3"
- dependencies:
- "@types/node" "*"
-
-"@types/which@^1.0.28":
- version "1.0.28"
- resolved "https://registry.yarnpkg.com/@types/which/-/which-1.0.28.tgz#016e387629b8817bed653fe32eab5d11279c8df6"
-
-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"
-
-ansi-256-colors@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/ansi-256-colors/-/ansi-256-colors-1.1.0.tgz#910de50efcc7c09e3d82f2f87abd6b700c18818a"
-
-ansi-regex@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
-
-ansi-styles@^2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
-
-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"
-
-assertion-error@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c"
-
-asynckit@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
-
-aws-sign2@~0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f"
-
-aws4@^1.2.1:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e"
-
-balanced-match@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
-
-bcrypt-pbkdf@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d"
- dependencies:
- tweetnacl "^0.14.3"
-
-beautycolor@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/beautycolor/-/beautycolor-1.0.7.tgz#a4715738ac4c8221371e9cbeb5a6cc6d11ecbf7c"
- dependencies:
- ansi-256-colors "^1.1.0"
- typings-global "^1.0.14"
-
-beautylog@^6.1.10:
- version "6.1.10"
- resolved "https://registry.yarnpkg.com/beautylog/-/beautylog-6.1.10.tgz#9c27e566937684cb689f9372d98cfa5415d50b72"
- dependencies:
- "@types/lodash" "^4.14.55"
- beautycolor "^1.0.7"
- figlet "^1.2.0"
- lodash "^4.17.4"
- ora "^1.1.0"
- smartenv "^2.0.0"
- smartq "^1.1.1"
- typings-global "^1.0.14"
-
-bindings@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.2.1.tgz#14ad6113812d2d37d72e67b4cacb4bb726505f11"
-
-boom@2.x.x:
- version "2.10.1"
- resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f"
- dependencies:
- hoek "2.x.x"
-
-brace-expansion@^1.1.7:
- version "1.1.8"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292"
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-caseless@~0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
-
-chai-as-promised@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/chai-as-promised/-/chai-as-promised-6.0.0.tgz#1a02a433a6f24dafac63b9c96fa1684db1aa8da6"
- dependencies:
- check-error "^1.0.2"
-
-chai-string@^1.3.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/chai-string/-/chai-string-1.4.0.tgz#359140c051d36a4e4b1a5fc6b910152f438a8d49"
-
-chai@^3.5.0:
- version "3.5.0"
- resolved "https://registry.yarnpkg.com/chai/-/chai-3.5.0.tgz#4d02637b067fe958bdbfdd3a40ec56fef7373247"
- dependencies:
- assertion-error "^1.0.1"
- deep-eql "^0.1.3"
- type-detect "^1.0.0"
-
-chalk@^1.0.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"
-
-check-error@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82"
-
-cli-cursor@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
- dependencies:
- restore-cursor "^2.0.0"
-
-cli-spinners@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-1.0.0.tgz#ef987ed3d48391ac3dab9180b406a742180d6e6a"
-
-co@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
-
-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"
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
-
-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"
-
-dashdash@^1.12.0:
- version "1.14.1"
- resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
- dependencies:
- assert-plus "^1.0.0"
-
-deep-eql@^0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-0.1.3.tgz#ef558acab8de25206cd713906d74e56930eb69f2"
- dependencies:
- type-detect "0.1.1"
-
-define-properties@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94"
- dependencies:
- foreach "^2.0.5"
- object-keys "^1.0.8"
-
-delayed-stream@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
-
-early@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/early/-/early-2.1.1.tgz#841e23254ea5dc54d8afaeee82f5ab65c00ee23c"
- dependencies:
- beautycolor "^1.0.7"
- smartq "^1.1.1"
- typings-global "^1.0.16"
-
-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"
-
-es-abstract@^1.5.1:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c"
- dependencies:
- es-to-primitive "^1.1.1"
- function-bind "^1.1.0"
- is-callable "^1.1.3"
- is-regex "^1.0.3"
-
-es-to-primitive@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d"
- dependencies:
- is-callable "^1.1.1"
- is-date-object "^1.0.1"
- is-symbol "^1.0.1"
-
-es6-error@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.0.2.tgz#eec5c726eacef51b7f6b73c20db6e1b13b069c98"
-
-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"
-
-extend@~3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444"
-
-extsprintf@1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550"
-
-figlet@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/figlet/-/figlet-1.2.0.tgz#6c46537378fab649146b5a6143dda019b430b410"
-
-foreach@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
-
-forever-agent@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
-
-form-data@~2.1.1:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1"
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.5"
- mime-types "^2.1.12"
-
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
-
-function-bind@^1.0.2, function-bind@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771"
-
-getpass@^0.1.1:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
- dependencies:
- assert-plus "^1.0.0"
-
-glob@^7.0.0:
- version "7.1.2"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-har-schema@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e"
-
-har-validator@~4.2.1:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a"
- dependencies:
- ajv "^4.9.1"
- har-schema "^1.0.5"
-
-has-ansi@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
- dependencies:
- ansi-regex "^2.0.0"
-
-has@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
- dependencies:
- function-bind "^1.0.2"
-
-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"
-
-hoek@2.x.x:
- version "2.16.3"
- resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed"
-
-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"
-
-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:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
-
-interpret@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90"
-
-is-callable@^1.1.1, is-callable@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2"
-
-is-date-object@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
-
-is-observable@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-0.2.0.tgz#b361311d83c6e5d726cabf5e250b0237106f5ae2"
- dependencies:
- symbol-observable "^0.2.2"
-
-is-regex@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
- dependencies:
- has "^1.0.1"
-
-is-symbol@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572"
-
-is-typedarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
-
-isstream@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
-
-jsbn@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
-
-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"
-
-jsonify@~0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
-
-jsprim@^1.2.2:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.0.tgz#a3b87e40298d8c380552d8cc7628a0bb95a22918"
- dependencies:
- assert-plus "1.0.0"
- extsprintf "1.0.2"
- json-schema "0.2.3"
- verror "1.3.6"
-
-leakage@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/leakage/-/leakage-0.3.0.tgz#15d698abdc76bbc6439601f4f3020e77e2d50c39"
- dependencies:
- es6-error "^4.0.2"
- left-pad "^1.1.3"
- memwatch-next "^0.3.0"
- minimist "^1.2.0"
- pretty-bytes "^4.0.2"
-
-left-pad@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.1.3.tgz#612f61c033f3a9e08e939f1caebeea41b6f3199a"
-
-lik@^1.0.38:
- version "1.0.38"
- resolved "https://registry.yarnpkg.com/lik/-/lik-1.0.38.tgz#ccff0abd3d9236a5e4b7d80d514c5c210f18469b"
- dependencies:
- "@types/lodash" "^4.14.67"
- "@types/minimatch" "2.x.x"
- "@types/q" "1.x.x"
- lodash "^4.17.4"
- minimatch "^3.0.4"
- q "^1.5.0"
- rxjs "^5.4.1"
- smartq "^1.1.1"
- typings-global "^1.0.19"
-
-lodash@^4.17.4:
- version "4.17.4"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
-
-log-symbols@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18"
- dependencies:
- chalk "^1.0.0"
-
-memwatch-next@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/memwatch-next/-/memwatch-next-0.3.0.tgz#2111050f9a906e0aa2d72a4ec0f0089c78726f8f"
- dependencies:
- bindings "^1.2.1"
- nan "^2.3.2"
-
-mime-db@~1.27.0:
- version "1.27.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.27.0.tgz#820f572296bbd20ec25ed55e5b5de869e5436eb1"
-
-mime-types@^2.1.12, mime-types@~2.1.7:
- version "2.1.15"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.15.tgz#a4ebf5064094569237b8cf70046776d09fc92aed"
- dependencies:
- mime-db "~1.27.0"
-
-mimic-fn@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18"
-
-minimatch@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
- dependencies:
- brace-expansion "^1.1.7"
-
-minimist@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
-
-nan@^2.3.2:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45"
-
-oauth-sign@~0.8.1:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
-
-object-keys@^1.0.8:
- version "1.0.11"
- resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
-
-object.getownpropertydescriptors@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16"
- dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.5.1"
-
-observable-to-promise@^0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/observable-to-promise/-/observable-to-promise-0.5.0.tgz#c828f0f0dc47e9f86af8a4977c5d55076ce7a91f"
- dependencies:
- is-observable "^0.2.0"
- symbol-observable "^1.0.4"
-
-once@^1.3.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- dependencies:
- wrappy "1"
-
-onetime@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
- dependencies:
- mimic-fn "^1.0.0"
-
-ora@^1.1.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/ora/-/ora-1.3.0.tgz#80078dd2b92a934af66a3ad72a5b910694ede51a"
- dependencies:
- chalk "^1.1.1"
- cli-cursor "^2.1.0"
- cli-spinners "^1.0.0"
- log-symbols "^1.0.2"
-
-path-is-absolute@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
-
-path-parse@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1"
-
-performance-now@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5"
-
-pretty-bytes@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-4.0.2.tgz#b2bf82e7350d65c6c33aa95aaa5a4f6327f61cd9"
-
-punycode@^1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
-
-q@^1.5.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1"
-
-qs@~6.4.0:
- version "6.4.0"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
-
-rechoir@^0.6.2:
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384"
- dependencies:
- resolve "^1.1.6"
-
-request@^2.81.0:
- version "2.81.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0"
- dependencies:
- aws-sign2 "~0.6.0"
- aws4 "^1.2.1"
- caseless "~0.12.0"
- combined-stream "~1.0.5"
- extend "~3.0.0"
- forever-agent "~0.6.1"
- form-data "~2.1.1"
- har-validator "~4.2.1"
- hawk "~3.1.3"
- http-signature "~1.1.0"
- is-typedarray "~1.0.0"
- isstream "~0.1.2"
- json-stringify-safe "~5.0.1"
- mime-types "~2.1.7"
- oauth-sign "~0.8.1"
- performance-now "^0.2.0"
- qs "~6.4.0"
- safe-buffer "^5.0.1"
- stringstream "~0.0.4"
- tough-cookie "~2.3.0"
- tunnel-agent "^0.6.0"
- uuid "^3.0.0"
-
-resolve@^1.1.6:
- version "1.3.3"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5"
- dependencies:
- path-parse "^1.0.5"
-
-restore-cursor@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
- dependencies:
- onetime "^2.0.0"
- signal-exit "^3.0.2"
-
-rxjs@^5.4.1, rxjs@^5.4.2:
- version "5.4.2"
- resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.4.2.tgz#2a3236fcbf03df57bae06fd6972fd99e5c08fcf7"
- dependencies:
- symbol-observable "^1.0.1"
-
-safe-buffer@^5.0.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853"
-
-semver@^5.3.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
-
-shelljs@^0.7.8:
- version "0.7.8"
- resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.8.tgz#decbcf874b0d1e5fb72e14b164a9683048e9acb3"
- dependencies:
- glob "^7.0.0"
- interpret "^1.0.0"
- rechoir "^0.6.2"
-
-signal-exit@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
-
-smartchai@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/smartchai/-/smartchai-1.0.3.tgz#de6d010bb8b5aef24cb70b31a5f5334e8c41b72f"
- dependencies:
- "@types/chai" "^3.4.35"
- "@types/chai-as-promised" "0.0.29"
- "@types/chai-string" "^1.1.30"
- chai "^3.5.0"
- chai-as-promised "^6.0.0"
- chai-string "^1.3.0"
-
-smartdelay@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/smartdelay/-/smartdelay-1.0.3.tgz#5fd44dad77262d110702f0293efa80c072cfb579"
- dependencies:
- smartq "^1.1.1"
- typings-global "^1.0.16"
-
-smartenv@^2.0.0:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/smartenv/-/smartenv-2.0.6.tgz#b38c679b0c151b9af548f68c3a072c29d1417e8d"
- dependencies:
- lodash "^4.17.4"
- smartq "^1.1.1"
- typings-global "^1.0.14"
-
-smartq@^1.1.1:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/smartq/-/smartq-1.1.6.tgz#0c1ff4336d95e95b4f1fdd8ccd7e2c5a323b8412"
- dependencies:
- typings-global "^1.0.19"
- util.promisify "^1.0.0"
-
-smartshell@^1.0.6:
- version "1.0.8"
- resolved "https://registry.yarnpkg.com/smartshell/-/smartshell-1.0.8.tgz#1535756c0fe8069f7e6da1e3f9cb6c8f77094e42"
- dependencies:
- "@types/shelljs" "^0.7.2"
- "@types/which" "^1.0.28"
- shelljs "^0.7.8"
- smartq "^1.1.1"
- typings-global "^1.0.19"
- which "^1.2.14"
-
-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"
-
-sshpk@^1.7.0:
- version "1.13.1"
- resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3"
- dependencies:
- asn1 "~0.2.3"
- assert-plus "^1.0.0"
- dashdash "^1.12.0"
- getpass "^0.1.1"
- optionalDependencies:
- bcrypt-pbkdf "^1.0.0"
- ecc-jsbn "~0.1.1"
- jsbn "~0.1.0"
- tweetnacl "~0.14.0"
-
-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:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
- dependencies:
- ansi-regex "^2.0.0"
-
-supports-color@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
-
-symbol-observable@^0.2.2:
- version "0.2.4"
- resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-0.2.4.tgz#95a83db26186d6af7e7a18dbd9760a2f86d08f40"
-
-symbol-observable@^1.0.1, symbol-observable@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.4.tgz#29bf615d4aa7121bdd898b22d4b3f9bc4e2aa03d"
-
-tapbundle@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/tapbundle/-/tapbundle-1.1.1.tgz#ec4172c0e82a77b1f6133fef2606311ede28a62d"
- dependencies:
- early "^2.1.1"
- leakage "^0.3.0"
- smartchai "^1.0.3"
- smartdelay "^1.0.3"
- smartq "^1.1.1"
- typings-global "^1.0.19"
-
-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"
-
-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-detect@0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-0.1.1.tgz#0ba5ec2a885640e470ea4e8505971900dac58822"
-
-type-detect@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2"
-
-typings-global@^1.0.14, typings-global@^1.0.16, typings-global@^1.0.19:
- version "1.0.19"
- resolved "https://registry.yarnpkg.com/typings-global/-/typings-global-1.0.19.tgz#3376a72d4de1e5541bf5702248ff64c3e6ea316c"
- dependencies:
- semver "^5.3.0"
- smartshell "^1.0.6"
-
-util.promisify@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030"
- dependencies:
- define-properties "^1.1.2"
- object.getownpropertydescriptors "^2.0.3"
-
-uuid@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04"
-
-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"
-
-which@^1.2.14:
- version "1.2.14"
- resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5"
- dependencies:
- isexe "^2.0.0"
-
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"