From 5b1f800067d177531e502970315ebc848110cc2e Mon Sep 17 00:00:00 2001 From: Phil Kunz Date: Sat, 25 Jun 2016 15:30:57 +0200 Subject: [PATCH] update structure --- dist/smartssh.classes.sshconfig.d.ts | 5 +++-- dist/smartssh.classes.sshconfig.js | 31 ++++++++++++++++++++++---- dist/smartssh.classes.sshdir.d.ts | 4 +++- dist/smartssh.classes.sshdir.js | 5 +++-- dist/smartssh.classes.sshinstance.js | 4 ++-- dist/smartssh.classes.sshkey.d.ts | 3 ++- dist/smartssh.classes.sshkey.js | 31 ++++++++++++++++---------- npmts.json | 3 ++- ts/smartssh.classes.sshconfig.ts | 33 ++++++++++++++++++++++------ ts/smartssh.classes.sshdir.ts | 5 +++-- ts/smartssh.classes.sshinstance.ts | 4 +--- ts/smartssh.classes.sshkey.ts | 7 +++++- 12 files changed, 97 insertions(+), 38 deletions(-) diff --git a/dist/smartssh.classes.sshconfig.d.ts b/dist/smartssh.classes.sshconfig.d.ts index dddb300..65aa183 100644 --- a/dist/smartssh.classes.sshconfig.d.ts +++ b/dist/smartssh.classes.sshconfig.d.ts @@ -6,10 +6,11 @@ export declare class SshConfig { /** * stores a config file */ - storeConfig(dirPathArg: string): any; + store(dirPathArg: string): any; + read(dirPathArg: any): any; } export interface configObject { - host: string; + configString: string; authorized: boolean; sshKey: SshKey; } diff --git a/dist/smartssh.classes.sshconfig.js b/dist/smartssh.classes.sshconfig.js index 902a4ce..d705d89 100644 --- a/dist/smartssh.classes.sshconfig.js +++ b/dist/smartssh.classes.sshconfig.js @@ -8,7 +8,32 @@ var SshConfig = (function () { /** * stores a config file */ - SshConfig.prototype.storeConfig = function (dirPathArg) { + SshConfig.prototype.store = function (dirPathArg) { + var done = plugins.q.defer(); + var configArray; + var configString; + for (var key in this.sshKeyArray) { + var sshKey = this.sshKeyArray[key]; + if (sshKey.host) { + configString = "Host " + sshKey.host + "\n" + + " HostName " + sshKey.host + "\n" + + " IdentityFile ~/.ssh/" + sshKey.host + "\n"; + } + configArray.push({ + configString: configString, + authorized: sshKey.authorized, + sshKey: sshKey + }); + } + var configFile = ""; + for (var key in configArray) { + configFile = configFile + configArray[key].configString + "\n"; + } + ; + plugins.smartfile.memory.toFsSync(configFile, dirPathArg); + return done.promise; + }; + SshConfig.prototype.read = function (dirPathArg) { var done = plugins.q.defer(); var configArray; return done.promise; @@ -17,8 +42,6 @@ var SshConfig = (function () { }()); exports.SshConfig = SshConfig; ; -var createConfigPath = function () { -}; ; -//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0c3NoLmNsYXNzZXMuc3NoY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFDeEIsSUFBWSxPQUFPLFdBQU0sb0JBQW9CLENBQUMsQ0FBQTtBQUk5QztJQUVJLG1CQUFZLGNBQXVCO1FBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsY0FBYyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7T0FFRztJQUNILCtCQUFXLEdBQVgsVUFBWSxVQUFpQjtRQUN6QixJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzdCLElBQUksV0FBMEIsQ0FBQztRQUUvQixNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBQ0wsZ0JBQUM7QUFBRCxDQWZBLEFBZUMsSUFBQTtBQWZZLGlCQUFTLFlBZXJCLENBQUE7QUFBQSxDQUFDO0FBRUYsSUFBSSxnQkFBZ0IsR0FBRztBQUV2QixDQUFDLENBQUE7QUFNQSxDQUFDIiwiZmlsZSI6InNtYXJ0c3NoLmNsYXNzZXMuc3NoY29uZmlnLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIjtcbmltcG9ydCAqIGFzIHBsdWdpbnMgZnJvbSBcIi4vc21hcnRzc2gucGx1Z2luc1wiO1xuaW1wb3J0ICogYXMgaGVscGVycyBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLmhlbHBlcnNcIjtcbmltcG9ydCB7U3NoS2V5fSBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLnNzaGtleVwiXG5cbmV4cG9ydCBjbGFzcyBTc2hDb25maWcge1xuICAgIHNzaEtleUFycmF5OlNzaEtleVtdO1xuICAgIGNvbnN0cnVjdG9yKHNzaEtleUFycmF5QXJnOlNzaEtleVtdKXtcbiAgICAgICAgdGhpcy5zc2hLZXlBcnJheSA9IHNzaEtleUFycmF5QXJnO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHN0b3JlcyBhIGNvbmZpZyBmaWxlXG4gICAgICovXG4gICAgc3RvcmVDb25maWcoZGlyUGF0aEFyZzpzdHJpbmcpe1xuICAgICAgICBsZXQgZG9uZSA9IHBsdWdpbnMucS5kZWZlcigpO1xuICAgICAgICBsZXQgY29uZmlnQXJyYXk6Y29uZmlnT2JqZWN0W107XG5cbiAgICAgICAgcmV0dXJuIGRvbmUucHJvbWlzZTtcbiAgICB9XG59O1xuXG5sZXQgY3JlYXRlQ29uZmlnUGF0aCA9ICgpID0+IHtcbiAgICBcbn1cblxuZXhwb3J0IGludGVyZmFjZSBjb25maWdPYmplY3Qge1xuICAgIGhvc3Q6c3RyaW5nO1xuICAgIGF1dGhvcml6ZWQ6Ym9vbGVhbjtcbiAgICBzc2hLZXk6U3NoS2V5O1xufTtcblxuIl19 +//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0c3NoLmNsYXNzZXMuc3NoY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFDeEIsSUFBWSxPQUFPLFdBQU0sb0JBQW9CLENBQUMsQ0FBQTtBQUk5QztJQUVJLG1CQUFZLGNBQXVCO1FBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsY0FBYyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7T0FFRztJQUNILHlCQUFLLEdBQUwsVUFBTSxVQUFpQjtRQUNuQixJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzdCLElBQUksV0FBMEIsQ0FBQztRQUMvQixJQUFJLFlBQVksQ0FBQztRQUNqQixHQUFHLENBQUEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUEsQ0FBQztZQUM3QixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25DLEVBQUUsQ0FBQSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQSxDQUFDO2dCQUNaLFlBQVksR0FBRyxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJO29CQUN4QixhQUFhLEdBQUcsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJO29CQUNsQyx3QkFBd0IsR0FBRyxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtZQUNwRSxDQUFDO1lBQ0QsV0FBVyxDQUFDLElBQUksQ0FBQztnQkFDYixZQUFZLEVBQUMsWUFBWTtnQkFDekIsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVO2dCQUM3QixNQUFNLEVBQUUsTUFBTTthQUNqQixDQUFDLENBQUM7UUFDUCxDQUFDO1FBQ0QsSUFBSSxVQUFVLEdBQVUsRUFBRSxDQUFDO1FBQzNCLEdBQUcsQ0FBQSxDQUFDLElBQUksR0FBRyxJQUFJLFdBQVcsQ0FBQyxDQUFBLENBQUM7WUFDeEIsVUFBVSxHQUFHLFVBQVUsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUNuRSxDQUFDO1FBQUEsQ0FBQztRQUNGLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUMsVUFBVSxDQUFDLENBQUM7UUFDekQsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUNELHdCQUFJLEdBQUosVUFBSyxVQUFVO1FBQ1gsSUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUM3QixJQUFJLFdBQTBCLENBQUM7UUFFL0IsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUNMLGdCQUFDO0FBQUQsQ0F2Q0EsQUF1Q0MsSUFBQTtBQXZDWSxpQkFBUyxZQXVDckIsQ0FBQTtBQUFBLENBQUM7QUFNRCxDQUFDIiwiZmlsZSI6InNtYXJ0c3NoLmNsYXNzZXMuc3NoY29uZmlnLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIjtcbmltcG9ydCAqIGFzIHBsdWdpbnMgZnJvbSBcIi4vc21hcnRzc2gucGx1Z2luc1wiO1xuaW1wb3J0ICogYXMgaGVscGVycyBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLmhlbHBlcnNcIjtcbmltcG9ydCB7U3NoS2V5fSBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLnNzaGtleVwiXG5cbmV4cG9ydCBjbGFzcyBTc2hDb25maWcge1xuICAgIHNzaEtleUFycmF5OlNzaEtleVtdO1xuICAgIGNvbnN0cnVjdG9yKHNzaEtleUFycmF5QXJnOlNzaEtleVtdKXtcbiAgICAgICAgdGhpcy5zc2hLZXlBcnJheSA9IHNzaEtleUFycmF5QXJnO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHN0b3JlcyBhIGNvbmZpZyBmaWxlXG4gICAgICovXG4gICAgc3RvcmUoZGlyUGF0aEFyZzpzdHJpbmcpe1xuICAgICAgICBsZXQgZG9uZSA9IHBsdWdpbnMucS5kZWZlcigpO1xuICAgICAgICBsZXQgY29uZmlnQXJyYXk6Y29uZmlnT2JqZWN0W107XG4gICAgICAgIGxldCBjb25maWdTdHJpbmc7XG4gICAgICAgIGZvcihsZXQga2V5IGluIHRoaXMuc3NoS2V5QXJyYXkpe1xuICAgICAgICAgICAgbGV0IHNzaEtleSA9IHRoaXMuc3NoS2V5QXJyYXlba2V5XTtcbiAgICAgICAgICAgIGlmKHNzaEtleS5ob3N0KXtcbiAgICAgICAgICAgICAgICBjb25maWdTdHJpbmcgPSBcIkhvc3QgXCIgKyBzc2hLZXkuaG9zdCArIFwiXFxuXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiAgSG9zdE5hbWUgXCIgKyBzc2hLZXkuaG9zdCArIFwiXFxuXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiAgSWRlbnRpdHlGaWxlIH4vLnNzaC9cIiArIHNzaEtleS5ob3N0ICsgXCJcXG5cIlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uZmlnQXJyYXkucHVzaCh7XG4gICAgICAgICAgICAgICAgY29uZmlnU3RyaW5nOmNvbmZpZ1N0cmluZyxcbiAgICAgICAgICAgICAgICBhdXRob3JpemVkOiBzc2hLZXkuYXV0aG9yaXplZCxcbiAgICAgICAgICAgICAgICBzc2hLZXk6IHNzaEtleVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGNvbmZpZ0ZpbGU6c3RyaW5nID0gXCJcIjtcbiAgICAgICAgZm9yKGxldCBrZXkgaW4gY29uZmlnQXJyYXkpe1xuICAgICAgICAgICAgY29uZmlnRmlsZSA9IGNvbmZpZ0ZpbGUgKyBjb25maWdBcnJheVtrZXldLmNvbmZpZ1N0cmluZyArIFwiXFxuXCI7XG4gICAgICAgIH07XG4gICAgICAgIHBsdWdpbnMuc21hcnRmaWxlLm1lbW9yeS50b0ZzU3luYyhjb25maWdGaWxlLGRpclBhdGhBcmcpO1xuICAgICAgICByZXR1cm4gZG9uZS5wcm9taXNlO1xuICAgIH1cbiAgICByZWFkKGRpclBhdGhBcmcpe1xuICAgICAgICBsZXQgZG9uZSA9IHBsdWdpbnMucS5kZWZlcigpO1xuICAgICAgICBsZXQgY29uZmlnQXJyYXk6Y29uZmlnT2JqZWN0W107XG4gICAgICAgIFxuICAgICAgICByZXR1cm4gZG9uZS5wcm9taXNlO1xuICAgIH1cbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgY29uZmlnT2JqZWN0IHtcbiAgICBjb25maWdTdHJpbmc6c3RyaW5nO1xuICAgIGF1dGhvcml6ZWQ6Ym9vbGVhbjtcbiAgICBzc2hLZXk6U3NoS2V5O1xufTtcblxuIl19 diff --git a/dist/smartssh.classes.sshdir.d.ts b/dist/smartssh.classes.sshdir.d.ts index 2d8113d..3d3b8ea 100644 --- a/dist/smartssh.classes.sshdir.d.ts +++ b/dist/smartssh.classes.sshdir.d.ts @@ -1,9 +1,11 @@ import "typings-global"; import { SshKey } from "./smartssh.classes.sshkey"; +import { SshConfig } from "./smartssh.classes.sshconfig"; export declare class SshDir { path: string; private sshKeyArray; - constructor(sshKeyArray: SshKey[], sshDirPathArg?: string); + private sshConfig; + constructor(sshKeyArray: SshKey[], sshConfig: SshConfig, sshDirPathArg?: string); writeToDir(): void; readFromDir(): void; getKeys(): SshKey[]; diff --git a/dist/smartssh.classes.sshdir.js b/dist/smartssh.classes.sshdir.js index bf40f79..8f81677 100644 --- a/dist/smartssh.classes.sshdir.js +++ b/dist/smartssh.classes.sshdir.js @@ -3,7 +3,7 @@ require("typings-global"); var plugins = require("./smartssh.plugins"); var helpers = require("./smartssh.classes.helpers"); var SshDir = (function () { - function SshDir(sshKeyArray, sshDirPathArg) { + function SshDir(sshKeyArray, sshConfig, sshDirPathArg) { this.sshKeyArray = sshKeyArray; if (sshDirPathArg) { this.path = sshDirPathArg; @@ -18,6 +18,7 @@ var SshDir = (function () { this.sshKeyArray.forEach(function (sshKeyArg) { sshKeyArg.store(_this.path); }); + this.sshConfig.store(this.path); }; ; SshDir.prototype.readFromDir = function () { @@ -29,4 +30,4 @@ var SshDir = (function () { }()); exports.SshDir = SshDir; -//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0c3NoLmNsYXNzZXMuc3NoZGlyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFDeEIsSUFBWSxPQUFPLFdBQU0sb0JBQW9CLENBQUMsQ0FBQTtBQUM5QyxJQUFZLE9BQU8sV0FBTSw0QkFBNEIsQ0FBQyxDQUFBO0FBSXREO0lBR0ksZ0JBQVksV0FBb0IsRUFBQyxhQUFxQjtRQUNsRCxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixFQUFFLENBQUEsQ0FBQyxhQUFhLENBQUMsQ0FBQSxDQUFDO1lBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxhQUFhLENBQUM7UUFDOUIsQ0FBQztRQUFDLElBQUksQ0FBQyxDQUFDO1lBQ0osSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUN4RSxDQUFDO1FBQUEsQ0FBQztJQUNOLENBQUM7SUFDRCwyQkFBVSxHQUFWO1FBQUEsaUJBS0M7UUFKRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxVQUFDLFNBQVM7WUFDL0IsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFL0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztJQUNELDRCQUFXLEdBQVg7SUFFQSxDQUFDO0lBQ0Qsd0JBQU8sR0FBUDtRQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFDTCxhQUFDO0FBQUQsQ0F2QkEsQUF1QkMsSUFBQTtBQXZCWSxjQUFNLFNBdUJsQixDQUFBIiwiZmlsZSI6InNtYXJ0c3NoLmNsYXNzZXMuc3NoZGlyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIjtcbmltcG9ydCAqIGFzIHBsdWdpbnMgZnJvbSBcIi4vc21hcnRzc2gucGx1Z2luc1wiO1xuaW1wb3J0ICogYXMgaGVscGVycyBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLmhlbHBlcnNcIjtcbmltcG9ydCB7U3NoSW5zdGFuY2V9IGZyb20gXCIuL3NtYXJ0c3NoLmNsYXNzZXMuc3NoaW5zdGFuY2VcIjtcbmltcG9ydCB7U3NoS2V5fSBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLnNzaGtleVwiO1xuaW1wb3J0IHtTc2hDb25maWd9IGZyb20gXCIuL3NtYXJ0c3NoLmNsYXNzZXMuc3NoY29uZmlnXCI7XG5leHBvcnQgY2xhc3MgU3NoRGlyIHsgLy8gc3NoRGlyIGNsYXNzIC0+IE5PVCBFWFBPUlRFRCwgT05MWSBGT1IgSU5URVJOQUwgVVNFXG4gICAgcGF0aDpzdHJpbmc7IC8vIHRoZSBwYXRoIG9mIHRoZSBzc2ggZGlyZWN0b3J5XG4gICAgcHJpdmF0ZSBzc2hLZXlBcnJheTpTc2hLZXlbXTtcbiAgICBjb25zdHJ1Y3Rvcihzc2hLZXlBcnJheTpTc2hLZXlbXSxzc2hEaXJQYXRoQXJnPzpzdHJpbmcpe1xuICAgICAgICB0aGlzLnNzaEtleUFycmF5ID0gc3NoS2V5QXJyYXk7XG4gICAgICAgIGlmKHNzaERpclBhdGhBcmcpe1xuICAgICAgICAgICAgdGhpcy5wYXRoID0gc3NoRGlyUGF0aEFyZztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucGF0aCA9IHBsdWdpbnMucGF0aC5qb2luKHBsdWdpbnMuc21hcnRwYXRoLmdldC5ob21lKCksXCIuc3NoL1wiKTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgd3JpdGVUb0RpcigpeyAvLyBzeW5jcyBzc2hJbnN0YW5jZSB0byBkaXJlY3RvcnlcbiAgICAgICAgdGhpcy5zc2hLZXlBcnJheS5mb3JFYWNoKChzc2hLZXlBcmcpID0+IHtcbiAgICAgICAgICAgIHNzaEtleUFyZy5zdG9yZSh0aGlzLnBhdGgpO1xuICAgICAgICAgICAgXG4gICAgICAgIH0pO1xuICAgIH07XG4gICAgcmVhZEZyb21EaXIoKXsgLy8gc3luY3Mgc3NoSW5zdGFuY2UgZnJvbSBkaXJlY3RvcnlcbiAgICAgICAgXG4gICAgfVxuICAgIGdldEtleXMoKXtcbiAgICAgICAgcmV0dXJuIGhlbHBlcnMuc3NoS2V5QXJyYXlGcm9tRGlyKHRoaXMucGF0aCk7XG4gICAgfVxufSJdfQ== +//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0c3NoLmNsYXNzZXMuc3NoZGlyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFDeEIsSUFBWSxPQUFPLFdBQU0sb0JBQW9CLENBQUMsQ0FBQTtBQUM5QyxJQUFZLE9BQU8sV0FBTSw0QkFBNEIsQ0FBQyxDQUFBO0FBSXREO0lBSUksZ0JBQVksV0FBb0IsRUFBQyxTQUFtQixFQUFDLGFBQXFCO1FBQ3RFLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLEVBQUUsQ0FBQSxDQUFDLGFBQWEsQ0FBQyxDQUFBLENBQUM7WUFDZCxJQUFJLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQztRQUM5QixDQUFDO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDSixJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hFLENBQUM7UUFBQSxDQUFDO0lBQ04sQ0FBQztJQUNELDJCQUFVLEdBQVY7UUFBQSxpQkFLQztRQUpHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLFVBQUMsU0FBUztZQUMvQixTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDOztJQUNELDRCQUFXLEdBQVg7SUFFQSxDQUFDO0lBQ0Qsd0JBQU8sR0FBUDtRQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFDTCxhQUFDO0FBQUQsQ0F4QkEsQUF3QkMsSUFBQTtBQXhCWSxjQUFNLFNBd0JsQixDQUFBIiwiZmlsZSI6InNtYXJ0c3NoLmNsYXNzZXMuc3NoZGlyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIjtcbmltcG9ydCAqIGFzIHBsdWdpbnMgZnJvbSBcIi4vc21hcnRzc2gucGx1Z2luc1wiO1xuaW1wb3J0ICogYXMgaGVscGVycyBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLmhlbHBlcnNcIjtcbmltcG9ydCB7U3NoSW5zdGFuY2V9IGZyb20gXCIuL3NtYXJ0c3NoLmNsYXNzZXMuc3NoaW5zdGFuY2VcIjtcbmltcG9ydCB7U3NoS2V5fSBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLnNzaGtleVwiO1xuaW1wb3J0IHtTc2hDb25maWd9IGZyb20gXCIuL3NtYXJ0c3NoLmNsYXNzZXMuc3NoY29uZmlnXCI7XG5leHBvcnQgY2xhc3MgU3NoRGlyIHsgLy8gc3NoRGlyIGNsYXNzIC0+IE5PVCBFWFBPUlRFRCwgT05MWSBGT1IgSU5URVJOQUwgVVNFXG4gICAgcGF0aDpzdHJpbmc7IC8vIHRoZSBwYXRoIG9mIHRoZSBzc2ggZGlyZWN0b3J5XG4gICAgcHJpdmF0ZSBzc2hLZXlBcnJheTpTc2hLZXlbXTtcbiAgICBwcml2YXRlIHNzaENvbmZpZzpTc2hDb25maWc7XG4gICAgY29uc3RydWN0b3Ioc3NoS2V5QXJyYXk6U3NoS2V5W10sc3NoQ29uZmlnOlNzaENvbmZpZyxzc2hEaXJQYXRoQXJnPzpzdHJpbmcpe1xuICAgICAgICB0aGlzLnNzaEtleUFycmF5ID0gc3NoS2V5QXJyYXk7XG4gICAgICAgIGlmKHNzaERpclBhdGhBcmcpe1xuICAgICAgICAgICAgdGhpcy5wYXRoID0gc3NoRGlyUGF0aEFyZztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucGF0aCA9IHBsdWdpbnMucGF0aC5qb2luKHBsdWdpbnMuc21hcnRwYXRoLmdldC5ob21lKCksXCIuc3NoL1wiKTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgd3JpdGVUb0RpcigpeyAvLyBzeW5jcyBzc2hJbnN0YW5jZSB0byBkaXJlY3RvcnlcbiAgICAgICAgdGhpcy5zc2hLZXlBcnJheS5mb3JFYWNoKChzc2hLZXlBcmcpID0+IHtcbiAgICAgICAgICAgIHNzaEtleUFyZy5zdG9yZSh0aGlzLnBhdGgpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5zc2hDb25maWcuc3RvcmUodGhpcy5wYXRoKTtcbiAgICB9O1xuICAgIHJlYWRGcm9tRGlyKCl7IC8vIHN5bmNzIHNzaEluc3RhbmNlIGZyb20gZGlyZWN0b3J5XG4gICAgICAgIFxuICAgIH1cbiAgICBnZXRLZXlzKCl7XG4gICAgICAgIHJldHVybiBoZWxwZXJzLnNzaEtleUFycmF5RnJvbURpcih0aGlzLnBhdGgpO1xuICAgIH1cbn0iXX0= diff --git a/dist/smartssh.classes.sshinstance.js b/dist/smartssh.classes.sshinstance.js index 0723331..b022b3f 100644 --- a/dist/smartssh.classes.sshinstance.js +++ b/dist/smartssh.classes.sshinstance.js @@ -8,7 +8,7 @@ var SshInstance = (function () { optionsArg ? void (0) : optionsArg = {}; this._sshKeyArray = []; this._sshConfig = new smartssh_classes_sshconfig_1.SshConfig(this._sshKeyArray); - this._sshDir = new smartssh_classes_sshdir_1.SshDir(this._sshKeyArray, optionsArg.sshDirPath); + this._sshDir = new smartssh_classes_sshdir_1.SshDir(this._sshKeyArray, this._sshConfig, optionsArg.sshDirPath); this._sshSync = optionsArg.sshSync; } ; @@ -102,4 +102,4 @@ var SshInstance = (function () { }()); exports.SshInstance = SshInstance; -//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0c3NoLmNsYXNzZXMuc3NoaW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQ1AsQ0FBQyxDQURzQjtBQUl2Qix3Q0FBcUIsMkJBQTJCLENBQUMsQ0FBQTtBQUNqRCwyQ0FBd0IsOEJBQThCLENBQUMsQ0FBQTtBQUd2RDtJQUtJLHFCQUFZLFVBQW1EO1FBQW5ELDBCQUFtRCxHQUFuRCxlQUFtRDtRQUMzRCxVQUFVLEdBQUcsS0FBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLHNDQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxnQ0FBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQztJQUN2QyxDQUFDOztJQUVELGtCQUFrQjtJQUNsQiw0QkFBTSxHQUFOLFVBQU8sU0FBZ0I7UUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7O0lBQ0QsK0JBQVMsR0FBVCxVQUFVLFNBQWdCO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkIsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsVUFBQyxVQUFpQjtZQUMzRCxNQUFNLENBQUMsQ0FBQyxTQUFTLElBQUksVUFBVSxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsWUFBWSxHQUFHLGFBQWEsQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7O0lBQ0QsZ0NBQVUsR0FBVixVQUFXLFlBQW1CLEVBQUMsWUFBbUI7UUFDOUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QixDQUFDOztJQUVELEVBQUU7SUFDRiw0QkFBTSxHQUFOLFVBQU8sT0FBYztRQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZCLElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFVBQVMsTUFBTTtZQUN4RCxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsRUFBRSxDQUFBLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQSxDQUFDO1lBQ3pCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUIsQ0FBQztRQUFDLElBQUksQ0FBQyxDQUFDO1lBQ0osTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUNyQixDQUFDO0lBQ0wsQ0FBQzs7SUFDRCxzQkFBSSxnQ0FBTzthQUFYO1lBQ0ksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN2QixNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUM3QixDQUFDOzs7T0FBQTs7SUFFRCxZQUFZO0lBRVo7O09BRUc7SUFDSCxpQ0FBVyxHQUFYO1FBQ0ksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxrQ0FBWSxHQUFaO1FBQ0ksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQ7O3NFQUVrRTtJQUUxRCxpQ0FBVyxHQUFuQjtJQUVBLENBQUM7SUFFRDs7T0FFRztJQUNLLCtCQUFTLEdBQWpCLFVBQWtCLFlBQVk7UUFDMUIsRUFBRSxDQUFBLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOztPQUVHO0lBQ0ssMkJBQUssR0FBYixVQUFjLFlBQW1CO1FBQzdCLEVBQUUsQ0FBQSxDQUFDLFlBQVksSUFBSSxNQUFNLENBQUMsQ0FBQSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxvQ0FBb0M7UUFDcEUsQ0FBQztRQUFDLElBQUksQ0FBQyxFQUFFLENBQUEsQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQztZQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzlCLENBQUM7UUFBQyxJQUFJLENBQUMsQ0FBQztZQUNKLE1BQU0sSUFBSSxLQUFLLENBQUMscURBQXFELENBQUMsQ0FBQztRQUMzRSxDQUFDO0lBQ0wsQ0FBQzs7SUFDTCxrQkFBQztBQUFELENBOUZBLEFBOEZDLElBQUE7QUE5RlksbUJBQVcsY0E4RnZCLENBQUEiLCJmaWxlIjoic21hcnRzc2guY2xhc3Nlcy5zc2hpbnN0YW5jZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInR5cGluZ3MtZ2xvYmFsXCJcbmltcG9ydCAqIGFzIHBsdWdpbnMgZnJvbSBcIi4vc21hcnRzc2gucGx1Z2luc1wiO1xuaW1wb3J0ICogYXMgaGVscGVycyBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLmhlbHBlcnNcIjtcblxuaW1wb3J0IHtTc2hEaXJ9IGZyb20gXCIuL3NtYXJ0c3NoLmNsYXNzZXMuc3NoZGlyXCI7XG5pbXBvcnQge1NzaENvbmZpZ30gZnJvbSBcIi4vc21hcnRzc2guY2xhc3Nlcy5zc2hjb25maWdcIjtcbmltcG9ydCB7U3NoS2V5fSBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLnNzaGtleVwiO1xuXG5leHBvcnQgY2xhc3MgU3NoSW5zdGFuY2Uge1xuICAgIHByaXZhdGUgX3NzaEtleUFycmF5OlNzaEtleVtdOyAvL2hvbGRzIGFsbCBzc2gga2V5c1xuICAgIHByaXZhdGUgX3NzaENvbmZpZzpTc2hDb25maWc7IC8vIHNzaENvbmZpZyAoZS5nLiByZXByZXNlbnRzIH4vLnNzaC9jb25maWcpXG4gICAgcHJpdmF0ZSBfc3NoRGlyOlNzaERpcjsgLy8gcG9pbnRzIHRvIHNzaERpciBjbGFzcyBpbnN0YW5jZS5cbiAgICBwcml2YXRlIF9zc2hTeW5jOmJvb2xlYW47IC8vIGlmIHNldCB0byB0cnVlLCB0aGUgc3NoIGRpciB3aWxsIGJlIGtlcHQgaW4gc3luYyBhdXRvbWF0aWNhbGx5XG4gICAgY29uc3RydWN0b3Iob3B0aW9uc0FyZzp7c3NoRGlyUGF0aD86c3RyaW5nLHNzaFN5bmM/OmJvb2xlYW59PXt9KXtcbiAgICAgICAgb3B0aW9uc0FyZyA/IHZvaWQoMCkgOiBvcHRpb25zQXJnID0ge307XG4gICAgICAgIHRoaXMuX3NzaEtleUFycmF5ID0gW107XG4gICAgICAgIHRoaXMuX3NzaENvbmZpZyA9IG5ldyBTc2hDb25maWcodGhpcy5fc3NoS2V5QXJyYXkpO1xuICAgICAgICB0aGlzLl9zc2hEaXIgPSBuZXcgU3NoRGlyKHRoaXMuX3NzaEtleUFycmF5LG9wdGlvbnNBcmcuc3NoRGlyUGF0aCk7XG4gICAgICAgIHRoaXMuX3NzaFN5bmMgPSBvcHRpb25zQXJnLnNzaFN5bmM7XG4gICAgfTtcbiAgICBcbiAgICAvL2FsdGVyaW5nIG1ldGhvZHNcbiAgICBhZGRLZXkoc3NoS2V5QXJnOlNzaEtleSl7XG4gICAgICAgIHRoaXMuX3N5bmNBdXRvKFwiZnJvbVwiKTtcbiAgICAgICAgdGhpcy5fc3NoS2V5QXJyYXkucHVzaChzc2hLZXlBcmcpO1xuICAgICAgICB0aGlzLl9zeW5jQXV0byhcInRvXCIpO1xuICAgIH07XG4gICAgcmVtb3ZlS2V5KHNzaEtleUFyZzpTc2hLZXkpe1xuICAgICAgICB0aGlzLl9zeW5jQXV0byhcImZyb21cIik7XG4gICAgICAgIGxldCBmaWx0ZXJlZEFycmF5ID0gdGhpcy5fc3NoS2V5QXJyYXkuZmlsdGVyKChzc2hLZXlBcmcyOlNzaEtleSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIChzc2hLZXlBcmcgIT0gc3NoS2V5QXJnMik7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9zc2hLZXlBcnJheSA9IGZpbHRlcmVkQXJyYXk7XG4gICAgICAgIHRoaXMuX3N5bmNBdXRvKFwidG9cIik7XG4gICAgfTtcbiAgICByZXBsYWNlS2V5KHNzaEtleU9sZEFyZzpTc2hLZXksc3NoS2V5TmV3QXJnOlNzaEtleSl7XG4gICAgICAgIHRoaXMuX3N5bmNBdXRvKFwiZnJvbVwiKTtcbiAgICAgICAgdGhpcy5yZW1vdmVLZXkoc3NoS2V5T2xkQXJnKTtcbiAgICAgICAgdGhpcy5hZGRLZXkoc3NoS2V5TmV3QXJnKTtcbiAgICAgICAgdGhpcy5fc3luY0F1dG8oXCJ0b1wiKTtcbiAgICB9O1xuICAgIFxuICAgIC8vXG4gICAgZ2V0S2V5KGhvc3RBcmc6c3RyaW5nKTpTc2hLZXl7XG4gICAgICAgIHRoaXMuX3N5bmNBdXRvKFwiZnJvbVwiKTtcbiAgICAgICAgbGV0IGZpbHRlcmVkQXJyYXkgPSB0aGlzLl9zc2hLZXlBcnJheS5maWx0ZXIoZnVuY3Rpb24oa2V5QXJnKXtcbiAgICAgICAgICAgIHJldHVybiAoa2V5QXJnLmhvc3QgPT0gaG9zdEFyZyk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZihmaWx0ZXJlZEFycmF5Lmxlbmd0aCA+IDApe1xuICAgICAgICAgICAgcmV0dXJuIGZpbHRlcmVkQXJyYXlbMF07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBnZXQgc3NoS2V5cygpOlNzaEtleVtdIHtcbiAgICAgICAgdGhpcy5fc3luY0F1dG8oXCJmcm9tXCIpO1xuICAgICAgICByZXR1cm4gdGhpcy5fc3NoS2V5QXJyYXk7XG4gICAgfTtcblxuICAgIC8vRlMgbWV0aG9kc1xuXG4gICAgLyoqXG4gICAgICogd3JpdGUgU3NoSW5zdGFuY2UgdG8gZGlza1xuICAgICAqL1xuICAgIHdyaXRlVG9EaXNrKCl7XG4gICAgICAgIHRoaXMuX3N5bmMoXCJ0b1wiKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZWFkIGFiIFNzaEluc3RhbmNlIGZyb20gZGlza1xuICAgICAqL1xuICAgIHJlYWRGcm9tRGlzaygpe1xuICAgICAgICB0aGlzLl9zeW5jKFwiZnJvbVwiKTtcbiAgICB9XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09IFByaXZhdGUgTWV0aG9kcyA9PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuICAgIHByaXZhdGUgX21ha2VDb25maWcgKCl7XG5cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBtZXRob2QgdG8gaW52b2tlIFNzaEluc3RhbmNlIF9zeW5jIGF1dG9tYXRpY2FsbHkgd2hlbiBzc2hTeW5jIGlzIHRydWVcbiAgICAgKi9cbiAgICBwcml2YXRlIF9zeW5jQXV0byhkaXJlY3Rpb25Bcmcpe1xuICAgICAgICBpZih0aGlzLl9zc2hTeW5jKSB0aGlzLl9zeW5jKGRpcmVjdGlvbkFyZyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogcHJpdmF0ZSBtZXRob2QgdG8gc3luYyBTc2hJbnN0YW5jZVxuICAgICAqL1xuICAgIHByaXZhdGUgX3N5bmMoZGlyZWN0aW9uQXJnOnN0cmluZyl7XG4gICAgICAgIGlmKGRpcmVjdGlvbkFyZyA9PSBcImZyb21cIil7XG4gICAgICAgICAgICB0aGlzLl9zc2hEaXIucmVhZEZyb21EaXIoKTsgLy8gY2FsbCBzeW5jIG1ldGhvZCBvZiBzc2hEaXIgY2xhc3M7XG4gICAgICAgIH0gZWxzZSBpZihkaXJlY3Rpb25BcmcgPT0gXCJ0b1wiKSB7XG4gICAgICAgICAgICB0aGlzLl9zc2hEaXIud3JpdGVUb0RpcigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiZGlyZWN0aW9uQXJnIG5vdCByZWNvZ25pc2VkLiBNdXN0IGJlICd0bycgb3IgJ2Zyb20nXCIpO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuXG4iXX0= +//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0c3NoLmNsYXNzZXMuc3NoaW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQ1AsQ0FBQyxDQURzQjtBQUl2Qix3Q0FBcUIsMkJBQTJCLENBQUMsQ0FBQTtBQUNqRCwyQ0FBd0IsOEJBQThCLENBQUMsQ0FBQTtBQUd2RDtJQUtJLHFCQUFZLFVBQW1EO1FBQW5ELDBCQUFtRCxHQUFuRCxlQUFtRDtRQUMzRCxVQUFVLEdBQUcsS0FBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLHNDQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxnQ0FBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkYsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDO0lBQ3ZDLENBQUM7O0lBRUQsa0JBQWtCO0lBQ2xCLDRCQUFNLEdBQU4sVUFBTyxTQUFnQjtRQUNuQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQzs7SUFDRCwrQkFBUyxHQUFULFVBQVUsU0FBZ0I7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2QixJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxVQUFDLFVBQWlCO1lBQzNELE1BQU0sQ0FBQyxDQUFDLFNBQVMsSUFBSSxVQUFVLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsYUFBYSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQzs7SUFDRCxnQ0FBVSxHQUFWLFVBQVcsWUFBbUIsRUFBQyxZQUFtQjtRQUM5QyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7O0lBRUQsRUFBRTtJQUNGLDRCQUFNLEdBQU4sVUFBTyxPQUFjO1FBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkIsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsVUFBUyxNQUFNO1lBQ3hELE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFDSCxFQUFFLENBQUEsQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFBLENBQUM7WUFDekIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1QixDQUFDO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDSixNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ3JCLENBQUM7SUFDTCxDQUFDOztJQUNELHNCQUFJLGdDQUFPO2FBQVg7WUFDSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZCLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQzdCLENBQUM7OztPQUFBOztJQUVELFlBQVk7SUFFWjs7T0FFRztJQUNILGlDQUFXLEdBQVg7UUFDSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7T0FFRztJQUNILGtDQUFZLEdBQVo7UUFDSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7c0VBRWtFO0lBRTFELGlDQUFXLEdBQW5CO0lBRUEsQ0FBQztJQUVEOztPQUVHO0lBQ0ssK0JBQVMsR0FBakIsVUFBa0IsWUFBWTtRQUMxQixFQUFFLENBQUEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7O09BRUc7SUFDSywyQkFBSyxHQUFiLFVBQWMsWUFBbUI7UUFDN0IsRUFBRSxDQUFBLENBQUMsWUFBWSxJQUFJLE1BQU0sQ0FBQyxDQUFBLENBQUM7WUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLG9DQUFvQztRQUNwRSxDQUFDO1FBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDOUIsQ0FBQztRQUFDLElBQUksQ0FBQyxDQUFDO1lBQ0osTUFBTSxJQUFJLEtBQUssQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO1FBQzNFLENBQUM7SUFDTCxDQUFDOztJQUNMLGtCQUFDO0FBQUQsQ0E5RkEsQUE4RkMsSUFBQTtBQTlGWSxtQkFBVyxjQThGdkIsQ0FBQSIsImZpbGUiOiJzbWFydHNzaC5jbGFzc2VzLnNzaGluc3RhbmNlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIlxuaW1wb3J0ICogYXMgcGx1Z2lucyBmcm9tIFwiLi9zbWFydHNzaC5wbHVnaW5zXCI7XG5pbXBvcnQgKiBhcyBoZWxwZXJzIGZyb20gXCIuL3NtYXJ0c3NoLmNsYXNzZXMuaGVscGVyc1wiO1xuXG5pbXBvcnQge1NzaERpcn0gZnJvbSBcIi4vc21hcnRzc2guY2xhc3Nlcy5zc2hkaXJcIjtcbmltcG9ydCB7U3NoQ29uZmlnfSBmcm9tIFwiLi9zbWFydHNzaC5jbGFzc2VzLnNzaGNvbmZpZ1wiO1xuaW1wb3J0IHtTc2hLZXl9IGZyb20gXCIuL3NtYXJ0c3NoLmNsYXNzZXMuc3Noa2V5XCI7XG5cbmV4cG9ydCBjbGFzcyBTc2hJbnN0YW5jZSB7XG4gICAgcHJpdmF0ZSBfc3NoS2V5QXJyYXk6U3NoS2V5W107IC8vaG9sZHMgYWxsIHNzaCBrZXlzXG4gICAgcHJpdmF0ZSBfc3NoQ29uZmlnOlNzaENvbmZpZzsgLy8gc3NoQ29uZmlnIChlLmcuIHJlcHJlc2VudHMgfi8uc3NoL2NvbmZpZylcbiAgICBwcml2YXRlIF9zc2hEaXI6U3NoRGlyOyAvLyBwb2ludHMgdG8gc3NoRGlyIGNsYXNzIGluc3RhbmNlLlxuICAgIHByaXZhdGUgX3NzaFN5bmM6Ym9vbGVhbjsgLy8gaWYgc2V0IHRvIHRydWUsIHRoZSBzc2ggZGlyIHdpbGwgYmUga2VwdCBpbiBzeW5jIGF1dG9tYXRpY2FsbHlcbiAgICBjb25zdHJ1Y3RvcihvcHRpb25zQXJnOntzc2hEaXJQYXRoPzpzdHJpbmcsc3NoU3luYz86Ym9vbGVhbn09e30pe1xuICAgICAgICBvcHRpb25zQXJnID8gdm9pZCgwKSA6IG9wdGlvbnNBcmcgPSB7fTtcbiAgICAgICAgdGhpcy5fc3NoS2V5QXJyYXkgPSBbXTtcbiAgICAgICAgdGhpcy5fc3NoQ29uZmlnID0gbmV3IFNzaENvbmZpZyh0aGlzLl9zc2hLZXlBcnJheSk7XG4gICAgICAgIHRoaXMuX3NzaERpciA9IG5ldyBTc2hEaXIodGhpcy5fc3NoS2V5QXJyYXksdGhpcy5fc3NoQ29uZmlnLG9wdGlvbnNBcmcuc3NoRGlyUGF0aCk7XG4gICAgICAgIHRoaXMuX3NzaFN5bmMgPSBvcHRpb25zQXJnLnNzaFN5bmM7XG4gICAgfTtcbiAgICBcbiAgICAvL2FsdGVyaW5nIG1ldGhvZHNcbiAgICBhZGRLZXkoc3NoS2V5QXJnOlNzaEtleSl7XG4gICAgICAgIHRoaXMuX3N5bmNBdXRvKFwiZnJvbVwiKTtcbiAgICAgICAgdGhpcy5fc3NoS2V5QXJyYXkucHVzaChzc2hLZXlBcmcpO1xuICAgICAgICB0aGlzLl9zeW5jQXV0byhcInRvXCIpO1xuICAgIH07XG4gICAgcmVtb3ZlS2V5KHNzaEtleUFyZzpTc2hLZXkpe1xuICAgICAgICB0aGlzLl9zeW5jQXV0byhcImZyb21cIik7XG4gICAgICAgIGxldCBmaWx0ZXJlZEFycmF5ID0gdGhpcy5fc3NoS2V5QXJyYXkuZmlsdGVyKChzc2hLZXlBcmcyOlNzaEtleSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIChzc2hLZXlBcmcgIT0gc3NoS2V5QXJnMik7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9zc2hLZXlBcnJheSA9IGZpbHRlcmVkQXJyYXk7XG4gICAgICAgIHRoaXMuX3N5bmNBdXRvKFwidG9cIik7XG4gICAgfTtcbiAgICByZXBsYWNlS2V5KHNzaEtleU9sZEFyZzpTc2hLZXksc3NoS2V5TmV3QXJnOlNzaEtleSl7XG4gICAgICAgIHRoaXMuX3N5bmNBdXRvKFwiZnJvbVwiKTtcbiAgICAgICAgdGhpcy5yZW1vdmVLZXkoc3NoS2V5T2xkQXJnKTtcbiAgICAgICAgdGhpcy5hZGRLZXkoc3NoS2V5TmV3QXJnKTtcbiAgICAgICAgdGhpcy5fc3luY0F1dG8oXCJ0b1wiKTtcbiAgICB9O1xuICAgIFxuICAgIC8vXG4gICAgZ2V0S2V5KGhvc3RBcmc6c3RyaW5nKTpTc2hLZXl7XG4gICAgICAgIHRoaXMuX3N5bmNBdXRvKFwiZnJvbVwiKTtcbiAgICAgICAgbGV0IGZpbHRlcmVkQXJyYXkgPSB0aGlzLl9zc2hLZXlBcnJheS5maWx0ZXIoZnVuY3Rpb24oa2V5QXJnKXtcbiAgICAgICAgICAgIHJldHVybiAoa2V5QXJnLmhvc3QgPT0gaG9zdEFyZyk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZihmaWx0ZXJlZEFycmF5Lmxlbmd0aCA+IDApe1xuICAgICAgICAgICAgcmV0dXJuIGZpbHRlcmVkQXJyYXlbMF07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBnZXQgc3NoS2V5cygpOlNzaEtleVtdIHtcbiAgICAgICAgdGhpcy5fc3luY0F1dG8oXCJmcm9tXCIpO1xuICAgICAgICByZXR1cm4gdGhpcy5fc3NoS2V5QXJyYXk7XG4gICAgfTtcblxuICAgIC8vRlMgbWV0aG9kc1xuXG4gICAgLyoqXG4gICAgICogd3JpdGUgU3NoSW5zdGFuY2UgdG8gZGlza1xuICAgICAqL1xuICAgIHdyaXRlVG9EaXNrKCl7XG4gICAgICAgIHRoaXMuX3N5bmMoXCJ0b1wiKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZWFkIGFiIFNzaEluc3RhbmNlIGZyb20gZGlza1xuICAgICAqL1xuICAgIHJlYWRGcm9tRGlzaygpe1xuICAgICAgICB0aGlzLl9zeW5jKFwiZnJvbVwiKTtcbiAgICB9XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09IFByaXZhdGUgTWV0aG9kcyA9PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuICAgIHByaXZhdGUgX21ha2VDb25maWcgKCl7XG5cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBtZXRob2QgdG8gaW52b2tlIFNzaEluc3RhbmNlIF9zeW5jIGF1dG9tYXRpY2FsbHkgd2hlbiBzc2hTeW5jIGlzIHRydWVcbiAgICAgKi9cbiAgICBwcml2YXRlIF9zeW5jQXV0byhkaXJlY3Rpb25Bcmcpe1xuICAgICAgICBpZih0aGlzLl9zc2hTeW5jKSB0aGlzLl9zeW5jKGRpcmVjdGlvbkFyZyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogcHJpdmF0ZSBtZXRob2QgdG8gc3luYyBTc2hJbnN0YW5jZVxuICAgICAqL1xuICAgIHByaXZhdGUgX3N5bmMoZGlyZWN0aW9uQXJnOnN0cmluZyl7XG4gICAgICAgIGlmKGRpcmVjdGlvbkFyZyA9PSBcImZyb21cIil7XG4gICAgICAgICAgICB0aGlzLl9zc2hEaXIucmVhZEZyb21EaXIoKTsgLy8gY2FsbCBzeW5jIG1ldGhvZCBvZiBzc2hEaXIgY2xhc3M7XG4gICAgICAgIH0gZWxzZSBpZihkaXJlY3Rpb25BcmcgPT0gXCJ0b1wiKSB7XG4gICAgICAgICAgICB0aGlzLl9zc2hEaXIud3JpdGVUb0RpcigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiZGlyZWN0aW9uQXJnIG5vdCByZWNvZ25pc2VkLiBNdXN0IGJlICd0bycgb3IgJ2Zyb20nXCIpO1xuICAgICAgICB9XG4gICAgfTtcbn1cbiJdfQ== diff --git a/dist/smartssh.classes.sshkey.d.ts b/dist/smartssh.classes.sshkey.d.ts index 57ee18f..fb9a586 100644 --- a/dist/smartssh.classes.sshkey.d.ts +++ b/dist/smartssh.classes.sshkey.d.ts @@ -15,7 +15,8 @@ export declare class SshKey { privKeyBase64: string; pubKey: string; pubKeyBase64: string; + authorized: boolean; type: any; read(filePathArg: any): void; - store(filePathArg?: string): void; + store(dirPathArg?: string): void; } diff --git a/dist/smartssh.classes.sshkey.js b/dist/smartssh.classes.sshkey.js index 72e71f5..0a2cb47 100644 --- a/dist/smartssh.classes.sshkey.js +++ b/dist/smartssh.classes.sshkey.js @@ -70,6 +70,16 @@ var SshKey = (function () { enumerable: true, configurable: true }); + Object.defineProperty(SshKey.prototype, "authorized", { + get: function () { + return this._authorized; + }, + set: function (authorizedArg) { + this._authorized = authorizedArg; + }, + enumerable: true, + configurable: true + }); Object.defineProperty(SshKey.prototype, "type", { get: function () { if (this._privKey && this._pubKey) { @@ -92,18 +102,15 @@ var SshKey = (function () { // methods SshKey.prototype.read = function (filePathArg) { }; - SshKey.prototype.store = function (filePathArg) { - var filePathObj = plugins.path.parse(filePathArg); - if (filePathObj.ext = ".priv") { - plugins.smartfile.memory.toFsSync(this._privKey, filePathArg); + SshKey.prototype.store = function (dirPathArg) { + plugins.fs.ensureDirSync(dirPathArg); + var fileNameBase = this.host; + if (this._privKey) { + plugins.smartfile.memory.toFsSync(this._privKey, plugins.path.join(dirPathArg, fileNameBase)); } - else if (filePathObj.ext = ".pub") { - plugins.smartfile.memory.toFsSync(this._pubKey, filePathArg); - } - else { - plugins.fs.ensureDirSync(filePathObj.dir); - this.store(plugins.path.join(filePathObj.dir, "key.priv")); // call this function recursivly - this.store(plugins.path.join(filePathObj.dir, "key.pub")); // call this function recursivly + ; + if (this._pubKey) { + plugins.smartfile.memory.toFsSync(this._pubKey, plugins.path.join(dirPathArg, fileNameBase + ".pub")); } }; return SshKey; @@ -111,4 +118,4 @@ var SshKey = (function () { exports.SshKey = SshKey; var testKey = new SshKey(); -//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0c3NoLmNsYXNzZXMuc3Noa2V5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFDeEIsSUFBWSxPQUFPLFdBQU0sb0JBQW9CLENBQUMsQ0FBQTtBQUc5QztJQUtJLGdCQUFZLFVBQStFO1FBQS9FLDBCQUErRSxHQUEvRSxlQUErRTtRQUN2RixJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUM7UUFDbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQztRQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDN0MsQ0FBQzs7SUFHRCxzQkFBSSx3QkFBSTtRQURSLFlBQVk7YUFDWjtZQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ3pCLENBQUM7YUFDRCxVQUFTLE9BQWM7WUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDNUIsQ0FBQzs7O09BSEE7OztJQU1ELHNCQUFJLDJCQUFPO1FBRFgsZUFBZTthQUNmO1lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDekIsQ0FBQzthQUNELFVBQVksYUFBb0I7WUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUM7UUFDbEMsQ0FBQzs7O09BSEE7OztJQU1ELHNCQUFJLGlDQUFhO1FBRGpCLHFCQUFxQjthQUNyQjtZQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsQ0FBQzthQUNELFVBQWtCLGFBQW9CO1lBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDekQsQ0FBQzs7O09BSEE7SUFNRCxzQkFBSSwwQkFBTTtRQURWLGNBQWM7YUFDZDtZQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3hCLENBQUM7YUFDRCxVQUFXLFlBQW1CO1lBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDO1FBQ2hDLENBQUM7OztPQUhBOztJQU1ELHNCQUFJLGdDQUFZO1FBRGhCLG9CQUFvQjthQUNwQjtZQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsQ0FBQzthQUNELFVBQWlCLFlBQW1CO1lBQ2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDdkQsQ0FBQzs7O09BSEE7SUFNRCxzQkFBSSx3QkFBSTthQUFSO1lBQ0ksRUFBRSxDQUFBLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUEsQ0FBQztnQkFDOUIsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUNwQixDQUFDO1lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQSxDQUFDO2dCQUNyQixNQUFNLENBQUMsU0FBUyxDQUFDO1lBQ3JCLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFBLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBLENBQUM7Z0JBQ3BCLE1BQU0sQ0FBQyxRQUFRLENBQUM7WUFDcEIsQ0FBQztRQUNMLENBQUM7YUFDRCxVQUFTLFdBQWU7WUFDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtRUFBbUUsQ0FBQyxDQUFBO1FBQ3BGLENBQUM7OztPQUhBOztJQUtELFVBQVU7SUFDVixxQkFBSSxHQUFKLFVBQUssV0FBVztJQUVoQixDQUFDO0lBQ0Qsc0JBQUssR0FBTCxVQUFNLFdBQW1CO1FBQ3JCLElBQUksV0FBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xELEVBQUUsQ0FBQSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLENBQUEsQ0FBQztZQUMxQixPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBQyxXQUFXLENBQUMsQ0FBQztRQUNqRSxDQUFDO1FBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUEsQ0FBQztZQUNqQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBQyxXQUFXLENBQUMsQ0FBQztRQUNoRSxDQUFDO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDSixPQUFPLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQ0FBZ0M7WUFDM0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQ0FBZ0M7UUFDOUYsQ0FBQztJQUNMLENBQUM7SUFDTCxhQUFDO0FBQUQsQ0FsRkEsQUFrRkMsSUFBQTtBQWxGWSxjQUFNLFNBa0ZsQixDQUFBO0FBRUQsSUFBSSxPQUFPLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQyIsImZpbGUiOiJzbWFydHNzaC5jbGFzc2VzLnNzaGtleS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInR5cGluZ3MtZ2xvYmFsXCI7XG5pbXBvcnQgKiBhcyBwbHVnaW5zIGZyb20gXCIuL3NtYXJ0c3NoLnBsdWdpbnNcIjtcbmltcG9ydCAqIGFzIGhlbHBlcnMgZnJvbSBcIi4vc21hcnRzc2guY2xhc3Nlcy5oZWxwZXJzXCI7XG5cbmV4cG9ydCBjbGFzcyBTc2hLZXkge1xuICAgIHByaXZhdGUgX3ByaXZLZXk6c3RyaW5nO1xuICAgIHByaXZhdGUgX3B1YktleTpzdHJpbmc7XG4gICAgcHJpdmF0ZSBfaG9zdFZhcjpzdHJpbmc7XG4gICAgcHJpdmF0ZSBfYXV0aG9yaXplZDpib29sZWFuO1xuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnNBcmc6e3ByaXZhdGU/OnN0cmluZyxwdWJsaWM/OnN0cmluZyxob3N0PzpzdHJpbmcsYXV0aG9yaXplZD86Ym9vbGVhbn09e30pe1xuICAgICAgICB0aGlzLl9wcml2S2V5ID0gb3B0aW9uc0FyZy5wcml2YXRlO1xuICAgICAgICB0aGlzLl9wdWJLZXkgPSBvcHRpb25zQXJnLnB1YmxpYztcbiAgICAgICAgdGhpcy5faG9zdFZhciA9IG9wdGlvbnNBcmcuaG9zdDtcbiAgICAgICAgdGhpcy5fYXV0aG9yaXplZCA9IG9wdGlvbnNBcmcuYXV0aG9yaXplZDtcbiAgICB9O1xuICAgIFxuICAgIC8vIHRoaXMuaG9zdFxuICAgIGdldCBob3N0KCl7XG4gICAgICAgIHJldHVybiB0aGlzLl9ob3N0VmFyO1xuICAgIH07XG4gICAgc2V0IGhvc3QoaG9zdEFyZzpzdHJpbmcpe1xuICAgICAgICB0aGlzLl9ob3N0VmFyID0gaG9zdEFyZztcbiAgICB9O1xuXG4gICAgLy8gdGhpcy5wcml2S2V5XG4gICAgZ2V0IHByaXZLZXkoKXtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ByaXZLZXk7XG4gICAgfTtcbiAgICBzZXQgcHJpdktleShwcml2YXRlS2V5QXJnOnN0cmluZyl7XG4gICAgICAgIHRoaXMuX3ByaXZLZXkgPSBwcml2YXRlS2V5QXJnO1xuICAgIH07XG5cbiAgICAvLyB0aGlzLnByaXZLZXlCYXNlNjRcbiAgICBnZXQgcHJpdktleUJhc2U2NCgpe1xuICAgICAgICByZXR1cm4gcGx1Z2lucy5iYXNlNjQuZW5jb2RlKHRoaXMuX3ByaXZLZXkpO1xuICAgIH1cbiAgICBzZXQgcHJpdktleUJhc2U2NChwcml2YXRlS2V5QXJnOnN0cmluZykge1xuICAgICAgICB0aGlzLl9wcml2S2V5ID0gcGx1Z2lucy5iYXNlNjQuZGVjb2RlKHByaXZhdGVLZXlBcmcpO1xuICAgIH1cblxuICAgIC8vIHRoaXMucHViS2V5XG4gICAgZ2V0IHB1YktleSgpe1xuICAgICAgICByZXR1cm4gdGhpcy5fcHViS2V5O1xuICAgIH1cbiAgICBzZXQgcHViS2V5KHB1YmxpY0tleUFyZzpzdHJpbmcpe1xuICAgICAgICB0aGlzLl9wdWJLZXkgPSBwdWJsaWNLZXlBcmc7XG4gICAgfTtcblxuICAgIC8vIHRoaXMucHViS2V5QmFzZTY0XG4gICAgZ2V0IHB1YktleUJhc2U2NCgpe1xuICAgICAgICByZXR1cm4gcGx1Z2lucy5iYXNlNjQuZW5jb2RlKHRoaXMuX3B1YktleSk7XG4gICAgfVxuICAgIHNldCBwdWJLZXlCYXNlNjQocHVibGljS2V5QXJnOnN0cmluZykge1xuICAgICAgICB0aGlzLl9wdWJLZXkgPSBwbHVnaW5zLmJhc2U2NC5kZWNvZGUocHVibGljS2V5QXJnKTtcbiAgICB9XG5cblxuICAgIGdldCB0eXBlKCl7XG4gICAgICAgIGlmKHRoaXMuX3ByaXZLZXkgJiYgdGhpcy5fcHViS2V5KXtcbiAgICAgICAgICAgIHJldHVybiBcImR1cGxleFwiO1xuICAgICAgICB9IGVsc2UgaWYodGhpcy5fcHJpdktleSl7XG4gICAgICAgICAgICByZXR1cm4gXCJwcml2YXRlXCI7XG4gICAgICAgIH0gZWxzZSBpZih0aGlzLl9wdWJLZXkpe1xuICAgICAgICAgICAgcmV0dXJuIFwicHVibGljXCI7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHNldCB0eXBlKHNvbWVWbHVlQXJnOmFueSl7XG4gICAgICAgIGNvbnNvbGUubG9nKFwidGhlIHR5cGUgb2YgYW4gU3NoS2V5IGNvbm5vdCBiZSBzZXQuIFRoaXMgdmFsdWUgaXMgIGF1dHBjb21wdXRlZC5cIilcbiAgICB9XG5cbiAgICAvLyBtZXRob2RzXG4gICAgcmVhZChmaWxlUGF0aEFyZyl7XG4gICAgICAgIFxuICAgIH1cbiAgICBzdG9yZShmaWxlUGF0aEFyZz86c3RyaW5nKXtcbiAgICAgICAgbGV0IGZpbGVQYXRoT2JqID0gcGx1Z2lucy5wYXRoLnBhcnNlKGZpbGVQYXRoQXJnKTtcbiAgICAgICAgaWYoZmlsZVBhdGhPYmouZXh0ID0gXCIucHJpdlwiKXtcbiAgICAgICAgICAgIHBsdWdpbnMuc21hcnRmaWxlLm1lbW9yeS50b0ZzU3luYyh0aGlzLl9wcml2S2V5LGZpbGVQYXRoQXJnKTtcbiAgICAgICAgfSBlbHNlIGlmIChmaWxlUGF0aE9iai5leHQgPSBcIi5wdWJcIil7XG4gICAgICAgICAgICBwbHVnaW5zLnNtYXJ0ZmlsZS5tZW1vcnkudG9Gc1N5bmModGhpcy5fcHViS2V5LGZpbGVQYXRoQXJnKTtcbiAgICAgICAgfSBlbHNlIHsgLy93ZSBhc3N1bWUgd2UgYXJlIGdpdmVuIGEgZGlyZWN0b3J5IGFzIGZpbGVQYXRoQXJnLCBzbyB3ZSBzdG9yZSB0aGUgd2hvbGUga2V5XG4gICAgICAgICAgICBwbHVnaW5zLmZzLmVuc3VyZURpclN5bmMoZmlsZVBhdGhPYmouZGlyKTtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUocGx1Z2lucy5wYXRoLmpvaW4oZmlsZVBhdGhPYmouZGlyLFwia2V5LnByaXZcIikpOyAvLyBjYWxsIHRoaXMgZnVuY3Rpb24gcmVjdXJzaXZseVxuICAgICAgICAgICAgdGhpcy5zdG9yZShwbHVnaW5zLnBhdGguam9pbihmaWxlUGF0aE9iai5kaXIsXCJrZXkucHViXCIpKTsgLy8gY2FsbCB0aGlzIGZ1bmN0aW9uIHJlY3Vyc2l2bHlcbiAgICAgICAgfVxuICAgIH1cbn1cblxubGV0IHRlc3RLZXkgPSBuZXcgU3NoS2V5KCk7Il19 +//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0c3NoLmNsYXNzZXMuc3Noa2V5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFDeEIsSUFBWSxPQUFPLFdBQU0sb0JBQW9CLENBQUMsQ0FBQTtBQUc5QztJQUtJLGdCQUFZLFVBQStFO1FBQS9FLDBCQUErRSxHQUEvRSxlQUErRTtRQUN2RixJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUM7UUFDbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQztRQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDN0MsQ0FBQzs7SUFHRCxzQkFBSSx3QkFBSTtRQURSLFlBQVk7YUFDWjtZQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ3pCLENBQUM7YUFDRCxVQUFTLE9BQWM7WUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDNUIsQ0FBQzs7O09BSEE7OztJQU1ELHNCQUFJLDJCQUFPO1FBRFgsZUFBZTthQUNmO1lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDekIsQ0FBQzthQUNELFVBQVksYUFBb0I7WUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUM7UUFDbEMsQ0FBQzs7O09BSEE7OztJQU1ELHNCQUFJLGlDQUFhO1FBRGpCLHFCQUFxQjthQUNyQjtZQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsQ0FBQzthQUNELFVBQWtCLGFBQW9CO1lBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDekQsQ0FBQzs7O09BSEE7SUFNRCxzQkFBSSwwQkFBTTtRQURWLGNBQWM7YUFDZDtZQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3hCLENBQUM7YUFDRCxVQUFXLFlBQW1CO1lBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDO1FBQ2hDLENBQUM7OztPQUhBOztJQU1ELHNCQUFJLGdDQUFZO1FBRGhCLG9CQUFvQjthQUNwQjtZQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsQ0FBQzthQUNELFVBQWlCLFlBQW1CO1lBQ2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDdkQsQ0FBQzs7O09BSEE7SUFLRCxzQkFBSSw4QkFBVTthQUFkO1lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDNUIsQ0FBQzthQUNELFVBQWUsYUFBcUI7WUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUM7UUFDckMsQ0FBQzs7O09BSEE7SUFJRCxzQkFBSSx3QkFBSTthQUFSO1lBQ0ksRUFBRSxDQUFBLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUEsQ0FBQztnQkFDOUIsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUNwQixDQUFDO1lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQSxDQUFDO2dCQUNyQixNQUFNLENBQUMsU0FBUyxDQUFDO1lBQ3JCLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFBLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBLENBQUM7Z0JBQ3BCLE1BQU0sQ0FBQyxRQUFRLENBQUM7WUFDcEIsQ0FBQztRQUNMLENBQUM7YUFDRCxVQUFTLFdBQWU7WUFDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtRUFBbUUsQ0FBQyxDQUFBO1FBQ3BGLENBQUM7OztPQUhBOztJQUtELFVBQVU7SUFDVixxQkFBSSxHQUFKLFVBQUssV0FBVztJQUVoQixDQUFDO0lBQ0Qsc0JBQUssR0FBTCxVQUFNLFVBQWtCO1FBQ3BCLE9BQU8sQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3JDLElBQUksWUFBWSxHQUFJLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDOUIsRUFBRSxDQUFBLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBLENBQUM7WUFDZCxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUNoRyxDQUFDO1FBQUEsQ0FBQztRQUNGLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQSxDQUFDO1lBQ2QsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3hHLENBQUM7SUFDTCxDQUFDO0lBQ0wsYUFBQztBQUFELENBckZBLEFBcUZDLElBQUE7QUFyRlksY0FBTSxTQXFGbEIsQ0FBQTtBQUVELElBQUksT0FBTyxHQUFHLElBQUksTUFBTSxFQUFFLENBQUMiLCJmaWxlIjoic21hcnRzc2guY2xhc3Nlcy5zc2hrZXkuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xuaW1wb3J0ICogYXMgcGx1Z2lucyBmcm9tIFwiLi9zbWFydHNzaC5wbHVnaW5zXCI7XG5pbXBvcnQgKiBhcyBoZWxwZXJzIGZyb20gXCIuL3NtYXJ0c3NoLmNsYXNzZXMuaGVscGVyc1wiO1xuXG5leHBvcnQgY2xhc3MgU3NoS2V5IHtcbiAgICBwcml2YXRlIF9wcml2S2V5OnN0cmluZztcbiAgICBwcml2YXRlIF9wdWJLZXk6c3RyaW5nO1xuICAgIHByaXZhdGUgX2hvc3RWYXI6c3RyaW5nO1xuICAgIHByaXZhdGUgX2F1dGhvcml6ZWQ6Ym9vbGVhbjtcbiAgICBjb25zdHJ1Y3RvcihvcHRpb25zQXJnOntwcml2YXRlPzpzdHJpbmcscHVibGljPzpzdHJpbmcsaG9zdD86c3RyaW5nLGF1dGhvcml6ZWQ/OmJvb2xlYW59PXt9KXtcbiAgICAgICAgdGhpcy5fcHJpdktleSA9IG9wdGlvbnNBcmcucHJpdmF0ZTtcbiAgICAgICAgdGhpcy5fcHViS2V5ID0gb3B0aW9uc0FyZy5wdWJsaWM7XG4gICAgICAgIHRoaXMuX2hvc3RWYXIgPSBvcHRpb25zQXJnLmhvc3Q7XG4gICAgICAgIHRoaXMuX2F1dGhvcml6ZWQgPSBvcHRpb25zQXJnLmF1dGhvcml6ZWQ7XG4gICAgfTtcbiAgICBcbiAgICAvLyB0aGlzLmhvc3RcbiAgICBnZXQgaG9zdCgpe1xuICAgICAgICByZXR1cm4gdGhpcy5faG9zdFZhcjtcbiAgICB9O1xuICAgIHNldCBob3N0KGhvc3RBcmc6c3RyaW5nKXtcbiAgICAgICAgdGhpcy5faG9zdFZhciA9IGhvc3RBcmc7XG4gICAgfTtcblxuICAgIC8vIHRoaXMucHJpdktleVxuICAgIGdldCBwcml2S2V5KCl7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcml2S2V5O1xuICAgIH07XG4gICAgc2V0IHByaXZLZXkocHJpdmF0ZUtleUFyZzpzdHJpbmcpe1xuICAgICAgICB0aGlzLl9wcml2S2V5ID0gcHJpdmF0ZUtleUFyZztcbiAgICB9O1xuXG4gICAgLy8gdGhpcy5wcml2S2V5QmFzZTY0XG4gICAgZ2V0IHByaXZLZXlCYXNlNjQoKXtcbiAgICAgICAgcmV0dXJuIHBsdWdpbnMuYmFzZTY0LmVuY29kZSh0aGlzLl9wcml2S2V5KTtcbiAgICB9XG4gICAgc2V0IHByaXZLZXlCYXNlNjQocHJpdmF0ZUtleUFyZzpzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fcHJpdktleSA9IHBsdWdpbnMuYmFzZTY0LmRlY29kZShwcml2YXRlS2V5QXJnKTtcbiAgICB9XG5cbiAgICAvLyB0aGlzLnB1YktleVxuICAgIGdldCBwdWJLZXkoKXtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3B1YktleTtcbiAgICB9XG4gICAgc2V0IHB1YktleShwdWJsaWNLZXlBcmc6c3RyaW5nKXtcbiAgICAgICAgdGhpcy5fcHViS2V5ID0gcHVibGljS2V5QXJnO1xuICAgIH07XG5cbiAgICAvLyB0aGlzLnB1YktleUJhc2U2NFxuICAgIGdldCBwdWJLZXlCYXNlNjQoKXtcbiAgICAgICAgcmV0dXJuIHBsdWdpbnMuYmFzZTY0LmVuY29kZSh0aGlzLl9wdWJLZXkpO1xuICAgIH1cbiAgICBzZXQgcHViS2V5QmFzZTY0KHB1YmxpY0tleUFyZzpzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fcHViS2V5ID0gcGx1Z2lucy5iYXNlNjQuZGVjb2RlKHB1YmxpY0tleUFyZyk7XG4gICAgfVxuXG4gICAgZ2V0IGF1dGhvcml6ZWQoKXtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2F1dGhvcml6ZWQ7XG4gICAgfVxuICAgIHNldCBhdXRob3JpemVkKGF1dGhvcml6ZWRBcmc6Ym9vbGVhbil7XG4gICAgICAgIHRoaXMuX2F1dGhvcml6ZWQgPSBhdXRob3JpemVkQXJnO1xuICAgIH1cbiAgICBnZXQgdHlwZSgpe1xuICAgICAgICBpZih0aGlzLl9wcml2S2V5ICYmIHRoaXMuX3B1YktleSl7XG4gICAgICAgICAgICByZXR1cm4gXCJkdXBsZXhcIjtcbiAgICAgICAgfSBlbHNlIGlmKHRoaXMuX3ByaXZLZXkpe1xuICAgICAgICAgICAgcmV0dXJuIFwicHJpdmF0ZVwiO1xuICAgICAgICB9IGVsc2UgaWYodGhpcy5fcHViS2V5KXtcbiAgICAgICAgICAgIHJldHVybiBcInB1YmxpY1wiO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBzZXQgdHlwZShzb21lVmx1ZUFyZzphbnkpe1xuICAgICAgICBjb25zb2xlLmxvZyhcInRoZSB0eXBlIG9mIGFuIFNzaEtleSBjb25ub3QgYmUgc2V0LiBUaGlzIHZhbHVlIGlzICBhdXRwY29tcHV0ZWQuXCIpXG4gICAgfVxuXG4gICAgLy8gbWV0aG9kc1xuICAgIHJlYWQoZmlsZVBhdGhBcmcpe1xuICAgICAgICBcbiAgICB9XG4gICAgc3RvcmUoZGlyUGF0aEFyZz86c3RyaW5nKXtcbiAgICAgICAgcGx1Z2lucy5mcy5lbnN1cmVEaXJTeW5jKGRpclBhdGhBcmcpO1xuICAgICAgICBsZXQgZmlsZU5hbWVCYXNlID0gIHRoaXMuaG9zdDtcbiAgICAgICAgaWYodGhpcy5fcHJpdktleSl7XG4gICAgICAgICAgICBwbHVnaW5zLnNtYXJ0ZmlsZS5tZW1vcnkudG9Gc1N5bmModGhpcy5fcHJpdktleSxwbHVnaW5zLnBhdGguam9pbihkaXJQYXRoQXJnLGZpbGVOYW1lQmFzZSkpO1xuICAgICAgICB9O1xuICAgICAgICBpZiAodGhpcy5fcHViS2V5KXtcbiAgICAgICAgICAgIHBsdWdpbnMuc21hcnRmaWxlLm1lbW9yeS50b0ZzU3luYyh0aGlzLl9wdWJLZXkscGx1Z2lucy5wYXRoLmpvaW4oZGlyUGF0aEFyZyxmaWxlTmFtZUJhc2UgKyBcIi5wdWJcIikpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5sZXQgdGVzdEtleSA9IG5ldyBTc2hLZXkoKTsiXX0= diff --git a/npmts.json b/npmts.json index 84b168f..e1e7dec 100644 --- a/npmts.json +++ b/npmts.json @@ -1,3 +1,4 @@ { - "mode":"default" + "mode":"default", + "coverageTreshold":50 } \ No newline at end of file diff --git a/ts/smartssh.classes.sshconfig.ts b/ts/smartssh.classes.sshconfig.ts index 48a5b9d..dc288ae 100644 --- a/ts/smartssh.classes.sshconfig.ts +++ b/ts/smartssh.classes.sshconfig.ts @@ -12,21 +12,40 @@ export class SshConfig { /** * stores a config file */ - storeConfig(dirPathArg:string){ + store(dirPathArg:string){ + let done = plugins.q.defer(); + let configArray:configObject[]; + let configString; + for(let key in this.sshKeyArray){ + let sshKey = this.sshKeyArray[key]; + if(sshKey.host){ + configString = "Host " + sshKey.host + "\n" + + " HostName " + sshKey.host + "\n" + + " IdentityFile ~/.ssh/" + sshKey.host + "\n" + } + configArray.push({ + configString:configString, + authorized: sshKey.authorized, + sshKey: sshKey + }); + } + let configFile:string = ""; + for(let key in configArray){ + configFile = configFile + configArray[key].configString + "\n"; + }; + plugins.smartfile.memory.toFsSync(configFile,dirPathArg); + return done.promise; + } + read(dirPathArg){ let done = plugins.q.defer(); let configArray:configObject[]; return done.promise; } - readConfig }; -let createConfigPath = () => { - -} - export interface configObject { - host:string; + configString:string; authorized:boolean; sshKey:SshKey; }; diff --git a/ts/smartssh.classes.sshdir.ts b/ts/smartssh.classes.sshdir.ts index 736ee07..328014f 100644 --- a/ts/smartssh.classes.sshdir.ts +++ b/ts/smartssh.classes.sshdir.ts @@ -7,7 +7,8 @@ import {SshConfig} from "./smartssh.classes.sshconfig"; export class SshDir { // sshDir class -> NOT EXPORTED, ONLY FOR INTERNAL USE path:string; // the path of the ssh directory private sshKeyArray:SshKey[]; - constructor(sshKeyArray:SshKey[],sshDirPathArg?:string){ + private sshConfig:SshConfig; + constructor(sshKeyArray:SshKey[],sshConfig:SshConfig,sshDirPathArg?:string){ this.sshKeyArray = sshKeyArray; if(sshDirPathArg){ this.path = sshDirPathArg; @@ -18,8 +19,8 @@ export class SshDir { // sshDir class -> NOT EXPORTED, ONLY FOR INTERNAL USE writeToDir(){ // syncs sshInstance to directory this.sshKeyArray.forEach((sshKeyArg) => { sshKeyArg.store(this.path); - }); + this.sshConfig.store(this.path); }; readFromDir(){ // syncs sshInstance from directory diff --git a/ts/smartssh.classes.sshinstance.ts b/ts/smartssh.classes.sshinstance.ts index 4f3c77e..0cc80d5 100644 --- a/ts/smartssh.classes.sshinstance.ts +++ b/ts/smartssh.classes.sshinstance.ts @@ -15,7 +15,7 @@ export class SshInstance { optionsArg ? void(0) : optionsArg = {}; this._sshKeyArray = []; this._sshConfig = new SshConfig(this._sshKeyArray); - this._sshDir = new SshDir(this._sshKeyArray,optionsArg.sshDirPath); + this._sshDir = new SshDir(this._sshKeyArray,this._sshConfig,optionsArg.sshDirPath); this._sshSync = optionsArg.sshSync; }; @@ -101,5 +101,3 @@ export class SshInstance { } }; } - - diff --git a/ts/smartssh.classes.sshkey.ts b/ts/smartssh.classes.sshkey.ts index 908f0fc..1d6b032 100644 --- a/ts/smartssh.classes.sshkey.ts +++ b/ts/smartssh.classes.sshkey.ts @@ -54,7 +54,12 @@ export class SshKey { this._pubKey = plugins.base64.decode(publicKeyArg); } - + get authorized(){ + return this._authorized; + } + set authorized(authorizedArg:boolean){ + this._authorized = authorizedArg; + } get type(){ if(this._privKey && this._pubKey){ return "duplex";