From 9ed0eabb0d1b2035259e600076069425203b95c8 Mon Sep 17 00:00:00 2001 From: Paul Schneider Date: Wed, 29 May 2019 21:37:54 +0100 Subject: [PATCH] dropped usage of gulp, by using the external tool [jsmin](https://github.com/douglascrockford/JSMin.git) --- package-lock.json | 840 ++++ src/Yavsc/.eslintrc.json | 309 ++ src/Yavsc/Dockerfile | 11 - src/Yavsc/Makefile | 17 + src/Yavsc/Views/Shared/_Layout.cshtml | 2 +- src/Yavsc/bower.json | 12 - src/Yavsc/gulpfile.js | 55 - src/Yavsc/package-lock.json | 4108 ----------------- src/Yavsc/package.json | 13 +- src/Yavsc/project.json | 2 +- src/Yavsc/wwwroot/css/main/site.min.css | 27 +- src/Yavsc/wwwroot/js/bootstrap.js | 3 +- src/Yavsc/wwwroot/js/bootstrap.min.js | 793 +++- src/Yavsc/wwwroot/js/chat.js | 296 +- src/Yavsc/wwwroot/js/chat.min.js | 8 +- src/Yavsc/wwwroot/js/jquery-2.2.4.js | 146 +- src/Yavsc/wwwroot/js/jquery-2.2.4.min.js | 589 ++- src/Yavsc/wwwroot/js/jquery-3.2.1.js | 2 +- src/Yavsc/wwwroot/js/jquery-3.2.1.min.js | 637 ++- src/Yavsc/wwwroot/js/jquery.signalR-2.2.1.js | 24 +- .../wwwroot/js/jquery.signalR-2.2.1.min.js | 161 +- src/Yavsc/yarn.lock | 80 + 22 files changed, 3690 insertions(+), 4445 deletions(-) create mode 100644 package-lock.json create mode 100644 src/Yavsc/.eslintrc.json delete mode 100644 src/Yavsc/Dockerfile delete mode 100755 src/Yavsc/bower.json delete mode 100755 src/Yavsc/gulpfile.js delete mode 100644 src/Yavsc/package-lock.json create mode 100644 src/Yavsc/yarn.lock diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 00000000..84a16735 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,840 @@ +{ + "requires": true, + "lockfileVersion": 1, + "dependencies": { + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "acorn": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", + "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==" + }, + "acorn-jsx": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", + "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==" + }, + "ajv": { + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==" + }, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "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==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=" + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "requires": { + "ms": "^2.1.1" + } + }, + "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=" + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "requires": { + "esutils": "^2.0.2" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "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=" + }, + "eslint": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", + "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", + "requires": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.9.1", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^4.0.3", + "eslint-utils": "^1.3.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^5.0.1", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.7.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^6.2.2", + "js-yaml": "^3.13.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.11", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^5.5.1", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0" + } + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", + "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==" + }, + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==" + }, + "espree": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", + "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", + "requires": { + "acorn": "^6.0.7", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "esquery": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "requires": { + "estraverse": "^4.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "external-editor": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "requires": { + "flat-cache": "^2.0.1" + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + } + }, + "flatted": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", + "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + }, + "import-fresh": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", + "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "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=" + }, + "inquirer": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.3.1.tgz", + "integrity": "sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA==", + "requires": { + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "lodash": "^4.17.11", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "requires": { + "callsites": "^3.0.0" + } + }, + "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=" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==" + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "requires": { + "glob": "^7.1.3" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "requires": { + "is-promise": "^2.1.0" + } + }, + "rxjs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.2.tgz", + "integrity": "sha512-HUb7j3kvb7p7eCUHE3FqjoDsC1xfZQ4AHFWfTKSpZ+sAhhz5X1WX0ZuUqWbzB2QhSLp3DoLUG+hMdEDKqWo2Zg==", + "requires": { + "tslib": "^1.9.0" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + }, + "table": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.0.tgz", + "integrity": "sha512-nHFDrxmbrkU7JAFKqKbDJXfzrX2UBsWmrieXFTGxiI5e4ncg3VqsZeI4EzNmX0ncp4XNGVeoxIWJXfCIXwrsvw==", + "requires": { + "ajv": "^6.9.1", + "lodash": "^4.17.11", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==" + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "requires": { + "punycode": "^2.1.0" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "requires": { + "mkdirp": "^0.5.1" + } + } + } +} diff --git a/src/Yavsc/.eslintrc.json b/src/Yavsc/.eslintrc.json new file mode 100644 index 00000000..e9ba81ed --- /dev/null +++ b/src/Yavsc/.eslintrc.json @@ -0,0 +1,309 @@ +{ + "env": { + "browser": true, + "es6": true + }, + "extends": "eslint:recommended", + "globals": { + "Atomics": "readonly", + "SharedArrayBuffer": "readonly" + }, + "parserOptions": { + "ecmaVersion": 2018, + "sourceType": "module" + }, + "rules": { + "accessor-pairs": "error", + "array-bracket-newline": "error", + "array-bracket-spacing": [ + "error", + "never" + ], + "array-callback-return": "error", + "array-element-newline": "off", + "arrow-body-style": "error", + "arrow-parens": "error", + "arrow-spacing": "error", + "block-scoped-var": "error", + "block-spacing": [ + "error", + "always" + ], + "brace-style": [ + "error", + "1tbs", + { + "allowSingleLine": true + } + ], + "callback-return": "off", + "camelcase": "error", + "capitalized-comments": "off", + "class-methods-use-this": "error", + "comma-dangle": "error", + "comma-spacing": [ + "error", + { + "after": true, + "before": false + } + ], + "comma-style": [ + "error", + "last" + ], + "complexity": "off", + "computed-property-spacing": [ + "error", + "never" + ], + "consistent-return": "off", + "consistent-this": "off", + "curly": "off", + "default-case": "error", + "dot-location": [ + "error", + "property" + ], + "dot-notation": "error", + "eol-last": "error", + "eqeqeq": "off", + "func-call-spacing": "error", + "func-name-matching": "error", + "func-names": "off", + "func-style": "off", + "function-paren-newline": "error", + "generator-star-spacing": "error", + "global-require": "error", + "guard-for-in": "error", + "handle-callback-err": "error", + "id-blacklist": "error", + "id-length": "off", + "id-match": "error", + "implicit-arrow-linebreak": "error", + "indent": "off", + "indent-legacy": "off", + "init-declarations": "off", + "jsx-quotes": "error", + "key-spacing": "off", + "keyword-spacing": [ + "error", + { + "after": true, + "before": true + } + ], + "line-comment-position": "off", + "linebreak-style": [ + "error", + "unix" + ], + "lines-around-comment": "error", + "lines-around-directive": "off", + "lines-between-class-members": "error", + "max-classes-per-file": "error", + "max-depth": "error", + "max-len": "off", + "max-lines": "off", + "max-lines-per-function": "off", + "max-nested-callbacks": "error", + "max-params": "off", + "max-statements": "off", + "max-statements-per-line": "off", + "multiline-comment-style": "off", + "multiline-ternary": "off", + "new-parens": "error", + "newline-after-var": "off", + "newline-before-return": "off", + "newline-per-chained-call": "off", + "no-alert": "error", + "no-array-constructor": "error", + "no-async-promise-executor": "error", + "no-await-in-loop": "error", + "no-bitwise": "off", + "no-buffer-constructor": "error", + "no-caller": "error", + "no-catch-shadow": "error", + "no-confusing-arrow": "error", + "no-continue": "error", + "no-div-regex": "error", + "no-duplicate-imports": "error", + "no-else-return": "error", + "no-empty-function": "error", + "no-eq-null": "off", + "no-eval": "error", + "no-extend-native": "error", + "no-extra-bind": "error", + "no-extra-label": "error", + "no-extra-parens": "off", + "no-floating-decimal": "error", + "no-implicit-globals": "error", + "no-implied-eval": "error", + "no-inline-comments": "off", + "no-inner-declarations": [ + "error", + "functions" + ], + "no-invalid-this": "off", + "no-iterator": "error", + "no-label-var": "error", + "no-labels": "error", + "no-lone-blocks": "error", + "no-lonely-if": "error", + "no-loop-func": "error", + "no-magic-numbers": "off", + "no-misleading-character-class": "error", + "no-mixed-operators": "off", + "no-mixed-requires": "error", + "no-multi-assign": "off", + "no-multi-spaces": "off", + "no-multi-str": "error", + "no-multiple-empty-lines": "error", + "no-native-reassign": "error", + "no-negated-condition": "error", + "no-negated-in-lhs": "error", + "no-nested-ternary": "off", + "no-new": "error", + "no-new-func": "error", + "no-new-object": "error", + "no-new-require": "error", + "no-new-wrappers": "error", + "no-octal-escape": "error", + "no-param-reassign": "off", + "no-path-concat": "error", + "no-plusplus": "off", + "no-process-env": "error", + "no-process-exit": "error", + "no-proto": "error", + "no-prototype-builtins": "error", + "no-restricted-globals": "error", + "no-restricted-imports": "error", + "no-restricted-modules": "error", + "no-restricted-properties": "error", + "no-restricted-syntax": "error", + "no-return-assign": [ + "error", + "except-parens" + ], + "no-return-await": "error", + "no-script-url": "error", + "no-self-compare": "error", + "no-sequences": "error", + "no-shadow": "off", + "no-shadow-restricted-names": "error", + "no-spaced-func": "error", + "no-sync": "error", + "no-tabs": "error", + "no-template-curly-in-string": "error", + "no-ternary": "off", + "no-throw-literal": "error", + "no-trailing-spaces": "error", + "no-undef-init": "error", + "no-undefined": "off", + "no-unmodified-loop-condition": "error", + "no-unneeded-ternary": "error", + "no-unused-expressions": "off", + "no-use-before-define": "off", + "no-useless-call": "error", + "no-useless-catch": "error", + "no-useless-computed-key": "error", + "no-useless-concat": "error", + "no-useless-constructor": "error", + "no-useless-rename": "error", + "no-useless-return": "error", + "no-var": "off", + "no-void": "error", + "no-warning-comments": "error", + "no-whitespace-before-property": "error", + "no-with": "error", + "nonblock-statement-body-position": "error", + "object-curly-newline": "error", + "object-curly-spacing": [ + "error", + "always" + ], + "object-shorthand": "off", + "one-var": "off", + "one-var-declaration-per-line": "error", + "operator-assignment": [ + "error", + "always" + ], + "operator-linebreak": "off", + "padded-blocks": "off", + "padding-line-between-statements": "error", + "prefer-arrow-callback": "off", + "prefer-const": "error", + "prefer-destructuring": "off", + "prefer-named-capture-group": "off", + "prefer-numeric-literals": "error", + "prefer-object-spread": "error", + "prefer-promise-reject-errors": "error", + "prefer-reflect": "off", + "prefer-rest-params": "off", + "prefer-spread": "error", + "prefer-template": "off", + "quote-props": "off", + "quotes": [ + "error", + "single" + ], + "radix": [ + "error", + "always" + ], + "require-atomic-updates": "error", + "require-await": "error", + "require-jsdoc": "off", + "require-unicode-regexp": "off", + "rest-spread-spacing": "error", + "semi": "off", + "semi-spacing": [ + "error", + { + "after": true, + "before": false + } + ], + "semi-style": [ + "error", + "last" + ], + "sort-imports": "error", + "sort-keys": "off", + "sort-vars": "error", + "space-before-blocks": "error", + "space-before-function-paren": "off", + "space-in-parens": [ + "error", + "never" + ], + "space-infix-ops": "error", + "space-unary-ops": "error", + "spaced-comment": "off", + "strict": "off", + "switch-colon-spacing": [ + "error", + { + "after": true, + "before": false + } + ], + "symbol-description": "error", + "template-curly-spacing": "error", + "template-tag-spacing": "error", + "unicode-bom": [ + "error", + "never" + ], + "valid-jsdoc": "error", + "vars-on-top": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "error", + "yoda": [ + "error", + "never" + ] + } +} \ No newline at end of file diff --git a/src/Yavsc/Dockerfile b/src/Yavsc/Dockerfile deleted file mode 100644 index a71646c2..00000000 --- a/src/Yavsc/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM microsoft/aspnet:1.0.0-rc1-update1 - -RUN printf "deb http://ftp.us.debian.org/debian jessie main\n" >> /etc/apt/sources.list -RUN apt-get -qq update && apt-get install -qqy sqlite3 libsqlite3-dev && rm -rf /var/lib/apt/lists/* - -COPY . /app -WORKDIR /app -RUN ["dnu", "restore"] - -EXPOSE 5001/tcp -ENTRYPOINT ["dnx", "-p", "project.json", "web"] diff --git a/src/Yavsc/Makefile b/src/Yavsc/Makefile index d22cf204..3bc8ff9b 100644 --- a/src/Yavsc/Makefile +++ b/src/Yavsc/Makefile @@ -5,9 +5,14 @@ HOSTADMIN=root ASPNET_LOG_LEVEL=debug SOURCE_DIR=$(HOME)/workspace/yavsc MAKEFILE_DIR=$(SOURCE_DIR)/scripts/build/make + include $(MAKEFILE_DIR)/versioning.mk include $(MAKEFILE_DIR)/dnx.mk +MINJS=wwwroot/js/bootstrap.min.js wwwroot/js/input-lib.min.js wwwroot/js/jquery.signalR-2.2.1.min.js wwwroot/js/quill.min.js wwwroot/js/chat.min.js wwwroot/js/jquery-2.2.4.min.js wwwroot/js/jquery-ui.min.js wwwroot/js/showdown.min.js wwwroot/js/comment.min.js wwwroot/js/jquery-3.2.1.min.js wwwroot/js/md-helpers.min.js wwwroot/js/site.min.js wwwroot/js/dropzone.min.js wwwroot/js/jquery-migrate-3.0.0.min.js wwwroot/js/parallax.min.js wwwroot/js/str.min.js wwwroot/js/google-geoloc.min.js wwwroot/js/jquery.min.js wwwroot/js/paypalbutton.min.js wwwroot/js/to-markdown.min.js + +MINCSS=wwwroot/css/coiffure.min.css wwwroot/css/dev.min.css wwwroot/css/freespeech.min.css wwwroot/css/yavsc.min.css wwwroot/css/default.min.css wwwroot/css/font-awesome.min.css wwwroot/css/lua.min.css wwwroot/css/yavscpre.min.css wwwroot/css/clear/site.min.css wwwroot/css/main/bootstrap.min.css wwwroot/css/main/jquery-ui.min.css wwwroot/css/main/site.min.css wwwroot/css/dark/site.min.css wwwroot/css/main/dropzone.min.css wwwroot/css/main/quill.snow.min.css + web: project.lock.json ASPNET_LOG_LEVEL=$(ASPNET_LOG_LEVEL) ASPNET_ENV=$(ASPNET_ENV) dnx web --configuration=$(CONFIGURATION) @@ -45,3 +50,15 @@ else git status endif +%.min.js: %.js + jsmin < $^ > $@ + +%.min.css: %.css + jsmin < $^ > $@ + +minJs: $(MINJS) + +minCss: $(MINCSS) + +minify: minCss minJs + diff --git a/src/Yavsc/Views/Shared/_Layout.cshtml b/src/Yavsc/Views/Shared/_Layout.cshtml index a5afa3c2..41c17b7a 100644 --- a/src/Yavsc/Views/Shared/_Layout.cshtml +++ b/src/Yavsc/Views/Shared/_Layout.cshtml @@ -46,7 +46,7 @@ .");}};if(typeof _pageWindow.on=="function"){_pageWindow.on("load",function(){_pageLoaded=true;});} +else{_pageWindow.load(function(){_pageLoaded=true;});} +function validateTransport(requestedTransport,connection){if($.isArray(requestedTransport)){for(var i=requestedTransport.length-1;i>=0;i--){var transport=requestedTransport[i];if($.type(transport)!=="string"||!signalR.transports[transport]){connection.log("Invalid transport: "+transport+", removing it from the transports list.");requestedTransport.splice(i,1);}} +if(requestedTransport.length===0){connection.log("No transports remain within the specified transport array.");requestedTransport=null;}}else if(!signalR.transports[requestedTransport]&&requestedTransport!=="auto"){connection.log("Invalid transport: "+requestedTransport.toString()+".");requestedTransport=null;}else if(requestedTransport==="auto"&&signalR._.ieVersion<=8){return["longPolling"];} +return requestedTransport;} +function getDefaultPort(protocol){if(protocol==="http:"){return 80;}else if(protocol==="https:"){return 443;}} +function addDefaultPort(protocol,url){if(url.match(/:\d+$/)){return url;}else{return url+":"+getDefaultPort(protocol);}} +function ConnectingMessageBuffer(connection,drainCallback){var that=this,buffer=[];that.tryBuffer=function(message){if(connection.state===$.signalR.connectionState.connecting){buffer.push(message);return true;} +return false;};that.drain=function(){if(connection.state===$.signalR.connectionState.connected){while(buffer.length>0){drainCallback(buffer.shift());}}};that.clear=function(){buffer=[];};} +signalR.fn=signalR.prototype={init:function(url,qs,logging){var $connection=$(this);this.url=url;this.qs=qs;this.lastError=null;this._={keepAliveData:{},connectingMessageBuffer:new ConnectingMessageBuffer(this,function(message){$connection.triggerHandler(events.onReceived,[message]);}),lastMessageAt:new Date().getTime(),lastActiveAt:new Date().getTime(),beatInterval:5000,beatHandle:null,totalTransportConnectTimeout:0};if(typeof(logging)==="boolean"){this.logging=logging;}},_parseResponse:function(response){var that=this;if(!response){return response;}else if(typeof response==="string"){return that.json.parse(response);}else{return response;}},_originalJson:window.JSON,json:window.JSON,isCrossDomain:function(url,against){var link;url=$.trim(url);against=against||window.location;if(url.indexOf("http")!==0){return false;} +link=window.document.createElement("a");link.href=url;return link.protocol+addDefaultPort(link.protocol,link.host)!==against.protocol+addDefaultPort(against.protocol,against.host);},ajaxDataType:"text",contentType:"application/json; charset=UTF-8",logging:false,state:signalR.connectionState.disconnected,clientProtocol:"1.5",reconnectDelay:2000,transportConnectTimeout:0,disconnectTimeout:30000,reconnectWindow:30000,keepAliveWarnAt:2/3,start:function(options,callback){var connection=this,config={pingInterval:300000,waitForPageLoad:true,transport:"auto",jsonp:false},initialize,deferred=connection._deferral||$.Deferred(),parser=window.document.createElement("a");connection.lastError=null;connection._deferral=deferred;if(!connection.json){throw new Error("SignalR: No JSON parser found. Please ensure json2.js is referenced before the SignalR.js file if you need to support clients without native JSON parsing support, e.g. IE<8.");} +if($.type(options)==="function"){callback=options;}else if($.type(options)==="object"){$.extend(config,options);if($.type(config.callback)==="function"){callback=config.callback;}} +config.transport=validateTransport(config.transport,connection);if(!config.transport){throw new Error("SignalR: Invalid transport(s) specified, aborting start.");} +connection._.config=config;if(!_pageLoaded&&config.waitForPageLoad===true){connection._.deferredStartHandler=function(){connection.start(options,callback);};_pageWindow.bind("load",connection._.deferredStartHandler);return deferred.promise();} +if(connection.state===signalR.connectionState.connecting){return deferred.promise();}else if(changeState(connection,signalR.connectionState.disconnected,signalR.connectionState.connecting)===false){deferred.resolve(connection);return deferred.promise();} +configureStopReconnectingTimeout(connection);parser.href=connection.url;if(!parser.protocol||parser.protocol===":"){connection.protocol=window.document.location.protocol;connection.host=parser.host||window.document.location.host;}else{connection.protocol=parser.protocol;connection.host=parser.host;} +connection.baseUrl=connection.protocol+"//"+connection.host;connection.wsProtocol=connection.protocol==="https:"?"wss://":"ws://";if(config.transport==="auto"&&config.jsonp===true){config.transport="longPolling";} +if(connection.url.indexOf("//")===0){connection.url=window.location.protocol+connection.url;connection.log("Protocol relative URL detected, normalizing it to '"+connection.url+"'.");} +if(this.isCrossDomain(connection.url)){connection.log("Auto detected cross domain url.");if(config.transport==="auto"){config.transport=["webSockets","serverSentEvents","longPolling"];} +if(typeof(config.withCredentials)==="undefined"){config.withCredentials=true;} +if(!config.jsonp){config.jsonp=!$.support.cors;if(config.jsonp){connection.log("Using jsonp because this browser doesn't support CORS.");}} +connection.contentType=signalR._.defaultContentType;} +connection.withCredentials=config.withCredentials;connection.ajaxDataType=config.jsonp?"jsonp":"text";$(connection).bind(events.onStart,function(e,data){if($.type(callback)==="function"){callback.call(connection);} +deferred.resolve(connection);});connection._.initHandler=signalR.transports._logic.initHandler(connection);initialize=function(transports,index){var noTransportError=signalR._.error(resources.noTransportOnInit);index=index||0;if(index>=transports.length){if(index===0){connection.log("No transports supported by the server were selected.");}else if(index===1){connection.log("No fallback transports were selected.");}else{connection.log("Fallback transports exhausted.");} +$(connection).triggerHandler(events.onError,[noTransportError]);deferred.reject(noTransportError);connection.stop();return;} +if(connection.state===signalR.connectionState.disconnected){return;} +var transportName=transports[index],transport=signalR.transports[transportName],onFallback=function(){initialize(transports,index+1);};connection.transport=transport;try{connection._.initHandler.start(transport,function(){var isFirefox11OrGreater=signalR._.firefoxMajorVersion(window.navigator.userAgent)>=11,asyncAbort=!!connection.withCredentials&&isFirefox11OrGreater;connection.log("The start request succeeded. Transitioning to the connected state.");if(supportsKeepAlive(connection)){signalR.transports._logic.monitorKeepAlive(connection);} +signalR.transports._logic.startHeartbeat(connection);signalR._.configurePingInterval(connection);if(!changeState(connection,signalR.connectionState.connecting,signalR.connectionState.connected)){connection.log("WARNING! The connection was not in the connecting state.");} +connection._.connectingMessageBuffer.drain();$(connection).triggerHandler(events.onStart);_pageWindow.bind("unload",function(){connection.log("Window unloading, stopping the connection.");connection.stop(asyncAbort);});if(isFirefox11OrGreater){_pageWindow.bind("beforeunload",function(){window.setTimeout(function(){connection.stop(asyncAbort);},0);});}},onFallback);} +catch(error){connection.log(transport.name+" transport threw '"+error.message+"' when attempting to start.");onFallback();}};var url=connection.url+"/negotiate",onFailed=function(error,connection){var err=signalR._.error(resources.errorOnNegotiate,error,connection._.negotiateRequest);$(connection).triggerHandler(events.onError,err);deferred.reject(err);connection.stop();};$(connection).triggerHandler(events.onStarting);url=signalR.transports._logic.prepareQueryString(connection,url);connection.log("Negotiating with '"+url+"'.");connection._.negotiateRequest=signalR.transports._logic.ajax(connection,{url:url,error:function(error,statusText){if(statusText!==_negotiateAbortText){onFailed(error,connection);}else{deferred.reject(signalR._.error(resources.stoppedWhileNegotiating,null,connection._.negotiateRequest));}},success:function(result){var res,keepAliveData,protocolError,transports=[],supportedTransports=[];try{res=connection._parseResponse(result);}catch(error){onFailed(signalR._.error(resources.errorParsingNegotiateResponse,error),connection);return;} +keepAliveData=connection._.keepAliveData;connection.appRelativeUrl=res.Url;connection.id=res.ConnectionId;connection.token=res.ConnectionToken;connection.webSocketServerUrl=res.WebSocketServerUrl;connection._.pollTimeout=res.ConnectionTimeout*1000+10000;connection.disconnectTimeout=res.DisconnectTimeout*1000;connection._.totalTransportConnectTimeout=connection.transportConnectTimeout+res.TransportConnectTimeout*1000;if(res.KeepAliveTimeout){keepAliveData.activated=true;keepAliveData.timeout=res.KeepAliveTimeout*1000;keepAliveData.timeoutWarning=keepAliveData.timeout*connection.keepAliveWarnAt;connection._.beatInterval=(keepAliveData.timeout-keepAliveData.timeoutWarning)/3;}else{keepAliveData.activated=false;} +connection.reconnectWindow=connection.disconnectTimeout+(keepAliveData.timeout||0);if(!res.ProtocolVersion||res.ProtocolVersion!==connection.clientProtocol){protocolError=signalR._.error(signalR._.format(resources.protocolIncompatible,connection.clientProtocol,res.ProtocolVersion));$(connection).triggerHandler(events.onError,[protocolError]);deferred.reject(protocolError);return;} +$.each(signalR.transports,function(key){if((key.indexOf("_")===0)||(key==="webSockets"&&!res.TryWebSockets)){return true;} +supportedTransports.push(key);});if($.isArray(config.transport)){$.each(config.transport,function(_,transport){if($.inArray(transport,supportedTransports)>=0){transports.push(transport);}});}else if(config.transport==="auto"){transports=supportedTransports;}else if($.inArray(config.transport,supportedTransports)>=0){transports.push(config.transport);} +initialize(transports);}});return deferred.promise();},starting:function(callback){var connection=this;$(connection).bind(events.onStarting,function(e,data){callback.call(connection);});return connection;},send:function(data){var connection=this;if(connection.state===signalR.connectionState.disconnected){throw new Error("SignalR: Connection must be started before data can be sent. Call .start() before .send()");} +if(connection.state===signalR.connectionState.connecting){throw new Error("SignalR: Connection has not been fully initialized. Use .start().done() or .start().fail() to run logic after the connection has started.");} +connection.transport.send(connection,data);return connection;},received:function(callback){var connection=this;$(connection).bind(events.onReceived,function(e,data){callback.call(connection,data);});return connection;},stateChanged:function(callback){var connection=this;$(connection).bind(events.onStateChanged,function(e,data){callback.call(connection,data);});return connection;},error:function(callback){var connection=this;$(connection).bind(events.onError,function(e,errorData,sendData){connection.lastError=errorData;callback.call(connection,errorData,sendData);});return connection;},disconnected:function(callback){var connection=this;$(connection).bind(events.onDisconnect,function(e,data){callback.call(connection);});return connection;},connectionSlow:function(callback){var connection=this;$(connection).bind(events.onConnectionSlow,function(e,data){callback.call(connection);});return connection;},reconnecting:function(callback){var connection=this;$(connection).bind(events.onReconnecting,function(e,data){callback.call(connection);});return connection;},reconnected:function(callback){var connection=this;$(connection).bind(events.onReconnect,function(e,data){callback.call(connection);});return connection;},stop:function(async,notifyServer){var connection=this,deferral=connection._deferral;if(connection._.deferredStartHandler){_pageWindow.unbind("load",connection._.deferredStartHandler);} +delete connection._.config;delete connection._.deferredStartHandler;if(!_pageLoaded&&(!connection._.config||connection._.config.waitForPageLoad===true)){connection.log("Stopping connection prior to negotiate.");if(deferral){deferral.reject(signalR._.error(resources.stoppedWhileLoading));} +return;} +if(connection.state===signalR.connectionState.disconnected){return;} +connection.log("Stopping connection.");window.clearTimeout(connection._.beatHandle);window.clearInterval(connection._.pingIntervalId);if(connection.transport){connection.transport.stop(connection);if(notifyServer!==false){connection.transport.abort(connection,async);} +if(supportsKeepAlive(connection)){signalR.transports._logic.stopMonitoringKeepAlive(connection);} +connection.transport=null;} +if(connection._.negotiateRequest){connection._.negotiateRequest.abort(_negotiateAbortText);delete connection._.negotiateRequest;} +if(connection._.initHandler){connection._.initHandler.stop();} +delete connection._deferral;delete connection.messageId;delete connection.groupsToken;delete connection.id;delete connection._.pingIntervalId;delete connection._.lastMessageAt;delete connection._.lastActiveAt;connection._.connectingMessageBuffer.clear();changeState(connection,connection.state,signalR.connectionState.disconnected);$(connection).triggerHandler(events.onDisconnect);return connection;},log:function(msg){log(msg,this.logging);}};signalR.fn.init.prototype=signalR.fn;signalR.noConflict=function(){if($.connection===signalR){$.connection=_connection;} +return signalR;};if($.connection){_connection=$.connection;} +$.connection=$.signalR=signalR;}(window.jQuery,window));(function($,window,undefined){var signalR=$.signalR,events=$.signalR.events,changeState=$.signalR.changeState,startAbortText="__Start Aborted__",transportLogic;signalR.transports={};function beat(connection){if(connection._.keepAliveData.monitoring){checkIfAlive(connection);} +if(transportLogic.markActive(connection)){connection._.beatHandle=window.setTimeout(function(){beat(connection);},connection._.beatInterval);}} +function checkIfAlive(connection){var keepAliveData=connection._.keepAliveData,timeElapsed;if(connection.state===signalR.connectionState.connected){timeElapsed=new Date().getTime()-connection._.lastMessageAt;if(timeElapsed>=keepAliveData.timeout){connection.log("Keep alive timed out. Notifying transport that connection has been lost.");connection.transport.lostConnection(connection);}else if(timeElapsed>=keepAliveData.timeoutWarning){if(!keepAliveData.userNotified){connection.log("Keep alive has been missed, connection may be dead/slow.");$(connection).triggerHandler(events.onConnectionSlow);keepAliveData.userNotified=true;}}else{keepAliveData.userNotified=false;}}} +function getAjaxUrl(connection,path){var url=connection.url+path;if(connection.transport){url+="?transport="+connection.transport.name;} +return transportLogic.prepareQueryString(connection,url);} +function InitHandler(connection){this.connection=connection;this.startRequested=false;this.startCompleted=false;this.connectionStopped=false;} +InitHandler.prototype={start:function(transport,onSuccess,onFallback){var that=this,connection=that.connection,failCalled=false;if(that.startRequested||that.connectionStopped){connection.log("WARNING! "+transport.name+" transport cannot be started. Initialization ongoing or completed.");return;} +connection.log(transport.name+" transport starting.");transport.start(connection,function(){if(!failCalled){that.initReceived(transport,onSuccess);}},function(error){if(!failCalled){failCalled=true;that.transportFailed(transport,error,onFallback);} +return!that.startCompleted||that.connectionStopped;});that.transportTimeoutHandle=window.setTimeout(function(){if(!failCalled){failCalled=true;connection.log(transport.name+" transport timed out when trying to connect.");that.transportFailed(transport,undefined,onFallback);}},connection._.totalTransportConnectTimeout);},stop:function(){this.connectionStopped=true;window.clearTimeout(this.transportTimeoutHandle);signalR.transports._logic.tryAbortStartRequest(this.connection);},initReceived:function(transport,onSuccess){var that=this,connection=that.connection;if(that.startRequested){connection.log("WARNING! The client received multiple init messages.");return;} +if(that.connectionStopped){return;} +that.startRequested=true;window.clearTimeout(that.transportTimeoutHandle);connection.log(transport.name+" transport connected. Initiating start request.");signalR.transports._logic.ajaxStart(connection,function(){that.startCompleted=true;onSuccess();});},transportFailed:function(transport,error,onFallback){var connection=this.connection,deferred=connection._deferral,wrappedError;if(this.connectionStopped){return;} +window.clearTimeout(this.transportTimeoutHandle);if(!this.startRequested){transport.stop(connection);connection.log(transport.name+" transport failed to connect. Attempting to fall back.");onFallback();}else if(!this.startCompleted){wrappedError=signalR._.error(signalR.resources.errorDuringStartRequest,error);connection.log(transport.name+" transport failed during the start request. Stopping the connection.");$(connection).triggerHandler(events.onError,[wrappedError]);if(deferred){deferred.reject(wrappedError);} +connection.stop();}else{}}};transportLogic=signalR.transports._logic={ajax:function(connection,options){return $.ajax($.extend(true,{},$.signalR.ajaxDefaults,{type:"GET",data:{},xhrFields:{withCredentials:connection.withCredentials},contentType:connection.contentType,dataType:connection.ajaxDataType},options));},pingServer:function(connection){var url,xhr,deferral=$.Deferred();if(connection.transport){url=connection.url+"/ping";url=transportLogic.addQs(url,connection.qs);xhr=transportLogic.ajax(connection,{url:url,success:function(result){var data;try{data=connection._parseResponse(result);} +catch(error){deferral.reject(signalR._.transportError(signalR.resources.pingServerFailedParse,connection.transport,error,xhr));connection.stop();return;} +if(data.Response==="pong"){deferral.resolve();} +else{deferral.reject(signalR._.transportError(signalR._.format(signalR.resources.pingServerFailedInvalidResponse,result),connection.transport,null,xhr));}},error:function(error){if(error.status===401||error.status===403){deferral.reject(signalR._.transportError(signalR._.format(signalR.resources.pingServerFailedStatusCode,error.status),connection.transport,error,xhr));connection.stop();} +else{deferral.reject(signalR._.transportError(signalR.resources.pingServerFailed,connection.transport,error,xhr));}}});} +else{deferral.reject(signalR._.transportError(signalR.resources.noConnectionTransport,connection.transport));} +return deferral.promise();},prepareQueryString:function(connection,url){var preparedUrl;preparedUrl=transportLogic.addQs(url,"clientProtocol="+connection.clientProtocol);preparedUrl=transportLogic.addQs(preparedUrl,connection.qs);if(connection.token){preparedUrl+="&connectionToken="+window.encodeURIComponent(connection.token);} +if(connection.data){preparedUrl+="&connectionData="+window.encodeURIComponent(connection.data);} +return preparedUrl;},addQs:function(url,qs){var appender=url.indexOf("?")!==-1?"&":"?",firstChar;if(!qs){return url;} +if(typeof(qs)==="object"){return url+appender+$.param(qs);} +if(typeof(qs)==="string"){firstChar=qs.charAt(0);if(firstChar==="?"||firstChar==="&"){appender="";} +return url+appender+qs;} +throw new Error("Query string property must be either a string or object.");},getUrl:function(connection,transport,reconnecting,poll,ajaxPost){var baseUrl=transport==="webSockets"?"":connection.baseUrl,url=baseUrl+connection.appRelativeUrl,qs="transport="+transport;if(!ajaxPost&&connection.groupsToken){qs+="&groupsToken="+window.encodeURIComponent(connection.groupsToken);} +if(!reconnecting){url+="/connect";}else{if(poll){url+="/poll";}else{url+="/reconnect";} +if(!ajaxPost&&connection.messageId){qs+="&messageId="+window.encodeURIComponent(connection.messageId);}} +url+="?"+qs;url=transportLogic.prepareQueryString(connection,url);if(!ajaxPost){url+="&tid="+Math.floor(Math.random()*11);} +return url;},maximizePersistentResponse:function(minPersistentResponse){return{MessageId:minPersistentResponse.C,Messages:minPersistentResponse.M,Initialized:typeof(minPersistentResponse.S)!=="undefined"?true:false,ShouldReconnect:typeof(minPersistentResponse.T)!=="undefined"?true:false,LongPollDelay:minPersistentResponse.L,GroupsToken:minPersistentResponse.G};},updateGroups:function(connection,groupsToken){if(groupsToken){connection.groupsToken=groupsToken;}},stringifySend:function(connection,message){if(typeof(message)==="string"||typeof(message)==="undefined"||message===null){return message;} +return connection.json.stringify(message);},ajaxSend:function(connection,data){var payload=transportLogic.stringifySend(connection,data),url=getAjaxUrl(connection,"/send"),xhr,onFail=function(error,connection){$(connection).triggerHandler(events.onError,[signalR._.transportError(signalR.resources.sendFailed,connection.transport,error,xhr),data]);};xhr=transportLogic.ajax(connection,{url:url,type:connection.ajaxDataType==="jsonp"?"GET":"POST",contentType:signalR._.defaultContentType,data:{data:payload},success:function(result){var res;if(result){try{res=connection._parseResponse(result);} +catch(error){onFail(error,connection);connection.stop();return;} +transportLogic.triggerReceived(connection,res);}},error:function(error,textStatus){if(textStatus==="abort"||textStatus==="parsererror"){return;} +onFail(error,connection);}});return xhr;},ajaxAbort:function(connection,async){if(typeof(connection.transport)==="undefined"){return;} +async=typeof async==="undefined"?true:async;var url=getAjaxUrl(connection,"/abort");transportLogic.ajax(connection,{url:url,async:async,timeout:1000,type:"POST"});connection.log("Fired ajax abort async = "+async+".");},ajaxStart:function(connection,onSuccess){var rejectDeferred=function(error){var deferred=connection._deferral;if(deferred){deferred.reject(error);}},triggerStartError=function(error){connection.log("The start request failed. Stopping the connection.");$(connection).triggerHandler(events.onError,[error]);rejectDeferred(error);connection.stop();};connection._.startRequest=transportLogic.ajax(connection,{url:getAjaxUrl(connection,"/start"),success:function(result,statusText,xhr){var data;try{data=connection._parseResponse(result);}catch(error){triggerStartError(signalR._.error(signalR._.format(signalR.resources.errorParsingStartResponse,result),error,xhr));return;} +if(data.Response==="started"){onSuccess();}else{triggerStartError(signalR._.error(signalR._.format(signalR.resources.invalidStartResponse,result),null,xhr));}},error:function(xhr,statusText,error){if(statusText!==startAbortText){triggerStartError(signalR._.error(signalR.resources.errorDuringStartRequest,error,xhr));}else{connection.log("The start request aborted because connection.stop() was called.");rejectDeferred(signalR._.error(signalR.resources.stoppedDuringStartRequest,null,xhr));}}});},tryAbortStartRequest:function(connection){if(connection._.startRequest){connection._.startRequest.abort(startAbortText);delete connection._.startRequest;}},tryInitialize:function(connection,persistentResponse,onInitialized){if(persistentResponse.Initialized&&onInitialized){onInitialized();}else if(persistentResponse.Initialized){connection.log("WARNING! The client received an init message after reconnecting.");}},triggerReceived:function(connection,data){if(!connection._.connectingMessageBuffer.tryBuffer(data)){$(connection).triggerHandler(events.onReceived,[data]);}},processMessages:function(connection,minData,onInitialized){var data;transportLogic.markLastMessage(connection);if(minData){data=transportLogic.maximizePersistentResponse(minData);transportLogic.updateGroups(connection,data.GroupsToken);if(data.MessageId){connection.messageId=data.MessageId;} +if(data.Messages){$.each(data.Messages,function(index,message){transportLogic.triggerReceived(connection,message);});transportLogic.tryInitialize(connection,data,onInitialized);}}},monitorKeepAlive:function(connection){var keepAliveData=connection._.keepAliveData;if(!keepAliveData.monitoring){keepAliveData.monitoring=true;transportLogic.markLastMessage(connection);connection._.keepAliveData.reconnectKeepAliveUpdate=function(){transportLogic.markLastMessage(connection);};$(connection).bind(events.onReconnect,connection._.keepAliveData.reconnectKeepAliveUpdate);connection.log("Now monitoring keep alive with a warning timeout of "+keepAliveData.timeoutWarning+", keep alive timeout of "+keepAliveData.timeout+" and disconnecting timeout of "+connection.disconnectTimeout);}else{connection.log("Tried to monitor keep alive but it's already being monitored.");}},stopMonitoringKeepAlive:function(connection){var keepAliveData=connection._.keepAliveData;if(keepAliveData.monitoring){keepAliveData.monitoring=false;$(connection).unbind(events.onReconnect,connection._.keepAliveData.reconnectKeepAliveUpdate);connection._.keepAliveData={};connection.log("Stopping the monitoring of the keep alive.");}},startHeartbeat:function(connection){connection._.lastActiveAt=new Date().getTime();beat(connection);},markLastMessage:function(connection){connection._.lastMessageAt=new Date().getTime();},markActive:function(connection){if(transportLogic.verifyLastActive(connection)){connection._.lastActiveAt=new Date().getTime();return true;} +return false;},isConnectedOrReconnecting:function(connection){return connection.state===signalR.connectionState.connected||connection.state===signalR.connectionState.reconnecting;},ensureReconnectingState:function(connection){if(changeState(connection,signalR.connectionState.connected,signalR.connectionState.reconnecting)===true){$(connection).triggerHandler(events.onReconnecting);} +return connection.state===signalR.connectionState.reconnecting;},clearReconnectTimeout:function(connection){if(connection&&connection._.reconnectTimeout){window.clearTimeout(connection._.reconnectTimeout);delete connection._.reconnectTimeout;}},verifyLastActive:function(connection){if(new Date().getTime()-connection._.lastActiveAt>=connection.reconnectWindow){var message=signalR._.format(signalR.resources.reconnectWindowTimeout,new Date(connection._.lastActiveAt),connection.reconnectWindow);connection.log(message);$(connection).triggerHandler(events.onError,[signalR._.error(message,"TimeoutException")]);connection.stop(false,false);return false;} +return true;},reconnect:function(connection,transportName){var transport=signalR.transports[transportName];if(transportLogic.isConnectedOrReconnecting(connection)&&!connection._.reconnectTimeout){if(!transportLogic.verifyLastActive(connection)){return;} +connection._.reconnectTimeout=window.setTimeout(function(){if(!transportLogic.verifyLastActive(connection)){return;} +transport.stop(connection);if(transportLogic.ensureReconnectingState(connection)){connection.log(transportName+" reconnecting.");transport.start(connection);}},connection.reconnectDelay);}},handleParseFailure:function(connection,result,error,onFailed,context){var wrappedError=signalR._.transportError(signalR._.format(signalR.resources.parseFailed,result),connection.transport,error,context);if(onFailed&&onFailed(wrappedError)){connection.log("Failed to parse server response while attempting to connect.");}else{$(connection).triggerHandler(events.onError,[wrappedError]);connection.stop();}},initHandler:function(connection){return new InitHandler(connection);},foreverFrame:{count:0,connections:{}}};}(window.jQuery,window));(function($,window,undefined){var signalR=$.signalR,events=$.signalR.events,changeState=$.signalR.changeState,transportLogic=signalR.transports._logic;signalR.transports.webSockets={name:"webSockets",supportsKeepAlive:function(){return true;},send:function(connection,data){var payload=transportLogic.stringifySend(connection,data);try{connection.socket.send(payload);}catch(ex){$(connection).triggerHandler(events.onError,[signalR._.transportError(signalR.resources.webSocketsInvalidState,connection.transport,ex,connection.socket),data]);}},start:function(connection,onSuccess,onFailed){var url,opened=false,that=this,reconnecting=!onSuccess,$connection=$(connection);if(!window.WebSocket){onFailed();return;} +if(!connection.socket){if(connection.webSocketServerUrl){url=connection.webSocketServerUrl;}else{url=connection.wsProtocol+connection.host;} +url+=transportLogic.getUrl(connection,this.name,reconnecting);connection.log("Connecting to websocket endpoint '"+url+"'.");connection.socket=new window.WebSocket(url);connection.socket.onopen=function(){opened=true;connection.log("Websocket opened.");transportLogic.clearReconnectTimeout(connection);if(changeState(connection,signalR.connectionState.reconnecting,signalR.connectionState.connected)===true){$connection.triggerHandler(events.onReconnect);}};connection.socket.onclose=function(event){var error;if(this===connection.socket){if(opened&&typeof event.wasClean!=="undefined"&&event.wasClean===false){error=signalR._.transportError(signalR.resources.webSocketClosed,connection.transport,event);connection.log("Unclean disconnect from websocket: "+(event.reason||"[no reason given]."));}else{connection.log("Websocket closed.");} +if(!onFailed||!onFailed(error)){if(error){$(connection).triggerHandler(events.onError,[error]);} +that.reconnect(connection);}}};connection.socket.onmessage=function(event){var data;try{data=connection._parseResponse(event.data);} +catch(error){transportLogic.handleParseFailure(connection,event.data,error,onFailed,event);return;} +if(data){if($.isEmptyObject(data)||data.M){transportLogic.processMessages(connection,data,onSuccess);}else{transportLogic.triggerReceived(connection,data);}}};}},reconnect:function(connection){transportLogic.reconnect(connection,this.name);},lostConnection:function(connection){this.reconnect(connection);},stop:function(connection){transportLogic.clearReconnectTimeout(connection);if(connection.socket){connection.log("Closing the Websocket.");connection.socket.close();connection.socket=null;}},abort:function(connection,async){transportLogic.ajaxAbort(connection,async);}};}(window.jQuery,window));(function($,window,undefined){var signalR=$.signalR,events=$.signalR.events,changeState=$.signalR.changeState,transportLogic=signalR.transports._logic,clearReconnectAttemptTimeout=function(connection){window.clearTimeout(connection._.reconnectAttemptTimeoutHandle);delete connection._.reconnectAttemptTimeoutHandle;};signalR.transports.serverSentEvents={name:"serverSentEvents",supportsKeepAlive:function(){return true;},timeOut:3000,start:function(connection,onSuccess,onFailed){var that=this,opened=false,$connection=$(connection),reconnecting=!onSuccess,url;if(connection.eventSource){connection.log("The connection already has an event source. Stopping it.");connection.stop();} +if(!window.EventSource){if(onFailed){connection.log("This browser doesn't support SSE.");onFailed();} +return;} +url=transportLogic.getUrl(connection,this.name,reconnecting);try{connection.log("Attempting to connect to SSE endpoint '"+url+"'.");connection.eventSource=new window.EventSource(url,{withCredentials:connection.withCredentials});} +catch(e){connection.log("EventSource failed trying to connect with error "+e.Message+".");if(onFailed){onFailed();}else{$connection.triggerHandler(events.onError,[signalR._.transportError(signalR.resources.eventSourceFailedToConnect,connection.transport,e)]);if(reconnecting){that.reconnect(connection);}} +return;} +if(reconnecting){connection._.reconnectAttemptTimeoutHandle=window.setTimeout(function(){if(opened===false){if(connection.eventSource.readyState!==window.EventSource.OPEN){that.reconnect(connection);}}},that.timeOut);} +connection.eventSource.addEventListener("open",function(e){connection.log("EventSource connected.");clearReconnectAttemptTimeout(connection);transportLogic.clearReconnectTimeout(connection);if(opened===false){opened=true;if(changeState(connection,signalR.connectionState.reconnecting,signalR.connectionState.connected)===true){$connection.triggerHandler(events.onReconnect);}}},false);connection.eventSource.addEventListener("message",function(e){var res;if(e.data==="initialized"){return;} +try{res=connection._parseResponse(e.data);} +catch(error){transportLogic.handleParseFailure(connection,e.data,error,onFailed,e);return;} +transportLogic.processMessages(connection,res,onSuccess);},false);connection.eventSource.addEventListener("error",function(e){var error=signalR._.transportError(signalR.resources.eventSourceError,connection.transport,e);if(this!==connection.eventSource){return;} +if(onFailed&&onFailed(error)){return;} +connection.log("EventSource readyState: "+connection.eventSource.readyState+".");if(e.eventPhase===window.EventSource.CLOSED){connection.log("EventSource reconnecting due to the server connection ending.");that.reconnect(connection);}else{connection.log("EventSource error.");$connection.triggerHandler(events.onError,[error]);}},false);},reconnect:function(connection){transportLogic.reconnect(connection,this.name);},lostConnection:function(connection){this.reconnect(connection);},send:function(connection,data){transportLogic.ajaxSend(connection,data);},stop:function(connection){clearReconnectAttemptTimeout(connection);transportLogic.clearReconnectTimeout(connection);if(connection&&connection.eventSource){connection.log("EventSource calling close().");connection.eventSource.close();connection.eventSource=null;delete connection.eventSource;}},abort:function(connection,async){transportLogic.ajaxAbort(connection,async);}};}(window.jQuery,window));(function($,window,undefined){var signalR=$.signalR,events=$.signalR.events,changeState=$.signalR.changeState,transportLogic=signalR.transports._logic,createFrame=function(){var frame=window.document.createElement("iframe");frame.setAttribute("style","position:absolute;top:0;left:0;width:0;height:0;visibility:hidden;");return frame;},loadPreventer=(function(){var loadingFixIntervalId=null,loadingFixInterval=1000,attachedTo=0;return{prevent:function(){if(signalR._.ieVersion<=8){if(attachedTo===0){loadingFixIntervalId=window.setInterval(function(){var tempFrame=createFrame();window.document.body.appendChild(tempFrame);window.document.body.removeChild(tempFrame);tempFrame=null;},loadingFixInterval);} +attachedTo++;}},cancel:function(){if(attachedTo===1){window.clearInterval(loadingFixIntervalId);} +if(attachedTo>0){attachedTo--;}}};})();signalR.transports.foreverFrame={name:"foreverFrame",supportsKeepAlive:function(){return true;},iframeClearThreshold:50,start:function(connection,onSuccess,onFailed){var that=this,frameId=(transportLogic.foreverFrame.count+=1),url,frame=createFrame(),frameLoadHandler=function(){connection.log("Forever frame iframe finished loading and is no longer receiving messages.");if(!onFailed||!onFailed()){that.reconnect(connection);}};if(window.EventSource){if(onFailed){connection.log("Forever Frame is not supported by SignalR on browsers with SSE support.");onFailed();} +return;} +frame.setAttribute("data-signalr-connection-id",connection.id);loadPreventer.prevent();url=transportLogic.getUrl(connection,this.name);url+="&frameId="+frameId;window.document.documentElement.appendChild(frame);connection.log("Binding to iframe's load event.");if(frame.addEventListener){frame.addEventListener("load",frameLoadHandler,false);}else if(frame.attachEvent){frame.attachEvent("onload",frameLoadHandler);} +frame.src=url;transportLogic.foreverFrame.connections[frameId]=connection;connection.frame=frame;connection.frameId=frameId;if(onSuccess){connection.onSuccess=function(){connection.log("Iframe transport started.");onSuccess();};}},reconnect:function(connection){var that=this;if(transportLogic.isConnectedOrReconnecting(connection)&&transportLogic.verifyLastActive(connection)){window.setTimeout(function(){if(!transportLogic.verifyLastActive(connection)){return;} +if(connection.frame&&transportLogic.ensureReconnectingState(connection)){var frame=connection.frame,src=transportLogic.getUrl(connection,that.name,true)+"&frameId="+connection.frameId;connection.log("Updating iframe src to '"+src+"'.");frame.src=src;}},connection.reconnectDelay);}},lostConnection:function(connection){this.reconnect(connection);},send:function(connection,data){transportLogic.ajaxSend(connection,data);},receive:function(connection,data){var cw,body,response;if(connection.json!==connection._originalJson){data=connection._originalJson.stringify(data);} +response=connection._parseResponse(data);transportLogic.processMessages(connection,response,connection.onSuccess);if(connection.state===$.signalR.connectionState.connected){connection.frameMessageCount=(connection.frameMessageCount||0)+1;if(connection.frameMessageCount>signalR.transports.foreverFrame.iframeClearThreshold){connection.frameMessageCount=0;cw=connection.frame.contentWindow||connection.frame.contentDocument;if(cw&&cw.document&&cw.document.body){body=cw.document.body;while(body.firstChild){body.removeChild(body.firstChild);}}}}},stop:function(connection){var cw=null;loadPreventer.cancel();if(connection.frame){if(connection.frame.stop){connection.frame.stop();}else{try{cw=connection.frame.contentWindow||connection.frame.contentDocument;if(cw.document&&cw.document.execCommand){cw.document.execCommand("Stop");}} +catch(e){connection.log("Error occurred when stopping foreverFrame transport. Message = "+e.message+".");}} +if(connection.frame.parentNode===window.document.body){window.document.body.removeChild(connection.frame);} +delete transportLogic.foreverFrame.connections[connection.frameId];connection.frame=null;connection.frameId=null;delete connection.frame;delete connection.frameId;delete connection.onSuccess;delete connection.frameMessageCount;connection.log("Stopping forever frame.");}},abort:function(connection,async){transportLogic.ajaxAbort(connection,async);},getConnection:function(id){return transportLogic.foreverFrame.connections[id];},started:function(connection){if(changeState(connection,signalR.connectionState.reconnecting,signalR.connectionState.connected)===true){$(connection).triggerHandler(events.onReconnect);}}};}(window.jQuery,window));(function($,window,undefined){var signalR=$.signalR,events=$.signalR.events,changeState=$.signalR.changeState,isDisconnecting=$.signalR.isDisconnecting,transportLogic=signalR.transports._logic;signalR.transports.longPolling={name:"longPolling",supportsKeepAlive:function(){return false;},reconnectDelay:3000,start:function(connection,onSuccess,onFailed){var that=this,fireConnect=function(){fireConnect=$.noop;connection.log("LongPolling connected.");if(onSuccess){onSuccess();}else{connection.log("WARNING! The client received an init message after reconnecting.");}},tryFailConnect=function(error){if(onFailed(error)){connection.log("LongPolling failed to connect.");return true;} +return false;},privateData=connection._,reconnectErrors=0,fireReconnected=function(instance){window.clearTimeout(privateData.reconnectTimeoutId);privateData.reconnectTimeoutId=null;if(changeState(instance,signalR.connectionState.reconnecting,signalR.connectionState.connected)===true){instance.log("Raising the reconnect event");$(instance).triggerHandler(events.onReconnect);}},maxFireReconnectedTimeout=3600000;if(connection.pollXhr){connection.log("Polling xhr requests already exists, aborting.");connection.stop();} +connection.messageId=null;privateData.reconnectTimeoutId=null;privateData.pollTimeoutId=window.setTimeout(function(){(function poll(instance,raiseReconnect){var messageId=instance.messageId,connect=(messageId===null),reconnecting=!connect,polling=!raiseReconnect,url=transportLogic.getUrl(instance,that.name,reconnecting,polling,true),postData={};if(instance.messageId){postData.messageId=instance.messageId;} +if(instance.groupsToken){postData.groupsToken=instance.groupsToken;} +if(isDisconnecting(instance)===true){return;} +connection.log("Opening long polling request to '"+url+"'.");instance.pollXhr=transportLogic.ajax(connection,{xhrFields:{onprogress:function(){transportLogic.markLastMessage(connection);}},url:url,type:"POST",contentType:signalR._.defaultContentType,data:postData,timeout:connection._.pollTimeout,success:function(result){var minData,delay=0,data,shouldReconnect;connection.log("Long poll complete.");reconnectErrors=0;try{minData=connection._parseResponse(result);} +catch(error){transportLogic.handleParseFailure(instance,result,error,tryFailConnect,instance.pollXhr);return;} +if(privateData.reconnectTimeoutId!==null){fireReconnected(instance);} +if(minData){data=transportLogic.maximizePersistentResponse(minData);} +transportLogic.processMessages(instance,minData,fireConnect);if(data&&$.type(data.LongPollDelay)==="number"){delay=data.LongPollDelay;} +if(isDisconnecting(instance)===true){return;} +shouldReconnect=data&&data.ShouldReconnect;if(shouldReconnect){if(!transportLogic.ensureReconnectingState(instance)){return;}} +if(delay>0){privateData.pollTimeoutId=window.setTimeout(function(){poll(instance,shouldReconnect);},delay);}else{poll(instance,shouldReconnect);}},error:function(data,textStatus){var error=signalR._.transportError(signalR.resources.longPollFailed,connection.transport,data,instance.pollXhr);window.clearTimeout(privateData.reconnectTimeoutId);privateData.reconnectTimeoutId=null;if(textStatus==="abort"){connection.log("Aborted xhr request.");return;} +if(!tryFailConnect(error)){reconnectErrors++;if(connection.state!==signalR.connectionState.reconnecting){connection.log("An error occurred using longPolling. Status = "+textStatus+". Response = "+data.responseText+".");$(instance).triggerHandler(events.onError,[error]);} +if((connection.state===signalR.connectionState.connected||connection.state===signalR.connectionState.reconnecting)&&!transportLogic.verifyLastActive(connection)){return;} +if(!transportLogic.ensureReconnectingState(instance)){return;} +privateData.pollTimeoutId=window.setTimeout(function(){poll(instance,true);},that.reconnectDelay);}}});if(reconnecting&&raiseReconnect===true){privateData.reconnectTimeoutId=window.setTimeout(function(){fireReconnected(instance);},Math.min(1000*(Math.pow(2,reconnectErrors)-1),maxFireReconnectedTimeout));}}(connection));},250);},lostConnection:function(connection){if(connection.pollXhr){connection.pollXhr.abort("lostConnection");}},send:function(connection,data){transportLogic.ajaxSend(connection,data);},stop:function(connection){window.clearTimeout(connection._.pollTimeoutId);window.clearTimeout(connection._.reconnectTimeoutId);delete connection._.pollTimeoutId;delete connection._.reconnectTimeoutId;if(connection.pollXhr){connection.pollXhr.abort();connection.pollXhr=null;delete connection.pollXhr;}},abort:function(connection,async){transportLogic.ajaxAbort(connection,async);}};}(window.jQuery,window));(function($,window,undefined){var eventNamespace=".hubProxy",signalR=$.signalR;function makeEventName(event){return event+eventNamespace;} +function map(arr,fun,thisp){var i,length=arr.length,result=[];for(i=0;i=1.2.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.7.0.tgz#489ebc198dc0e7f64167bd23b03c4c19b5784c76" + integrity sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ== + dependencies: + debug "^3.2.6" + +ms@0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" + integrity sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg= + +ms@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== + +node-rest-client@^2.0.1: + version "2.5.0" + resolved "https://registry.yarnpkg.com/node-rest-client/-/node-rest-client-2.5.0.tgz#3c53eadba2b2c3b3a4df2ba2f646acc23d8a0701" + integrity sha1-PFPq26Kyw7Ok3yui9kaswj2KBwE= + dependencies: + debug "~2.2.0" + follow-redirects ">=1.2.0" + xml2js ">=0.2.4" + +paypal-permissions-sdk@^1.0.10: + version "1.0.10" + resolved "https://registry.yarnpkg.com/paypal-permissions-sdk/-/paypal-permissions-sdk-1.0.10.tgz#2b2713ab555647eacffd775fe33e11b233cfc18f" + integrity sha512-cNiQnDsrvWMuEwigR1lh+Ty4Y5J3ducRmbIQXH2K9oP8CjW3Tkf7cVk0IOBPH2a6N4D4tjGM4WDhMl68of1Z0A== + dependencies: + node-rest-client "^2.0.1" + +sax@>=0.6.0: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + +xml2js@>=0.2.4: + version "0.4.19" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" + integrity sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q== + dependencies: + sax ">=0.6.0" + xmlbuilder "~9.0.1" + +xmlbuilder@~9.0.1: + version "9.0.7" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" + integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=