diff --git a/package-lock.json b/package-lock.json
index 6c0c4ef..890a0ca 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4,558 +4,268 @@
"lockfileVersion": 1,
"requires": true,
"dependencies": {
- "abbrev": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz",
- "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=",
+ "@bcoe/v8-coverage": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
+ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
"dev": true
},
- "ajv": {
- "version": "4.11.8",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
- "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
- "dev": true,
- "requires": {
- "co": "^4.6.0",
- "json-stable-stringify": "^1.0.1"
- }
- },
- "align-text": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
- "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
- "dev": true,
- "optional": true,
- "requires": {
- "kind-of": "^3.0.2",
- "longest": "^1.0.1",
- "repeat-string": "^1.5.2"
- }
- },
- "amdefine": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
- "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
+ "@istanbuljs/schema": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
+ "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
"dev": true
},
+ "@types/is-windows": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/@types/is-windows/-/is-windows-1.0.0.tgz",
+ "integrity": "sha512-tJ1rq04tGKuIJoWIH0Gyuwv4RQ3+tIu7wQrC0MV47raQ44kIzXSSFKfrxFUOWVRvesoF7mrTqigXmqoZJsXwTg==",
+ "dev": true
+ },
+ "@types/istanbul-lib-coverage": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz",
+ "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==",
+ "dev": true
+ },
+ "ansi-colors-es6": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/ansi-colors-es6/-/ansi-colors-es6-5.0.0.tgz",
+ "integrity": "sha512-//DAVWjZto+Mmbm8czZxrwC1/QMi5Ka+c8H6jViO1L3McHYE5YLypSFP44EyrJVzPnTnnxOsjOHjLB262eNoDA=="
+ },
"ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "dev": true
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
+ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg=="
},
"ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
- "dev": true
- },
- "argparse": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz",
- "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=",
- "dev": true,
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"requires": {
- "sprintf-js": "~1.0.2"
+ "color-convert": "^2.0.1"
}
},
- "asn1": {
- "version": "0.2.4",
- "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
- "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
- "dev": true,
- "requires": {
- "safer-buffer": "~2.1.0"
- }
- },
- "assert-plus": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
- "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=",
- "dev": true
- },
- "async": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
- "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
- "dev": true
- },
- "asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
- "dev": true
- },
- "aws-sign2": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
- "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=",
- "dev": true
- },
- "aws4": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz",
- "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=",
- "dev": true
- },
"balanced-match": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
- "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
- "dev": true
- },
- "bcrypt-pbkdf": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
- "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
- "dev": true,
- "requires": {
- "tweetnacl": "^0.14.3"
- }
- },
- "bluebird": {
- "version": "2.11.0",
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz",
- "integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=",
- "dev": true
- },
- "boom": {
- "version": "2.10.1",
- "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
- "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
- "dev": true,
- "requires": {
- "hoek": "2.x.x"
- }
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
},
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
- "camelcase": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
- "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=",
- "dev": true,
- "optional": true
- },
- "caseless": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
- "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
- "dev": true
- },
- "center-align": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
- "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
- "dev": true,
- "optional": true,
- "requires": {
- "align-text": "^0.1.3",
- "lazy-cache": "^1.0.3"
- }
- },
- "chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+ "c8": {
+ "version": "7.6.0",
+ "resolved": "https://registry.npmjs.org/c8/-/c8-7.6.0.tgz",
+ "integrity": "sha512-cQYCSepX54npWqOKAmRWwOnmN2XPyShpP3Hnw2VoaB/8fdiIke72tKClHLim4U5kSTFc1vjit0771oe+BL7qHw==",
"dev": true,
"requires": {
- "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"
+ "@bcoe/v8-coverage": "^0.2.3",
+ "@istanbuljs/schema": "^0.1.2",
+ "find-up": "^5.0.0",
+ "foreground-child": "^2.0.0",
+ "furi": "^2.0.0",
+ "istanbul-lib-coverage": "^3.0.0",
+ "istanbul-lib-report": "^3.0.0",
+ "istanbul-reports": "^3.0.2",
+ "rimraf": "^3.0.0",
+ "test-exclude": "^6.0.0",
+ "v8-to-istanbul": "^7.1.0",
+ "yargs": "^16.0.0",
+ "yargs-parser": "^20.0.0"
}
},
"cliui": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
- "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=",
- "dev": true,
- "optional": true,
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
+ "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
"requires": {
- "center-align": "^0.1.1",
- "right-align": "^0.1.1",
- "wordwrap": "0.0.2"
- },
- "dependencies": {
- "wordwrap": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
- "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
- "dev": true,
- "optional": true
- }
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^7.0.0"
}
},
- "co": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
- "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
- "dev": true
- },
- "codacy-coverage": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/codacy-coverage/-/codacy-coverage-2.0.0.tgz",
- "integrity": "sha1-WMW130vKqntSFCQX8vh3TtP7T+c=",
- "dev": true,
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"requires": {
- "bluebird": "^2.9.x",
- "commander": "^2.x",
- "joi": "^6.4.x",
- "lcov-parse": "0.x",
- "log-driver": "^1.x",
- "request-promise": "^0.x"
+ "color-name": "~1.1.4"
}
},
- "combined-stream": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz",
- "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=",
- "dev": true,
- "requires": {
- "delayed-stream": "~1.0.0"
- }
- },
- "commander": {
- "version": "2.11.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz",
- "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==",
- "dev": true
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
},
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
- "dev": true
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
},
- "cryptiles": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
- "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
+ "convert-source-map": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
+ "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==",
"dev": true,
"requires": {
- "boom": "2.x.x"
+ "safe-buffer": "~5.1.1"
}
},
- "dashdash": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
- "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
+ "copyfiles": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/copyfiles/-/copyfiles-2.4.1.tgz",
+ "integrity": "sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg==",
+ "requires": {
+ "glob": "^7.0.5",
+ "minimatch": "^3.0.3",
+ "mkdirp": "^1.0.4",
+ "noms": "0.0.0",
+ "through2": "^2.0.1",
+ "untildify": "^4.0.0",
+ "yargs": "^16.1.0"
+ }
+ },
+ "core-util-is": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
+ },
+ "cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
"dev": true,
"requires": {
- "assert-plus": "^1.0.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- }
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
}
},
- "decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
- "dev": true,
- "optional": true
- },
- "deep-is": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
- "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
- "dev": true
- },
- "delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
- "dev": true
- },
"easy-stack": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/easy-stack/-/easy-stack-1.0.1.tgz",
"integrity": "sha512-wK2sCs4feiiJeFXn3zvY0p41mdU5VUgbgs1rNsc/y5ngFUijdWd+iIN8eoyuZHKB8xN6BL4PdWmzqFmxNg6V2w=="
},
- "ecc-jsbn": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
- "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
- "dev": true,
- "requires": {
- "jsbn": "~0.1.0",
- "safer-buffer": "^2.1.0"
- }
+ "emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
},
- "escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
- "dev": true
- },
- "escodegen": {
- "version": "1.7.1",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.7.1.tgz",
- "integrity": "sha1-MOz89mypjcZ80v0WKr626vqM5vw=",
- "dev": true,
- "requires": {
- "esprima": "^1.2.2",
- "estraverse": "^1.9.1",
- "esutils": "^2.0.2",
- "optionator": "^0.5.0",
- "source-map": "~0.2.0"
- },
- "dependencies": {
- "esprima": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.5.tgz",
- "integrity": "sha1-CZNQL+r2aBODJXVvMPmlH+7sEek=",
- "dev": true
- }
- }
- },
- "esprima": {
- "version": "2.7.3",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
- "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
- "dev": true
- },
- "estraverse": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz",
- "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=",
- "dev": true
- },
- "esutils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
- "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
- "dev": true
+ "escalade": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw=="
},
"event-pubsub": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/event-pubsub/-/event-pubsub-4.3.0.tgz",
- "integrity": "sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ=="
- },
- "exit": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
- "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
- "dev": true
- },
- "extend": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
- "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
- "dev": true
- },
- "extsprintf": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz",
- "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=",
- "dev": true
- },
- "fast-levenshtein": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.7.tgz",
- "integrity": "sha1-AXjc3uAjuSkFGTrwlZ6KdjnP3Lk=",
- "dev": true
- },
- "fileset": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/fileset/-/fileset-0.2.1.tgz",
- "integrity": "sha1-WI74lzxmI7KnbfRlEFaWuWqsgGc=",
- "dev": true,
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/event-pubsub/-/event-pubsub-5.0.3.tgz",
+ "integrity": "sha512-2QiHxshejKgJrYMzSI9MEHrvhmzxBL+eLyiM5IiyjDBySkgwS2+tdtnO3gbx8pEisu/yOFCIhfCb63gCEu0yBQ==",
"requires": {
- "glob": "5.x",
- "minimatch": "2.x"
- },
- "dependencies": {
- "minimatch": {
- "version": "2.0.10",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz",
- "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.0.0"
- }
- }
+ "copyfiles": "^2.4.0",
+ "strong-type": "^0.1.3"
}
},
- "forever-agent": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
- "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
- "dev": true
- },
- "form-data": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz",
- "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
+ "find-up": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
"dev": true,
"requires": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.5",
- "mime-types": "^2.1.12"
+ "locate-path": "^6.0.0",
+ "path-exists": "^4.0.0"
}
},
- "getpass": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
- "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
+ "foreground-child": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz",
+ "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==",
"dev": true,
"requires": {
- "assert-plus": "^1.0.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- }
+ "cross-spawn": "^7.0.0",
+ "signal-exit": "^3.0.2"
}
},
+ "fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
+ },
+ "furi": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/furi/-/furi-2.0.0.tgz",
+ "integrity": "sha512-uKuNsaU0WVaK/vmvj23wW1bicOFfyqSsAIH71bRZx8kA4Xj+YCHin7CJKJJjkIsmxYaPFLk9ljmjEyB7xF7WvQ==",
+ "dev": true,
+ "requires": {
+ "@types/is-windows": "^1.0.0",
+ "is-windows": "^1.0.2"
+ }
+ },
+ "get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
+ },
"glob": {
- "version": "5.0.15",
- "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
- "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
- "dev": true,
+ "version": "7.1.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
"requires": {
+ "fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
- "minimatch": "2 || 3",
+ "minimatch": "^3.0.4",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
}
},
- "handlebars": {
- "version": "4.0.10",
- "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.10.tgz",
- "integrity": "sha1-PTDHGLCaPZbyPqTMH0A8TTup/08=",
- "dev": true,
- "requires": {
- "async": "^1.4.0",
- "optimist": "^0.6.1",
- "source-map": "^0.4.4",
- "uglify-js": "^2.6"
- },
- "dependencies": {
- "source-map": {
- "version": "0.4.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
- "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
- "dev": true,
- "requires": {
- "amdefine": ">=0.0.4"
- }
- }
- }
- },
- "har-schema": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz",
- "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=",
- "dev": true
- },
- "har-validator": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz",
- "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=",
- "dev": true,
- "requires": {
- "ajv": "^4.9.1",
- "har-schema": "^1.0.5"
- }
- },
- "has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
- "dev": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- },
"has-flag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz",
- "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true
},
- "hawk": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
- "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
- "dev": true,
- "requires": {
- "boom": "2.x.x",
- "cryptiles": "2.x.x",
- "hoek": "2.x.x",
- "sntp": "1.x.x"
- }
- },
- "hoek": {
- "version": "2.16.3",
- "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
- "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
+ "html-escaper": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
+ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
"dev": true
},
- "http-signature": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
- "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
- "dev": true,
- "requires": {
- "assert-plus": "^0.2.0",
- "jsprim": "^1.2.2",
- "sshpk": "^1.7.0"
- }
- },
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "dev": true,
"requires": {
"once": "^1.3.0",
"wrappy": "1"
}
},
"inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
+ },
+ "is-windows": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
"dev": true
},
- "is-buffer": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz",
- "integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw=",
- "dev": true,
- "optional": true
- },
- "is-typedarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
- "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
- "dev": true
- },
- "isemail": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/isemail/-/isemail-1.2.0.tgz",
- "integrity": "sha1-vgPfjMPineTSxd9lASY/H6RZXpo=",
- "dev": true
+ "isarray": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
+ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
},
"isexe": {
"version": "2.0.0",
@@ -563,94 +273,31 @@
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
"dev": true
},
- "isstream": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
- "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
+ "istanbul-lib-coverage": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz",
+ "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==",
"dev": true
},
- "istanbul": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.1.tgz",
- "integrity": "sha1-zXMI6zSdBbnyGBYyukxKO1NNJyQ=",
+ "istanbul-lib-report": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
+ "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
"dev": true,
"requires": {
- "abbrev": "1.0.x",
- "async": "1.x",
- "escodegen": "1.7.x",
- "esprima": "2.7.x",
- "fileset": "0.2.x",
- "handlebars": "^4.0.1",
- "js-yaml": "3.x",
- "mkdirp": "0.5.x",
- "nopt": "3.x",
- "once": "1.x",
- "resolve": "1.1.x",
- "supports-color": "^3.1.0",
- "which": "^1.1.1",
- "wordwrap": "^1.0.0"
- },
- "dependencies": {
- "supports-color": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
- "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
- "dev": true,
- "requires": {
- "has-flag": "^1.0.0"
- }
- }
+ "istanbul-lib-coverage": "^3.0.0",
+ "make-dir": "^3.0.0",
+ "supports-color": "^7.1.0"
}
},
- "jasmine": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.4.1.tgz",
- "integrity": "sha1-kBbdpFMhPSesbUPcTqlzFaGJCF4=",
+ "istanbul-reports": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz",
+ "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==",
"dev": true,
"requires": {
- "exit": "^0.1.2",
- "glob": "^3.2.11",
- "jasmine-core": "~2.4.0"
- },
- "dependencies": {
- "glob": {
- "version": "3.2.11",
- "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz",
- "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=",
- "dev": true,
- "requires": {
- "inherits": "2",
- "minimatch": "0.3"
- }
- },
- "minimatch": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz",
- "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=",
- "dev": true,
- "requires": {
- "lru-cache": "2",
- "sigmund": "~1.0.0"
- }
- }
- }
- },
- "jasmine-core": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.4.1.tgz",
- "integrity": "sha1-b4OrOg8WlRcizgfSBsdz1XzIOL4=",
- "dev": true
- },
- "joi": {
- "version": "6.10.1",
- "resolved": "https://registry.npmjs.org/joi/-/joi-6.10.1.tgz",
- "integrity": "sha1-TVDDGAeRIgAP5fFq8f+OGRe3fgY=",
- "dev": true,
- "requires": {
- "hoek": "2.x.x",
- "isemail": "1.x.x",
- "moment": "2.x.x",
- "topo": "1.x.x"
+ "html-escaper": "^2.0.0",
+ "istanbul-lib-report": "^3.0.0"
}
},
"js-message": {
@@ -666,567 +313,342 @@
"easy-stack": "^1.0.1"
}
},
- "js-yaml": {
- "version": "3.9.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.9.0.tgz",
- "integrity": "sha512-0LoUNELX4S+iofCT8f4uEHIiRBR+c2AINyC8qRWfC6QNruLtxVZRJaPcu/xwMgFIgDxF25tGHaDjvxzJCNE9yw==",
+ "locate-path": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
"dev": true,
"requires": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- },
- "dependencies": {
- "esprima": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz",
- "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==",
- "dev": true
- }
+ "p-locate": "^5.0.0"
}
},
- "jsbn": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
- "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
- "dev": true
- },
- "json-schema": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
- "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
- "dev": true
- },
- "json-stable-stringify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
- "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
+ "make-dir": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
+ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
"dev": true,
"requires": {
- "jsonify": "~0.0.0"
- }
- },
- "json-stringify-safe": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
- "dev": true
- },
- "jsonify": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
- "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
- "dev": true
- },
- "jsprim": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.0.tgz",
- "integrity": "sha1-o7h+QCmNjDgFUtjMdiigu5WiKRg=",
- "dev": true,
- "requires": {
- "assert-plus": "1.0.0",
- "extsprintf": "1.0.2",
- "json-schema": "0.2.3",
- "verror": "1.3.6"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- }
- }
- },
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "optional": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- },
- "lazy-cache": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz",
- "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=",
- "dev": true,
- "optional": true
- },
- "lcov-parse": {
- "version": "0.0.10",
- "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz",
- "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=",
- "dev": true
- },
- "levn": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.2.5.tgz",
- "integrity": "sha1-uo0znQykphDjo/FFucr0iAcVUFQ=",
- "dev": true,
- "requires": {
- "prelude-ls": "~1.1.0",
- "type-check": "~0.3.1"
- }
- },
- "lodash": {
- "version": "3.10.1",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
- "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=",
- "dev": true
- },
- "log-driver": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.5.tgz",
- "integrity": "sha1-euTsJXMC/XkNVXyxDJcQDYV7AFY=",
- "dev": true
- },
- "longest": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
- "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=",
- "dev": true,
- "optional": true
- },
- "lru-cache": {
- "version": "2.7.3",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz",
- "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=",
- "dev": true
- },
- "mime-db": {
- "version": "1.27.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.27.0.tgz",
- "integrity": "sha1-gg9XIpa70g7CXtVeW13oaeVDbrE=",
- "dev": true
- },
- "mime-types": {
- "version": "2.1.15",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz",
- "integrity": "sha1-pOv1BkCUVpI3uM9wBGd20J/JKu0=",
- "dev": true,
- "requires": {
- "mime-db": "~1.27.0"
+ "semver": "^6.0.0"
}
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "dev": true,
"requires": {
"brace-expansion": "^1.1.7"
}
},
- "minimist": {
- "version": "0.0.10",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
- "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=",
- "dev": true
- },
"mkdirp": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
- "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
- "dev": true,
- "requires": {
- "minimist": "0.0.8"
- },
- "dependencies": {
- "minimist": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
- "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
- "dev": true
- }
- }
- },
- "moment": {
- "version": "2.18.1",
- "resolved": "https://registry.npmjs.org/moment/-/moment-2.18.1.tgz",
- "integrity": "sha1-w2GT3Tzhwu7SrbfIAtu8d6gbHA8=",
- "dev": true
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
},
"node-cmd": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/node-cmd/-/node-cmd-2.0.0.tgz",
- "integrity": "sha1-Y0VlV3Sjs/gBgbPlJCG6DSP1iPQ=",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/node-cmd/-/node-cmd-4.0.0.tgz",
+ "integrity": "sha512-3OHy8KI8MuwADyugQRZBsaqe3c0r3yxQSoLsDBVk7vAjPmfG01512MPBQjfmBJxrH+2qURbiBf/ZyoimrhdA6A==",
"dev": true
},
- "nopt": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
- "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
- "dev": true,
+ "node-http-server": {
+ "version": "8.1.3",
+ "resolved": "https://registry.npmjs.org/node-http-server/-/node-http-server-8.1.3.tgz",
+ "integrity": "sha512-Io2aNil8vQX+etExWXs6UZpcN90ZDOWglrH81GuNE8zy4lLiuc+9slCNi/7h3ArSp7fXOwwiMJ5cp3fTOQXysg=="
+ },
+ "noms": {
+ "version": "0.0.0",
+ "resolved": "https://registry.npmjs.org/noms/-/noms-0.0.0.tgz",
+ "integrity": "sha1-2o69nzr51nYJGbJ9nNyAkqczKFk=",
"requires": {
- "abbrev": "1"
+ "inherits": "^2.0.1",
+ "readable-stream": "~1.0.31"
}
},
- "oauth-sign": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
- "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=",
- "dev": true
- },
"once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "dev": true,
"requires": {
"wrappy": "1"
}
},
- "optimist": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
- "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
+ "p-limit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
"dev": true,
"requires": {
- "minimist": "~0.0.1",
- "wordwrap": "~0.0.2"
- },
- "dependencies": {
- "wordwrap": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
- "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=",
- "dev": true
- }
+ "yocto-queue": "^0.1.0"
}
},
- "optionator": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
- "integrity": "sha1-t1qJlaLUF98ltuTjhi9QqohlE2g=",
+ "p-locate": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
"dev": true,
"requires": {
- "deep-is": "~0.1.2",
- "fast-levenshtein": "~1.0.0",
- "levn": "~0.2.5",
- "prelude-ls": "~1.1.1",
- "type-check": "~0.3.1",
- "wordwrap": "~0.0.2"
- },
- "dependencies": {
- "wordwrap": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
- "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=",
- "dev": true
- }
+ "p-limit": "^3.0.2"
}
},
+ "path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "dev": true
+ },
"path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
+ },
+ "path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
"dev": true
},
- "performance-now": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
- "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=",
- "dev": true
+ "process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
},
- "prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
- "dev": true
- },
- "punycode": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
- "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
- "dev": true
- },
- "qs": {
- "version": "6.4.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz",
- "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=",
- "dev": true
- },
- "repeat-string": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
- "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
- "dev": true,
- "optional": true
- },
- "request": {
- "version": "2.81.0",
- "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz",
- "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=",
- "dev": true,
+ "readable-stream": {
+ "version": "1.0.34",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
+ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
"requires": {
- "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"
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
}
},
- "request-promise": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-0.4.3.tgz",
- "integrity": "sha1-PI3cgvBviQjXIK7eHWeUJY4iEhw=",
+ "require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I="
+ },
+ "rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
"dev": true,
"requires": {
- "bluebird": "^2.3",
- "chalk": "^1.1.0",
- "lodash": "^3.10.0",
- "request": "^2.34"
- }
- },
- "resolve": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
- "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
- "dev": true
- },
- "right-align": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
- "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=",
- "dev": true,
- "optional": true,
- "requires": {
- "align-text": "^0.1.1"
+ "glob": "^7.1.3"
}
},
"safe-buffer": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
- "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==",
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
+ },
+ "semver": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
"dev": true
},
- "safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
- "dev": true
- },
- "sigmund": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
- "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=",
- "dev": true
- },
- "sntp": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
- "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
+ "shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
"dev": true,
"requires": {
- "hoek": "2.x.x"
+ "shebang-regex": "^3.0.0"
}
},
+ "shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true
+ },
+ "signal-exit": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
+ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
+ "dev": true
+ },
"source-map": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz",
- "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=",
- "dev": true,
- "optional": true,
- "requires": {
- "amdefine": ">=0.0.4"
- }
- },
- "sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
+ "version": "0.7.3",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
+ "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
"dev": true
},
- "sshpk": {
- "version": "1.16.1",
- "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz",
- "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==",
- "dev": true,
+ "string-width": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz",
+ "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==",
"requires": {
- "asn1": "~0.2.3",
- "assert-plus": "^1.0.0",
- "bcrypt-pbkdf": "^1.0.0",
- "dashdash": "^1.12.0",
- "ecc-jsbn": "~0.1.1",
- "getpass": "^0.1.1",
- "jsbn": "~0.1.0",
- "safer-buffer": "^2.0.2",
- "tweetnacl": "~0.14.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- }
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.0"
}
},
- "stringstream": {
- "version": "0.0.5",
- "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz",
- "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=",
- "dev": true
+ "string_decoder": {
+ "version": "0.10.31",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
+ "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
},
"strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "dev": true,
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
+ "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
"requires": {
- "ansi-regex": "^2.0.0"
+ "ansi-regex": "^5.0.0"
}
},
+ "strong-type": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/strong-type/-/strong-type-0.1.6.tgz",
+ "integrity": "sha512-eJe5caH6Pi5oMMeQtIoBPpvNu/s4jiyb63u5tkHNnQXomK+puyQ5i+Z5iTLBr/xUz/pIcps0NSfzzFI34+gAXg=="
+ },
"supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
- "dev": true
- },
- "topo": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/topo/-/topo-1.1.0.tgz",
- "integrity": "sha1-6ddRYV0buH3IZdsYL6HKCl71NtU=",
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"requires": {
- "hoek": "2.x.x"
+ "has-flag": "^4.0.0"
}
},
- "tough-cookie": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz",
- "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=",
+ "test-exclude": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
+ "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
"dev": true,
"requires": {
- "punycode": "^1.4.1"
+ "@istanbuljs/schema": "^0.1.2",
+ "glob": "^7.1.4",
+ "minimatch": "^3.0.4"
}
},
- "tunnel-agent": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
- "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
- "dev": true,
+ "through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
"requires": {
- "safe-buffer": "^5.0.1"
- }
- },
- "tweetnacl": {
- "version": "0.14.5",
- "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
- "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
- "dev": true
- },
- "type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
- "dev": true,
- "requires": {
- "prelude-ls": "~1.1.2"
- }
- },
- "uglify-js": {
- "version": "2.8.29",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
- "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
- "dev": true,
- "optional": true,
- "requires": {
- "source-map": "~0.5.1",
- "uglify-to-browserify": "~1.0.0",
- "yargs": "~3.10.0"
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
},
"dependencies": {
- "source-map": {
- "version": "0.5.6",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz",
- "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=",
- "dev": true,
- "optional": true
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
+ },
+ "readable-stream": {
+ "version": "2.3.7",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
+ "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "requires": {
+ "safe-buffer": "~5.1.0"
+ }
}
}
},
- "uglify-to-browserify": {
+ "untildify": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz",
+ "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw=="
+ },
+ "util-deprecate": {
"version": "1.0.2",
- "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz",
- "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=",
- "dev": true,
- "optional": true
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
},
- "uuid": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz",
- "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==",
- "dev": true
- },
- "verror": {
- "version": "1.3.6",
- "resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz",
- "integrity": "sha1-z/XfEpRtKX0rqu+qJoniW+AcAFw=",
+ "v8-to-istanbul": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.0.tgz",
+ "integrity": "sha512-uXUVqNUCLa0AH1vuVxzi+MI4RfxEOKt9pBgKwHbgH7st8Kv2P1m+jvWNnektzBh5QShF3ODgKmUFCf38LnVz1g==",
"dev": true,
"requires": {
- "extsprintf": "1.0.2"
+ "@types/istanbul-lib-coverage": "^2.0.1",
+ "convert-source-map": "^1.6.0",
+ "source-map": "^0.7.3"
+ }
+ },
+ "vanilla-test": {
+ "version": "1.4.7",
+ "resolved": "https://registry.npmjs.org/vanilla-test/-/vanilla-test-1.4.7.tgz",
+ "integrity": "sha512-JhlZM0cM8xy5mWzptYBhxBf363bHSBqI0g5q0voKgIwlyto53UUx7+5ZroOoPTl/cmhyquLXuMc/iEuHX4nUoA==",
+ "requires": {
+ "ansi-colors-es6": "^5.0.0",
+ "strong-type": "^0.1.6"
}
},
"which": {
- "version": "1.2.14",
- "resolved": "https://registry.npmjs.org/which/-/which-1.2.14.tgz",
- "integrity": "sha1-mofEN48D6CfOyvGs31bHNsAcFOU=",
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
"dev": true,
"requires": {
"isexe": "^2.0.0"
}
},
- "window-size": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
- "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
- "dev": true,
- "optional": true
- },
- "wordwrap": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
- "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=",
- "dev": true
+ "wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "requires": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ }
},
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
- "dev": true
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
+ },
+ "xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="
+ },
+ "y18n": {
+ "version": "5.0.5",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz",
+ "integrity": "sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg=="
},
"yargs": {
- "version": "3.10.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
- "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
- "dev": true,
- "optional": true,
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
+ "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
"requires": {
- "camelcase": "^1.0.2",
- "cliui": "^2.1.0",
- "decamelize": "^1.0.0",
- "window-size": "0.1.0"
+ "cliui": "^7.0.2",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.0",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^20.2.2"
}
+ },
+ "yargs-parser": {
+ "version": "20.2.6",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.6.tgz",
+ "integrity": "sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA=="
+ },
+ "yocto-queue": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
+ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
+ "dev": true
}
}
}
diff --git a/package.json b/package.json
index cf731a8..1d2322d 100644
--- a/package.json
+++ b/package.json
@@ -1,33 +1,32 @@
{
- "name": "node-ipc",
- "version": "9.1.4",
- "description": "A nodejs module for local and remote Inter Process Communication (IPC), Neural Networking, and able to facilitate machine learning.",
- "main": "node-ipc.js",
- "directories": {
+ "name" : "node-ipc",
+ "version" : "9.1.4",
+ "description" : "A nodejs module for local and remote Inter Process Communication (IPC), Neural Networking, and able to facilitate machine learning.",
+ "main" : "node-ipc.js",
+ "directories" : {
"example": "example"
},
"engines": {
"node": ">=8.0.0"
},
"dependencies": {
- "event-pubsub": "4.3.0",
- "js-message": "1.0.7",
- "js-queue": "2.0.2"
+ "event-pubsub" : "^5.0.3",
+ "js-message" : "^1.0.7",
+ "js-queue" : "^2.0.2",
+ "node-http-server": "^8.1.3",
+ "vanilla-test" : "^1.4.7"
},
"devDependencies": {
- "codacy-coverage": "2.0.0",
- "jasmine": "2.4.1",
- "istanbul": "0.4.1",
- "node-cmd": "2.0.0"
+ "c8" : "^7.6.0",
+ "node-cmd": "^4.0.0"
},
"scripts": {
- "test-windows": "istanbul cover -x **/spec/** -dir ./spec/coverage ./node_modules/jasmine/bin/jasmine.js",
- "test": "istanbul cover -x **/spec/** -dir ./spec/coverage jasmine",
- "cover": "istanbul cover -x **/spec/** -dir ./spec/coverage jasmine",
- "coverup": "cat ./spec/coverage/lcov.info | codacy-coverage"
+ "test" : "npm i && c8 -r lcov -r html node test/CI.js && c8 report",
+ "precommit" : "node test/CI.js",
+ "start" : "echo 'See your coverage report at http://localhost:8080' && node-http-server port=8080 root=./coverage/"
},
"pre-commit": [
- "cover"
+ "precommit"
],
"keywords": [
"IPC",
diff --git a/spec/coverage/coverage.json b/spec/coverage/coverage.json
deleted file mode 100644
index be79f33..0000000
--- a/spec/coverage/coverage.json
+++ /dev/null
@@ -1 +0,0 @@
-{"C:\\Users\\brand\\git\\node-ipc\\node-ipc.js":{"path":"C:\\Users\\brand\\git\\node-ipc\\node-ipc.js","s":{"1":1,"2":1,"3":1,"4":1},"b":{},"f":{"1":1},"fnMap":{"1":{"name":"(anonymous_1)","line":6,"loc":{"start":{"line":6,"column":15},"end":{"line":6,"column":17}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":41}},"2":{"start":{"line":7,"column":8},"end":{"line":7,"column":16}},"3":{"start":{"line":9,"column":8},"end":{"line":17,"column":9}},"4":{"start":{"line":21,"column":0},"end":{"line":21,"column":29}}},"branchMap":{}},"C:\\Users\\brand\\git\\node-ipc\\services\\IPC.js":{"path":"C:\\Users\\brand\\git\\node-ipc\\services\\IPC.js","s":{"1":1,"2":1,"3":1,"4":116,"5":0,"6":116,"7":370,"8":336,"9":34,"10":116,"11":1,"12":7,"13":0,"14":7,"15":7,"16":7,"17":7,"18":7,"19":7,"20":1,"21":1,"22":0,"23":0,"24":1,"25":0,"26":0,"27":1,"28":0,"29":1,"30":1,"31":1,"32":1,"33":3,"34":1,"35":1,"36":1,"37":1,"38":3,"39":1,"40":1,"41":1,"42":1,"43":3,"44":2,"45":2,"46":3,"47":0,"48":0,"49":0,"50":0,"51":3,"52":0,"53":0,"54":0,"55":3,"56":0,"57":0,"58":0,"59":3,"60":1,"61":1,"62":3,"63":0,"64":0,"65":3,"66":0,"67":3,"68":3,"69":2,"70":2,"71":0,"72":3,"73":1,"74":4,"75":2,"76":2,"77":4,"78":0,"79":4,"80":0,"81":0,"82":4,"83":2,"84":2,"85":4,"86":0,"87":0,"88":0,"89":0,"90":0,"91":4,"92":4,"93":4,"94":4,"95":4,"96":1,"97":3,"98":0,"99":0,"100":3,"101":3,"102":3,"103":3,"104":3,"105":0,"106":0,"107":0,"108":3,"109":3,"110":3,"111":3,"112":0,"113":0,"114":3,"115":0,"116":0,"117":3,"118":0,"119":0,"120":3,"121":0,"122":3,"123":0,"124":0,"125":0,"126":0,"127":0,"128":3,"129":3,"130":3,"131":3,"132":3,"133":3,"134":1},"b":{"1":[0,116],"2":[336,34],"3":[0,7],"4":[7,0],"5":[7,0],"6":[0,1],"7":[0,1],"8":[0,1],"9":[1,2],"10":[1,2],"11":[2,1],"12":[0,3],"13":[3,3],"14":[0,3],"15":[0,3],"16":[1,2],"17":[0,3],"18":[0,3],"19":[2,1],"20":[0,2],"21":[2,1],"22":[2,2],"23":[0,4],"24":[0,4],"25":[2,2],"26":[0,4],"27":[0,0],"28":[0,3],"29":[3,0],"30":[0,3],"31":[3,0],"32":[0,3],"33":[0,3],"34":[0,3],"35":[0,3],"36":[0,3],"37":[0,0]},"f":{"1":1,"2":116,"3":7,"4":1,"5":0,"6":3,"7":4,"8":3},"fnMap":{"1":{"name":"(anonymous_1)","line":9,"loc":{"start":{"line":9,"column":15},"end":{"line":9,"column":17}}},"2":{"name":"log","line":64,"loc":{"start":{"line":64,"column":0},"end":{"line":64,"column":21}}},"3":{"name":"disconnect","line":88,"loc":{"start":{"line":88,"column":0},"end":{"line":88,"column":23}}},"4":{"name":"serve","line":105,"loc":{"start":{"line":105,"column":0},"end":{"line":105,"column":29}}},"5":{"name":"emptyCallback","line":135,"loc":{"start":{"line":135,"column":0},"end":{"line":135,"column":24}}},"6":{"name":"serveNet","line":139,"loc":{"start":{"line":139,"column":0},"end":{"line":139,"column":45}}},"7":{"name":"connect","line":216,"loc":{"start":{"line":216,"column":0},"end":{"line":216,"column":34}}},"8":{"name":"connectNet","line":265,"loc":{"start":{"line":265,"column":0},"end":{"line":265,"column":42}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":6,"column":27}},"2":{"start":{"line":10,"column":8},"end":{"line":60,"column":10}},"3":{"start":{"line":64,"column":0},"end":{"line":86,"column":1}},"4":{"start":{"line":65,"column":4},"end":{"line":67,"column":5}},"5":{"start":{"line":66,"column":8},"end":{"line":66,"column":15}},"6":{"start":{"line":69,"column":4},"end":{"line":81,"column":5}},"7":{"start":{"line":70,"column":8},"end":{"line":72,"column":9}},"8":{"start":{"line":71,"column":12},"end":{"line":71,"column":21}},"9":{"start":{"line":74,"column":8},"end":{"line":80,"column":10}},"10":{"start":{"line":83,"column":4},"end":{"line":85,"column":6}},"11":{"start":{"line":88,"column":0},"end":{"line":103,"column":1}},"12":{"start":{"line":89,"column":4},"end":{"line":91,"column":5}},"13":{"start":{"line":90,"column":8},"end":{"line":90,"column":15}},"14":{"start":{"line":93,"column":4},"end":{"line":93,"column":44}},"15":{"start":{"line":95,"column":4},"end":{"line":95,"column":29}},"16":{"start":{"line":96,"column":4},"end":{"line":100,"column":5}},"17":{"start":{"line":97,"column":8},"end":{"line":99,"column":9}},"18":{"start":{"line":98,"column":12},"end":{"line":98,"column":41}},"19":{"start":{"line":102,"column":4},"end":{"line":102,"column":23}},"20":{"start":{"line":105,"column":0},"end":{"line":133,"column":1}},"21":{"start":{"line":106,"column":4},"end":{"line":109,"column":5}},"22":{"start":{"line":107,"column":8},"end":{"line":107,"column":22}},"23":{"start":{"line":108,"column":8},"end":{"line":108,"column":19}},"24":{"start":{"line":110,"column":4},"end":{"line":117,"column":5}},"25":{"start":{"line":111,"column":8},"end":{"line":115,"column":10}},"26":{"start":{"line":116,"column":8},"end":{"line":116,"column":72}},"27":{"start":{"line":119,"column":4},"end":{"line":121,"column":5}},"28":{"start":{"line":120,"column":8},"end":{"line":120,"column":31}},"29":{"start":{"line":123,"column":4},"end":{"line":127,"column":6}},"30":{"start":{"line":129,"column":4},"end":{"line":132,"column":6}},"31":{"start":{"line":135,"column":0},"end":{"line":137,"column":1}},"32":{"start":{"line":139,"column":0},"end":{"line":214,"column":1}},"33":{"start":{"line":140,"column":4},"end":{"line":145,"column":5}},"34":{"start":{"line":141,"column":8},"end":{"line":141,"column":25}},"35":{"start":{"line":142,"column":8},"end":{"line":142,"column":21}},"36":{"start":{"line":143,"column":8},"end":{"line":143,"column":18}},"37":{"start":{"line":144,"column":8},"end":{"line":144,"column":19}},"38":{"start":{"line":146,"column":4},"end":{"line":151,"column":5}},"39":{"start":{"line":147,"column":8},"end":{"line":147,"column":22}},"40":{"start":{"line":148,"column":8},"end":{"line":148,"column":22}},"41":{"start":{"line":149,"column":8},"end":{"line":149,"column":19}},"42":{"start":{"line":150,"column":8},"end":{"line":150,"column":19}},"43":{"start":{"line":152,"column":4},"end":{"line":159,"column":5}},"44":{"start":{"line":153,"column":8},"end":{"line":157,"column":10}},"45":{"start":{"line":158,"column":8},"end":{"line":158,"column":37}},"46":{"start":{"line":160,"column":4},"end":{"line":165,"column":5}},"47":{"start":{"line":161,"column":8},"end":{"line":161,"column":22}},"48":{"start":{"line":162,"column":8},"end":{"line":162,"column":35}},"49":{"start":{"line":163,"column":8},"end":{"line":163,"column":19}},"50":{"start":{"line":164,"column":8},"end":{"line":164,"column":37}},"51":{"start":{"line":167,"column":4},"end":{"line":171,"column":5}},"52":{"start":{"line":168,"column":8},"end":{"line":168,"column":25}},"53":{"start":{"line":169,"column":8},"end":{"line":169,"column":21}},"54":{"start":{"line":170,"column":8},"end":{"line":170,"column":19}},"55":{"start":{"line":172,"column":4},"end":{"line":176,"column":5}},"56":{"start":{"line":173,"column":8},"end":{"line":173,"column":22}},"57":{"start":{"line":174,"column":8},"end":{"line":174,"column":22}},"58":{"start":{"line":175,"column":8},"end":{"line":175,"column":19}},"59":{"start":{"line":177,"column":4},"end":{"line":184,"column":5}},"60":{"start":{"line":178,"column":8},"end":{"line":182,"column":10}},"61":{"start":{"line":183,"column":8},"end":{"line":183,"column":37}},"62":{"start":{"line":186,"column":4},"end":{"line":189,"column":5}},"63":{"start":{"line":187,"column":8},"end":{"line":187,"column":25}},"64":{"start":{"line":188,"column":8},"end":{"line":188,"column":22}},"65":{"start":{"line":191,"column":4},"end":{"line":193,"column":5}},"66":{"start":{"line":192,"column":8},"end":{"line":192,"column":31}},"67":{"start":{"line":195,"column":4},"end":{"line":200,"column":6}},"68":{"start":{"line":202,"column":4},"end":{"line":208,"column":5}},"69":{"start":{"line":203,"column":8},"end":{"line":203,"column":34}},"70":{"start":{"line":204,"column":8},"end":{"line":207,"column":9}},"71":{"start":{"line":206,"column":12},"end":{"line":206,"column":43}},"72":{"start":{"line":210,"column":4},"end":{"line":213,"column":6}},"73":{"start":{"line":216,"column":0},"end":{"line":263,"column":1}},"74":{"start":{"line":217,"column":4},"end":{"line":220,"column":5}},"75":{"start":{"line":218,"column":8},"end":{"line":218,"column":22}},"76":{"start":{"line":219,"column":8},"end":{"line":219,"column":19}},"77":{"start":{"line":222,"column":4},"end":{"line":224,"column":5}},"78":{"start":{"line":223,"column":8},"end":{"line":223,"column":31}},"79":{"start":{"line":226,"column":4},"end":{"line":232,"column":5}},"80":{"start":{"line":227,"column":8},"end":{"line":230,"column":10}},"81":{"start":{"line":231,"column":8},"end":{"line":231,"column":15}},"82":{"start":{"line":234,"column":4},"end":{"line":241,"column":5}},"83":{"start":{"line":235,"column":8},"end":{"line":239,"column":10}},"84":{"start":{"line":240,"column":8},"end":{"line":240,"column":60}},"85":{"start":{"line":243,"column":4},"end":{"line":254,"column":5}},"86":{"start":{"line":244,"column":8},"end":{"line":252,"column":9}},"87":{"start":{"line":245,"column":12},"end":{"line":249,"column":14}},"88":{"start":{"line":250,"column":12},"end":{"line":250,"column":23}},"89":{"start":{"line":251,"column":12},"end":{"line":251,"column":19}},"90":{"start":{"line":253,"column":8},"end":{"line":253,"column":37}},"91":{"start":{"line":256,"column":4},"end":{"line":256,"column":51}},"92":{"start":{"line":257,"column":4},"end":{"line":257,"column":24}},"93":{"start":{"line":258,"column":4},"end":{"line":258,"column":28}},"94":{"start":{"line":260,"column":4},"end":{"line":260,"column":26}},"95":{"start":{"line":262,"column":4},"end":{"line":262,"column":19}},"96":{"start":{"line":265,"column":0},"end":{"line":335,"column":1}},"97":{"start":{"line":266,"column":4},"end":{"line":272,"column":5}},"98":{"start":{"line":267,"column":8},"end":{"line":270,"column":10}},"99":{"start":{"line":271,"column":8},"end":{"line":271,"column":15}},"100":{"start":{"line":273,"column":4},"end":{"line":277,"column":5}},"101":{"start":{"line":274,"column":8},"end":{"line":274,"column":22}},"102":{"start":{"line":275,"column":8},"end":{"line":275,"column":18}},"103":{"start":{"line":276,"column":8},"end":{"line":276,"column":19}},"104":{"start":{"line":278,"column":4},"end":{"line":282,"column":5}},"105":{"start":{"line":279,"column":8},"end":{"line":279,"column":22}},"106":{"start":{"line":280,"column":8},"end":{"line":280,"column":19}},"107":{"start":{"line":281,"column":8},"end":{"line":281,"column":19}},"108":{"start":{"line":283,"column":4},"end":{"line":290,"column":5}},"109":{"start":{"line":284,"column":8},"end":{"line":288,"column":10}},"110":{"start":{"line":289,"column":8},"end":{"line":289,"column":37}},"111":{"start":{"line":292,"column":4},"end":{"line":295,"column":5}},"112":{"start":{"line":293,"column":8},"end":{"line":293,"column":22}},"113":{"start":{"line":294,"column":8},"end":{"line":294,"column":19}},"114":{"start":{"line":296,"column":4},"end":{"line":303,"column":5}},"115":{"start":{"line":297,"column":8},"end":{"line":301,"column":10}},"116":{"start":{"line":302,"column":8},"end":{"line":302,"column":37}},"117":{"start":{"line":305,"column":4},"end":{"line":308,"column":5}},"118":{"start":{"line":306,"column":8},"end":{"line":306,"column":25}},"119":{"start":{"line":307,"column":8},"end":{"line":307,"column":23}},"120":{"start":{"line":309,"column":4},"end":{"line":311,"column":5}},"121":{"start":{"line":310,"column":8},"end":{"line":310,"column":31}},"122":{"start":{"line":313,"column":4},"end":{"line":325,"column":5}},"123":{"start":{"line":314,"column":8},"end":{"line":323,"column":9}},"124":{"start":{"line":316,"column":12},"end":{"line":320,"column":14}},"125":{"start":{"line":321,"column":12},"end":{"line":321,"column":23}},"126":{"start":{"line":322,"column":12},"end":{"line":322,"column":19}},"127":{"start":{"line":324,"column":8},"end":{"line":324,"column":37}},"128":{"start":{"line":327,"column":4},"end":{"line":327,"column":51}},"129":{"start":{"line":328,"column":4},"end":{"line":328,"column":24}},"130":{"start":{"line":329,"column":4},"end":{"line":329,"column":28}},"131":{"start":{"line":330,"column":4},"end":{"line":330,"column":28}},"132":{"start":{"line":332,"column":4},"end":{"line":332,"column":26}},"133":{"start":{"line":334,"column":4},"end":{"line":334,"column":19}},"134":{"start":{"line":337,"column":0},"end":{"line":337,"column":19}}},"branchMap":{"1":{"line":65,"type":"if","locations":[{"start":{"line":65,"column":4},"end":{"line":65,"column":4}},{"start":{"line":65,"column":4},"end":{"line":65,"column":4}}]},"2":{"line":70,"type":"if","locations":[{"start":{"line":70,"column":8},"end":{"line":70,"column":8}},{"start":{"line":70,"column":8},"end":{"line":70,"column":8}}]},"3":{"line":89,"type":"if","locations":[{"start":{"line":89,"column":4},"end":{"line":89,"column":4}},{"start":{"line":89,"column":4},"end":{"line":89,"column":4}}]},"4":{"line":96,"type":"if","locations":[{"start":{"line":96,"column":4},"end":{"line":96,"column":4}},{"start":{"line":96,"column":4},"end":{"line":96,"column":4}}]},"5":{"line":97,"type":"if","locations":[{"start":{"line":97,"column":8},"end":{"line":97,"column":8}},{"start":{"line":97,"column":8},"end":{"line":97,"column":8}}]},"6":{"line":106,"type":"if","locations":[{"start":{"line":106,"column":4},"end":{"line":106,"column":4}},{"start":{"line":106,"column":4},"end":{"line":106,"column":4}}]},"7":{"line":110,"type":"if","locations":[{"start":{"line":110,"column":4},"end":{"line":110,"column":4}},{"start":{"line":110,"column":4},"end":{"line":110,"column":4}}]},"8":{"line":119,"type":"if","locations":[{"start":{"line":119,"column":4},"end":{"line":119,"column":4}},{"start":{"line":119,"column":4},"end":{"line":119,"column":4}}]},"9":{"line":140,"type":"if","locations":[{"start":{"line":140,"column":4},"end":{"line":140,"column":4}},{"start":{"line":140,"column":4},"end":{"line":140,"column":4}}]},"10":{"line":146,"type":"if","locations":[{"start":{"line":146,"column":4},"end":{"line":146,"column":4}},{"start":{"line":146,"column":4},"end":{"line":146,"column":4}}]},"11":{"line":152,"type":"if","locations":[{"start":{"line":152,"column":4},"end":{"line":152,"column":4}},{"start":{"line":152,"column":4},"end":{"line":152,"column":4}}]},"12":{"line":160,"type":"if","locations":[{"start":{"line":160,"column":4},"end":{"line":160,"column":4}},{"start":{"line":160,"column":4},"end":{"line":160,"column":4}}]},"13":{"line":160,"type":"binary-expr","locations":[{"start":{"line":160,"column":7},"end":{"line":160,"column":33}},{"start":{"line":160,"column":37},"end":{"line":160,"column":63}}]},"14":{"line":167,"type":"if","locations":[{"start":{"line":167,"column":4},"end":{"line":167,"column":4}},{"start":{"line":167,"column":4},"end":{"line":167,"column":4}}]},"15":{"line":172,"type":"if","locations":[{"start":{"line":172,"column":4},"end":{"line":172,"column":4}},{"start":{"line":172,"column":4},"end":{"line":172,"column":4}}]},"16":{"line":177,"type":"if","locations":[{"start":{"line":177,"column":4},"end":{"line":177,"column":4}},{"start":{"line":177,"column":4},"end":{"line":177,"column":4}}]},"17":{"line":186,"type":"if","locations":[{"start":{"line":186,"column":4},"end":{"line":186,"column":4}},{"start":{"line":186,"column":4},"end":{"line":186,"column":4}}]},"18":{"line":191,"type":"if","locations":[{"start":{"line":191,"column":4},"end":{"line":191,"column":4}},{"start":{"line":191,"column":4},"end":{"line":191,"column":4}}]},"19":{"line":202,"type":"if","locations":[{"start":{"line":202,"column":4},"end":{"line":202,"column":4}},{"start":{"line":202,"column":4},"end":{"line":202,"column":4}}]},"20":{"line":204,"type":"if","locations":[{"start":{"line":204,"column":8},"end":{"line":204,"column":8}},{"start":{"line":204,"column":8},"end":{"line":204,"column":8}}]},"21":{"line":204,"type":"binary-expr","locations":[{"start":{"line":204,"column":11},"end":{"line":204,"column":29}},{"start":{"line":204,"column":33},"end":{"line":204,"column":47}}]},"22":{"line":217,"type":"if","locations":[{"start":{"line":217,"column":4},"end":{"line":217,"column":4}},{"start":{"line":217,"column":4},"end":{"line":217,"column":4}}]},"23":{"line":222,"type":"if","locations":[{"start":{"line":222,"column":4},"end":{"line":222,"column":4}},{"start":{"line":222,"column":4},"end":{"line":222,"column":4}}]},"24":{"line":226,"type":"if","locations":[{"start":{"line":226,"column":4},"end":{"line":226,"column":4}},{"start":{"line":226,"column":4},"end":{"line":226,"column":4}}]},"25":{"line":234,"type":"if","locations":[{"start":{"line":234,"column":4},"end":{"line":234,"column":4}},{"start":{"line":234,"column":4},"end":{"line":234,"column":4}}]},"26":{"line":243,"type":"if","locations":[{"start":{"line":243,"column":4},"end":{"line":243,"column":4}},{"start":{"line":243,"column":4},"end":{"line":243,"column":4}}]},"27":{"line":244,"type":"if","locations":[{"start":{"line":244,"column":8},"end":{"line":244,"column":8}},{"start":{"line":244,"column":8},"end":{"line":244,"column":8}}]},"28":{"line":266,"type":"if","locations":[{"start":{"line":266,"column":4},"end":{"line":266,"column":4}},{"start":{"line":266,"column":4},"end":{"line":266,"column":4}}]},"29":{"line":273,"type":"if","locations":[{"start":{"line":273,"column":4},"end":{"line":273,"column":4}},{"start":{"line":273,"column":4},"end":{"line":273,"column":4}}]},"30":{"line":278,"type":"if","locations":[{"start":{"line":278,"column":4},"end":{"line":278,"column":4}},{"start":{"line":278,"column":4},"end":{"line":278,"column":4}}]},"31":{"line":283,"type":"if","locations":[{"start":{"line":283,"column":4},"end":{"line":283,"column":4}},{"start":{"line":283,"column":4},"end":{"line":283,"column":4}}]},"32":{"line":292,"type":"if","locations":[{"start":{"line":292,"column":4},"end":{"line":292,"column":4}},{"start":{"line":292,"column":4},"end":{"line":292,"column":4}}]},"33":{"line":296,"type":"if","locations":[{"start":{"line":296,"column":4},"end":{"line":296,"column":4}},{"start":{"line":296,"column":4},"end":{"line":296,"column":4}}]},"34":{"line":305,"type":"if","locations":[{"start":{"line":305,"column":4},"end":{"line":305,"column":4}},{"start":{"line":305,"column":4},"end":{"line":305,"column":4}}]},"35":{"line":309,"type":"if","locations":[{"start":{"line":309,"column":4},"end":{"line":309,"column":4}},{"start":{"line":309,"column":4},"end":{"line":309,"column":4}}]},"36":{"line":313,"type":"if","locations":[{"start":{"line":313,"column":4},"end":{"line":313,"column":4}},{"start":{"line":313,"column":4},"end":{"line":313,"column":4}}]},"37":{"line":314,"type":"if","locations":[{"start":{"line":314,"column":8},"end":{"line":314,"column":8}},{"start":{"line":314,"column":8},"end":{"line":314,"column":8}}]}}},"C:\\Users\\brand\\git\\node-ipc\\entities\\Defaults.js":{"path":"C:\\Users\\brand\\git\\node-ipc\\entities\\Defaults.js","s":{"1":1,"2":3,"3":3,"4":3,"5":3,"6":3,"7":3,"8":3,"9":3,"10":3,"11":3,"12":3,"13":3,"14":3,"15":3,"16":3,"17":3,"18":3,"19":3,"20":3,"21":3,"22":3,"23":1,"24":3,"25":3,"26":3,"27":0,"28":3,"29":1},"b":{"1":[0,3],"2":[0,3],"3":[3,3,0]},"f":{"1":3,"2":3},"fnMap":{"1":{"name":"(anonymous_1)","line":22,"loc":{"start":{"line":22,"column":15},"end":{"line":22,"column":17}}},"2":{"name":"getIPType","line":66,"loc":{"start":{"line":66,"column":0},"end":{"line":66,"column":21}}}},"statementMap":{"1":{"start":{"line":9,"column":0},"end":{"line":9,"column":25}},"2":{"start":{"line":24,"column":8},"end":{"line":24,"column":29}},"3":{"start":{"line":25,"column":8},"end":{"line":25,"column":32}},"4":{"start":{"line":26,"column":8},"end":{"line":26,"column":30}},"5":{"start":{"line":28,"column":8},"end":{"line":28,"column":29}},"6":{"start":{"line":29,"column":8},"end":{"line":29,"column":29}},"7":{"start":{"line":30,"column":8},"end":{"line":30,"column":24}},"8":{"start":{"line":31,"column":8},"end":{"line":31,"column":25}},"9":{"start":{"line":33,"column":8},"end":{"line":33,"column":28}},"10":{"start":{"line":35,"column":8},"end":{"line":35,"column":26}},"11":{"start":{"line":36,"column":8},"end":{"line":36,"column":24}},"12":{"start":{"line":37,"column":8},"end":{"line":37,"column":29}},"13":{"start":{"line":38,"column":8},"end":{"line":38,"column":46}},"14":{"start":{"line":40,"column":8},"end":{"line":40,"column":32}},"15":{"start":{"line":41,"column":8},"end":{"line":41,"column":23}},"16":{"start":{"line":42,"column":8},"end":{"line":42,"column":33}},"17":{"start":{"line":43,"column":8},"end":{"line":43,"column":32}},"18":{"start":{"line":45,"column":8},"end":{"line":45,"column":32}},"19":{"start":{"line":46,"column":8},"end":{"line":46,"column":23}},"20":{"start":{"line":47,"column":8},"end":{"line":47,"column":73}},"21":{"start":{"line":48,"column":8},"end":{"line":48,"column":32}},"22":{"start":{"line":50,"column":8},"end":{"line":56,"column":9}},"23":{"start":{"line":66,"column":0},"end":{"line":78,"column":1}},"24":{"start":{"line":67,"column":4},"end":{"line":67,"column":53}},"25":{"start":{"line":68,"column":4},"end":{"line":68,"column":20}},"26":{"start":{"line":69,"column":4},"end":{"line":76,"column":5}},"27":{"start":{"line":73,"column":8},"end":{"line":75,"column":20}},"28":{"start":{"line":77,"column":4},"end":{"line":77,"column":18}},"29":{"start":{"line":80,"column":0},"end":{"line":80,"column":24}}},"branchMap":{"1":{"line":47,"type":"cond-expr","locations":[{"start":{"line":47,"column":53},"end":{"line":47,"column":58}},{"start":{"line":47,"column":61},"end":{"line":47,"column":72}}]},"2":{"line":69,"type":"if","locations":[{"start":{"line":69,"column":4},"end":{"line":69,"column":4}},{"start":{"line":69,"column":4},"end":{"line":69,"column":4}}]},"3":{"line":69,"type":"binary-expr","locations":[{"start":{"line":69,"column":8},"end":{"line":69,"column":25}},{"start":{"line":70,"column":11},"end":{"line":70,"column":43}},{"start":{"line":71,"column":11},"end":{"line":71,"column":39}}]}}},"C:\\Users\\brand\\git\\node-ipc\\dao\\client.js":{"path":"C:\\Users\\brand\\git\\node-ipc\\dao\\client.js","s":{"1":1,"2":1,"3":7,"4":7,"5":7,"6":1,"7":7,"8":7,"9":7,"10":7,"11":7,"12":0,"13":7,"14":7,"15":1,"16":1,"17":6,"18":1,"19":6,"20":6,"21":1,"22":13,"23":13,"24":13,"25":0,"26":0,"27":13,"28":13,"29":7,"30":7,"31":7,"32":7,"33":7,"34":7,"35":7,"36":6,"37":6,"38":6,"39":0,"40":6,"41":0,"42":6,"43":0,"44":6,"45":0,"46":6,"47":0,"48":6,"49":6,"50":6,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":13,"65":13,"66":10,"67":10,"68":13,"69":3,"70":3,"71":3,"72":13,"73":13,"74":13,"75":7,"76":7,"77":7,"78":7,"79":7,"80":7,"81":6,"82":6,"83":0,"84":6,"85":6,"86":6,"87":13,"88":7,"89":7,"90":0,"91":0,"92":0,"93":0,"94":0,"95":7,"96":7,"97":7,"98":7,"99":0,"100":0,"101":7,"102":7,"103":7,"104":7,"105":7,"106":7,"107":7,"108":7,"109":7,"110":0,"111":7,"112":1},"b":{"1":[7,0],"2":[0,7],"3":[1,6],"4":[0,13],"5":[7,6],"6":[7,0],"7":[7,7],"8":[0,6],"9":[0,6],"10":[0,6],"11":[0,6],"12":[0,6],"13":[6,0],"14":[0,0],"15":[0,0],"16":[0,0],"17":[0,0],"18":[7,6],"19":[13,8,6],"20":[0,6],"21":[0,7],"22":[0,0],"23":[7,0],"24":[0,7],"25":[7,7],"26":[0,7]},"f":{"1":7,"2":7,"3":6,"4":13,"5":10,"6":3,"7":13,"8":6,"9":7},"fnMap":{"1":{"name":"(anonymous_1)","line":14,"loc":{"start":{"line":14,"column":15},"end":{"line":14,"column":27}}},"2":{"name":"emit","line":35,"loc":{"start":{"line":35,"column":0},"end":{"line":35,"column":24}}},"3":{"name":"syncEmit","line":58,"loc":{"start":{"line":58,"column":0},"end":{"line":58,"column":26}}},"4":{"name":"connect","line":63,"loc":{"start":{"line":63,"column":0},"end":{"line":63,"column":18}}},"5":{"name":"(anonymous_5)","line":146,"loc":{"start":{"line":146,"column":8},"end":{"line":146,"column":21}}},"6":{"name":"connectionMade","line":155,"loc":{"start":{"line":155,"column":8},"end":{"line":155,"column":33}}},"7":{"name":"connectionClosed","line":164,"loc":{"start":{"line":164,"column":8},"end":{"line":164,"column":35}}},"8":{"name":"retryTimeout","line":190,"loc":{"start":{"line":190,"column":16},"end":{"line":190,"column":39}}},"9":{"name":"(anonymous_9)","line":206,"loc":{"start":{"line":206,"column":8},"end":{"line":206,"column":23}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":9,"column":37}},"2":{"start":{"line":11,"column":0},"end":{"line":11,"column":36}},"3":{"start":{"line":15,"column":8},"end":{"line":15,"column":16}},"4":{"start":{"line":16,"column":8},"end":{"line":29,"column":10}},"5":{"start":{"line":31,"column":8},"end":{"line":31,"column":49}},"6":{"start":{"line":35,"column":0},"end":{"line":56,"column":1}},"7":{"start":{"line":36,"column":4},"end":{"line":36,"column":82}},"8":{"start":{"line":38,"column":4},"end":{"line":38,"column":28}},"9":{"start":{"line":39,"column":4},"end":{"line":39,"column":22}},"10":{"start":{"line":40,"column":4},"end":{"line":40,"column":22}},"11":{"start":{"line":42,"column":4},"end":{"line":46,"column":5}},"12":{"start":{"line":43,"column":8},"end":{"line":43,"column":55}},"13":{"start":{"line":45,"column":8},"end":{"line":45,"column":44}},"14":{"start":{"line":48,"column":4},"end":{"line":51,"column":5}},"15":{"start":{"line":49,"column":8},"end":{"line":49,"column":35}},"16":{"start":{"line":50,"column":8},"end":{"line":50,"column":15}},"17":{"start":{"line":53,"column":4},"end":{"line":55,"column":6}},"18":{"start":{"line":58,"column":0},"end":{"line":61,"column":1}},"19":{"start":{"line":59,"column":4},"end":{"line":59,"column":74}},"20":{"start":{"line":60,"column":4},"end":{"line":60,"column":31}},"21":{"start":{"line":63,"column":0},"end":{"line":254,"column":1}},"22":{"start":{"line":65,"column":4},"end":{"line":65,"column":20}},"23":{"start":{"line":67,"column":4},"end":{"line":67,"column":67}},"24":{"start":{"line":68,"column":4},"end":{"line":71,"column":5}},"25":{"start":{"line":69,"column":8},"end":{"line":69,"column":119}},"26":{"start":{"line":70,"column":8},"end":{"line":70,"column":15}},"27":{"start":{"line":73,"column":4},"end":{"line":73,"column":21}},"28":{"start":{"line":75,"column":4},"end":{"line":140,"column":5}},"29":{"start":{"line":76,"column":8},"end":{"line":76,"column":70}},"30":{"start":{"line":78,"column":8},"end":{"line":78,"column":33}},"31":{"start":{"line":80,"column":8},"end":{"line":84,"column":9}},"32":{"start":{"line":81,"column":12},"end":{"line":81,"column":59}},"33":{"start":{"line":82,"column":12},"end":{"line":82,"column":60}},"34":{"start":{"line":83,"column":12},"end":{"line":83,"column":57}},"35":{"start":{"line":86,"column":8},"end":{"line":86,"column":45}},"36":{"start":{"line":88,"column":8},"end":{"line":88,"column":33}},"37":{"start":{"line":89,"column":8},"end":{"line":89,"column":33}},"38":{"start":{"line":91,"column":8},"end":{"line":93,"column":9}},"39":{"start":{"line":92,"column":10},"end":{"line":92,"column":68}},"40":{"start":{"line":95,"column":8},"end":{"line":97,"column":9}},"41":{"start":{"line":96,"column":10},"end":{"line":96,"column":62}},"42":{"start":{"line":99,"column":8},"end":{"line":101,"column":9}},"43":{"start":{"line":100,"column":10},"end":{"line":100,"column":56}},"44":{"start":{"line":103,"column":8},"end":{"line":105,"column":9}},"45":{"start":{"line":104,"column":10},"end":{"line":104,"column":54}},"46":{"start":{"line":107,"column":8},"end":{"line":109,"column":9}},"47":{"start":{"line":108,"column":10},"end":{"line":108,"column":56}},"48":{"start":{"line":111,"column":8},"end":{"line":139,"column":9}},"49":{"start":{"line":112,"column":12},"end":{"line":112,"column":64}},"50":{"start":{"line":113,"column":12},"end":{"line":113,"column":49}},"51":{"start":{"line":115,"column":12},"end":{"line":115,"column":99}},"52":{"start":{"line":116,"column":12},"end":{"line":118,"column":13}},"53":{"start":{"line":117,"column":16},"end":{"line":117,"column":81}},"54":{"start":{"line":119,"column":12},"end":{"line":121,"column":13}},"55":{"start":{"line":120,"column":16},"end":{"line":120,"column":81}},"56":{"start":{"line":122,"column":12},"end":{"line":132,"column":13}},"57":{"start":{"line":123,"column":16},"end":{"line":125,"column":17}},"58":{"start":{"line":124,"column":20},"end":{"line":124,"column":96}},"59":{"start":{"line":126,"column":16},"end":{"line":126,"column":40}},"60":{"start":{"line":127,"column":16},"end":{"line":131,"column":17}},"61":{"start":{"line":128,"column":20},"end":{"line":130,"column":22}},"62":{"start":{"line":134,"column":12},"end":{"line":134,"column":53}},"63":{"start":{"line":136,"column":12},"end":{"line":138,"column":14}},"64":{"start":{"line":142,"column":4},"end":{"line":142,"column":52}},"65":{"start":{"line":144,"column":4},"end":{"line":151,"column":6}},"66":{"start":{"line":147,"column":12},"end":{"line":147,"column":51}},"67":{"start":{"line":148,"column":12},"end":{"line":148,"column":41}},"68":{"start":{"line":153,"column":4},"end":{"line":160,"column":6}},"69":{"start":{"line":156,"column":12},"end":{"line":156,"column":38}},"70":{"start":{"line":157,"column":12},"end":{"line":157,"column":61}},"71":{"start":{"line":158,"column":12},"end":{"line":158,"column":41}},"72":{"start":{"line":162,"column":4},"end":{"line":202,"column":6}},"73":{"start":{"line":165,"column":12},"end":{"line":167,"column":10}},"74":{"start":{"line":169,"column":12},"end":{"line":187,"column":13}},"75":{"start":{"line":175,"column":16},"end":{"line":175,"column":45}},"76":{"start":{"line":176,"column":16},"end":{"line":180,"column":18}},"77":{"start":{"line":182,"column":16},"end":{"line":182,"column":40}},"78":{"start":{"line":183,"column":16},"end":{"line":183,"column":42}},"79":{"start":{"line":184,"column":16},"end":{"line":184,"column":33}},"80":{"start":{"line":186,"column":16},"end":{"line":186,"column":23}},"81":{"start":{"line":189,"column":12},"end":{"line":198,"column":14}},"82":{"start":{"line":191,"column":20},"end":{"line":193,"column":21}},"83":{"start":{"line":192,"column":24},"end":{"line":192,"column":31}},"84":{"start":{"line":194,"column":20},"end":{"line":194,"column":46}},"85":{"start":{"line":195,"column":20},"end":{"line":195,"column":37}},"86":{"start":{"line":200,"column":12},"end":{"line":200,"column":41}},"87":{"start":{"line":204,"column":4},"end":{"line":253,"column":6}},"88":{"start":{"line":207,"column":12},"end":{"line":207,"column":48}},"89":{"start":{"line":208,"column":12},"end":{"line":219,"column":13}},"90":{"start":{"line":209,"column":16},"end":{"line":212,"column":18}},"91":{"start":{"line":213,"column":16},"end":{"line":215,"column":17}},"92":{"start":{"line":214,"column":20},"end":{"line":214,"column":27}},"93":{"start":{"line":217,"column":16},"end":{"line":217,"column":36}},"94":{"start":{"line":218,"column":16},"end":{"line":218,"column":23}},"95":{"start":{"line":221,"column":12},"end":{"line":223,"column":13}},"96":{"start":{"line":222,"column":16},"end":{"line":222,"column":34}},"97":{"start":{"line":225,"column":12},"end":{"line":225,"column":40}},"98":{"start":{"line":227,"column":12},"end":{"line":230,"column":13}},"99":{"start":{"line":228,"column":16},"end":{"line":228,"column":93}},"100":{"start":{"line":229,"column":16},"end":{"line":229,"column":23}},"101":{"start":{"line":232,"column":12},"end":{"line":232,"column":30}},"102":{"start":{"line":234,"column":12},"end":{"line":234,"column":51}},"103":{"start":{"line":235,"column":12},"end":{"line":235,"column":41}},"104":{"start":{"line":236,"column":12},"end":{"line":245,"column":13}},"105":{"start":{"line":237,"column":16},"end":{"line":237,"column":40}},"106":{"start":{"line":238,"column":16},"end":{"line":238,"column":40}},"107":{"start":{"line":240,"column":16},"end":{"line":240,"column":73}},"108":{"start":{"line":241,"column":16},"end":{"line":244,"column":18}},"109":{"start":{"line":247,"column":12},"end":{"line":249,"column":13}},"110":{"start":{"line":248,"column":16},"end":{"line":248,"column":23}},"111":{"start":{"line":251,"column":12},"end":{"line":251,"column":32}},"112":{"start":{"line":256,"column":0},"end":{"line":256,"column":22}}},"branchMap":{"1":{"line":26,"type":"binary-expr","locations":[{"start":{"line":26,"column":33},"end":{"line":26,"column":50}},{"start":{"line":26,"column":52},"end":{"line":26,"column":53}}]},"2":{"line":42,"type":"if","locations":[{"start":{"line":42,"column":4},"end":{"line":42,"column":4}},{"start":{"line":42,"column":4},"end":{"line":42,"column":4}}]},"3":{"line":48,"type":"if","locations":[{"start":{"line":48,"column":4},"end":{"line":48,"column":4}},{"start":{"line":48,"column":4},"end":{"line":48,"column":4}}]},"4":{"line":68,"type":"if","locations":[{"start":{"line":68,"column":4},"end":{"line":68,"column":4}},{"start":{"line":68,"column":4},"end":{"line":68,"column":4}}]},"5":{"line":75,"type":"if","locations":[{"start":{"line":75,"column":4},"end":{"line":75,"column":4}},{"start":{"line":75,"column":4},"end":{"line":75,"column":4}}]},"6":{"line":80,"type":"if","locations":[{"start":{"line":80,"column":8},"end":{"line":80,"column":8}},{"start":{"line":80,"column":8},"end":{"line":80,"column":8}}]},"7":{"line":80,"type":"binary-expr","locations":[{"start":{"line":80,"column":12},"end":{"line":80,"column":39}},{"start":{"line":80,"column":43},"end":{"line":80,"column":83}}]},"8":{"line":91,"type":"if","locations":[{"start":{"line":91,"column":8},"end":{"line":91,"column":8}},{"start":{"line":91,"column":8},"end":{"line":91,"column":8}}]},"9":{"line":95,"type":"if","locations":[{"start":{"line":95,"column":8},"end":{"line":95,"column":8}},{"start":{"line":95,"column":8},"end":{"line":95,"column":8}}]},"10":{"line":99,"type":"if","locations":[{"start":{"line":99,"column":8},"end":{"line":99,"column":8}},{"start":{"line":99,"column":8},"end":{"line":99,"column":8}}]},"11":{"line":103,"type":"if","locations":[{"start":{"line":103,"column":8},"end":{"line":103,"column":8}},{"start":{"line":103,"column":8},"end":{"line":103,"column":8}}]},"12":{"line":107,"type":"if","locations":[{"start":{"line":107,"column":8},"end":{"line":107,"column":8}},{"start":{"line":107,"column":8},"end":{"line":107,"column":8}}]},"13":{"line":111,"type":"if","locations":[{"start":{"line":111,"column":8},"end":{"line":111,"column":8}},{"start":{"line":111,"column":8},"end":{"line":111,"column":8}}]},"14":{"line":116,"type":"if","locations":[{"start":{"line":116,"column":12},"end":{"line":116,"column":12}},{"start":{"line":116,"column":12},"end":{"line":116,"column":12}}]},"15":{"line":119,"type":"if","locations":[{"start":{"line":119,"column":12},"end":{"line":119,"column":12}},{"start":{"line":119,"column":12},"end":{"line":119,"column":12}}]},"16":{"line":122,"type":"if","locations":[{"start":{"line":122,"column":12},"end":{"line":122,"column":12}},{"start":{"line":122,"column":12},"end":{"line":122,"column":12}}]},"17":{"line":123,"type":"if","locations":[{"start":{"line":123,"column":16},"end":{"line":123,"column":16}},{"start":{"line":123,"column":16},"end":{"line":123,"column":16}}]},"18":{"line":169,"type":"if","locations":[{"start":{"line":169,"column":12},"end":{"line":169,"column":12}},{"start":{"line":169,"column":12},"end":{"line":169,"column":12}}]},"19":{"line":170,"type":"binary-expr","locations":[{"start":{"line":170,"column":16},"end":{"line":170,"column":42}},{"start":{"line":171,"column":16},"end":{"line":171,"column":41}},{"start":{"line":172,"column":16},"end":{"line":172,"column":45}}]},"20":{"line":191,"type":"if","locations":[{"start":{"line":191,"column":20},"end":{"line":191,"column":20}},{"start":{"line":191,"column":20},"end":{"line":191,"column":20}}]},"21":{"line":208,"type":"if","locations":[{"start":{"line":208,"column":12},"end":{"line":208,"column":12}},{"start":{"line":208,"column":12},"end":{"line":208,"column":12}}]},"22":{"line":213,"type":"if","locations":[{"start":{"line":213,"column":16},"end":{"line":213,"column":16}},{"start":{"line":213,"column":16},"end":{"line":213,"column":16}}]},"23":{"line":221,"type":"if","locations":[{"start":{"line":221,"column":12},"end":{"line":221,"column":12}},{"start":{"line":221,"column":12},"end":{"line":221,"column":12}}]},"24":{"line":227,"type":"if","locations":[{"start":{"line":227,"column":12},"end":{"line":227,"column":12}},{"start":{"line":227,"column":12},"end":{"line":227,"column":12}}]},"25":{"line":227,"type":"binary-expr","locations":[{"start":{"line":227,"column":15},"end":{"line":227,"column":52}},{"start":{"line":227,"column":56},"end":{"line":227,"column":97}}]},"26":{"line":247,"type":"if","locations":[{"start":{"line":247,"column":12},"end":{"line":247,"column":12}},{"start":{"line":247,"column":12},"end":{"line":247,"column":12}}]}}},"C:\\Users\\brand\\git\\node-ipc\\entities\\EventParser.js":{"path":"C:\\Users\\brand\\git\\node-ipc\\entities\\EventParser.js","s":{"1":1,"2":13,"3":2,"4":13,"5":9,"6":0,"7":9,"8":0,"9":9,"10":9,"11":9,"12":9,"13":9,"14":1},"b":{"1":[2,11],"2":[0,9],"3":[9,0,0],"4":[0,9]},"f":{"1":13,"2":9,"3":9},"fnMap":{"1":{"name":"(anonymous_1)","line":6,"loc":{"start":{"line":6,"column":13},"end":{"line":6,"column":21}}},"2":{"name":"(anonymous_2)","line":13,"loc":{"start":{"line":13,"column":8},"end":{"line":13,"column":17}}},"3":{"name":"(anonymous_3)","line":25,"loc":{"start":{"line":25,"column":7},"end":{"line":25,"column":13}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":42}},"2":{"start":{"line":7,"column":4},"end":{"line":9,"column":5}},"3":{"start":{"line":8,"column":6},"end":{"line":8,"column":26}},"4":{"start":{"line":10,"column":4},"end":{"line":10,"column":36}},"5":{"start":{"line":14,"column":4},"end":{"line":16,"column":5}},"6":{"start":{"line":15,"column":8},"end":{"line":15,"column":24}},"7":{"start":{"line":17,"column":4},"end":{"line":19,"column":5}},"8":{"start":{"line":18,"column":8},"end":{"line":18,"column":24}},"9":{"start":{"line":21,"column":4},"end":{"line":21,"column":40}},"10":{"start":{"line":22,"column":4},"end":{"line":22,"column":19}},"11":{"start":{"line":26,"column":4},"end":{"line":26,"column":42}},"12":{"start":{"line":27,"column":4},"end":{"line":27,"column":17}},"13":{"start":{"line":28,"column":4},"end":{"line":28,"column":18}},"14":{"start":{"line":32,"column":0},"end":{"line":32,"column":22}}},"branchMap":{"1":{"line":7,"type":"if","locations":[{"start":{"line":7,"column":4},"end":{"line":7,"column":4}},{"start":{"line":7,"column":4},"end":{"line":7,"column":4}}]},"2":{"line":14,"type":"if","locations":[{"start":{"line":14,"column":4},"end":{"line":14,"column":4}},{"start":{"line":14,"column":4},"end":{"line":14,"column":4}}]},"3":{"line":14,"type":"binary-expr","locations":[{"start":{"line":14,"column":7},"end":{"line":14,"column":20}},{"start":{"line":14,"column":24},"end":{"line":14,"column":44}},{"start":{"line":14,"column":48},"end":{"line":14,"column":64}}]},"4":{"line":17,"type":"if","locations":[{"start":{"line":17,"column":4},"end":{"line":17,"column":4}},{"start":{"line":17,"column":4},"end":{"line":17,"column":4}}]}}},"C:\\Users\\brand\\git\\node-ipc\\dao\\socketServer.js":{"path":"C:\\Users\\brand\\git\\node-ipc\\dao\\socketServer.js","s":{"1":1,"2":1,"3":4,"4":4,"5":4,"6":4,"7":4,"8":4,"9":4,"10":0,"11":0,"12":4,"13":4,"14":0,"15":1,"16":2,"17":2,"18":2,"19":2,"20":2,"21":0,"22":0,"23":2,"24":2,"25":2,"26":0,"27":0,"28":0,"29":2,"30":2,"31":0,"32":1,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":1,"46":2,"47":2,"48":2,"49":2,"50":2,"51":0,"52":2,"53":0,"54":2,"55":2,"56":0,"57":2,"58":2,"59":2,"60":1,"61":2,"62":2,"63":0,"64":0,"65":0,"66":2,"67":2,"68":2,"69":2,"70":0,"71":0,"72":2,"73":2,"74":2,"75":2,"76":2,"77":2,"78":2,"79":2,"80":2,"81":1,"82":2,"83":1,"84":4,"85":4,"86":2,"87":4,"88":4,"89":4,"90":0,"91":0,"92":4,"93":4,"94":2,"95":0,"96":2,"97":2,"98":2,"99":0,"100":2,"101":2,"102":4,"103":4,"104":0,"105":1,"106":4,"107":4,"108":2,"109":2,"110":2,"111":0,"112":2,"113":2,"114":2,"115":2,"116":4,"117":0,"118":0,"119":4,"120":4,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":3,"129":1,"130":1,"131":1,"132":2,"133":2,"134":2,"135":1,"136":0,"137":0,"138":0,"139":0,"140":0,"141":0,"142":0,"143":0,"144":0,"145":0,"146":0,"147":0,"148":0,"149":0,"150":0,"151":0,"152":1,"153":2,"154":2,"155":2,"156":0,"157":0,"158":0,"159":1},"b":{"1":[0,4],"2":[4,0],"3":[0,2],"4":[2,0],"5":[2,1],"6":[0,2],"7":[2,2],"8":[0,0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[2,0],"13":[0,2],"14":[0,2],"15":[0,2],"16":[2,2],"17":[2,0],"18":[2,1],"19":[0,2],"20":[2,0],"21":[0,2],"22":[2,2],"23":[2,0],"24":[2,2],"25":[2,2],"26":[0,2],"27":[0,2],"28":[0,4],"29":[3,1],"30":[2,2],"31":[4,3],"32":[2,0],"33":[1,1],"34":[1,3],"35":[1,0],"36":[1,2],"37":[3,2],"38":[0,1],"39":[1,1],"40":[0,0],"41":[0,0],"42":[0,0],"43":[0,0],"44":[0,0],"45":[0,2]},"f":{"1":4,"2":4,"3":4,"4":4,"5":2,"6":0,"7":2,"8":2,"9":2,"10":4,"11":0,"12":2,"13":4,"14":2,"15":0,"16":0,"17":2,"18":2,"19":0},"fnMap":{"1":{"name":"(anonymous_1)","line":14,"loc":{"start":{"line":14,"column":15},"end":{"line":14,"column":37}}},"2":{"name":"(anonymous_2)","line":40,"loc":{"start":{"line":40,"column":11},"end":{"line":40,"column":19}}},"3":{"name":"(anonymous_3)","line":47,"loc":{"start":{"line":47,"column":8},"end":{"line":47,"column":10}}},"4":{"name":"(anonymous_4)","line":51,"loc":{"start":{"line":51,"column":9},"end":{"line":51,"column":11}}},"5":{"name":"emit","line":68,"loc":{"start":{"line":68,"column":0},"end":{"line":68,"column":33}}},"6":{"name":"broadcast","line":100,"loc":{"start":{"line":100,"column":0},"end":{"line":100,"column":29}}},"7":{"name":"serverClosed","line":123,"loc":{"start":{"line":123,"column":0},"end":{"line":123,"column":23}}},"8":{"name":"gotData","line":152,"loc":{"start":{"line":152,"column":0},"end":{"line":152,"column":39}}},"9":{"name":"socketClosed","line":198,"loc":{"start":{"line":198,"column":0},"end":{"line":198,"column":29}}},"10":{"name":"serverCreated","line":205,"loc":{"start":{"line":205,"column":0},"end":{"line":205,"column":31}}},"11":{"name":"(anonymous_11)","line":220,"loc":{"start":{"line":220,"column":8},"end":{"line":220,"column":21}}},"12":{"name":"(anonymous_12)","line":234,"loc":{"start":{"line":234,"column":8},"end":{"line":234,"column":28}}},"13":{"name":"startServer","line":261,"loc":{"start":{"line":261,"column":0},"end":{"line":261,"column":23}}},"14":{"name":"UDPServerStarted","line":283,"loc":{"start":{"line":283,"column":12},"end":{"line":283,"column":40}}},"15":{"name":"(anonymous_15)","line":291,"loc":{"start":{"line":291,"column":8},"end":{"line":291,"column":21}}},"16":{"name":"startTLSServer","line":344,"loc":{"start":{"line":344,"column":0},"end":{"line":344,"column":25}}},"17":{"name":"UDPWrite","line":376,"loc":{"start":{"line":376,"column":0},"end":{"line":376,"column":33}}},"18":{"name":"(anonymous_18)","line":384,"loc":{"start":{"line":384,"column":8},"end":{"line":384,"column":29}}},"19":{"name":"(anonymous_19)","line":389,"loc":{"start":{"line":389,"column":20},"end":{"line":389,"column":33}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":9,"column":37}},"2":{"start":{"line":11,"column":0},"end":{"line":11,"column":36}},"3":{"start":{"line":15,"column":8},"end":{"line":15,"column":16}},"4":{"start":{"line":16,"column":8},"end":{"line":30,"column":10}},"5":{"start":{"line":32,"column":8},"end":{"line":32,"column":49}},"6":{"start":{"line":34,"column":8},"end":{"line":37,"column":10}},"7":{"start":{"line":41,"column":8},"end":{"line":44,"column":10}},"8":{"start":{"line":48,"column":8},"end":{"line":48,"column":28}},"9":{"start":{"line":52,"column":8},"end":{"line":55,"column":9}},"10":{"start":{"line":53,"column":12},"end":{"line":53,"column":76}},"11":{"start":{"line":54,"column":12},"end":{"line":54,"column":19}},"12":{"start":{"line":57,"column":8},"end":{"line":64,"column":9}},"13":{"start":{"line":58,"column":12},"end":{"line":61,"column":14}},"14":{"start":{"line":63,"column":12},"end":{"line":63,"column":37}},"15":{"start":{"line":68,"column":0},"end":{"line":98,"column":1}},"16":{"start":{"line":69,"column":4},"end":{"line":69,"column":63}},"17":{"start":{"line":71,"column":4},"end":{"line":71,"column":28}},"18":{"start":{"line":72,"column":4},"end":{"line":72,"column":22}},"19":{"start":{"line":73,"column":4},"end":{"line":73,"column":22}},"20":{"start":{"line":75,"column":4},"end":{"line":80,"column":5}},"21":{"start":{"line":76,"column":8},"end":{"line":76,"column":38}},"22":{"start":{"line":77,"column":8},"end":{"line":77,"column":55}},"23":{"start":{"line":79,"column":8},"end":{"line":79,"column":44}},"24":{"start":{"line":82,"column":4},"end":{"line":95,"column":5}},"25":{"start":{"line":84,"column":8},"end":{"line":88,"column":9}},"26":{"start":{"line":85,"column":12},"end":{"line":85,"column":166}},"27":{"start":{"line":86,"column":12},"end":{"line":86,"column":38}},"28":{"start":{"line":87,"column":12},"end":{"line":87,"column":19}},"29":{"start":{"line":90,"column":8},"end":{"line":93,"column":10}},"30":{"start":{"line":94,"column":8},"end":{"line":94,"column":15}},"31":{"start":{"line":97,"column":4},"end":{"line":97,"column":26}},"32":{"start":{"line":100,"column":0},"end":{"line":121,"column":1}},"33":{"start":{"line":101,"column":4},"end":{"line":101,"column":127}},"34":{"start":{"line":102,"column":4},"end":{"line":102,"column":28}},"35":{"start":{"line":103,"column":4},"end":{"line":103,"column":22}},"36":{"start":{"line":104,"column":4},"end":{"line":104,"column":22}},"37":{"start":{"line":106,"column":4},"end":{"line":110,"column":5}},"38":{"start":{"line":107,"column":8},"end":{"line":107,"column":55}},"39":{"start":{"line":109,"column":8},"end":{"line":109,"column":44}},"40":{"start":{"line":112,"column":4},"end":{"line":120,"column":5}},"41":{"start":{"line":113,"column":8},"end":{"line":115,"column":9}},"42":{"start":{"line":114,"column":12},"end":{"line":114,"column":55}},"43":{"start":{"line":117,"column":8},"end":{"line":119,"column":9}},"44":{"start":{"line":118,"column":12},"end":{"line":118,"column":43}},"45":{"start":{"line":123,"column":0},"end":{"line":150,"column":1}},"46":{"start":{"line":124,"column":4},"end":{"line":149,"column":5}},"47":{"start":{"line":125,"column":8},"end":{"line":125,"column":35}},"48":{"start":{"line":126,"column":8},"end":{"line":126,"column":36}},"49":{"start":{"line":128,"column":8},"end":{"line":132,"column":9}},"50":{"start":{"line":129,"column":12},"end":{"line":131,"column":13}},"51":{"start":{"line":130,"column":16},"end":{"line":130,"column":25}},"52":{"start":{"line":134,"column":8},"end":{"line":136,"column":9}},"53":{"start":{"line":135,"column":12},"end":{"line":135,"column":40}},"54":{"start":{"line":138,"column":8},"end":{"line":138,"column":69}},"55":{"start":{"line":140,"column":8},"end":{"line":142,"column":9}},"56":{"start":{"line":141,"column":12},"end":{"line":141,"column":29}},"57":{"start":{"line":144,"column":8},"end":{"line":144,"column":33}},"58":{"start":{"line":146,"column":8},"end":{"line":146,"column":71}},"59":{"start":{"line":148,"column":8},"end":{"line":148,"column":15}},"60":{"start":{"line":152,"column":0},"end":{"line":196,"column":1}},"61":{"start":{"line":153,"column":4},"end":{"line":153,"column":60}},"62":{"start":{"line":154,"column":4},"end":{"line":162,"column":5}},"63":{"start":{"line":155,"column":8},"end":{"line":155,"column":52}},"64":{"start":{"line":156,"column":8},"end":{"line":160,"column":10}},"65":{"start":{"line":161,"column":8},"end":{"line":161,"column":15}},"66":{"start":{"line":164,"column":4},"end":{"line":166,"column":5}},"67":{"start":{"line":165,"column":8},"end":{"line":165,"column":26}},"68":{"start":{"line":168,"column":4},"end":{"line":168,"column":32}},"69":{"start":{"line":170,"column":4},"end":{"line":173,"column":5}},"70":{"start":{"line":171,"column":8},"end":{"line":171,"column":83}},"71":{"start":{"line":172,"column":8},"end":{"line":172,"column":15}},"72":{"start":{"line":175,"column":4},"end":{"line":175,"column":22}},"73":{"start":{"line":177,"column":4},"end":{"line":177,"column":33}},"74":{"start":{"line":179,"column":4},"end":{"line":195,"column":5}},"75":{"start":{"line":180,"column":8},"end":{"line":180,"column":32}},"76":{"start":{"line":181,"column":8},"end":{"line":181,"column":35}},"77":{"start":{"line":184,"column":8},"end":{"line":186,"column":9}},"78":{"start":{"line":185,"column":12},"end":{"line":185,"column":36}},"79":{"start":{"line":188,"column":8},"end":{"line":188,"column":67}},"80":{"start":{"line":190,"column":8},"end":{"line":194,"column":10}},"81":{"start":{"line":198,"column":0},"end":{"line":203,"column":1}},"82":{"start":{"line":199,"column":4},"end":{"line":202,"column":6}},"83":{"start":{"line":205,"column":0},"end":{"line":259,"column":1}},"84":{"start":{"line":206,"column":4},"end":{"line":206,"column":30}},"85":{"start":{"line":208,"column":4},"end":{"line":210,"column":5}},"86":{"start":{"line":209,"column":8},"end":{"line":209,"column":49}},"87":{"start":{"line":212,"column":4},"end":{"line":212,"column":59}},"88":{"start":{"line":213,"column":4},"end":{"line":216,"column":6}},"89":{"start":{"line":218,"column":4},"end":{"line":225,"column":6}},"90":{"start":{"line":221,"column":12},"end":{"line":221,"column":48}},"91":{"start":{"line":223,"column":12},"end":{"line":223,"column":38}},"92":{"start":{"line":227,"column":4},"end":{"line":230,"column":6}},"93":{"start":{"line":232,"column":4},"end":{"line":249,"column":6}},"94":{"start":{"line":235,"column":12},"end":{"line":237,"column":13}},"95":{"start":{"line":236,"column":16},"end":{"line":236,"column":23}},"96":{"start":{"line":239,"column":12},"end":{"line":239,"column":78}},"97":{"start":{"line":240,"column":12},"end":{"line":240,"column":21}},"98":{"start":{"line":242,"column":12},"end":{"line":246,"column":13}},"99":{"start":{"line":243,"column":16},"end":{"line":243,"column":59}},"100":{"start":{"line":245,"column":16},"end":{"line":245,"column":36}},"101":{"start":{"line":247,"column":12},"end":{"line":247,"column":43}},"102":{"start":{"line":251,"column":4},"end":{"line":254,"column":6}},"103":{"start":{"line":256,"column":4},"end":{"line":258,"column":5}},"104":{"start":{"line":257,"column":8},"end":{"line":257,"column":15}},"105":{"start":{"line":261,"column":0},"end":{"line":342,"column":1}},"106":{"start":{"line":262,"column":4},"end":{"line":265,"column":6}},"107":{"start":{"line":267,"column":4},"end":{"line":287,"column":5}},"108":{"start":{"line":268,"column":8},"end":{"line":268,"column":56}},"109":{"start":{"line":269,"column":8},"end":{"line":275,"column":9}},"110":{"start":{"line":270,"column":12},"end":{"line":272,"column":14}},"111":{"start":{"line":274,"column":12},"end":{"line":274,"column":40}},"112":{"start":{"line":277,"column":8},"end":{"line":279,"column":10}},"113":{"start":{"line":280,"column":8},"end":{"line":280,"column":46}},"114":{"start":{"line":281,"column":8},"end":{"line":286,"column":10}},"115":{"start":{"line":284,"column":16},"end":{"line":284,"column":54}},"116":{"start":{"line":289,"column":4},"end":{"line":299,"column":6}},"117":{"start":{"line":292,"column":12},"end":{"line":292,"column":41}},"118":{"start":{"line":294,"column":12},"end":{"line":297,"column":14}},"119":{"start":{"line":301,"column":4},"end":{"line":301,"column":58}},"120":{"start":{"line":303,"column":4},"end":{"line":317,"column":5}},"121":{"start":{"line":304,"column":8},"end":{"line":304,"column":65}},"122":{"start":{"line":305,"column":8},"end":{"line":309,"column":9}},"123":{"start":{"line":306,"column":12},"end":{"line":306,"column":53}},"124":{"start":{"line":307,"column":12},"end":{"line":307,"column":54}},"125":{"start":{"line":308,"column":12},"end":{"line":308,"column":51}},"126":{"start":{"line":311,"column":8},"end":{"line":314,"column":10}},"127":{"start":{"line":316,"column":8},"end":{"line":316,"column":15}},"128":{"start":{"line":319,"column":4},"end":{"line":327,"column":5}},"129":{"start":{"line":320,"column":8},"end":{"line":320,"column":70}},"130":{"start":{"line":321,"column":8},"end":{"line":325,"column":10}},"131":{"start":{"line":326,"column":8},"end":{"line":326,"column":15}},"132":{"start":{"line":329,"column":4},"end":{"line":329,"column":64}},"133":{"start":{"line":331,"column":4},"end":{"line":334,"column":6}},"134":{"start":{"line":336,"column":4},"end":{"line":341,"column":6}},"135":{"start":{"line":344,"column":0},"end":{"line":374,"column":1}},"136":{"start":{"line":345,"column":4},"end":{"line":345,"column":52}},"137":{"start":{"line":346,"column":4},"end":{"line":350,"column":5}},"138":{"start":{"line":347,"column":8},"end":{"line":347,"column":69}},"139":{"start":{"line":349,"column":8},"end":{"line":349,"column":103}},"140":{"start":{"line":351,"column":4},"end":{"line":355,"column":5}},"141":{"start":{"line":352,"column":8},"end":{"line":352,"column":69}},"142":{"start":{"line":354,"column":8},"end":{"line":354,"column":96}},"143":{"start":{"line":356,"column":4},"end":{"line":358,"column":5}},"144":{"start":{"line":357,"column":8},"end":{"line":357,"column":73}},"145":{"start":{"line":359,"column":4},"end":{"line":369,"column":5}},"146":{"start":{"line":360,"column":8},"end":{"line":362,"column":9}},"147":{"start":{"line":361,"column":12},"end":{"line":361,"column":84}},"148":{"start":{"line":363,"column":8},"end":{"line":363,"column":30}},"149":{"start":{"line":364,"column":8},"end":{"line":368,"column":9}},"150":{"start":{"line":365,"column":12},"end":{"line":367,"column":14}},"151":{"start":{"line":370,"column":4},"end":{"line":373,"column":6}},"152":{"start":{"line":376,"column":0},"end":{"line":396,"column":1}},"153":{"start":{"line":377,"column":4},"end":{"line":377,"column":56}},"154":{"start":{"line":378,"column":4},"end":{"line":395,"column":6}},"155":{"start":{"line":385,"column":12},"end":{"line":393,"column":13}},"156":{"start":{"line":386,"column":16},"end":{"line":386,"column":61}},"157":{"start":{"line":387,"column":16},"end":{"line":392,"column":18}},"158":{"start":{"line":390,"column":24},"end":{"line":390,"column":50}},"159":{"start":{"line":398,"column":0},"end":{"line":398,"column":22}}},"branchMap":{"1":{"line":52,"type":"if","locations":[{"start":{"line":52,"column":8},"end":{"line":52,"column":8}},{"start":{"line":52,"column":8},"end":{"line":52,"column":8}}]},"2":{"line":57,"type":"if","locations":[{"start":{"line":57,"column":8},"end":{"line":57,"column":8}},{"start":{"line":57,"column":8},"end":{"line":57,"column":8}}]},"3":{"line":75,"type":"if","locations":[{"start":{"line":75,"column":4},"end":{"line":75,"column":4}},{"start":{"line":75,"column":4},"end":{"line":75,"column":4}}]},"4":{"line":82,"type":"if","locations":[{"start":{"line":82,"column":4},"end":{"line":82,"column":4}},{"start":{"line":82,"column":4},"end":{"line":82,"column":4}}]},"5":{"line":82,"type":"binary-expr","locations":[{"start":{"line":82,"column":7},"end":{"line":82,"column":16}},{"start":{"line":82,"column":20},"end":{"line":82,"column":29}}]},"6":{"line":84,"type":"if","locations":[{"start":{"line":84,"column":8},"end":{"line":84,"column":8}},{"start":{"line":84,"column":8},"end":{"line":84,"column":8}}]},"7":{"line":84,"type":"binary-expr","locations":[{"start":{"line":84,"column":11},"end":{"line":84,"column":26}},{"start":{"line":84,"column":30},"end":{"line":84,"column":42}}]},"8":{"line":101,"type":"cond-expr","locations":[{"start":{"line":101,"column":100},"end":{"line":101,"column":109}},{"start":{"line":101,"column":110},"end":{"line":101,"column":112}}]},"9":{"line":106,"type":"if","locations":[{"start":{"line":106,"column":4},"end":{"line":106,"column":4}},{"start":{"line":106,"column":4},"end":{"line":106,"column":4}}]},"10":{"line":112,"type":"if","locations":[{"start":{"line":112,"column":4},"end":{"line":112,"column":4}},{"start":{"line":112,"column":4},"end":{"line":112,"column":4}}]},"11":{"line":112,"type":"binary-expr","locations":[{"start":{"line":112,"column":7},"end":{"line":112,"column":16}},{"start":{"line":112,"column":20},"end":{"line":112,"column":29}}]},"12":{"line":128,"type":"if","locations":[{"start":{"line":128,"column":8},"end":{"line":128,"column":8}},{"start":{"line":128,"column":8},"end":{"line":128,"column":8}}]},"13":{"line":129,"type":"if","locations":[{"start":{"line":129,"column":12},"end":{"line":129,"column":12}},{"start":{"line":129,"column":12},"end":{"line":129,"column":12}}]},"14":{"line":134,"type":"if","locations":[{"start":{"line":134,"column":8},"end":{"line":134,"column":8}},{"start":{"line":134,"column":8},"end":{"line":134,"column":8}}]},"15":{"line":140,"type":"if","locations":[{"start":{"line":140,"column":8},"end":{"line":140,"column":8}},{"start":{"line":140,"column":8},"end":{"line":140,"column":8}}]},"16":{"line":140,"type":"binary-expr","locations":[{"start":{"line":140,"column":11},"end":{"line":140,"column":17}},{"start":{"line":140,"column":21},"end":{"line":140,"column":35}}]},"17":{"line":153,"type":"cond-expr","locations":[{"start":{"line":153,"column":40},"end":{"line":153,"column":49}},{"start":{"line":153,"column":52},"end":{"line":153,"column":58}}]},"18":{"line":153,"type":"binary-expr","locations":[{"start":{"line":153,"column":15},"end":{"line":153,"column":24}},{"start":{"line":153,"column":28},"end":{"line":153,"column":37}}]},"19":{"line":154,"type":"if","locations":[{"start":{"line":154,"column":4},"end":{"line":154,"column":4}},{"start":{"line":154,"column":4},"end":{"line":154,"column":4}}]},"20":{"line":164,"type":"if","locations":[{"start":{"line":164,"column":4},"end":{"line":164,"column":4}},{"start":{"line":164,"column":4},"end":{"line":164,"column":4}}]},"21":{"line":170,"type":"if","locations":[{"start":{"line":170,"column":4},"end":{"line":170,"column":4}},{"start":{"line":170,"column":4},"end":{"line":170,"column":4}}]},"22":{"line":170,"type":"binary-expr","locations":[{"start":{"line":170,"column":7},"end":{"line":170,"column":44}},{"start":{"line":170,"column":48},"end":{"line":170,"column":89}}]},"23":{"line":184,"type":"if","locations":[{"start":{"line":184,"column":8},"end":{"line":184,"column":8}},{"start":{"line":184,"column":8},"end":{"line":184,"column":8}}]},"24":{"line":184,"type":"binary-expr","locations":[{"start":{"line":184,"column":12},"end":{"line":184,"column":24}},{"start":{"line":184,"column":28},"end":{"line":184,"column":43}}]},"25":{"line":208,"type":"if","locations":[{"start":{"line":208,"column":4},"end":{"line":208,"column":4}},{"start":{"line":208,"column":4},"end":{"line":208,"column":4}}]},"26":{"line":235,"type":"if","locations":[{"start":{"line":235,"column":12},"end":{"line":235,"column":12}},{"start":{"line":235,"column":12},"end":{"line":235,"column":12}}]},"27":{"line":242,"type":"if","locations":[{"start":{"line":242,"column":12},"end":{"line":242,"column":12}},{"start":{"line":242,"column":12},"end":{"line":242,"column":12}}]},"28":{"line":256,"type":"if","locations":[{"start":{"line":256,"column":4},"end":{"line":256,"column":4}},{"start":{"line":256,"column":4},"end":{"line":256,"column":4}}]},"29":{"line":264,"type":"cond-expr","locations":[{"start":{"line":264,"column":21},"end":{"line":264,"column":36}},{"start":{"line":264,"column":37},"end":{"line":264,"column":39}}]},"30":{"line":267,"type":"if","locations":[{"start":{"line":267,"column":4},"end":{"line":267,"column":4}},{"start":{"line":267,"column":4},"end":{"line":267,"column":4}}]},"31":{"line":267,"type":"binary-expr","locations":[{"start":{"line":267,"column":7},"end":{"line":267,"column":17}},{"start":{"line":267,"column":21},"end":{"line":267,"column":31}}]},"32":{"line":269,"type":"if","locations":[{"start":{"line":269,"column":8},"end":{"line":269,"column":8}},{"start":{"line":269,"column":8},"end":{"line":269,"column":8}}]},"33":{"line":278,"type":"cond-expr","locations":[{"start":{"line":278,"column":26},"end":{"line":278,"column":32}},{"start":{"line":278,"column":33},"end":{"line":278,"column":39}}]},"34":{"line":303,"type":"if","locations":[{"start":{"line":303,"column":4},"end":{"line":303,"column":4}},{"start":{"line":303,"column":4},"end":{"line":303,"column":4}}]},"35":{"line":305,"type":"if","locations":[{"start":{"line":305,"column":8},"end":{"line":305,"column":8}},{"start":{"line":305,"column":8},"end":{"line":305,"column":8}}]},"36":{"line":319,"type":"if","locations":[{"start":{"line":319,"column":4},"end":{"line":319,"column":4}},{"start":{"line":319,"column":4},"end":{"line":319,"column":4}}]},"37":{"line":319,"type":"binary-expr","locations":[{"start":{"line":319,"column":7},"end":{"line":319,"column":17}},{"start":{"line":319,"column":21},"end":{"line":319,"column":31}}]},"38":{"line":320,"type":"cond-expr","locations":[{"start":{"line":320,"column":56},"end":{"line":320,"column":61}},{"start":{"line":320,"column":62},"end":{"line":320,"column":67}}]},"39":{"line":329,"type":"cond-expr","locations":[{"start":{"line":329,"column":48},"end":{"line":329,"column":54}},{"start":{"line":329,"column":55},"end":{"line":329,"column":61}}]},"40":{"line":346,"type":"if","locations":[{"start":{"line":346,"column":4},"end":{"line":346,"column":4}},{"start":{"line":346,"column":4},"end":{"line":346,"column":4}}]},"41":{"line":351,"type":"if","locations":[{"start":{"line":351,"column":4},"end":{"line":351,"column":4}},{"start":{"line":351,"column":4},"end":{"line":351,"column":4}}]},"42":{"line":356,"type":"if","locations":[{"start":{"line":356,"column":4},"end":{"line":356,"column":4}},{"start":{"line":356,"column":4},"end":{"line":356,"column":4}}]},"43":{"line":359,"type":"if","locations":[{"start":{"line":359,"column":4},"end":{"line":359,"column":4}},{"start":{"line":359,"column":4},"end":{"line":359,"column":4}}]},"44":{"line":360,"type":"if","locations":[{"start":{"line":360,"column":8},"end":{"line":360,"column":8}},{"start":{"line":360,"column":8},"end":{"line":360,"column":8}}]},"45":{"line":385,"type":"if","locations":[{"start":{"line":385,"column":12},"end":{"line":385,"column":12}},{"start":{"line":385,"column":12},"end":{"line":385,"column":12}}]}}}}
\ No newline at end of file
diff --git a/spec/coverage/lcov-report/base.css b/spec/coverage/lcov-report/base.css
deleted file mode 100644
index 0c0571d..0000000
--- a/spec/coverage/lcov-report/base.css
+++ /dev/null
@@ -1,212 +0,0 @@
-body, html {
- margin:0; padding: 0;
- height: 100%;
-}
-body {
- font-family: Helvetica Neue, Helvetica, Arial;
- font-size: 14px;
- color:#333;
-}
-.small { font-size: 12px;; }
-*, *:after, *:before {
- -webkit-box-sizing:border-box;
- -moz-box-sizing:border-box;
- box-sizing:border-box;
- }
-h1 { font-size: 20px; margin: 0;}
-h2 { font-size: 14px; }
-pre {
- font: 12px/1.4 Consolas, "Liberation Mono", Menlo, Courier, monospace;
- margin: 0;
- padding: 0;
- -moz-tab-size: 2;
- -o-tab-size: 2;
- tab-size: 2;
-}
-a { color:#0074D9; text-decoration:none; }
-a:hover { text-decoration:underline; }
-.strong { font-weight: bold; }
-.space-top1 { padding: 10px 0 0 0; }
-.pad2y { padding: 20px 0; }
-.pad1y { padding: 10px 0; }
-.pad2x { padding: 0 20px; }
-.pad2 { padding: 20px; }
-.pad1 { padding: 10px; }
-.space-left2 { padding-left:55px; }
-.space-right2 { padding-right:20px; }
-.center { text-align:center; }
-.clearfix { display:block; }
-.clearfix:after {
- content:'';
- display:block;
- height:0;
- clear:both;
- visibility:hidden;
- }
-.fl { float: left; }
-@media only screen and (max-width:640px) {
- .col3 { width:100%; max-width:100%; }
- .hide-mobile { display:none!important; }
-}
-
-.quiet {
- color: #7f7f7f;
- color: rgba(0,0,0,0.5);
-}
-.quiet a { opacity: 0.7; }
-
-.fraction {
- font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace;
- font-size: 10px;
- color: #555;
- background: #E8E8E8;
- padding: 4px 5px;
- border-radius: 3px;
- vertical-align: middle;
-}
-
-div.path a:link, div.path a:visited { color: #333; }
-table.coverage {
- border-collapse: collapse;
- margin: 10px 0 0 0;
- padding: 0;
-}
-
-table.coverage td {
- margin: 0;
- padding: 0;
- vertical-align: top;
-}
-table.coverage td.line-count {
- text-align: right;
- padding: 0 5px 0 20px;
-}
-table.coverage td.line-coverage {
- text-align: right;
- padding-right: 10px;
- min-width:20px;
-}
-
-table.coverage td span.cline-any {
- display: inline-block;
- padding: 0 5px;
- width: 100%;
-}
-.missing-if-branch {
- display: inline-block;
- margin-right: 5px;
- border-radius: 3px;
- position: relative;
- padding: 0 4px;
- background: #333;
- color: yellow;
-}
-
-.skip-if-branch {
- display: none;
- margin-right: 10px;
- position: relative;
- padding: 0 4px;
- background: #ccc;
- color: white;
-}
-.missing-if-branch .typ, .skip-if-branch .typ {
- color: inherit !important;
-}
-.coverage-summary {
- border-collapse: collapse;
- width: 100%;
-}
-.coverage-summary tr { border-bottom: 1px solid #bbb; }
-.keyline-all { border: 1px solid #ddd; }
-.coverage-summary td, .coverage-summary th { padding: 10px; }
-.coverage-summary tbody { border: 1px solid #bbb; }
-.coverage-summary td { border-right: 1px solid #bbb; }
-.coverage-summary td:last-child { border-right: none; }
-.coverage-summary th {
- text-align: left;
- font-weight: normal;
- white-space: nowrap;
-}
-.coverage-summary th.file { border-right: none !important; }
-.coverage-summary th.pct { }
-.coverage-summary th.pic,
-.coverage-summary th.abs,
-.coverage-summary td.pct,
-.coverage-summary td.abs { text-align: right; }
-.coverage-summary td.file { white-space: nowrap; }
-.coverage-summary td.pic { min-width: 120px !important; }
-.coverage-summary tfoot td { }
-
-.coverage-summary .sorter {
- height: 10px;
- width: 7px;
- display: inline-block;
- margin-left: 0.5em;
- background: url(sort-arrow-sprite.png) no-repeat scroll 0 0 transparent;
-}
-.coverage-summary .sorted .sorter {
- background-position: 0 -20px;
-}
-.coverage-summary .sorted-desc .sorter {
- background-position: 0 -10px;
-}
-.status-line { height: 10px; }
-/* dark red */
-.red.solid, .status-line.low, .low .cover-fill { background:#C21F39 }
-.low .chart { border:1px solid #C21F39 }
-/* medium red */
-.cstat-no, .fstat-no, .cbranch-no, .cbranch-no { background:#F6C6CE }
-/* light red */
-.low, .cline-no { background:#FCE1E5 }
-/* light green */
-.high, .cline-yes { background:rgb(230,245,208) }
-/* medium green */
-.cstat-yes { background:rgb(161,215,106) }
-/* dark green */
-.status-line.high, .high .cover-fill { background:rgb(77,146,33) }
-.high .chart { border:1px solid rgb(77,146,33) }
-
-
-.medium .chart { border:1px solid #666; }
-.medium .cover-fill { background: #666; }
-
-.cbranch-no { background: yellow !important; color: #111; }
-
-.cstat-skip { background: #ddd; color: #111; }
-.fstat-skip { background: #ddd; color: #111 !important; }
-.cbranch-skip { background: #ddd !important; color: #111; }
-
-span.cline-neutral { background: #eaeaea; }
-.medium { background: #eaeaea; }
-
-.cover-fill, .cover-empty {
- display:inline-block;
- height: 12px;
-}
-.chart {
- line-height: 0;
-}
-.cover-empty {
- background: white;
-}
-.cover-full {
- border-right: none !important;
-}
-pre.prettyprint {
- border: none !important;
- padding: 0 !important;
- margin: 0 !important;
-}
-.com { color: #999 !important; }
-.ignore-none { color: #999; font-weight: normal; }
-
-.wrapper {
- min-height: 100%;
- height: auto !important;
- height: 100%;
- margin: 0 auto -48px;
-}
-.footer, .push {
- height: 48px;
-}
diff --git a/spec/coverage/lcov-report/index.html b/spec/coverage/lcov-report/index.html
deleted file mode 100644
index 944ec5b..0000000
--- a/spec/coverage/lcov-report/index.html
+++ /dev/null
@@ -1,132 +0,0 @@
-
-
-
- Code coverage report for All files
-
-
-
-
-
-
-
-
-
-
- /
-
-
-
- 70.13%
- Statements
- 317/452
-
-
- 57.08%
- Branches
- 133/233
-
-
- 85.71%
- Functions
- 36/42
-
-
- 70.13%
- Lines
- 317/452
-
-
-
-
-
-
-
-
- File |
- |
- Statements |
- |
- Branches |
- |
- Functions |
- |
- Lines |
- |
-
-
-
- node-ipc/ |
- |
- 100% |
- 4/4 |
- 100% |
- 0/0 |
- 100% |
- 1/1 |
- 100% |
- 4/4 |
-
-
-
- node-ipc/dao/ |
- |
- 68.27% |
- 185/271 |
- 55.24% |
- 79/143 |
- 82.14% |
- 23/28 |
- 68.27% |
- 185/271 |
-
-
-
- node-ipc/entities/ |
- |
- 93.02% |
- 40/43 |
- 56.25% |
- 9/16 |
- 100% |
- 5/5 |
- 93.02% |
- 40/43 |
-
-
-
- node-ipc/services/ |
- |
- 65.67% |
- 88/134 |
- 60.81% |
- 45/74 |
- 87.5% |
- 7/8 |
- 65.67% |
- 88/134 |
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/dao/client.js.html b/spec/coverage/lcov-report/node-ipc/dao/client.js.html
deleted file mode 100644
index b5145f1..0000000
--- a/spec/coverage/lcov-report/node-ipc/dao/client.js.html
+++ /dev/null
@@ -1,833 +0,0 @@
-
-
-
- Code coverage report for node-ipc\dao\client.js
-
-
-
-
-
-
-
-
-
-
-
-
- 73.21%
- Statements
- 82/112
-
-
- 52.83%
- Branches
- 28/53
-
-
- 100%
- Functions
- 9/9
-
-
- 73.21%
- Lines
- 82/112
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-176
-177
-178
-179
-180
-181
-182
-183
-184
-185
-186
-187
-188
-189
-190
-191
-192
-193
-194
-195
-196
-197
-198
-199
-200
-201
-202
-203
-204
-205
-206
-207
-208
-209
-210
-211
-212
-213
-214
-215
-216
-217
-218
-219
-220
-221
-222
-223
-224
-225
-226
-227
-228
-229
-230
-231
-232
-233
-234
-235
-236
-237
-238
-239
-240
-241
-242
-243
-244
-245
-246
-247
-248
-249
-250
-251
-252
-253
-254
-255
-256
-257 |
-
-1×
-
-
-
-
-
-
-
-1×
-
-
-
-7×
-7×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-7×
-
-
-
-1×
-7×
-
-7×
-7×
-7×
-
-7×
-
-
-7×
-
-
-7×
-1×
-1×
-
-
-6×
-
-
-
-
-1×
-6×
-6×
-
-
-1×
-
-13×
-
-13×
-13×
-
-
-
-
-13×
-
-13×
-7×
-
-7×
-
-7×
-7×
-7×
-7×
-
-
-7×
-
-6×
-6×
-
-6×
-
-
-
-6×
-
-
-
-6×
-
-
-
-6×
-
-
-
-6×
-
-
-
-6×
-6×
-6×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-13×
-
-13×
-
-
-10×
-10×
-
-
-
-
-13×
-
-
-3×
-3×
-3×
-
-
-
-13×
-
-
-13×
-
-
-
-13×
-
-
-
-
-
-7×
-7×
-
-
-
-
-
-7×
-7×
-7×
-
-7×
-
-
-6×
-
-6×
-
-
-6×
-6×
-
-
-
-
-6×
-
-
-
-13×
-
-
-7×
-7×
-
-
-
-
-
-
-
-
-
-
-
-
-7×
-7×
-
-
-7×
-
-7×
-
-
-
-
-7×
-
-7×
-7×
-7×
-7×
-7×
-
-7×
-7×
-
-
-
-
-
-7×
-
-
-
-7×
-
-
-
-
-1×
- | 'use strict';
-
-const net = require('net'),
- tls = require('tls'),
- EventParser = require('../entities/EventParser.js'),
- Message = require('js-message'),
- fs = require('fs'),
- Queue = require('js-queue'),
- Events = require('event-pubsub');
-
-let eventParser = new EventParser();
-
-class Client extends Events{
- constructor(config,log){
- super();
- Object.assign(
- this,
- {
- Client : Client,
- config : config,
- queue : new Queue,
- socket : false,
- connect : connect,
- emit : emit,
- log : log,
- retriesRemaining:config.maxRetries||0,
- explicitlyDisconnected: false
- }
- );
-
- eventParser=new EventParser(this.config);
- }
-}
-
-function emit(type,data){
- this.log('dispatching event to ', this.id, this.path, ' : ', type, ',', data);
-
- let message=new Message;
- message.type=type;
- message.data=data;
-
- Iif(this.config.rawBuffer){
- message=Buffer.from(type,this.config.encoding);
- }else{
- message=eventParser.format(message);
- }
-
- if(!this.config.sync){
- this.socket.write(message);
- return;
- }
-
- this.queue.add(
- syncEmit.bind(this,message)
- );
-}
-
-function syncEmit(message){
- this.log('dispatching event to ', this.id, this.path, ' : ', message);
- this.socket.write(message);
-}
-
-function connect(){
- //init client object for scope persistance especially inside of socket events.
- let client=this;
-
- client.log('requested connection to ', client.id, client.path);
- Iif(!this.path){
- client.log('\n\n######\nerror: ', client.id ,' client has not specified socket path it wishes to connect to.');
- return;
- }
-
- const options={};
-
- if(!client.port){
- client.log('Connecting client on Unix Socket :', client.path);
-
- options.path=client.path;
-
- Eif (process.platform ==='win32' && !client.path.startsWith('\\\\.\\pipe\\')){
- options.path = options.path.replace(/^\//, '');
- options.path = options.path.replace(/\//g, '-');
- options.path= `\\\\.\\pipe\\${options.path}`;
- }
-
- client.socket = net.connect(options);
- }else{
- options.host=client.path;
- options.port=client.port;
-
- Iif(client.config.interface.localAddress){
- options.localAddress=client.config.interface.localAddress;
- }
-
- Iif(client.config.interface.localPort){
- options.localPort=client.config.interface.localPort;
- }
-
- Iif(client.config.interface.family){
- options.family=client.config.interface.family;
- }
-
- Iif(client.config.interface.hints){
- options.hints=client.config.interface.hints;
- }
-
- Iif(client.config.interface.lookup){
- options.lookup=client.config.interface.lookup;
- }
-
- Eif(!client.config.tls){
- client.log('Connecting client via TCP to', options);
- client.socket = net.connect(options);
- }else{
- client.log('Connecting client via TLS to', client.path ,client.port,client.config.tls);
- if(client.config.tls.private){
- client.config.tls.key=fs.readFileSync(client.config.tls.private);
- }
- if(client.config.tls.public){
- client.config.tls.cert=fs.readFileSync(client.config.tls.public);
- }
- if(client.config.tls.trustedConnections){
- if(typeof client.config.tls.trustedConnections === 'string'){
- client.config.tls.trustedConnections=[client.config.tls.trustedConnections];
- }
- client.config.tls.ca=[];
- for(let i=0; i<client.config.tls.trustedConnections.length; i++){
- client.config.tls.ca.push(
- fs.readFileSync(client.config.tls.trustedConnections[i])
- );
- }
- }
-
- Object.assign(client.config.tls,options);
-
- client.socket = tls.connect(
- client.config.tls
- );
- }
- }
-
- client.socket.setEncoding(this.config.encoding);
-
- client.socket.on(
- 'error',
- function(err){
- client.log('\n\n######\nerror: ', err);
- client.publish('error', err);
-
- }
- );
-
- client.socket.on(
- 'connect',
- function connectionMade(){
- client.publish('connect');
- client.retriesRemaining=client.config.maxRetries;
- client.log('retrying reset');
- }
- );
-
- client.socket.on(
- 'close',
- function connectionClosed(){
- client.log('connection closed' ,client.id , client.path,
- client.retriesRemaining, 'tries remaining of', client.config.maxRetries
- );
-
- if(
- client.config.stopRetrying ||
- client.retriesRemaining<1 ||
- client.explicitlyDisconnected
-
- ){
- client.publish('disconnect');
- client.log(
- (client.config.id),
- 'exceeded connection rety amount of',
- ' or stopRetrying flag set.'
- );
-
- client.socket.destroy();
- client.publish('destroy');
- client=undefined;
-
- return;
- }
-
- setTimeout(
- function retryTimeout(){
- Iif (client.explicitlyDisconnected) {
- return;
- }
- client.retriesRemaining--;
- client.connect();
- }.bind(null,client),
- client.config.retry
- );
-
- client.publish('disconnect');
- }
- );
-
- client.socket.on(
- 'data',
- function(data) {
- client.log('## received events ##');
- Iif(client.config.rawBuffer){
- client.publish(
- 'data',
- Buffer.from(data,client.config.encoding)
- );
- if(!client.config.sync){
- return;
- }
-
- client.queue.next();
- return;
- }
-
- Eif(!this.ipcBuffer){
- this.ipcBuffer='';
- }
-
- data=(this.ipcBuffer+=data);
-
- Iif(data.slice(-1)!=eventParser.delimiter || data.indexOf(eventParser.delimiter) == -1){
- client.log('Messages are large, You may want to consider smaller messages.');
- return;
- }
-
- this.ipcBuffer='';
-
- const events = eventParser.parse(data);
- const eCount = events.length;
- for(let i=0; i<eCount; i++){
- let message=new Message;
- message.load(events[i]);
-
- client.log('detected event', message.type, message.data);
- client.publish(
- message.type,
- message.data
- );
- }
-
- Iif(!client.config.sync){
- return;
- }
-
- client.queue.next();
- }
- );
-}
-
-module.exports=Client;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/dao/eventParser.js.html b/spec/coverage/lcov-report/node-ipc/dao/eventParser.js.html
deleted file mode 100644
index d20ffa6..0000000
--- a/spec/coverage/lcov-report/node-ipc/dao/eventParser.js.html
+++ /dev/null
@@ -1,146 +0,0 @@
-
-
-
- Code coverage report for node-ipc/dao/eventParser.js
-
-
-
-
-
-
-
-
-
-
-
-
- 84.62%
- Statements
- 11/13
-
-
- 42.86%
- Branches
- 3/7
-
-
- 100%
- Functions
- 2/2
-
-
- 84.62%
- Lines
- 11/13
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28 |
-
-1×
-
-
-
-
-
-1×
-9×
-
-
-9×
-
-
-
-9×
-9×
-
-
-1×
-9×
-9×
-9×
-
-
-1×
- | 'use strict';
-
-const parser={
- parse : parseDataEvents,
- format : formatData,
- delimiter : '\f'
-};
-
-function formatData(message){
- Iif(!message.data && message.data!==false && message.data!==0){
- message.data={};
- }
- Iif(message.data['_maxListeners']){
- message.data={};
- }
-
- message=message.JSON+parser.delimiter;
- return message;
-}
-
-function parseDataEvents(data){
- let events=data.split(parser.delimiter);
- events.pop();
- return events;
-}
-
-module.exports=parser;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/dao/index.html b/spec/coverage/lcov-report/node-ipc/dao/index.html
deleted file mode 100644
index 09ce21d..0000000
--- a/spec/coverage/lcov-report/node-ipc/dao/index.html
+++ /dev/null
@@ -1,106 +0,0 @@
-
-
-
- Code coverage report for node-ipc\dao\
-
-
-
-
-
-
-
-
-
-
-
-
- 68.27%
- Statements
- 185/271
-
-
- 55.24%
- Branches
- 79/143
-
-
- 82.14%
- Functions
- 23/28
-
-
- 68.27%
- Lines
- 185/271
-
-
-
-
-
-
-
-
- File |
- |
- Statements |
- |
- Branches |
- |
- Functions |
- |
- Lines |
- |
-
-
-
- client.js |
- |
- 73.21% |
- 82/112 |
- 52.83% |
- 28/53 |
- 100% |
- 9/9 |
- 73.21% |
- 82/112 |
-
-
-
- socketServer.js |
- |
- 64.78% |
- 103/159 |
- 56.67% |
- 51/90 |
- 73.68% |
- 14/19 |
- 64.78% |
- 103/159 |
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/dao/socketServer.js.html b/spec/coverage/lcov-report/node-ipc/dao/socketServer.js.html
deleted file mode 100644
index 988a784..0000000
--- a/spec/coverage/lcov-report/node-ipc/dao/socketServer.js.html
+++ /dev/null
@@ -1,1259 +0,0 @@
-
-
-
- Code coverage report for node-ipc\dao\socketServer.js
-
-
-
-
-
-
-
-
-
-
-
-
- 64.78%
- Statements
- 103/159
-
-
- 56.67%
- Branches
- 51/90
-
-
- 73.68%
- Functions
- 14/19
-
-
- 64.78%
- Lines
- 103/159
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-176
-177
-178
-179
-180
-181
-182
-183
-184
-185
-186
-187
-188
-189
-190
-191
-192
-193
-194
-195
-196
-197
-198
-199
-200
-201
-202
-203
-204
-205
-206
-207
-208
-209
-210
-211
-212
-213
-214
-215
-216
-217
-218
-219
-220
-221
-222
-223
-224
-225
-226
-227
-228
-229
-230
-231
-232
-233
-234
-235
-236
-237
-238
-239
-240
-241
-242
-243
-244
-245
-246
-247
-248
-249
-250
-251
-252
-253
-254
-255
-256
-257
-258
-259
-260
-261
-262
-263
-264
-265
-266
-267
-268
-269
-270
-271
-272
-273
-274
-275
-276
-277
-278
-279
-280
-281
-282
-283
-284
-285
-286
-287
-288
-289
-290
-291
-292
-293
-294
-295
-296
-297
-298
-299
-300
-301
-302
-303
-304
-305
-306
-307
-308
-309
-310
-311
-312
-313
-314
-315
-316
-317
-318
-319
-320
-321
-322
-323
-324
-325
-326
-327
-328
-329
-330
-331
-332
-333
-334
-335
-336
-337
-338
-339
-340
-341
-342
-343
-344
-345
-346
-347
-348
-349
-350
-351
-352
-353
-354
-355
-356
-357
-358
-359
-360
-361
-362
-363
-364
-365
-366
-367
-368
-369
-370
-371
-372
-373
-374
-375
-376
-377
-378
-379
-380
-381
-382
-383
-384
-385
-386
-387
-388
-389
-390
-391
-392
-393
-394
-395
-396
-397
-398
-399 |
-
-1×
-
-
-
-
-
-
-
-1×
-
-
-
-4×
-4×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4×
-
-4×
-
-
-
-
-
-
-4×
-
-
-
-
-
-
-4×
-
-
-
-4×
-
-
-
-
-4×
-4×
-
-
-
-
-
-
-
-
-
-1×
-2×
-
-2×
-2×
-2×
-
-2×
-
-
-
-2×
-
-
-2×
-
-2×
-
-
-
-
-
-2×
-
-
-
-2×
-
-
-
-
-
-1×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1×
-2×
-2×
-2×
-
-2×
-2×
-
-
-
-
-2×
-
-
-
-2×
-
-2×
-
-
-
-2×
-
-2×
-
-2×
-
-
-
-1×
-2×
-2×
-
-
-
-
-
-
-
-
-
-2×
-2×
-
-
-2×
-
-2×
-
-
-
-
-2×
-
-2×
-
-2×
-2×
-2×
-
-
-2×
-2×
-
-
-2×
-
-2×
-
-
-
-
-
-
-
-1×
-2×
-
-
-
-
-
-1×
-4×
-
-4×
-2×
-
-
-4×
-4×
-
-
-
-
-4×
-
-
-
-
-
-
-
-
-4×
-
-
-
-
-4×
-
-
-2×
-
-
-
-2×
-2×
-
-2×
-
-
-2×
-
-2×
-
-
-
-4×
-
-
-
-
-4×
-
-
-
-
-1×
-4×
-
-
-
-
-4×
-2×
-2×
-2×
-
-
-
-
-
-
-2×
-
-
-2×
-2×
-
-
-2×
-
-
-
-
-4×
-
-
-
-
-
-
-
-
-
-
-
-4×
-
-4×
-1×
-1×
-1×
-1×
-1×
-
-
-1×
-
-
-
-
-1×
-
-
-3×
-1×
-1×
-
-
-
-
-1×
-
-
-2×
-
-2×
-
-
-
-
-2×
-
-
-
-
-
-
-
-1×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1×
-2×
-2×
-
-
-
-
-
-
-2×
-
-
-
-
-
-
-
-
-
-
-
-
-1×
- | 'use strict';
-
-const net = require('net'),
- tls = require('tls'),
- fs = require('fs'),
- dgram = require('dgram'),
- EventParser = require('../entities/EventParser.js'),
- Message = require('js-message'),
- Events = require('event-pubsub');
-
-let eventParser = new EventParser();
-
-class Server extends Events{
- constructor(path,config,log,port){
- super();
- Object.assign(
- this,
- {
- config : config,
- path : path,
- port : port,
- udp4 : false,
- udp6 : false,
- log : log,
- server : false,
- sockets : [],
- emit : emit,
- broadcast : broadcast
- }
- );
-
- eventParser=new EventParser(this.config);
-
- this.on(
- 'close',
- serverClosed.bind(this)
- );
- }
-
- onStart(socket){
- this.trigger(
- 'start',
- socket
- );
- }
-
- stop(){
- this.server.close();
- }
-
- start(){
- Iif(!this.path){
- this.log('Socket Server Path not specified, refusing to start');
- return;
- }
-
- Eif(this.config.unlink){
- fs.unlink(
- this.path,
- startServer.bind(this)
- );
- }else{
- startServer.bind(this)();
- }
- }
-}
-
-function emit(socket, type, data){
- this.log('dispatching event to socket', ' : ', type, data);
-
- let message=new Message;
- message.type=type;
- message.data=data;
-
- Iif(this.config.rawBuffer){
- this.log(this.config.encoding)
- message=Buffer.from(type,this.config.encoding);
- }else{
- message=eventParser.format(message);
- }
-
- Eif(this.udp4 || this.udp6){
-
- Iif(!socket.address || !socket.port){
- this.log('Attempting to emit to a single UDP socket without supplying socket address or port. Redispatching event as broadcast to all connected sockets');
- this.broadcast(type,data);
- return;
- }
-
- this.server.write(
- message,
- socket
- );
- return;
- }
-
- socket.write(message);
-}
-
-function broadcast(type,data){
- this.log('broadcasting event to all known sockets listening to ', this.path,' : ', ((this.port)?this.port:''), type, data);
- let message=new Message;
- message.type=type;
- message.data=data;
-
- if(this.config.rawBuffer){
- message=Buffer.from(type,this.config.encoding);
- }else{
- message=eventParser.format(message);
- }
-
- if(this.udp4 || this.udp6){
- for(let i=1, count=this.sockets.length; i<count; i++){
- this.server.write(message,this.sockets[i]);
- }
- }else{
- for(let i=0, count=this.sockets.length; i<count; i++){
- this.sockets[i].write(message);
- }
- }
-}
-
-function serverClosed(){
- for(let i=0, count=this.sockets.length; i<count; i++){
- let socket=this.sockets[i];
- let destroyedSocketId=false;
-
- Eif(socket){
- Iif(socket.readable){
- continue;
- }
- }
-
- Iif(socket.id){
- destroyedSocketId=socket.id;
- }
-
- this.log('socket disconnected',destroyedSocketId.toString());
-
- Iif(socket && socket.destroy){
- socket.destroy();
- }
-
- this.sockets.splice(i,1);
-
- this.publish('socket.disconnected', socket, destroyedSocketId);
-
- return;
- }
-}
-
-function gotData(socket,data,UDPSocket){
- let sock=((this.udp4 || this.udp6)? UDPSocket : socket);
- Iif(this.config.rawBuffer){
- data=Buffer.from(data,this.config.encoding);
- this.publish(
- 'data',
- data,
- sock
- );
- return;
- }
-
- Eif(!sock.ipcBuffer){
- sock.ipcBuffer='';
- }
-
- data=(sock.ipcBuffer+=data);
-
- Iif(data.slice(-1)!=eventParser.delimiter || data.indexOf(eventParser.delimiter) == -1){
- this.log('Messages are large, You may want to consider smaller messages.');
- return;
- }
-
- sock.ipcBuffer='';
-
- data=eventParser.parse(data);
-
- while(data.length>0){
- let message=new Message;
- message.load(data.shift());
-
- // Only set the sock id if it is specified.
- Eif (message.data && message.data.id){
- sock.id=message.data.id;
- }
-
- this.log('received event of : ',message.type,message.data);
-
- this.publish(
- message.type,
- message.data,
- sock
- );
- }
-}
-
-function socketClosed(socket){
- this.publish(
- 'close',
- socket
- );
-}
-
-function serverCreated(socket) {
- this.sockets.push(socket);
-
- if(socket.setEncoding){
- socket.setEncoding(this.config.encoding);
- }
-
- this.log('## socket connection to server detected ##');
- socket.on(
- 'close',
- socketClosed.bind(this)
- );
-
- socket.on(
- 'error',
- function(err){
- this.log('server socket error',err);
-
- this.publish('error',err);
- }.bind(this)
- );
-
- socket.on(
- 'data',
- gotData.bind(this,socket)
- );
-
- socket.on(
- 'message',
- function(msg,rinfo) {
- Iif (!rinfo){
- return;
- }
-
- this.log('Received UDP message from ', rinfo.address, rinfo.port);
- let data;
-
- Iif(this.config.rawSocket){
- data=Buffer.from(msg,this.config.encoding);
- }else{
- data=msg.toString();
- }
- socket.emit('data',data,rinfo);
- }.bind(this)
- );
-
- this.publish(
- 'connect',
- socket
- );
-
- Iif(this.config.rawBuffer){
- return;
- }
-}
-
-function startServer() {
- this.log(
- 'starting server on ',this.path,
- ((this.port)?`:${this.port}`:'')
- );
-
- if(!this.udp4 && !this.udp6){
- this.log('starting TLS server',this.config.tls);
- Eif(!this.config.tls){
- this.server=net.createServer(
- serverCreated.bind(this)
- );
- }else{
- startTLSServer.bind(this)();
- }
- }else{
- this.server=dgram.createSocket(
- ((this.udp4)? 'udp4':'udp6')
- );
- this.server.write=UDPWrite.bind(this);
- this.server.on(
- 'listening',
- function UDPServerStarted() {
- serverCreated.bind(this)(this.server);
- }.bind(this)
- );
- }
-
- this.server.on(
- 'error',
- function(err){
- this.log('server error',err);
-
- this.publish(
- 'error',
- err
- );
- }.bind(this)
- );
-
- this.server.maxConnections=this.config.maxConnections;
-
- if(!this.port){
- this.log('starting server as', 'Unix || Windows Socket');
- Eif (process.platform ==='win32'){
- this.path = this.path.replace(/^\//, '');
- this.path = this.path.replace(/\//g, '-');
- this.path= `\\\\.\\pipe\\${this.path}`;
- }
-
- this.server.listen(
- this.path,
- this.onStart.bind(this)
- );
-
- return;
- }
-
- if(!this.udp4 && !this.udp6){
- this.log('starting server as', (this.config.tls?'TLS':'TCP'));
- this.server.listen(
- this.port,
- this.path,
- this.onStart.bind(this)
- );
- return;
- }
-
- this.log('starting server as',((this.udp4)? 'udp4':'udp6'));
-
- this.server.bind(
- this.port,
- this.path
- );
-
- this.onStart(
- {
- address : this.path,
- port : this.port
- }
- );
-}
-
-function startTLSServer(){
- this.log('starting TLS server',this.config.tls);
- if(this.config.tls.private){
- this.config.tls.key=fs.readFileSync(this.config.tls.private);
- }else{
- this.config.tls.key=fs.readFileSync(`${__dirname}/../local-node-ipc-certs/private/server.key`);
- }
- if(this.config.tls.public){
- this.config.tls.cert=fs.readFileSync(this.config.tls.public);
- }else{
- this.config.tls.cert=fs.readFileSync(`${__dirname}/../local-node-ipc-certs/server.pub`);
- }
- if(this.config.tls.dhparam){
- this.config.tls.dhparam=fs.readFileSync(this.config.tls.dhparam);
- }
- if(this.config.tls.trustedConnections){
- if(typeof this.config.tls.trustedConnections === 'string'){
- this.config.tls.trustedConnections=[this.config.tls.trustedConnections];
- }
- this.config.tls.ca=[];
- for(let i=0; i<this.config.tls.trustedConnections.length; i++){
- this.config.tls.ca.push(
- fs.readFileSync(this.config.tls.trustedConnections[i])
- );
- }
- }
- this.server=tls.createServer(
- this.config.tls,
- serverCreated.bind(this)
- );
-}
-
-function UDPWrite(message,socket){
- let data=Buffer.from(message, this.config.encoding);
- this.server.send(
- data,
- 0,
- data.length,
- socket.port,
- socket.address,
- function(err, bytes) {
- Iif(err){
- this.log('error writing data to socket',err);
- this.publish(
- 'error',
- function(err){
- this.publish('error',err);
- }
- );
- }
- }
- );
-}
-
-module.exports=Server;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/entities/Defaults.js.html b/spec/coverage/lcov-report/node-ipc/entities/Defaults.js.html
deleted file mode 100644
index ad0ad4a..0000000
--- a/spec/coverage/lcov-report/node-ipc/entities/Defaults.js.html
+++ /dev/null
@@ -1,305 +0,0 @@
-
-
-
- Code coverage report for node-ipc\entities\Defaults.js
-
-
-
-
-
-
-
-
-
-
-
-
- 96.55%
- Statements
- 28/29
-
-
- 57.14%
- Branches
- 4/7
-
-
- 100%
- Functions
- 2/2
-
-
- 96.55%
- Lines
- 28/29
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81 |
-
-
-
-
-
-
-
-1×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-3×
-3×
-3×
-
-3×
-3×
-3×
-3×
-
-3×
-
-3×
-3×
-3×
-3×
-
-3×
-3×
-3×
-3×
-
-3×
-3×
-3×
-3×
-
-3×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1×
-3×
-3×
-3×
-
-
-
-
-
-
-
-3×
-
-
-1×
- | 'use strict';
-
-/*eslint no-magic-numbers: ["error", { "ignore": [ 0] }]*/
-
-/**
- * @module entities
- */
-
-const os = require('os');
-
-/**
- * @class Defaults
- * @description Defaults Entity
- */
-class Defaults{
-
- /**
- * @constructor
- * @method constructor
- * @return {void}
- */
- constructor(){
-
- this.appspace='app.';
- this.socketRoot='/tmp/';
- this.id=os.hostname();
-
- this.encoding='utf8';
- this.rawBuffer=false;
- this.sync=false;
- this.unlink=true;
-
- this.delimiter='\f';
-
- this.silent=false;
- this.logDepth=5;
- this.logInColor=true;
- this.logger=console.log.bind(console);
-
- this.maxConnections=100;
- this.retry=500;
- this.maxRetries=Infinity;
- this.stopRetrying=false;
-
- this.IPType=getIPType();
- this.tls=false;
- this.networkHost = (this.IPType == 'IPv6') ? '::1' : '127.0.0.1';
- this.networkPort = 8000;
-
- this.interface={
- localAddress:false,
- localPort:false,
- family:false,
- hints:false,
- lookup:false
- }
- }
-}
-
-/**
- * method to get ip type
- *
- * @method getIPType
- * @return {string} ip type
- */
-function getIPType() {
- const networkInterfaces = os.networkInterfaces();
- let IPType = '';
- Iif (networkInterfaces
- && Array.isArray(networkInterfaces)
- && networkInterfaces.length > 0) {
- // getting the family of first network interface available
- IPType = networkInterfaces [
- Object.keys( networkInterfaces )[0]
- ][0].family;
- }
- return IPType;
-}
-
-module.exports=Defaults;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/entities/EventParser.js.html b/spec/coverage/lcov-report/node-ipc/entities/EventParser.js.html
deleted file mode 100644
index 5a2d808..0000000
--- a/spec/coverage/lcov-report/node-ipc/entities/EventParser.js.html
+++ /dev/null
@@ -1,161 +0,0 @@
-
-
-
- Code coverage report for node-ipc\entities\EventParser.js
-
-
-
-
-
-
-
-
-
-
-
-
- 85.71%
- Statements
- 12/14
-
-
- 55.56%
- Branches
- 5/9
-
-
- 100%
- Functions
- 3/3
-
-
- 85.71%
- Lines
- 12/14
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33 |
-
-1×
-
-
-
-13×
-2×
-
-13×
-
-
-
-9×
-
-
-9×
-
-
-
-9×
-9×
-
-
-
-9×
-9×
-9×
-
-
-
-1×
- | 'use strict';
-
-const Defaults = require('./Defaults.js');
-
-class Parser{
- constructor(config){
- if(!config){
- config=new Defaults;
- }
- this.delimiter=config.delimiter;
- }
-
- format(message){
- Iif(!message.data && message.data!==false && message.data!==0){
- message.data={};
- }
- Iif(message.data['_maxListeners']){
- message.data={};
- }
-
- message=message.JSON+this.delimiter;
- return message;
- }
-
- parse(data){
- let events=data.split(this.delimiter);
- events.pop();
- return events;
- }
-}
-
-module.exports=Parser;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/entities/LogColors.js.html b/spec/coverage/lcov-report/node-ipc/entities/LogColors.js.html
deleted file mode 100644
index 552481b..0000000
--- a/spec/coverage/lcov-report/node-ipc/entities/LogColors.js.html
+++ /dev/null
@@ -1,110 +0,0 @@
-
-
-
- Code coverage report for node-ipc/entities/LogColors.js
-
-
-
-
-
-
-
-
-
-
-
-
- 100%
- Statements
- 8/8
-
-
- 100%
- Branches
- 0/0
-
-
- 100%
- Functions
- 1/1
-
-
- 100%
- Lines
- 8/8
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16 |
-
-
-
-1×
-1×
-1×
-1×
-1×
-1×
-1×
-
-
-
-1×
- | 'use strict';
-
-class LogColors{
- constructor(){
- this.good='green';
- this.notice='yellow';
- this.warn='red';
- this.error='redBG';
- this.debug='magenta';
- this.variable='cyan';
- this.data='blue';
- }
-}
-
-module.exports=LogColors;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/entities/index.html b/spec/coverage/lcov-report/node-ipc/entities/index.html
deleted file mode 100644
index 182cf28..0000000
--- a/spec/coverage/lcov-report/node-ipc/entities/index.html
+++ /dev/null
@@ -1,106 +0,0 @@
-
-
-
- Code coverage report for node-ipc\entities\
-
-
-
-
-
-
-
-
-
-
- all files node-ipc/entities/
-
-
-
- 93.02%
- Statements
- 40/43
-
-
- 56.25%
- Branches
- 9/16
-
-
- 100%
- Functions
- 5/5
-
-
- 93.02%
- Lines
- 40/43
-
-
-
-
-
-
-
-
- File |
- |
- Statements |
- |
- Branches |
- |
- Functions |
- |
- Lines |
- |
-
-
-
- Defaults.js |
- |
- 96.55% |
- 28/29 |
- 57.14% |
- 4/7 |
- 100% |
- 2/2 |
- 96.55% |
- 28/29 |
-
-
-
- EventParser.js |
- |
- 85.71% |
- 12/14 |
- 55.56% |
- 5/9 |
- 100% |
- 3/3 |
- 85.71% |
- 12/14 |
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/index.html b/spec/coverage/lcov-report/node-ipc/index.html
deleted file mode 100644
index 759b138..0000000
--- a/spec/coverage/lcov-report/node-ipc/index.html
+++ /dev/null
@@ -1,93 +0,0 @@
-
-
-
- Code coverage report for node-ipc\
-
-
-
-
-
-
-
-
-
-
-
-
- 100%
- Statements
- 4/4
-
-
- 100%
- Branches
- 0/0
-
-
- 100%
- Functions
- 1/1
-
-
- 100%
- Lines
- 4/4
-
-
-
-
-
-
-
-
- File |
- |
- Statements |
- |
- Branches |
- |
- Functions |
- |
- Lines |
- |
-
-
-
- node-ipc.js |
- |
- 100% |
- 4/4 |
- 100% |
- 0/0 |
- 100% |
- 1/1 |
- 100% |
- 4/4 |
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/lib/client.js.html b/spec/coverage/lcov-report/node-ipc/lib/client.js.html
deleted file mode 100644
index 7e44587..0000000
--- a/spec/coverage/lcov-report/node-ipc/lib/client.js.html
+++ /dev/null
@@ -1,773 +0,0 @@
-
-
-
- Code coverage report for node-ipc/lib/client.js
-
-
-
-
-
-
-
-
-
-
-
-
- 72.82%
- Statements
- 75/103
-
-
- 52.38%
- Branches
- 22/42
-
-
- 100%
- Functions
- 10/10
-
-
- 72.82%
- Lines
- 75/103
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-176
-177
-178
-179
-180
-181
-182
-183
-184
-185
-186
-187
-188
-189
-190
-191
-192
-193
-194
-195
-196
-197
-198
-199
-200
-201
-202
-203
-204
-205
-206
-207
-208
-209
-210
-211
-212
-213
-214
-215
-216
-217
-218
-219
-220
-221
-222
-223
-224
-225
-226
-227
-228
-229
-230
-231
-232
-233
-234
-235
-236
-237 |
-
-1×
-
-
-
-
-
-
-
-1×
-7×
-
-
-
-
-
-
-
-
-
-7×
-
-7×
-
-
-1×
-7×
-
-7×
-7×
-7×
-
-7×
-
-
-7×
-
-
-7×
-1×
-1×
-
-
-6×
-
-
-
-
-1×
-6×
-6×
-
-
-1×
-
-13×
-
-13×
-13×
-
-
-
-
-13×
-7×
-
-7×
-
-7×
-
-
-
-
-7×
-
-
-
-
-
-6×
-6×
-6×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-13×
-
-13×
-
-
-10×
-10×
-
-
-
-
-13×
-
-
-3×
-3×
-3×
-
-
-
-13×
-
-
-13×
-
-13×
-
-
-
-7×
-7×
-
-
-
-
-
-7×
-7×
-7×
-
-7×
-
-
-6×
-
-6×
-
-6×
-6×
-6×
-6×
-
-6×
-2×
-
-
-
-
-
-
-
-
-6×
-
-
-
-13×
-
-
-7×
-7×
-
-
-
-
-
-
-
-
-
-
-
-
-7×
-7×
-
-
-7×
-
-7×
-
-
-
-
-7×
-
-7×
-7×
-7×
-7×
-7×
-
-7×
-7×
-
-
-
-
-
-7×
-
-
-
-7×
-
-
-
-
-1×
- | 'use strict';
-
-const net = require('net'),
- tls = require('tls'),
- eventParser = require('../lib/eventParser.js'),
- Pubsub = require('event-pubsub'),
- Message = require('js-message'),
- fs = require('fs'),
- Queue = require('js-queue');
-
-function init(config,log){
- let client={
- config : config,
- queue : new Queue,
- socket : false,
- connect : connect,
- emit : emit,
- log : log,
- retriesRemaining:config.maxRetries||0
- };
-
- new Pubsub(client);
-
- return client;
-}
-
-function emit(type,data){
- this.log('dispatching event to '.debug, this.id.variable, this.path.variable,' : ', type.data,',', data);
-
- let message=new Message;
- message.type=type;
- message.data=data;
-
- Iif(this.config.rawBuffer){
- message=new Buffer(type,this.encoding);
- }else{
- message=eventParser.format(message);
- }
-
- if(!this.config.sync){
- this.socket.write(message);
- return;
- }
-
- this.queue.add(
- syncEmit.bind(this,message)
- );
-}
-
-function syncEmit(message){
- this.log('dispatching event to '.debug, this.id.variable, this.path.variable,' : ', message.data);
- this.socket.write(message);
-}
-
-function connect(){
- //init client object for scope persistance especially inside of socket events.
- let client=this;
-
- client.log('requested connection to '.debug, client.id.variable, client.path.variable);
- Iif(!this.path){
- client.log('\n\n######\nerror: '.error, client.id .info,' client has not specified socket path it wishes to connect to.'.error);
- return;
- }
-
- if(!client.port){
- client.log('Connecting client on Unix Socket :'.debug, client.path.variable);
-
- let path = client.path;
-
- Iif (process.platform ==='win32' && !client.path.startsWith('\\\\.\\pipe\\')){
- path = path.replace(/^\//, '');
- path = path.replace(/\//g, '-');
- path= '\\\\.\\pipe\\'+path;
- }
- client.socket = net.connect(
- {
- path: path
- }
- );
- }else{
- Eif(!client.config.tls){
- client.log('Connecting client via TCP to'.debug, client.path.variable ,client.port);
- client.socket = net.connect(
- {
- port:client.port,
- host:client.path
- }
- );
- }else{
- client.log('Connecting client via TLS to'.debug, client.path.variable ,client.port,client.config.tls);
- if(client.config.tls.private){
- client.config.tls.key=fs.readFileSync(client.config.tls.private);
- }
- if(client.config.tls.public){
- client.config.tls.cert=fs.readFileSync(client.config.tls.public);
- }
- if(client.config.tls.trustedConnections){
- if(typeof client.config.tls.trustedConnections === 'string'){
- client.config.tls.trustedConnections=[client.config.tls.trustedConnections];
- }
- client.config.tls.ca=[];
- for(let i=0; i<client.config.tls.trustedConnections.length; i++){
- client.config.tls.ca.push(
- fs.readFileSync(client.config.tls.trustedConnections[i])
- );
- }
- }
-
- client.config.tls.host=client.path;
- client.config.tls.port=client.port;
-
- client.socket = tls.connect(
- client.config.tls
- );
- }
- }
-
- client.socket.setEncoding(this.config.encoding);
-
- client.socket.on(
- 'error',
- function(err){
- client.log('\n\n######\nerror: '.error, err);
- client.trigger('error', err);
-
- }
- );
-
- client.socket.on(
- 'connect',
- function connectionMade(){
- client.trigger('connect');
- client.retriesRemaining=client.config.maxRetries;
- client.log('retrying reset');
- }
- );
-
- client.socket.on(
- 'close',
- function connectionClosed(){
- client.log('connection closed'.notice ,client.id.variable , client.path.variable, client.retriesRemaining+' tries remaining of '+client.config.maxRetries);
-
- if(
- client.config.stopRetrying || client.retriesRemaining<1
-
- ){
- client.trigger('disconnect');
- client.log(
- client.config.id.variable,
- 'exceeded connection rety amount of'.warn,
- ' or stopRetrying flag set.'
- );
-
- client.socket.destroy();
- client.trigger('destroy');
- client=undefined;
-
- return;
- }
-
- client.isRetrying=true;
-
- setTimeout(
- function retryTimeout(){
- client.retriesRemaining--;
- client.isRetrying=false;
- client.connect();
- setTimeout(
- function resetRetriesCheck(){
- if(!client.isRetrying){
- client.retriesRemaining=client.config.maxRetries;
- }
- },
- 100
- );
- }.bind(null,client),
- client.config.retry
- );
-
- client.trigger('disconnect');
- }
- );
-
- client.socket.on(
- 'data',
- function(data) {
- client.log('## recieved events ##'.rainbow);
- Iif(client.config.rawBuffer){
- client.trigger(
- 'data',
- new Buffer(data,this.encoding)
- );
- if(!client.config.sync){
- return;
- }
-
- client.queue.next();
- return;
- }
-
- Eif(!this.ipcBuffer){
- this.ipcBuffer='';
- }
-
- data=(this.ipcBuffer+=data);
-
- Iif(data.slice(-1)!=eventParser.delimiter || data.indexOf(eventParser.delimiter) == -1){
- client.log('Implementing larger buffer for this socket message. You may want to consider smaller messages'.notice);
- return;
- }
-
- this.ipcBuffer='';
-
- const events = eventParser.parse(data);
- const eCount = events.length;
- for(let i=0; i<eCount; i++){
- let message=new Message;
- message.load(events[i]);
-
- client.log('detected event of type '.debug, message.type.data, message.data);
- client.trigger(
- message.type,
- message.data
- );
- }
-
- Iif(!client.config.sync){
- return;
- }
-
- client.queue.next();
- }
- );
-}
-
-module.exports=init;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/lib/eventParser.js.html b/spec/coverage/lcov-report/node-ipc/lib/eventParser.js.html
deleted file mode 100644
index 1f53042..0000000
--- a/spec/coverage/lcov-report/node-ipc/lib/eventParser.js.html
+++ /dev/null
@@ -1,146 +0,0 @@
-
-
-
- Code coverage report for node-ipc/lib/eventParser.js
-
-
-
-
-
-
-
-
-
-
-
-
- 84.62%
- Statements
- 11/13
-
-
- 50%
- Branches
- 2/4
-
-
- 100%
- Functions
- 2/2
-
-
- 84.62%
- Lines
- 11/13
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28 |
-
-1×
-
-
-
-
-
-1×
-9×
-
-
-9×
-
-
-
-9×
-9×
-
-
-1×
-9×
-9×
-9×
-
-
-1×
- | 'use strict';
-
-const parser={
- parse : parseDataEvents,
- format : formatData,
- delimiter : '\f'
-};
-
-function formatData(message){
- Iif(!message.data){
- message.data={};
- }
- Iif(message.data['_maxListeners']){
- message.data={};
- }
-
- message=message.JSON+parser.delimiter;
- return message;
-}
-
-function parseDataEvents(data){
- let events=data.split(parser.delimiter);
- events.pop();
- return events;
-}
-
-module.exports=parser;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/lib/index.html b/spec/coverage/lcov-report/node-ipc/lib/index.html
deleted file mode 100644
index ff24c20..0000000
--- a/spec/coverage/lcov-report/node-ipc/lib/index.html
+++ /dev/null
@@ -1,119 +0,0 @@
-
-
-
- Code coverage report for node-ipc/lib/
-
-
-
-
-
-
-
-
-
-
-
-
- 67.79%
- Statements
- 181/267
-
-
- 54.55%
- Branches
- 72/132
-
-
- 87.1%
- Functions
- 27/31
-
-
- 67.79%
- Lines
- 181/267
-
-
-
-
-
-
-
-
- File |
- |
- Statements |
- |
- Branches |
- |
- Functions |
- |
- Lines |
- |
-
-
-
- client.js |
- |
- 72.82% |
- 75/103 |
- 52.38% |
- 22/42 |
- 100% |
- 10/10 |
- 72.82% |
- 75/103 |
-
-
-
- eventParser.js |
- |
- 84.62% |
- 11/13 |
- 50% |
- 2/4 |
- 100% |
- 2/2 |
- 84.62% |
- 11/13 |
-
-
-
- socketServer.js |
- |
- 62.91% |
- 95/151 |
- 55.81% |
- 48/86 |
- 78.95% |
- 15/19 |
- 62.91% |
- 95/151 |
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/lib/socketServer.js.html b/spec/coverage/lcov-report/node-ipc/lib/socketServer.js.html
deleted file mode 100644
index 9122b9b..0000000
--- a/spec/coverage/lcov-report/node-ipc/lib/socketServer.js.html
+++ /dev/null
@@ -1,1172 +0,0 @@
-
-
-
- Code coverage report for node-ipc/lib/socketServer.js
-
-
-
-
-
-
-
-
-
-
-
-
- 62.91%
- Statements
- 95/151
-
-
- 55.81%
- Branches
- 48/86
-
-
- 78.95%
- Functions
- 15/19
-
-
- 62.91%
- Lines
- 95/151
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-176
-177
-178
-179
-180
-181
-182
-183
-184
-185
-186
-187
-188
-189
-190
-191
-192
-193
-194
-195
-196
-197
-198
-199
-200
-201
-202
-203
-204
-205
-206
-207
-208
-209
-210
-211
-212
-213
-214
-215
-216
-217
-218
-219
-220
-221
-222
-223
-224
-225
-226
-227
-228
-229
-230
-231
-232
-233
-234
-235
-236
-237
-238
-239
-240
-241
-242
-243
-244
-245
-246
-247
-248
-249
-250
-251
-252
-253
-254
-255
-256
-257
-258
-259
-260
-261
-262
-263
-264
-265
-266
-267
-268
-269
-270
-271
-272
-273
-274
-275
-276
-277
-278
-279
-280
-281
-282
-283
-284
-285
-286
-287
-288
-289
-290
-291
-292
-293
-294
-295
-296
-297
-298
-299
-300
-301
-302
-303
-304
-305
-306
-307
-308
-309
-310
-311
-312
-313
-314
-315
-316
-317
-318
-319
-320
-321
-322
-323
-324
-325
-326
-327
-328
-329
-330
-331
-332
-333
-334
-335
-336
-337
-338
-339
-340
-341
-342
-343
-344
-345
-346
-347
-348
-349
-350
-351
-352
-353
-354
-355
-356
-357
-358
-359
-360
-361
-362
-363
-364
-365
-366
-367
-368
-369
-370 |
-
-1×
-
-
-
-
-
-
-
-1×
-2×
-
-2×
-2×
-2×
-
-2×
-
-
-2×
-
-
-2×
-
-2×
-
-
-
-
-
-2×
-
-
-
-2×
-
-
-
-
-
-1×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1×
-4×
-
-
-
-
-
-
-
-
-
-
-
-4×
-
-
-
-
-
-4×
-
-
-4×
-
-
-
-
-4×
-
-
-4×
-
-4×
-2×
-2×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1×
-2×
-2×
-
-
-
-
-
-
-2×
-
-
-
-
-
-
-
-
-
-
-
-
-2×
-
-
-2×
-2×
-
-
-2×
-
-
-
-
-4×
-
-
-
-
-
-
-
-
-
-
-
-4×
-
-1×
-4×
-
-4×
-2×
-
-
-4×
-4×
-
-
-2×
-
-
-
-
-
-
-4×
-
-
-
-
-
-
-
-
-4×
-
-
-2×
-2×
-
-
-
-
-
-
-
-
-
-2×
-2×
-
-
-2×
-
-2×
-
-
-
-
-2×
-
-2×
-
-2×
-2×
-2×
-
-2×
-
-2×
-2×
-
-2×
-
-
-
-
-
-
-
-
-4×
-
-
-2×
-
-
-
-2×
-2×
-
-2×
-
-
-2×
-
-2×
-
-
-
-4×
-
-
-
-
-4×
-
-
-
-
-1×
-4×
-
-
-4×
-1×
-1×
-
-
-
-
-
-1×
-
-
-
-
-1×
-
-
-3×
-1×
-1×
-
-
-
-
-1×
-
-
-2×
-2×
-
-
-
-
-2×
-
-
-
-
-
-
-
-
-
-
-4×
-
-4×
-
-
-2×
-2×
-2×
-
-2×
-2×
-
-
-
-
-2×
-
-
-
-2×
-
-2×
-
-
-
-2×
-
-2×
-
-2×
-
-
-
-
-4×
-
-
-1×
- | 'use strict';
-
-const net = require('net'),
- tls = require('tls'),
- fs = require('fs'),
- dgram = require('dgram'),
- eventParser = require('../lib/eventParser.js'),
- Pubsub = require('event-pubsub'),
- Message = require('js-message');
-
-function emit(socket, type, data){
- this.log('dispatching event to socket'.debug, ' : ', type.data, data);
-
- let message=new Message;
- message.type=type;
- message.data=data;
-
- Iif(this.config.rawBuffer){
- message=new Buffer(type,this.encoding);
- }else{
- message=eventParser.format(message);
- }
-
- Eif(this.udp4 || this.udp6){
-
- Iif(!socket.address || !socket.port){
- this.log('Attempting to emit to a single UDP socket without supplying socket address or port. Redispatching event as broadcast to all connected sockets');
- this.broadcast(type,data);
- return;
- }
-
- this.server.write(
- message,
- socket
- );
- return;
- }
-
- socket.write(message);
-}
-
-function broadcast(type,data){
- this.log('broadcasting event to all known sockets listening to '.debug, this.path.variable,' : ', ((this.port)?this.port:''), type, data);
- let message=new Message;
- message.type=type;
- message.data=data;
-
- if(this.config.rawBuffer){
- message=new Buffer(type,this.encoding);
- }else{
- message=eventParser.format(message);
- }
-
- if(this.udp4 || this.udp6){
- for(let i=1, count=this.sockets.length; i<count; i++){
- this.server.write(message,this.sockets[i]);
- }
- }else{
- for(let i=0, count=this.sockets.length; i<count; i++){
- this.sockets[i].write(message);
- }
- }
-}
-
-function init(path,config,log,port){
- let server={
- config : config,
- path : path,
- port : port,
- udp4 : false,
- udp6 : false,
- log : log,
- server : false,
- sockets : [],
- emit : emit,
- broadcast : broadcast,
- onStart : function onStart(socket){
- this.trigger(
- 'start',
- socket
- );
- },
- stop:function stop(){
- server.server.close();
- },
- start : function start(){
- Iif(!this.path){
- server.log('Socket Server Path not specified, refusing to start'.warn);
- return;
- }
-
- fs.unlink(
- this.path,
- function () {
- server.log('starting server on '.debug,server.path.variable,((server.port)?':'+server.port:'').variable);
-
- if(!server.udp4 && !server.udp6){
- Eif(!server.config.tls){
- server.server=net.createServer(
- serverCreated
- );
- }else{
- server.log('starting TLS server'.debug,server.config.tls);
- if(server.config.tls.private){
- server.config.tls.key=fs.readFileSync(server.config.tls.private);
- }else{
- server.config.tls.key=fs.readFileSync(__dirname+'/../local-node-ipc-certs/private/server.key');
- }
- if(server.config.tls.public){
- server.config.tls.cert=fs.readFileSync(server.config.tls.public);
- }else{
- server.config.tls.cert=fs.readFileSync(__dirname+'/../local-node-ipc-certs/server.pub');
- }
- if(server.config.tls.dhparam){
- server.config.tls.dhparam=fs.readFileSync(server.config.tls.dhparam);
- }
- if(server.config.tls.trustedConnections){
- if(typeof server.config.tls.trustedConnections === 'string'){
- server.config.tls.trustedConnections=[server.config.tls.trustedConnections];
- }
- server.config.tls.ca=[];
- for(let i=0; i<server.config.tls.trustedConnections.length; i++){
- server.config.tls.ca.push(
- fs.readFileSync(server.config.tls.trustedConnections[i])
- );
- }
- }
- server.server=tls.createServer(
- server.config.tls,
- serverCreated
- );
- }
- }else{
- function UDPWrite(message,socket){
- let data=new Buffer(message, server.config.encoding);
- server.server.send(
- data,
- 0,
- data.length,
- socket.port,
- socket.address,
- function(err, bytes) {
- Iif(err){
- server.log('error writing data to socket'.warn,err);
- server.trigger(
- 'error',
- function(err){
- server.trigger('error',err);
- }
- );
- }
- }
- );
- }
-
- server.server=dgram.createSocket(
- ((server.udp4)? 'udp4':'udp6')
- );
- server.server.write=UDPWrite;
- server.server.on(
- 'listening',
- function () {
- serverCreated(server.server);
- }
- );
- }
-
- server.server.on(
- 'error',
- function(err){
- server.log('server error'.warn,err);
-
- server.trigger(
- 'error',
- err
- );
- }
- );
-
- server.server.maxConnections=server.config.maxConnections;
-
- function serverCreated(socket) {
- server.sockets.push(socket);
-
- if(socket.setEncoding){
- socket.setEncoding(server.config.encoding);
- }
-
- server.log('## socket connection to server detected ##'.rainbow);
- socket.on(
- 'close',
- function(socket){
- server.trigger(
- 'close',
- socket
- );
- }
- );
-
- socket.on(
- 'error',
- function(err){
- server.log('server socket error'.warn,err);
-
- server.trigger('error',err);
- }
- );
-
- socket.on(
- 'data',
- function(data,UDPSocket){
- let sock=((server.udp4 || server.udp6)? UDPSocket : socket);
- Iif(server.config.rawBuffer){
- data=new Buffer(data,this.encoding);
- server.trigger(
- 'data',
- data,
- sock
- );
- return;
- }
-
- Eif(!this.ipcBuffer){
- this.ipcBuffer='';
- }
-
- data=(this.ipcBuffer+=data);
-
- Iif(data.slice(-1)!=eventParser.delimiter || data.indexOf(eventParser.delimiter) == -1){
- server.log('Implementing larger buffer for this socket message. You may want to consider smaller messages'.notice);
- return;
- }
-
- this.ipcBuffer='';
-
- data=eventParser.parse(data);
-
- while(data.length>0){
- let message=new Message;
- message.load(data.shift());
-
- server.log('received event of : '.debug,message.type.data,message.data);
-
- Eif(message.data.id)
- sock.id=message.data.id;
-
- server.trigger(
- message.type,
- message.data,
- sock
- );
- }
- }
- );
-
- socket.on(
- 'message',
- function(msg,rinfo) {
- Iif (!rinfo){
- return;
- }
-
- server.log('Received UDP message from '.debug, rinfo.address.variable, rinfo.port);
- let data;
-
- Iif(server.config.rawSocket){
- data=new Buffer(msg,this.encoding);
- }else{
- data=msg.toString();
- }
- socket.emit('data',data,rinfo);
- }
- );
-
- server.trigger(
- 'connect',
- socket
- );
-
- Iif(server.config.rawBuffer){
- return;
- }
- }
-
- function started(socket){
- server.onStart(socket);
- }
-
- if(!port){
- server.log('starting server as'.debug, 'Unix || Windows Socket'.variable);
- Iif (process.platform ==='win32'){
- server.path = server.path.replace(/^\//, '');
- server.path = server.path.replace(/\//g, '-');
- server.path= '\\\\.\\pipe\\'+server.path;
- }
-
- server.server.listen(
- server.path,
- started
- );
-
- return;
- }
-
- if(!server.udp4 && !server.udp6){
- server.log('starting server as'.debug, (server.config.tls?'TLS':'TCP').variable);
- server.server.listen(
- server.port,
- server.path,
- started
- );
- return;
- }
-
- server.log('starting server as'.debug,((server.udp4)? 'udp4':'udp6').variable);
- server.server.bind(
- server.port,
- server.path
- );
-
- started(
- {
- address : server.path,
- port : server.port
- }
- );
- }
- );
- }
- };
-
- new Pubsub(server);
-
- server.on(
- 'close',
- function(){
- for(let i=0, count=server.sockets.length; i<count; i++){
- let socket=server.sockets[i];
- let destroyedSocketId=false;
-
- Eif(socket){
- Iif(socket.readable){
- continue;
- }
- }
-
- Iif(socket.id){
- destroyedSocketId=socket.id;
- }
-
- server.log('socket disconnected'.notice,' '+destroyedSocketId.variable);
-
- Iif(socket && socket.destroy){
- socket.destroy();
- }
-
- server.sockets.splice(i,1);
-
- server.trigger('socket.disconnected', socket, destroyedSocketId);
-
- return;
- }
- }
- );
-
- return server;
-}
-
-module.exports=init;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/node-ipc.js.html b/spec/coverage/lcov-report/node-ipc/node-ipc.js.html
deleted file mode 100644
index 0990df5..0000000
--- a/spec/coverage/lcov-report/node-ipc/node-ipc.js.html
+++ /dev/null
@@ -1,128 +0,0 @@
-
-
-
- Code coverage report for node-ipc\node-ipc.js
-
-
-
-
-
-
-
-
-
-
-
-
- 100%
- Statements
- 4/4
-
-
- 100%
- Branches
- 0/0
-
-
- 100%
- Functions
- 1/1
-
-
- 100%
- Lines
- 4/4
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22 |
-
-1×
-
-
-
-1×
-
-1×
-
-
-
-
-
-
-
-
-
-
-
-1×
- | 'use strict';
-
-const IPC = require('./services/IPC.js');
-
-class IPCModule extends IPC{
- constructor(){
- super();
- //include IPC to make extensible
- Object.defineProperty(
- this,
- 'IPC',
- {
- enumerable:true,
- writable:false,
- value:IPC
- }
- )
- }
-}
-
-module.exports=new IPCModule;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/services/IPC.js.html b/spec/coverage/lcov-report/node-ipc/services/IPC.js.html
deleted file mode 100644
index b7efc2d..0000000
--- a/spec/coverage/lcov-report/node-ipc/services/IPC.js.html
+++ /dev/null
@@ -1,1076 +0,0 @@
-
-
-
- Code coverage report for node-ipc\services\IPC.js
-
-
-
-
-
-
-
-
-
-
-
-
- 65.67%
- Statements
- 88/134
-
-
- 60.81%
- Branches
- 45/74
-
-
- 87.5%
- Functions
- 7/8
-
-
- 65.67%
- Lines
- 88/134
-
-
-
-
-
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-176
-177
-178
-179
-180
-181
-182
-183
-184
-185
-186
-187
-188
-189
-190
-191
-192
-193
-194
-195
-196
-197
-198
-199
-200
-201
-202
-203
-204
-205
-206
-207
-208
-209
-210
-211
-212
-213
-214
-215
-216
-217
-218
-219
-220
-221
-222
-223
-224
-225
-226
-227
-228
-229
-230
-231
-232
-233
-234
-235
-236
-237
-238
-239
-240
-241
-242
-243
-244
-245
-246
-247
-248
-249
-250
-251
-252
-253
-254
-255
-256
-257
-258
-259
-260
-261
-262
-263
-264
-265
-266
-267
-268
-269
-270
-271
-272
-273
-274
-275
-276
-277
-278
-279
-280
-281
-282
-283
-284
-285
-286
-287
-288
-289
-290
-291
-292
-293
-294
-295
-296
-297
-298
-299
-300
-301
-302
-303
-304
-305
-306
-307
-308
-309
-310
-311
-312
-313
-314
-315
-316
-317
-318
-319
-320
-321
-322
-323
-324
-325
-326
-327
-328
-329
-330
-331
-332
-333
-334
-335
-336
-337
-338 |
-
-1×
-
-
-
-
-
-
-1×
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1×
-116×
-
-
-
-116×
-370×
-336×
-
-
-34×
-
-
-
-
-
-
-
-
-116×
-
-
-
-
-1×
-7×
-
-
-
-7×
-
-7×
-7×
-7×
-7×
-
-
-
-7×
-
-
-1×
-1×
-
-
-
-1×
-
-
-
-
-
-
-
-
-1×
-
-
-
-1×
-
-
-
-
-
-1×
-
-
-
-
-
-1×
-
-
-
-1×
-3×
-1×
-1×
-1×
-1×
-
-3×
-1×
-1×
-1×
-1×
-
-3×
-2×
-
-
-
-
-2×
-
-3×
-
-
-
-
-
-
-3×
-
-
-
-
-3×
-
-
-
-
-3×
-1×
-
-
-
-
-1×
-
-
-3×
-
-
-
-
-3×
-
-
-
-3×
-
-
-
-
-
-
-3×
-2×
-2×
-
-
-
-
-
-3×
-
-
-
-
-
-1×
-4×
-2×
-2×
-
-
-4×
-
-
-
-4×
-
-
-
-
-
-
-
-4×
-2×
-
-
-
-
-2×
-
-
-4×
-
-
-
-
-
-
-
-
-
-
-
-
-4×
-4×
-4×
-
-4×
-
-4×
-
-
-1×
-3×
-
-
-
-
-
-
-3×
-3×
-3×
-3×
-
-3×
-
-
-
-
-3×
-3×
-
-
-
-
-3×
-
-
-3×
-
-
-
-3×
-
-
-
-
-
-
-
-
-3×
-
-
-
-3×
-
-
-
-3×
-
-
-
-
-
-
-
-
-
-
-
-
-
-3×
-3×
-3×
-3×
-
-3×
-
-3×
-
-
-1×
- | 'use strict';
-
-const Defaults = require('../entities/Defaults.js'),
- Client = require('../dao/client.js'),
- Server = require('../dao/socketServer.js'),
- util = require('util');
-
-class IPC{
- constructor(){
- Object.defineProperties(
- this,
- {
- config : {
- enumerable:true,
- writable:true,
- value:new Defaults
- },
- connectTo : {
- enumerable:true,
- writable:false,
- value:connect
- },
- connectToNet: {
- enumerable:true,
- writable:false,
- value:connectNet
- },
- disconnect : {
- enumerable:true,
- writable:false,
- value:disconnect
- },
- serve : {
- enumerable:true,
- writable:false,
- value:serve
- },
- serveNet : {
- enumerable:true,
- writable:false,
- value:serveNet
- },
- of : {
- enumerable:true,
- writable:true,
- value:{}
- },
- server : {
- enumerable:true,
- writable:true,
- configurable:true,
- value:false
- },
- log : {
- enumerable:true,
- writable:false,
- value:log
- }
- }
- );
- }
-}
-
-function log(...args){
- Iif(this.config.silent){
- return;
- }
-
- for(let i=0, count=args.length; i<count; i++){
- if(typeof args[i] != 'object'){
- continue;
- }
-
- args[i]=util.inspect(
- args[i],
- {
- depth:this.config.logDepth,
- colors:this.config.logInColor
- }
- );
- }
-
- this.config.logger(
- args.join(' ')
- );
-}
-
-function disconnect(id){
- Iif(!this.of[id]){
- return;
- }
-
- this.of[id].explicitlyDisconnected=true;
-
- this.of[id].off('*','*');
- Eif(this.of[id].socket){
- Eif(this.of[id].socket.destroy){
- this.of[id].socket.destroy();
- }
- }
-
- delete this.of[id];
-}
-
-function serve(path,callback){
- Iif(typeof path=='function'){
- callback=path;
- path=false;
- }
- Iif(!path){
- this.log(
- 'Server path not specified, so defaulting to',
- 'ipc.config.socketRoot + ipc.config.appspace + ipc.config.id',
- this.config.socketRoot+this.config.appspace+this.config.id
- );
- path=this.config.socketRoot+this.config.appspace+this.config.id;
- }
-
- Iif(!callback){
- callback=emptyCallback;
- }
-
- this.server=new Server(
- path,
- this.config,
- log
- );
-
- this.server.on(
- 'start',
- callback
- );
-}
-
-function emptyCallback(){
- //Do Nothing
-}
-
-function serveNet(host,port,UDPType,callback){
- if(typeof host=='number'){
- callback=UDPType;
- UDPType=port;
- port=host;
- host=false;
- }
- if(typeof host=='function'){
- callback=host;
- UDPType=false;
- host=false;
- port=false;
- }
- if(!host){
- this.log(
- 'Server host not specified, so defaulting to',
- 'ipc.config.networkHost',
- this.config.networkHost
- );
- host=this.config.networkHost;
- }
- Iif(host.toLowerCase()=='udp4' || host.toLowerCase()=='udp6'){
- callback=port;
- UDPType=host.toLowerCase();
- port=false;
- host=this.config.networkHost;
- }
-
- Iif(typeof port=='string'){
- callback=UDPType;
- UDPType=port;
- port=false;
- }
- Iif(typeof port=='function'){
- callback=port;
- UDPType=false;
- port=false;
- }
- if(!port){
- this.log(
- 'Server port not specified, so defaulting to',
- 'ipc.config.networkPort',
- this.config.networkPort
- );
- port=this.config.networkPort;
- }
-
- Iif(typeof UDPType=='function'){
- callback=UDPType;
- UDPType=false;
- }
-
- Iif(!callback){
- callback=emptyCallback;
- }
-
- this.server=new Server(
- host,
- this.config,
- log,
- port
- );
-
- if(UDPType){
- this.server[UDPType]=true;
- Iif(UDPType === "udp4" && host === "::1") {
- // bind udp4 socket to an ipv4 address
- this.server.path = "127.0.0.1";
- }
- }
-
- this.server.on(
- 'start',
- callback
- );
-}
-
-function connect(id,path,callback){
- if(typeof path == 'function'){
- callback=path;
- path=false;
- }
-
- Iif(!callback){
- callback=emptyCallback;
- }
-
- Iif(!id){
- this.log(
- 'Service id required',
- 'Requested service connection without specifying service id. Aborting connection attempt'
- );
- return;
- }
-
- if(!path){
- this.log(
- 'Service path not specified, so defaulting to',
- 'ipc.config.socketRoot + ipc.config.appspace + id',
- (this.config.socketRoot+this.config.appspace+id).data
- );
- path=this.config.socketRoot+this.config.appspace+id;
- }
-
- Iif(this.of[id]){
- if(!this.of[id].socket.destroyed){
- this.log(
- 'Already Connected to',
- id,
- '- So executing success without connection'
- );
- callback();
- return;
- }
- this.of[id].socket.destroy();
- }
-
- this.of[id] = new Client(this.config,this.log);
- this.of[id].id = id;
- this.of[id].path = path;
-
- this.of[id].connect();
-
- callback(this);
-}
-
-function connectNet(id,host,port,callback){
- Iif(!id){
- this.log(
- 'Service id required',
- 'Requested service connection without specifying service id. Aborting connection attempt'
- );
- return;
- }
- Eif(typeof host=='number'){
- callback=port;
- port=host;
- host=false;
- }
- Iif(typeof host=='function'){
- callback=host;
- host=false;
- port=false;
- }
- Eif(!host){
- this.log(
- 'Server host not specified, so defaulting to',
- 'ipc.config.networkHost',
- this.config.networkHost
- );
- host=this.config.networkHost;
- }
-
- Iif(typeof port=='function'){
- callback=port;
- port=false;
- }
- Iif(!port){
- this.log(
- 'Server port not specified, so defaulting to',
- 'ipc.config.networkPort',
- this.config.networkPort
- );
- port=this.config.networkPort;
- }
-
- Iif(typeof callback == 'string'){
- UDPType=callback;
- callback=false;
- }
- Iif(!callback){
- callback=emptyCallback;
- }
-
- Iif(this.of[id]){
- if(!this.of[id].socket.destroyed){
-
- this.log(
- 'Already Connected to',
- id,
- '- So executing success without connection'
- );
- callback();
- return;
- }
- this.of[id].socket.destroy();
- }
-
- this.of[id] = new Client(this.config,this.log);
- this.of[id].id = id;
- this.of[id].path = host;
- this.of[id].port = port;
-
- this.of[id].connect();
-
- callback(this);
-}
-
-module.exports=IPC;
- |
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/node-ipc/services/index.html b/spec/coverage/lcov-report/node-ipc/services/index.html
deleted file mode 100644
index 7352473..0000000
--- a/spec/coverage/lcov-report/node-ipc/services/index.html
+++ /dev/null
@@ -1,93 +0,0 @@
-
-
-
- Code coverage report for node-ipc\services\
-
-
-
-
-
-
-
-
-
-
- all files node-ipc/services/
-
-
-
- 65.67%
- Statements
- 88/134
-
-
- 60.81%
- Branches
- 45/74
-
-
- 87.5%
- Functions
- 7/8
-
-
- 65.67%
- Lines
- 88/134
-
-
-
-
-
-
-
-
- File |
- |
- Statements |
- |
- Branches |
- |
- Functions |
- |
- Lines |
- |
-
-
-
- IPC.js |
- |
- 65.67% |
- 88/134 |
- 60.81% |
- 45/74 |
- 87.5% |
- 7/8 |
- 65.67% |
- 88/134 |
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/spec/coverage/lcov-report/prettify.css b/spec/coverage/lcov-report/prettify.css
deleted file mode 100644
index b317a7c..0000000
--- a/spec/coverage/lcov-report/prettify.css
+++ /dev/null
@@ -1 +0,0 @@
-.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee}
diff --git a/spec/coverage/lcov-report/prettify.js b/spec/coverage/lcov-report/prettify.js
deleted file mode 100644
index ef51e03..0000000
--- a/spec/coverage/lcov-report/prettify.js
+++ /dev/null
@@ -1 +0,0 @@
-window.PR_SHOULD_USE_CONTINUATION=true;(function(){var h=["break,continue,do,else,for,if,return,while"];var u=[h,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var p=[u,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var l=[p,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var x=[p,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var R=[x,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"];var r="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes";var w=[p,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var s="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var I=[h,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var f=[h,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var H=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var A=[l,R,w,s+I,f,H];var e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;var C="str";var z="kwd";var j="com";var O="typ";var G="lit";var L="pun";var F="pln";var m="tag";var E="dec";var J="src";var P="atn";var n="atv";var N="nocode";var M="(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function k(Z){var ad=0;var S=false;var ac=false;for(var V=0,U=Z.length;V122)){if(!(al<65||ag>90)){af.push([Math.max(65,ag)|32,Math.min(al,90)|32])}if(!(al<97||ag>122)){af.push([Math.max(97,ag)&~32,Math.min(al,122)&~32])}}}}af.sort(function(av,au){return(av[0]-au[0])||(au[1]-av[1])});var ai=[];var ap=[NaN,NaN];for(var ar=0;arat[0]){if(at[1]+1>at[0]){an.push("-")}an.push(T(at[1]))}}an.push("]");return an.join("")}function W(al){var aj=al.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var ah=aj.length;var an=[];for(var ak=0,am=0;ak=2&&ai==="["){aj[ak]=X(ag)}else{if(ai!=="\\"){aj[ak]=ag.replace(/[a-zA-Z]/g,function(ao){var ap=ao.charCodeAt(0);return"["+String.fromCharCode(ap&~32,ap|32)+"]"})}}}}return aj.join("")}var aa=[];for(var V=0,U=Z.length;V=0;){S[ac.charAt(ae)]=Y}}var af=Y[1];var aa=""+af;if(!ag.hasOwnProperty(aa)){ah.push(af);ag[aa]=null}}ah.push(/[\0-\uffff]/);V=k(ah)})();var X=T.length;var W=function(ah){var Z=ah.sourceCode,Y=ah.basePos;var ad=[Y,F];var af=0;var an=Z.match(V)||[];var aj={};for(var ae=0,aq=an.length;ae=5&&"lang-"===ap.substring(0,5);if(am&&!(ai&&typeof ai[1]==="string")){am=false;ap=J}if(!am){aj[ag]=ap}}var ab=af;af+=ag.length;if(!am){ad.push(Y+ab,ap)}else{var al=ai[1];var ak=ag.indexOf(al);var ac=ak+al.length;if(ai[2]){ac=ag.length-ai[2].length;ak=ac-al.length}var ar=ap.substring(5);B(Y+ab,ag.substring(0,ak),W,ad);B(Y+ab+ak,al,q(ar,al),ad);B(Y+ab+ac,ag.substring(ac),W,ad)}}ah.decorations=ad};return W}function i(T){var W=[],S=[];if(T.tripleQuotedStrings){W.push([C,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(T.multiLineStrings){W.push([C,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{W.push([C,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(T.verbatimStrings){S.push([C,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var Y=T.hashComments;if(Y){if(T.cStyleComments){if(Y>1){W.push([j,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{W.push([j,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}S.push([C,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])}else{W.push([j,/^#[^\r\n]*/,null,"#"])}}if(T.cStyleComments){S.push([j,/^\/\/[^\r\n]*/,null]);S.push([j,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(T.regexLiterals){var X=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");S.push(["lang-regex",new RegExp("^"+M+"("+X+")")])}var V=T.types;if(V){S.push([O,V])}var U=(""+T.keywords).replace(/^ | $/g,"");if(U.length){S.push([z,new RegExp("^(?:"+U.replace(/[\s,]+/g,"|")+")\\b"),null])}W.push([F,/^\s+/,null," \r\n\t\xA0"]);S.push([G,/^@[a-z_$][a-z_$@0-9]*/i,null],[O,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[F,/^[a-z_$][a-z_$@0-9]*/i,null],[G,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[F,/^\\[\s\S]?/,null],[L,/^.[^\s\w\.$@\'\"\`\/\#\\]*/,null]);return g(W,S)}var K=i({keywords:A,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function Q(V,ag){var U=/(?:^|\s)nocode(?:\s|$)/;var ab=/\r\n?|\n/;var ac=V.ownerDocument;var S;if(V.currentStyle){S=V.currentStyle.whiteSpace}else{if(window.getComputedStyle){S=ac.defaultView.getComputedStyle(V,null).getPropertyValue("white-space")}}var Z=S&&"pre"===S.substring(0,3);var af=ac.createElement("LI");while(V.firstChild){af.appendChild(V.firstChild)}var W=[af];function ae(al){switch(al.nodeType){case 1:if(U.test(al.className)){break}if("BR"===al.nodeName){ad(al);if(al.parentNode){al.parentNode.removeChild(al)}}else{for(var an=al.firstChild;an;an=an.nextSibling){ae(an)}}break;case 3:case 4:if(Z){var am=al.nodeValue;var aj=am.match(ab);if(aj){var ai=am.substring(0,aj.index);al.nodeValue=ai;var ah=am.substring(aj.index+aj[0].length);if(ah){var ak=al.parentNode;ak.insertBefore(ac.createTextNode(ah),al.nextSibling)}ad(al);if(!ai){al.parentNode.removeChild(al)}}}break}}function ad(ak){while(!ak.nextSibling){ak=ak.parentNode;if(!ak){return}}function ai(al,ar){var aq=ar?al.cloneNode(false):al;var ao=al.parentNode;if(ao){var ap=ai(ao,1);var an=al.nextSibling;ap.appendChild(aq);for(var am=an;am;am=an){an=am.nextSibling;ap.appendChild(am)}}return aq}var ah=ai(ak.nextSibling,0);for(var aj;(aj=ah.parentNode)&&aj.nodeType===1;){ah=aj}W.push(ah)}for(var Y=0;Y=S){ah+=2}if(V>=ap){Z+=2}}}var t={};function c(U,V){for(var S=V.length;--S>=0;){var T=V[S];if(!t.hasOwnProperty(T)){t[T]=U}else{if(window.console){console.warn("cannot override language handler %s",T)}}}}function q(T,S){if(!(T&&t.hasOwnProperty(T))){T=/^\s*]*(?:>|$)/],[j,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[L,/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^