diff options
| -rw-r--r-- | .mocharc.json | 3 | ||||
| -rw-r--r-- | package-lock.json | 940 | ||||
| -rw-r--r-- | package.json | 7 | 
3 files changed, 949 insertions, 1 deletions
| diff --git a/.mocharc.json b/.mocharc.json new file mode 100644 index 0000000..5b98d75 --- /dev/null +++ b/.mocharc.json @@ -0,0 +1,3 @@ +{ +  "require": ["ts-node/register", "test/dbConnection.ts"] +} diff --git a/package-lock.json b/package-lock.json index a080b2c..9d59188 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,6 +18,12 @@          "@types/node": "*"        }      }, +    "@types/chai": { +      "version": "4.2.14", +      "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.14.tgz", +      "integrity": "sha512-G+ITQPXkwTrslfG5L/BksmbLUA0M1iybEsmCWPqzSxsRRhJZimBKJkoMi8fr/CPygPTj4zO5pJH7I2/cm9M7SQ==", +      "dev": true +    },      "@types/cron": {        "version": "1.7.2",        "resolved": "https://registry.npmjs.org/@types/cron/-/cron-1.7.2.tgz", @@ -28,6 +34,12 @@          "moment": ">=2.14.0"        }      }, +    "@types/mocha": { +      "version": "8.0.4", +      "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.0.4.tgz", +      "integrity": "sha512-M4BwiTJjHmLq6kjON7ZoI2JMlBvpY3BYSdiP6s/qCT3jb1s9/DeJF0JELpAxiVSIxXDzfNKe+r7yedMIoLbknQ==", +      "dev": true +    },      "@types/mongodb": {        "version": "3.5.34",        "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.5.34.tgz", @@ -52,6 +64,76 @@        "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.10.tgz",        "integrity": "sha512-J32dgx2hw8vXrSbu4ZlVhn1Nm3GbeCFNw2FWL8S5QKucHGY0cyNwjdQdO+KMBZ4wpmC7KhLCiNsdk1RFRIYUQQ=="      }, +    "@ungap/promise-all-settled": { +      "version": "1.1.2", +      "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", +      "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", +      "dev": true +    }, +    "ansi-colors": { +      "version": "4.1.1", +      "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", +      "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", +      "dev": true +    }, +    "ansi-regex": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", +      "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", +      "dev": true +    }, +    "ansi-styles": { +      "version": "4.3.0", +      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", +      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", +      "dev": true, +      "requires": { +        "color-convert": "^2.0.1" +      } +    }, +    "anymatch": { +      "version": "3.1.1", +      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", +      "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", +      "dev": true, +      "requires": { +        "normalize-path": "^3.0.0", +        "picomatch": "^2.0.4" +      } +    }, +    "arg": { +      "version": "4.1.3", +      "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", +      "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", +      "dev": true +    }, +    "argparse": { +      "version": "1.0.10", +      "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", +      "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", +      "dev": true, +      "requires": { +        "sprintf-js": "~1.0.2" +      } +    }, +    "assertion-error": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", +      "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", +      "dev": true +    }, +    "balanced-match": { +      "version": "1.0.0", +      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", +      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", +      "dev": true +    }, +    "binary-extensions": { +      "version": "2.1.0", +      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", +      "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", +      "dev": true +    },      "bl": {        "version": "2.2.1",        "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz", @@ -66,11 +148,154 @@        "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",        "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="      }, +    "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" +      } +    }, +    "braces": { +      "version": "3.0.2", +      "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", +      "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", +      "dev": true, +      "requires": { +        "fill-range": "^7.0.1" +      } +    }, +    "browser-stdout": { +      "version": "1.3.1", +      "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", +      "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", +      "dev": true +    },      "bson": {        "version": "1.1.5",        "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.5.tgz",        "integrity": "sha512-kDuEzldR21lHciPQAIulLs1LZlCXdLziXI6Mb/TDkwXhb//UORJNPXgcRs2CuO4H0DcMkpfT3/ySsP3unoZjBg=="      }, +    "buffer-from": { +      "version": "1.1.1", +      "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", +      "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", +      "dev": true +    }, +    "camelcase": { +      "version": "5.3.1", +      "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", +      "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", +      "dev": true +    }, +    "chai": { +      "version": "4.2.0", +      "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", +      "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", +      "dev": true, +      "requires": { +        "assertion-error": "^1.1.0", +        "check-error": "^1.0.2", +        "deep-eql": "^3.0.1", +        "get-func-name": "^2.0.0", +        "pathval": "^1.1.0", +        "type-detect": "^4.0.5" +      } +    }, +    "chalk": { +      "version": "4.1.0", +      "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", +      "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", +      "dev": true, +      "requires": { +        "ansi-styles": "^4.1.0", +        "supports-color": "^7.1.0" +      } +    }, +    "check-error": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", +      "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", +      "dev": true +    }, +    "chokidar": { +      "version": "3.4.3", +      "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.3.tgz", +      "integrity": "sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ==", +      "dev": true, +      "requires": { +        "anymatch": "~3.1.1", +        "braces": "~3.0.2", +        "fsevents": "~2.1.2", +        "glob-parent": "~5.1.0", +        "is-binary-path": "~2.1.0", +        "is-glob": "~4.0.1", +        "normalize-path": "~3.0.0", +        "readdirp": "~3.5.0" +      } +    }, +    "cliui": { +      "version": "5.0.0", +      "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", +      "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", +      "dev": true, +      "requires": { +        "string-width": "^3.1.0", +        "strip-ansi": "^5.2.0", +        "wrap-ansi": "^5.1.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==", +          "dev": true +        }, +        "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==", +          "dev": true, +          "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==", +          "dev": true, +          "requires": { +            "ansi-regex": "^4.1.0" +          } +        } +      } +    }, +    "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==", +      "dev": true, +      "requires": { +        "color-name": "~1.1.4" +      } +    }, +    "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==", +      "dev": true +    }, +    "concat-map": { +      "version": "0.0.1", +      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", +      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", +      "dev": true +    },      "core-util-is": {        "version": "1.0.2",        "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", @@ -99,32 +324,307 @@          }        }      }, +    "decamelize": { +      "version": "1.2.0", +      "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", +      "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", +      "dev": true +    }, +    "deep-eql": { +      "version": "3.0.1", +      "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", +      "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", +      "dev": true, +      "requires": { +        "type-detect": "^4.0.0" +      } +    },      "denque": {        "version": "1.4.1",        "resolved": "https://registry.npmjs.org/denque/-/denque-1.4.1.tgz",        "integrity": "sha512-OfzPuSZKGcgr96rf1oODnfjqBFmr1DVoc/TrItj3Ohe0Ah1C5WX5Baquw/9U9KovnQ88EqmJbD66rKYUQYN1tQ=="      }, +    "diff": { +      "version": "4.0.2", +      "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", +      "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", +      "dev": true +    }, +    "emoji-regex": { +      "version": "7.0.3", +      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", +      "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", +      "dev": true +    }, +    "escape-string-regexp": { +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", +      "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", +      "dev": true +    }, +    "esprima": { +      "version": "4.0.1", +      "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", +      "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", +      "dev": true +    }, +    "fill-range": { +      "version": "7.0.1", +      "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", +      "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", +      "dev": true, +      "requires": { +        "to-regex-range": "^5.0.1" +      } +    }, +    "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": { +        "locate-path": "^6.0.0", +        "path-exists": "^4.0.0" +      } +    }, +    "flat": { +      "version": "5.0.2", +      "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", +      "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", +      "dev": true +    }, +    "fs.realpath": { +      "version": "1.0.0", +      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", +      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", +      "dev": true +    }, +    "fsevents": { +      "version": "2.1.3", +      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", +      "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", +      "dev": true, +      "optional": true +    }, +    "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==", +      "dev": true +    }, +    "get-func-name": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", +      "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", +      "dev": true +    }, +    "glob": { +      "version": "7.1.6", +      "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", +      "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", +      "dev": true, +      "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" +      } +    }, +    "glob-parent": { +      "version": "5.1.1", +      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", +      "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", +      "dev": true, +      "requires": { +        "is-glob": "^4.0.1" +      } +    }, +    "growl": { +      "version": "1.10.5", +      "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", +      "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", +      "dev": true +    }, +    "has-flag": { +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", +      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", +      "dev": true +    }, +    "he": { +      "version": "1.2.0", +      "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", +      "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", +      "dev": true +    }, +    "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.4",        "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",        "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="      }, +    "is-binary-path": { +      "version": "2.1.0", +      "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", +      "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", +      "dev": true, +      "requires": { +        "binary-extensions": "^2.0.0" +      } +    }, +    "is-extglob": { +      "version": "2.1.1", +      "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", +      "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", +      "dev": true +    }, +    "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=", +      "dev": true +    }, +    "is-glob": { +      "version": "4.0.1", +      "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", +      "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", +      "dev": true, +      "requires": { +        "is-extglob": "^2.1.1" +      } +    }, +    "is-number": { +      "version": "7.0.0", +      "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", +      "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", +      "dev": true +    }, +    "is-plain-obj": { +      "version": "2.1.0", +      "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", +      "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", +      "dev": true +    },      "isarray": {        "version": "1.0.0",        "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",        "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="      }, +    "isexe": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", +      "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", +      "dev": true +    }, +    "js-yaml": { +      "version": "3.14.0", +      "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", +      "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", +      "dev": true, +      "requires": { +        "argparse": "^1.0.7", +        "esprima": "^4.0.0" +      } +    },      "kareem": {        "version": "2.3.1",        "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.1.tgz",        "integrity": "sha512-l3hLhffs9zqoDe8zjmb/mAN4B8VT3L56EUvKNqLFVs9YlFA+zx7ke1DO8STAdDyYNkeSo1nKmjuvQeI12So8Xw=="      }, +    "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": { +        "p-locate": "^5.0.0" +      } +    }, +    "log-symbols": { +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", +      "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", +      "dev": true, +      "requires": { +        "chalk": "^4.0.0" +      } +    }, +    "make-error": { +      "version": "1.3.6", +      "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", +      "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", +      "dev": true +    },      "memory-pager": {        "version": "1.5.0",        "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",        "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==",        "optional": true      }, +    "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" +      } +    }, +    "mocha": { +      "version": "8.2.1", +      "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.2.1.tgz", +      "integrity": "sha512-cuLBVfyFfFqbNR0uUKbDGXKGk+UDFe6aR4os78XIrMQpZl/nv7JYHcvP5MFIAb374b2zFXsdgEGwmzMtP0Xg8w==", +      "dev": true, +      "requires": { +        "@ungap/promise-all-settled": "1.1.2", +        "ansi-colors": "4.1.1", +        "browser-stdout": "1.3.1", +        "chokidar": "3.4.3", +        "debug": "4.2.0", +        "diff": "4.0.2", +        "escape-string-regexp": "4.0.0", +        "find-up": "5.0.0", +        "glob": "7.1.6", +        "growl": "1.10.5", +        "he": "1.2.0", +        "js-yaml": "3.14.0", +        "log-symbols": "4.0.0", +        "minimatch": "3.0.4", +        "ms": "2.1.2", +        "nanoid": "3.1.12", +        "serialize-javascript": "5.0.1", +        "strip-json-comments": "3.1.1", +        "supports-color": "7.2.0", +        "which": "2.0.2", +        "wide-align": "1.1.3", +        "workerpool": "6.0.2", +        "yargs": "13.3.2", +        "yargs-parser": "13.1.2", +        "yargs-unparser": "2.0.0" +      }, +      "dependencies": { +        "debug": { +          "version": "4.2.0", +          "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", +          "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", +          "dev": true, +          "requires": { +            "ms": "2.1.2" +          } +        } +      } +    },      "moment": {        "version": "2.29.1",        "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", @@ -209,11 +709,89 @@        "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",        "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="      }, +    "nanoid": { +      "version": "3.1.12", +      "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.12.tgz", +      "integrity": "sha512-1qstj9z5+x491jfiC4Nelk+f8XBad7LN20PmyWINJEMRSf3wcAjAWysw1qaA8z6NSKe2sjq1hRSDpBH5paCb6A==", +      "dev": true +    }, +    "normalize-path": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", +      "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", +      "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" +      } +    }, +    "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": { +        "yocto-queue": "^0.1.0" +      } +    }, +    "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": { +        "p-limit": "^3.0.2" +      } +    }, +    "p-try": { +      "version": "2.2.0", +      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", +      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", +      "dev": true +    }, +    "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=", +      "dev": true +    }, +    "pathval": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", +      "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", +      "dev": true +    }, +    "picomatch": { +      "version": "2.2.2", +      "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", +      "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", +      "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=="      }, +    "randombytes": { +      "version": "2.1.0", +      "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", +      "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", +      "dev": true, +      "requires": { +        "safe-buffer": "^5.1.0" +      } +    },      "readable-stream": {        "version": "2.3.7",        "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -235,11 +813,32 @@          }        }      }, +    "readdirp": { +      "version": "3.5.0", +      "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", +      "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", +      "dev": true, +      "requires": { +        "picomatch": "^2.2.1" +      } +    },      "regexp-clone": {        "version": "1.0.0",        "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-1.0.0.tgz",        "integrity": "sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw=="      }, +    "require-directory": { +      "version": "2.1.1", +      "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", +      "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", +      "dev": true +    }, +    "require-main-filename": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", +      "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", +      "dev": true +    },      "require_optional": {        "version": "1.0.1",        "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", @@ -273,6 +872,21 @@        "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",        "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ=="      }, +    "serialize-javascript": { +      "version": "5.0.1", +      "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", +      "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", +      "dev": true, +      "requires": { +        "randombytes": "^2.1.0" +      } +    }, +    "set-blocking": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", +      "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", +      "dev": true +    },      "sift": {        "version": "7.0.1",        "resolved": "https://registry.npmjs.org/sift/-/sift-7.0.1.tgz", @@ -283,6 +897,22 @@        "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz",        "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E="      }, +    "source-map": { +      "version": "0.6.1", +      "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", +      "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", +      "dev": true +    }, +    "source-map-support": { +      "version": "0.5.19", +      "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", +      "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", +      "dev": true, +      "requires": { +        "buffer-from": "^1.0.0", +        "source-map": "^0.6.0" +      } +    },      "sparse-bitfield": {        "version": "3.0.3",        "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", @@ -292,6 +922,22 @@          "memory-pager": "^1.0.2"        }      }, +    "sprintf-js": { +      "version": "1.0.3", +      "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", +      "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", +      "dev": true +    }, +    "string-width": { +      "version": "2.1.1", +      "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", +      "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", +      "dev": true, +      "requires": { +        "is-fullwidth-code-point": "^2.0.0", +        "strip-ansi": "^4.0.0" +      } +    },      "string_decoder": {        "version": "1.1.1",        "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -307,6 +953,58 @@          }        }      }, +    "strip-ansi": { +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", +      "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", +      "dev": true, +      "requires": { +        "ansi-regex": "^3.0.0" +      } +    }, +    "strip-json-comments": { +      "version": "3.1.1", +      "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", +      "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", +      "dev": true +    }, +    "supports-color": { +      "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": { +        "has-flag": "^4.0.0" +      } +    }, +    "to-regex-range": { +      "version": "5.0.1", +      "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", +      "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", +      "dev": true, +      "requires": { +        "is-number": "^7.0.0" +      } +    }, +    "ts-node": { +      "version": "9.0.0", +      "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.0.0.tgz", +      "integrity": "sha512-/TqB4SnererCDR/vb4S/QvSZvzQMJN8daAslg7MeaiHvD8rDZsSfXmNeNumyZZzMned72Xoq/isQljYSt8Ynfg==", +      "dev": true, +      "requires": { +        "arg": "^4.1.0", +        "diff": "^4.0.1", +        "make-error": "^1.1.1", +        "source-map-support": "^0.5.17", +        "yn": "3.1.1" +      } +    }, +    "type-detect": { +      "version": "4.0.8", +      "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", +      "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", +      "dev": true +    },      "typescript": {        "version": "4.1.2",        "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.2.tgz", @@ -317,6 +1015,248 @@        "version": "1.0.2",        "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",        "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" +    }, +    "which": { +      "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" +      } +    }, +    "which-module": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", +      "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", +      "dev": true +    }, +    "wide-align": { +      "version": "1.1.3", +      "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", +      "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", +      "dev": true, +      "requires": { +        "string-width": "^1.0.2 || 2" +      } +    }, +    "workerpool": { +      "version": "6.0.2", +      "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.0.2.tgz", +      "integrity": "sha512-DSNyvOpFKrNusaaUwk+ej6cBj1bmhLcBfj80elGk+ZIo5JSkq+unB1dLKEOcNfJDZgjGICfhQ0Q5TbP0PvF4+Q==", +      "dev": true +    }, +    "wrap-ansi": { +      "version": "5.1.0", +      "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", +      "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", +      "dev": true, +      "requires": { +        "ansi-styles": "^3.2.0", +        "string-width": "^3.0.0", +        "strip-ansi": "^5.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==", +          "dev": true +        }, +        "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==", +          "dev": true, +          "requires": { +            "color-convert": "^1.9.0" +          } +        }, +        "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==", +          "dev": true, +          "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=", +          "dev": true +        }, +        "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==", +          "dev": true, +          "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==", +          "dev": true, +          "requires": { +            "ansi-regex": "^4.1.0" +          } +        } +      } +    }, +    "wrappy": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", +      "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", +      "dev": true +    }, +    "y18n": { +      "version": "4.0.1", +      "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", +      "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==", +      "dev": true +    }, +    "yargs": { +      "version": "13.3.2", +      "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", +      "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", +      "dev": true, +      "requires": { +        "cliui": "^5.0.0", +        "find-up": "^3.0.0", +        "get-caller-file": "^2.0.1", +        "require-directory": "^2.1.1", +        "require-main-filename": "^2.0.0", +        "set-blocking": "^2.0.0", +        "string-width": "^3.0.0", +        "which-module": "^2.0.0", +        "y18n": "^4.0.0", +        "yargs-parser": "^13.1.2" +      }, +      "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==", +          "dev": true +        }, +        "find-up": { +          "version": "3.0.0", +          "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", +          "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", +          "dev": true, +          "requires": { +            "locate-path": "^3.0.0" +          } +        }, +        "locate-path": { +          "version": "3.0.0", +          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", +          "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", +          "dev": true, +          "requires": { +            "p-locate": "^3.0.0", +            "path-exists": "^3.0.0" +          } +        }, +        "p-limit": { +          "version": "2.3.0", +          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", +          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", +          "dev": true, +          "requires": { +            "p-try": "^2.0.0" +          } +        }, +        "p-locate": { +          "version": "3.0.0", +          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", +          "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", +          "dev": true, +          "requires": { +            "p-limit": "^2.0.0" +          } +        }, +        "path-exists": { +          "version": "3.0.0", +          "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", +          "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", +          "dev": true +        }, +        "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==", +          "dev": true, +          "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==", +          "dev": true, +          "requires": { +            "ansi-regex": "^4.1.0" +          } +        } +      } +    }, +    "yargs-parser": { +      "version": "13.1.2", +      "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", +      "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", +      "dev": true, +      "requires": { +        "camelcase": "^5.0.0", +        "decamelize": "^1.2.0" +      } +    }, +    "yargs-unparser": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", +      "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", +      "dev": true, +      "requires": { +        "camelcase": "^6.0.0", +        "decamelize": "^4.0.0", +        "flat": "^5.0.2", +        "is-plain-obj": "^2.1.0" +      }, +      "dependencies": { +        "camelcase": { +          "version": "6.2.0", +          "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", +          "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", +          "dev": true +        }, +        "decamelize": { +          "version": "4.0.0", +          "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", +          "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", +          "dev": true +        } +      } +    }, +    "yn": { +      "version": "3.1.1", +      "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", +      "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", +      "dev": true +    }, +    "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 e344cf9..cbd5f52 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@    "description": "Cron-based job scheduler integrated with mongoDB",    "main": "index.js",    "scripts": { -    "start": "node index.js" +    "test": "mocha test/**/*.test.ts"    },    "author": "eug-vs",    "license": "MIT", @@ -15,8 +15,13 @@    },    "devDependencies": {      "@types/bluebird": "^3.5.33", +    "@types/chai": "^4.2.14",      "@types/cron": "^1.7.2", +    "@types/mocha": "^8.0.4",      "@types/mongoose": "^5.10.1", +    "chai": "^4.2.0", +    "mocha": "^8.2.1", +    "ts-node": "^9.0.0",      "typescript": "^4.1.2"    }  } | 
