Revert package updates

9c4ab7b · Jonathan Clem · 2020-09-16 19:09

4 files +2468 -7661

Files changed

modified dist/index.js
+2229 −2770
@@ -650,2106 +650,1769 @@ class ExecState extends events.EventEmitter {
650 650
651 651 /***/ }),
652 652
653 −/***/ 16:
654 −/***/ (function(module, __unusedexports, __webpack_require__) {
655 −
656 −const SemVer = __webpack_require__(65)
657 −const compareBuild = (a, b, loose) => {
658 − const versionA = new SemVer(a, loose)
659 − const versionB = new SemVer(b, loose)
660 − return versionA.compare(versionB) || versionA.compareBuild(versionB)
661 −}
662 −module.exports = compareBuild
653 +/***/ 87:
654 +/***/ (function(module) {
663 655
656 +module.exports = require("os");
664 657
665 658 /***/ }),
666 659
667 −/***/ 65:
668 −/***/ (function(module, __unusedexports, __webpack_require__) {
669 −
670 −const debug = __webpack_require__(548)
671 −const { MAX_LENGTH, MAX_SAFE_INTEGER } = __webpack_require__(181)
672 −const { re, t } = __webpack_require__(976)
673 −
674 −const { compareIdentifiers } = __webpack_require__(760)
675 −class SemVer {
676 − constructor (version, options) {
677 − if (!options || typeof options !== 'object') {
678 − options = {
679 − loose: !!options,
680 − includePrerelease: false
681 − }
682 − }
683 − if (version instanceof SemVer) {
684 − if (version.loose === !!options.loose &&
685 − version.includePrerelease === !!options.includePrerelease) {
686 − return version
687 − } else {
688 − version = version.version
689 − }
690 − } else if (typeof version !== 'string') {
691 − throw new TypeError(`Invalid Version: ${version}`)
692 − }
693 −
694 − if (version.length > MAX_LENGTH) {
695 − throw new TypeError(
696 − `version is longer than ${MAX_LENGTH} characters`
697 − )
698 − }
699 −
700 − debug('SemVer', version, options)
701 − this.options = options
702 − this.loose = !!options.loose
703 − // this isn't actually relevant for versions, but keep it so that we
704 − // don't run into trouble passing this.options around.
705 − this.includePrerelease = !!options.includePrerelease
706 −
707 − const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])
708 −
709 − if (!m) {
710 − throw new TypeError(`Invalid Version: ${version}`)
711 − }
712 −
713 − this.raw = version
660 +/***/ 129:
661 +/***/ (function(module) {
714 662
715 − // these are actually numbers
716 − this.major = +m[1]
717 − this.minor = +m[2]
718 − this.patch = +m[3]
663 +module.exports = require("child_process");
719 664
720 − if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
721 − throw new TypeError('Invalid major version')
722 − }
665 +/***/ }),
723 666
724 − if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
725 − throw new TypeError('Invalid minor version')
726 − }
667 +/***/ 194:
668 +/***/ (function(__unusedmodule, exports, __webpack_require__) {
727 669
728 − if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
729 − throw new TypeError('Invalid patch version')
730 − }
670 +"use strict";
731 671
732 − // numberify any prerelease numeric ids
733 − if (!m[4]) {
734 − this.prerelease = []
735 − } else {
736 − this.prerelease = m[4].split('.').map((id) => {
737 − if (/^[0-9]+$/.test(id)) {
738 − const num = +id
739 − if (num >= 0 && num < MAX_SAFE_INTEGER) {
740 − return num
741 − }
672 +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
673 + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
674 + return new (P || (P = Promise))(function (resolve, reject) {
675 + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
676 + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
677 + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
678 + step((generator = generator.apply(thisArg, _arguments || [])).next());
679 + });
680 +};
681 +Object.defineProperty(exports, "__esModule", { value: true });
682 +const childProcess = __webpack_require__(129);
683 +const path = __webpack_require__(622);
684 +const util_1 = __webpack_require__(669);
685 +const ioUtil = __webpack_require__(408);
686 +const exec = util_1.promisify(childProcess.exec);
687 +/**
688 + * Copies a file or folder.
689 + * Based off of shelljs - https://github.com/shelljs/shelljs/blob/9237f66c52e5daa40458f94f9565e18e8132f5a6/src/cp.js
690 + *
691 + * @param source source path
692 + * @param dest destination path
693 + * @param options optional. See CopyOptions.
694 + */
695 +function cp(source, dest, options = {}) {
696 + return __awaiter(this, void 0, void 0, function* () {
697 + const { force, recursive } = readCopyOptions(options);
698 + const destStat = (yield ioUtil.exists(dest)) ? yield ioUtil.stat(dest) : null;
699 + // Dest is an existing file, but not forcing
700 + if (destStat && destStat.isFile() && !force) {
701 + return;
742 702 }
743 − return id
744 − })
745 − }
746 −
747 − this.build = m[5] ? m[5].split('.') : []
748 − this.format()
749 − }
750 −
751 − format () {
752 − this.version = `${this.major}.${this.minor}.${this.patch}`
753 − if (this.prerelease.length) {
754 − this.version += `-${this.prerelease.join('.')}`
755 − }
756 − return this.version
757 − }
758 −
759 − toString () {
760 − return this.version
761 − }
762 −
763 − compare (other) {
764 − debug('SemVer.compare', this.version, this.options, other)
765 − if (!(other instanceof SemVer)) {
766 − if (typeof other === 'string' && other === this.version) {
767 − return 0
768 − }
769 − other = new SemVer(other, this.options)
770 − }
771 −
772 − if (other.version === this.version) {
773 − return 0
774 − }
775 −
776 − return this.compareMain(other) || this.comparePre(other)
777 − }
778 −
779 − compareMain (other) {
780 − if (!(other instanceof SemVer)) {
781 − other = new SemVer(other, this.options)
782 − }
783 −
784 − return (
785 − compareIdentifiers(this.major, other.major) ||
786 − compareIdentifiers(this.minor, other.minor) ||
787 − compareIdentifiers(this.patch, other.patch)
788 − )
789 − }
790 −
791 − comparePre (other) {
792 − if (!(other instanceof SemVer)) {
793 − other = new SemVer(other, this.options)
794 − }
795 −
796 − // NOT having a prerelease is > having one
797 − if (this.prerelease.length && !other.prerelease.length) {
798 − return -1
799 − } else if (!this.prerelease.length && other.prerelease.length) {
800 − return 1
801 − } else if (!this.prerelease.length && !other.prerelease.length) {
802 − return 0
803 − }
804 −
805 − let i = 0
806 − do {
807 − const a = this.prerelease[i]
808 − const b = other.prerelease[i]
809 − debug('prerelease compare', i, a, b)
810 − if (a === undefined && b === undefined) {
811 − return 0
812 − } else if (b === undefined) {
813 − return 1
814 − } else if (a === undefined) {
815 − return -1
816 − } else if (a === b) {
817 − continue
818 − } else {
819 − return compareIdentifiers(a, b)
820 − }
821 − } while (++i)
822 − }
823 −
824 − compareBuild (other) {
825 − if (!(other instanceof SemVer)) {
826 − other = new SemVer(other, this.options)
827 − }
828 −
829 − let i = 0
830 − do {
831 − const a = this.build[i]
832 − const b = other.build[i]
833 − debug('prerelease compare', i, a, b)
834 − if (a === undefined && b === undefined) {
835 − return 0
836 − } else if (b === undefined) {
837 − return 1
838 − } else if (a === undefined) {
839 − return -1
840 − } else if (a === b) {
841 − continue
842 − } else {
843 − return compareIdentifiers(a, b)
844 − }
845 − } while (++i)
846 − }
847 −
848 − // preminor will bump the version up to the next minor release, and immediately
849 − // down to pre-release. premajor and prepatch work the same way.
850 − inc (release, identifier) {
851 − switch (release) {
852 − case 'premajor':
853 − this.prerelease.length = 0
854 − this.patch = 0
855 − this.minor = 0
856 − this.major++
857 − this.inc('pre', identifier)
858 − break
859 − case 'preminor':
860 − this.prerelease.length = 0
861 − this.patch = 0
862 − this.minor++
863 − this.inc('pre', identifier)
864 − break
865 − case 'prepatch':
866 − // If this is already a prerelease, it will bump to the next version
867 − // drop any prereleases that might already exist, since they are not
868 − // relevant at this point.
869 − this.prerelease.length = 0
870 − this.inc('patch', identifier)
871 − this.inc('pre', identifier)
872 − break
873 − // If the input is a non-prerelease version, this acts the same as
874 − // prepatch.
875 − case 'prerelease':
876 − if (this.prerelease.length === 0) {
877 − this.inc('patch', identifier)
878 − }
879 − this.inc('pre', identifier)
880 − break
881 −
882 − case 'major':
883 − // If this is a pre-major version, bump up to the same major version.
884 − // Otherwise increment major.
885 − // 1.0.0-5 bumps to 1.0.0
886 − // 1.1.0 bumps to 2.0.0
887 − if (
888 − this.minor !== 0 ||
889 − this.patch !== 0 ||
890 − this.prerelease.length === 0
891 − ) {
892 − this.major++
893 − }
894 − this.minor = 0
895 − this.patch = 0
896 − this.prerelease = []
897 − break
898 − case 'minor':
899 − // If this is a pre-minor version, bump up to the same minor version.
900 − // Otherwise increment minor.
901 − // 1.2.0-5 bumps to 1.2.0
902 − // 1.2.1 bumps to 1.3.0
903 − if (this.patch !== 0 || this.prerelease.length === 0) {
904 − this.minor++
905 − }
906 − this.patch = 0
907 − this.prerelease = []
908 − break
909 − case 'patch':
910 − // If this is not a pre-release version, it will increment the patch.
911 − // If it is a pre-release it will bump up to the same patch version.
912 − // 1.2.0-5 patches to 1.2.0
913 − // 1.2.0 patches to 1.2.1
914 − if (this.prerelease.length === 0) {
915 − this.patch++
916 − }
917 − this.prerelease = []
918 − break
919 − // This probably shouldn't be used publicly.
920 − // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
921 − case 'pre':
922 − if (this.prerelease.length === 0) {
923 − this.prerelease = [0]
924 − } else {
925 − let i = this.prerelease.length
926 − while (--i >= 0) {
927 − if (typeof this.prerelease[i] === 'number') {
928 − this.prerelease[i]++
929 − i = -2
703 + // If dest is an existing directory, should copy inside.
704 + const newDest = destStat && destStat.isDirectory()
705 + ? path.join(dest, path.basename(source))
706 + : dest;
707 + if (!(yield ioUtil.exists(source))) {
708 + throw new Error(`no such file or directory: ${source}`);
709 + }
710 + const sourceStat = yield ioUtil.stat(source);
711 + if (sourceStat.isDirectory()) {
712 + if (!recursive) {
713 + throw new Error(`Failed to copy. ${source} is a directory, but tried to copy without recursive flag.`);
714 + }
715 + else {
716 + yield cpDirRecursive(source, newDest, 0, force);
930 717 }
931 − }
932 − if (i === -1) {
933 − // didn't increment anything
934 − this.prerelease.push(0)
935 − }
936 718 }
937 − if (identifier) {
938 − // 1.2.0-beta.1 bumps to 1.2.0-beta.2,
939 − // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
940 − if (this.prerelease[0] === identifier) {
941 − if (isNaN(this.prerelease[1])) {
942 − this.prerelease = [identifier, 0]
719 + else {
720 + if (path.relative(source, newDest) === '') {
721 + // a file cannot be copied to itself
722 + throw new Error(`'${newDest}' and '${source}' are the same file`);
943 723 }
944 − } else {
945 − this.prerelease = [identifier, 0]
946 − }
724 + yield copyFile(source, newDest, force);
947 725 }
948 − break
949 −
950 − default:
951 − throw new Error(`invalid increment argument: ${release}`)
952 − }
953 − this.format()
954 − this.raw = this.version
955 − return this
956 − }
957 −}
958 −
959 −module.exports = SemVer
960 −
961 −
962 −/***/ }),
963 −
964 −/***/ 87:
965 −/***/ (function(module) {
966 −
967 −module.exports = require("os");
968 −
969 −/***/ }),
970 −
971 −/***/ 120:
972 −/***/ (function(module, __unusedexports, __webpack_require__) {
973 −
974 −const compareBuild = __webpack_require__(16)
975 −const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))
976 −module.exports = sort
977 −
978 −
979 −/***/ }),
980 −
981 −/***/ 124:
982 −/***/ (function(module, __unusedexports, __webpack_require__) {
983 −
984 −// hoisted class for cyclic dependency
985 −class Range {
986 − constructor (range, options) {
987 − if (!options || typeof options !== 'object') {
988 − options = {
989 − loose: !!options,
990 − includePrerelease: false
991 − }
992 − }
993 −
994 − if (range instanceof Range) {
995 − if (
996 − range.loose === !!options.loose &&
997 − range.includePrerelease === !!options.includePrerelease
998 − ) {
999 − return range
1000 − } else {
1001 − return new Range(range.raw, options)
1002 − }
1003 − }
1004 −
1005 − if (range instanceof Comparator) {
1006 − // just put it in the set and return
1007 − this.raw = range.value
1008 − this.set = [[range]]
1009 − this.format()
1010 − return this
1011 − }
1012 −
1013 − this.options = options
1014 − this.loose = !!options.loose
1015 − this.includePrerelease = !!options.includePrerelease
1016 −
1017 − // First, split based on boolean or ||
1018 − this.raw = range
1019 − this.set = range
1020 − .split(/\s*\|\|\s*/)
1021 − // map the range to a 2d array of comparators
1022 − .map(range => this.parseRange(range.trim()))
1023 − // throw out any comparator lists that are empty
1024 − // this generally means that it was not a valid range, which is allowed
1025 − // in loose mode, but will still throw if the WHOLE range is invalid.
1026 − .filter(c => c.length)
1027 −
1028 − if (!this.set.length) {
1029 − throw new TypeError(`Invalid SemVer Range: ${range}`)
1030 − }
1031 −
1032 − this.format()
1033 − }
1034 −
1035 − format () {
1036 − this.range = this.set
1037 − .map((comps) => {
1038 − return comps.join(' ').trim()
1039 − })
1040 − .join('||')
1041 − .trim()
1042 − return this.range
1043 − }
1044 −
1045 − toString () {
1046 − return this.range
1047 − }
1048 −
1049 − parseRange (range) {
1050 − const loose = this.options.loose
1051 − range = range.trim()
1052 − // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
1053 − const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]
1054 − range = range.replace(hr, hyphenReplace(this.options.includePrerelease))
1055 − debug('hyphen replace', range)
1056 − // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
1057 − range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)
1058 − debug('comparator trim', range, re[t.COMPARATORTRIM])
1059 −
1060 − // `~ 1.2.3` => `~1.2.3`
1061 − range = range.replace(re[t.TILDETRIM], tildeTrimReplace)
1062 −
1063 − // `^ 1.2.3` => `^1.2.3`
1064 − range = range.replace(re[t.CARETTRIM], caretTrimReplace)
1065 −
1066 − // normalize spaces
1067 − range = range.split(/\s+/).join(' ')
1068 −
1069 − // At this point, the range is completely trimmed and
1070 − // ready to be split into comparators.
1071 −
1072 − const compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]
1073 − return range
1074 − .split(' ')
1075 − .map(comp => parseComparator(comp, this.options))
1076 − .join(' ')
1077 − .split(/\s+/)
1078 − .map(comp => replaceGTE0(comp, this.options))
1079 − // in loose mode, throw out any that are not valid comparators
1080 − .filter(this.options.loose ? comp => !!comp.match(compRe) : () => true)
1081 − .map(comp => new Comparator(comp, this.options))
1082 − }
1083 −
1084 − intersects (range, options) {
1085 − if (!(range instanceof Range)) {
1086 − throw new TypeError('a Range is required')
1087 − }
1088 −
1089 − return this.set.some((thisComparators) => {
1090 − return (
1091 − isSatisfiable(thisComparators, options) &&
1092 − range.set.some((rangeComparators) => {
1093 − return (
1094 − isSatisfiable(rangeComparators, options) &&
1095 − thisComparators.every((thisComparator) => {
1096 − return rangeComparators.every((rangeComparator) => {
1097 − return thisComparator.intersects(rangeComparator, options)
1098 − })
1099 − })
1100 − )
1101 − })
1102 − )
1103 − })
1104 − }
1105 −
1106 − // if ANY of the sets match ALL of its comparators, then pass
1107 − test (version) {
1108 − if (!version) {
1109 − return false
1110 − }
1111 −
1112 − if (typeof version === 'string') {
1113 − try {
1114 − version = new SemVer(version, this.options)
1115 − } catch (er) {
1116 − return false
1117 − }
1118 − }
1119 −
1120 − for (let i = 0; i < this.set.length; i++) {
1121 − if (testSet(this.set[i], version, this.options)) {
1122 − return true
1123 − }
1124 − }
1125 − return false
1126 − }
726 + });
1127 727 }
1128 −module.exports = Range
1129 −
1130 −const Comparator = __webpack_require__(174)
1131 −const debug = __webpack_require__(548)
1132 −const SemVer = __webpack_require__(65)
1133 −const {
1134 − re,
1135 − t,
1136 − comparatorTrimReplace,
1137 − tildeTrimReplace,
1138 − caretTrimReplace
1139 −} = __webpack_require__(976)
1140 −
1141 −// take a set of comparators and determine whether there
1142 −// exists a version which can satisfy it
1143 −const isSatisfiable = (comparators, options) => {
1144 − let result = true
1145 − const remainingComparators = comparators.slice()
1146 − let testComparator = remainingComparators.pop()
1147 −
1148 − while (result && remainingComparators.length) {
1149 − result = remainingComparators.every((otherComparator) => {
1150 − return testComparator.intersects(otherComparator, options)
1151 − })
1152 −
1153 − testComparator = remainingComparators.pop()
1154 − }
1155 −
1156 − return result
728 +exports.cp = cp;
729 +/**
730 + * Moves a path.
731 + *
732 + * @param source source path
733 + * @param dest destination path
734 + * @param options optional. See MoveOptions.
735 + */
736 +function mv(source, dest, options = {}) {
737 + return __awaiter(this, void 0, void 0, function* () {
738 + if (yield ioUtil.exists(dest)) {
739 + let destExists = true;
740 + if (yield ioUtil.isDirectory(dest)) {
741 + // If dest is directory copy src into dest
742 + dest = path.join(dest, path.basename(source));
743 + destExists = yield ioUtil.exists(dest);
744 + }
745 + if (destExists) {
746 + if (options.force == null || options.force) {
747 + yield rmRF(dest);
748 + }
749 + else {
750 + throw new Error('Destination already exists');
751 + }
752 + }
753 + }
754 + yield mkdirP(path.dirname(dest));
755 + yield ioUtil.rename(source, dest);
756 + });
1157 757 }
1158 −
1159 −// comprised of xranges, tildes, stars, and gtlt's at this point.
1160 −// already replaced the hyphen ranges
1161 −// turn into a set of JUST comparators.
1162 −const parseComparator = (comp, options) => {
1163 − debug('comp', comp, options)
1164 − comp = replaceCarets(comp, options)
1165 − debug('caret', comp)
1166 − comp = replaceTildes(comp, options)
1167 − debug('tildes', comp)
1168 − comp = replaceXRanges(comp, options)
1169 − debug('xrange', comp)
1170 − comp = replaceStars(comp, options)
1171 − debug('stars', comp)
1172 − return comp
758 +exports.mv = mv;
759 +/**
760 + * Remove a path recursively with force
761 + *
762 + * @param inputPath path to remove
763 + */
764 +function rmRF(inputPath) {
765 + return __awaiter(this, void 0, void 0, function* () {
766 + if (ioUtil.IS_WINDOWS) {
767 + // Node doesn't provide a delete operation, only an unlink function. This means that if the file is being used by another
768 + // program (e.g. antivirus), it won't be deleted. To address this, we shell out the work to rd/del.
769 + try {
770 + if (yield ioUtil.isDirectory(inputPath, true)) {
771 + yield exec(`rd /s /q "${inputPath}"`);
772 + }
773 + else {
774 + yield exec(`del /f /a "${inputPath}"`);
775 + }
776 + }
777 + catch (err) {
778 + // if you try to delete a file that doesn't exist, desired result is achieved
779 + // other errors are valid
780 + if (err.code !== 'ENOENT')
781 + throw err;
782 + }
783 + // Shelling out fails to remove a symlink folder with missing source, this unlink catches that
784 + try {
785 + yield ioUtil.unlink(inputPath);
786 + }
787 + catch (err) {
788 + // if you try to delete a file that doesn't exist, desired result is achieved
789 + // other errors are valid
790 + if (err.code !== 'ENOENT')
791 + throw err;
792 + }
793 + }
794 + else {
795 + let isDir = false;
796 + try {
797 + isDir = yield ioUtil.isDirectory(inputPath);
798 + }
799 + catch (err) {
800 + // if you try to delete a file that doesn't exist, desired result is achieved
801 + // other errors are valid
802 + if (err.code !== 'ENOENT')
803 + throw err;
804 + return;
805 + }
806 + if (isDir) {
807 + yield exec(`rm -rf "${inputPath}"`);
808 + }
809 + else {
810 + yield ioUtil.unlink(inputPath);
811 + }
812 + }
813 + });
1173 814 }
1174 −
1175 −const isX = id => !id || id.toLowerCase() === 'x' || id === '*'
1176 −
1177 −// ~, ~> --> * (any, kinda silly)
1178 −// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0-0
1179 −// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0-0
1180 −// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0-0
1181 −// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0
1182 −// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0
1183 −const replaceTildes = (comp, options) =>
1184 − comp.trim().split(/\s+/).map((comp) => {
1185 − return replaceTilde(comp, options)
1186 − }).join(' ')
1187 −
1188 −const replaceTilde = (comp, options) => {
1189 − const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]
1190 − return comp.replace(r, (_, M, m, p, pr) => {
1191 − debug('tilde', comp, _, M, m, p, pr)
1192 − let ret
1193 −
1194 − if (isX(M)) {
1195 − ret = ''
1196 − } else if (isX(m)) {
1197 − ret = `>=${M}.0.0 <${+M + 1}.0.0-0`
1198 − } else if (isX(p)) {
1199 − // ~1.2 == >=1.2.0 <1.3.0-0
1200 − ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`
1201 − } else if (pr) {
1202 − debug('replaceTilde pr', pr)
1203 − ret = `>=${M}.${m}.${p}-${pr
1204 − } <${M}.${+m + 1}.0-0`
1205 − } else {
1206 − // ~1.2.3 == >=1.2.3 <1.3.0-0
1207 − ret = `>=${M}.${m}.${p
1208 − } <${M}.${+m + 1}.0-0`
1209 − }
1210 −
1211 − debug('tilde return', ret)
1212 − return ret
1213 − })
815 +exports.rmRF = rmRF;
816 +/**
817 + * Make a directory. Creates the full path with folders in between
818 + * Will throw if it fails
819 + *
820 + * @param fsPath path to create
821 + * @returns Promise<void>
822 + */
823 +function mkdirP(fsPath) {
824 + return __awaiter(this, void 0, void 0, function* () {
825 + yield ioUtil.mkdirP(fsPath);
826 + });
1214 827 }
1215 −
1216 −// ^ --> * (any, kinda silly)
1217 −// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0-0
1218 −// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0-0
1219 −// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0-0
1220 −// ^1.2.3 --> >=1.2.3 <2.0.0-0
1221 −// ^1.2.0 --> >=1.2.0 <2.0.0-0
1222 −const replaceCarets = (comp, options) =>
1223 − comp.trim().split(/\s+/).map((comp) => {
1224 − return replaceCaret(comp, options)
1225 − }).join(' ')
1226 −
1227 −const replaceCaret = (comp, options) => {
1228 − debug('caret', comp, options)
1229 − const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]
1230 − const z = options.includePrerelease ? '-0' : ''
1231 − return comp.replace(r, (_, M, m, p, pr) => {
1232 − debug('caret', comp, _, M, m, p, pr)
1233 − let ret
1234 −
1235 − if (isX(M)) {
1236 − ret = ''
1237 − } else if (isX(m)) {
1238 − ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`
1239 − } else if (isX(p)) {
1240 − if (M === '0') {
1241 − ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`
1242 − } else {
1243 − ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`
1244 − }
1245 − } else if (pr) {
1246 − debug('replaceCaret pr', pr)
1247 − if (M === '0') {
1248 − if (m === '0') {
1249 − ret = `>=${M}.${m}.${p}-${pr
1250 − } <${M}.${m}.${+p + 1}-0`
1251 − } else {
1252 − ret = `>=${M}.${m}.${p}-${pr
1253 − } <${M}.${+m + 1}.0-0`
828 +exports.mkdirP = mkdirP;
829 +/**
830 + * Returns path of a tool had the tool actually been invoked. Resolves via paths.
831 + * If you check and the tool does not exist, it will throw.
832 + *
833 + * @param tool name of the tool
834 + * @param check whether to check if tool exists
835 + * @returns Promise<string> path to tool
836 + */
837 +function which(tool, check) {
838 + return __awaiter(this, void 0, void 0, function* () {
839 + if (!tool) {
840 + throw new Error("parameter 'tool' is required");
1254 841 }
1255 − } else {
1256 − ret = `>=${M}.${m}.${p}-${pr
1257 − } <${+M + 1}.0.0-0`
1258 − }
1259 − } else {
1260 − debug('no pr')
1261 − if (M === '0') {
1262 − if (m === '0') {
1263 − ret = `>=${M}.${m}.${p
1264 − }${z} <${M}.${m}.${+p + 1}-0`
1265 − } else {
1266 − ret = `>=${M}.${m}.${p
1267 − }${z} <${M}.${+m + 1}.0-0`
842 + // recursive when check=true
843 + if (check) {
844 + const result = yield which(tool, false);
845 + if (!result) {
846 + if (ioUtil.IS_WINDOWS) {
847 + throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`);
848 + }
849 + else {
850 + throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`);
851 + }
852 + }
1268 853 }
1269 − } else {
1270 − ret = `>=${M}.${m}.${p
1271 − } <${+M + 1}.0.0-0`
1272 − }
1273 − }
1274 −
1275 − debug('caret return', ret)
1276 − return ret
1277 − })
854 + try {
855 + // build the list of extensions to try
856 + const extensions = [];
857 + if (ioUtil.IS_WINDOWS && process.env.PATHEXT) {
858 + for (const extension of process.env.PATHEXT.split(path.delimiter)) {
859 + if (extension) {
860 + extensions.push(extension);
861 + }
862 + }
863 + }
864 + // if it's rooted, return it if exists. otherwise return empty.
865 + if (ioUtil.isRooted(tool)) {
866 + const filePath = yield ioUtil.tryGetExecutablePath(tool, extensions);
867 + if (filePath) {
868 + return filePath;
869 + }
870 + return '';
871 + }
872 + // if any path separators, return empty
873 + if (tool.includes('/') || (ioUtil.IS_WINDOWS && tool.includes('\\'))) {
874 + return '';
875 + }
876 + // build the list of directories
877 + //
878 + // Note, technically "where" checks the current directory on Windows. From a toolkit perspective,
879 + // it feels like we should not do this. Checking the current directory seems like more of a use
880 + // case of a shell, and the which() function exposed by the toolkit should strive for consistency
881 + // across platforms.
882 + const directories = [];
883 + if (process.env.PATH) {
884 + for (const p of process.env.PATH.split(path.delimiter)) {
885 + if (p) {
886 + directories.push(p);
887 + }
888 + }
889 + }
890 + // return the first match
891 + for (const directory of directories) {
892 + const filePath = yield ioUtil.tryGetExecutablePath(directory + path.sep + tool, extensions);
893 + if (filePath) {
894 + return filePath;
895 + }
896 + }
897 + return '';
898 + }
899 + catch (err) {
900 + throw new Error(`which failed with message ${err.message}`);
901 + }
902 + });
1278 903 }
1279 −
1280 −const replaceXRanges = (comp, options) => {
1281 − debug('replaceXRanges', comp, options)
1282 − return comp.split(/\s+/).map((comp) => {
1283 − return replaceXRange(comp, options)
1284 − }).join(' ')
904 +exports.which = which;
905 +function readCopyOptions(options) {
906 + const force = options.force == null ? true : options.force;
907 + const recursive = Boolean(options.recursive);
908 + return { force, recursive };
1285 909 }
1286 −
1287 −const replaceXRange = (comp, options) => {
1288 − comp = comp.trim()
1289 − const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]
1290 − return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
1291 − debug('xRange', comp, ret, gtlt, M, m, p, pr)
1292 − const xM = isX(M)
1293 − const xm = xM || isX(m)
1294 − const xp = xm || isX(p)
1295 − const anyX = xp
1296 −
1297 − if (gtlt === '=' && anyX) {
1298 − gtlt = ''
1299 − }
1300 −
1301 − // if we're including prereleases in the match, then we need
1302 − // to fix this to -0, the lowest possible prerelease value
1303 − pr = options.includePrerelease ? '-0' : ''
1304 −
1305 − if (xM) {
1306 − if (gtlt === '>' || gtlt === '<') {
1307 − // nothing is allowed
1308 − ret = '<0.0.0-0'
1309 − } else {
1310 − // nothing is forbidden
1311 − ret = '*'
1312 − }
1313 − } else if (gtlt && anyX) {
1314 − // we know patch is an x, because we have any x at all.
1315 − // replace X with 0
1316 − if (xm) {
1317 − m = 0
1318 − }
1319 − p = 0
1320 −
1321 − if (gtlt === '>') {
1322 − // >1 => >=2.0.0
1323 − // >1.2 => >=1.3.0
1324 − gtlt = '>='
1325 − if (xm) {
1326 − M = +M + 1
1327 − m = 0
1328 − p = 0
1329 − } else {
1330 − m = +m + 1
1331 − p = 0
910 +function cpDirRecursive(sourceDir, destDir, currentDepth, force) {
911 + return __awaiter(this, void 0, void 0, function* () {
912 + // Ensure there is not a run away recursive copy
913 + if (currentDepth >= 255)
914 + return;
915 + currentDepth++;
916 + yield mkdirP(destDir);
917 + const files = yield ioUtil.readdir(sourceDir);
918 + for (const fileName of files) {
919 + const srcFile = `${sourceDir}/${fileName}`;
920 + const destFile = `${destDir}/${fileName}`;
921 + const srcFileStat = yield ioUtil.lstat(srcFile);
922 + if (srcFileStat.isDirectory()) {
923 + // Recurse
924 + yield cpDirRecursive(srcFile, destFile, currentDepth, force);
925 + }
926 + else {
927 + yield copyFile(srcFile, destFile, force);
928 + }
1332 929 }
1333 − } else if (gtlt === '<=') {
1334 − // <=0.7.x is actually <0.8.0, since any 0.7.x should
1335 − // pass. Similarly, <=7.x is actually <8.0.0, etc.
1336 − gtlt = '<'
1337 − if (xm) {
1338 − M = +M + 1
1339 − } else {
1340 − m = +m + 1
930 + // Change the mode for the newly created directory
931 + yield ioUtil.chmod(destDir, (yield ioUtil.stat(sourceDir)).mode);
932 + });
933 +}
934 +// Buffered file copy
935 +function copyFile(srcFile, destFile, force) {
936 + return __awaiter(this, void 0, void 0, function* () {
937 + if ((yield ioUtil.lstat(srcFile)).isSymbolicLink()) {
938 + // unlink/re-link it
939 + try {
940 + yield ioUtil.lstat(destFile);
941 + yield ioUtil.unlink(destFile);
942 + }
943 + catch (e) {
944 + // Try to override file permission
945 + if (e.code === 'EPERM') {
946 + yield ioUtil.chmod(destFile, '0666');
947 + yield ioUtil.unlink(destFile);
948 + }
949 + // other errors = it doesn't exist, no work to do
950 + }
951 + // Copy over symlink
952 + const symlinkFull = yield ioUtil.readlink(srcFile);
953 + yield ioUtil.symlink(symlinkFull, destFile, ioUtil.IS_WINDOWS ? 'junction' : null);
1341 954 }
1342 − }
1343 −
1344 − if (gtlt === '<')
1345 − pr = '-0'
955 + else if (!(yield ioUtil.exists(destFile)) || force) {
956 + yield ioUtil.copyFile(srcFile, destFile);
957 + }
958 + });
959 +}
960 +//# sourceMappingURL=io.js.map
1346 961
1347 − ret = `${gtlt + M}.${m}.${p}${pr}`
1348 − } else if (xm) {
1349 − ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`
1350 − } else if (xp) {
1351 − ret = `>=${M}.${m}.0${pr
1352 − } <${M}.${+m + 1}.0-0`
1353 − }
962 +/***/ }),
1354 963
1355 − debug('xRange return', ret)
964 +/***/ 211:
965 +/***/ (function(module) {
1356 966
1357 − return ret
1358 − })
1359 −}
967 +module.exports = require("https");
1360 968
1361 −// Because * is AND-ed with everything else in the comparator,
1362 −// and '' means "any version", just remove the *s entirely.
1363 −const replaceStars = (comp, options) => {
1364 − debug('replaceStars', comp, options)
1365 − // Looseness is ignored here. star is always as loose as it gets!
1366 − return comp.trim().replace(re[t.STAR], '')
1367 −}
969 +/***/ }),
1368 970
1369 −const replaceGTE0 = (comp, options) => {
1370 − debug('replaceGTE0', comp, options)
1371 − return comp.trim()
1372 − .replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '')
971 +/***/ 280:
972 +/***/ (function(module, exports) {
973 +
974 +exports = module.exports = SemVer
975 +
976 +var debug
977 +/* istanbul ignore next */
978 +if (typeof process === 'object' &&
979 + process.env &&
980 + process.env.NODE_DEBUG &&
981 + /\bsemver\b/i.test(process.env.NODE_DEBUG)) {
982 + debug = function () {
983 + var args = Array.prototype.slice.call(arguments, 0)
984 + args.unshift('SEMVER')
985 + console.log.apply(console, args)
986 + }
987 +} else {
988 + debug = function () {}
1373 989 }
1374 990
1375 −// This function is passed to string.replace(re[t.HYPHENRANGE])
1376 −// M, m, patch, prerelease, build
1377 −// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
1378 −// 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do
1379 −// 1.2 - 3.4 => >=1.2.0 <3.5.0-0
1380 −const hyphenReplace = incPr => ($0,
1381 − from, fM, fm, fp, fpr, fb,
1382 − to, tM, tm, tp, tpr, tb) => {
1383 − if (isX(fM)) {
1384 − from = ''
1385 − } else if (isX(fm)) {
1386 − from = `>=${fM}.0.0${incPr ? '-0' : ''}`
1387 − } else if (isX(fp)) {
1388 − from = `>=${fM}.${fm}.0${incPr ? '-0' : ''}`
1389 − } else if (fpr) {
1390 − from = `>=${from}`
1391 − } else {
1392 − from = `>=${from}${incPr ? '-0' : ''}`
1393 − }
991 +// Note: this is the semver.org version of the spec that it implements
992 +// Not necessarily the package version of this code.
993 +exports.SEMVER_SPEC_VERSION = '2.0.0'
1394 994
1395 − if (isX(tM)) {
1396 − to = ''
1397 − } else if (isX(tm)) {
1398 − to = `<${+tM + 1}.0.0-0`
1399 − } else if (isX(tp)) {
1400 − to = `<${tM}.${+tm + 1}.0-0`
1401 − } else if (tpr) {
1402 − to = `<=${tM}.${tm}.${tp}-${tpr}`
1403 − } else if (incPr) {
1404 − to = `<${tM}.${tm}.${+tp + 1}-0`
1405 − } else {
1406 − to = `<=${to}`
1407 − }
995 +var MAX_LENGTH = 256
996 +var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||
997 + /* istanbul ignore next */ 9007199254740991
1408 998
1409 − return (`${from} ${to}`).trim()
1410 −}
999 +// Max safe segment length for coercion.
1000 +var MAX_SAFE_COMPONENT_LENGTH = 16
1411 1001
1412 −const testSet = (set, version, options) => {
1413 − for (let i = 0; i < set.length; i++) {
1414 − if (!set[i].test(version)) {
1415 − return false
1416 − }
1417 − }
1002 +// The actual regexps go on exports.re
1003 +var re = exports.re = []
1004 +var src = exports.src = []
1005 +var t = exports.tokens = {}
1006 +var R = 0
1418 1007
1419 − if (version.prerelease.length && !options.includePrerelease) {
1420 − // Find the set of versions that are allowed to have prereleases
1421 − // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
1422 − // That should allow `1.2.3-pr.2` to pass.
1423 − // However, `1.2.4-alpha.notready` should NOT be allowed,
1424 − // even though it's within the range set by the comparators.
1425 − for (let i = 0; i < set.length; i++) {
1426 − debug(set[i].semver)
1427 − if (set[i].semver === Comparator.ANY) {
1428 − continue
1429 − }
1008 +function tok (n) {
1009 + t[n] = R++
1010 +}
1430 1011
1431 − if (set[i].semver.prerelease.length > 0) {
1432 − const allowed = set[i].semver
1433 − if (allowed.major === version.major &&
1434 − allowed.minor === version.minor &&
1435 − allowed.patch === version.patch) {
1436 − return true
1437 − }
1438 − }
1439 − }
1012 +// The following Regular Expressions can be used for tokenizing,
1013 +// validating, and parsing SemVer version strings.
1440 1014
1441 − // Version has a -pre, but it's not one of the ones we like.
1442 − return false
1443 − }
1015 +// ## Numeric Identifier
1016 +// A single `0`, or a non-zero digit followed by zero or more digits.
1444 1017
1445 − return true
1446 −}
1018 +tok('NUMERICIDENTIFIER')
1019 +src[t.NUMERICIDENTIFIER] = '0|[1-9]\\d*'
1020 +tok('NUMERICIDENTIFIERLOOSE')
1021 +src[t.NUMERICIDENTIFIERLOOSE] = '[0-9]+'
1447 1022
1023 +// ## Non-numeric Identifier
1024 +// Zero or more digits, followed by a letter or hyphen, and then zero or
1025 +// more letters, digits, or hyphens.
1448 1026
1449 −/***/ }),
1027 +tok('NONNUMERICIDENTIFIER')
1028 +src[t.NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*'
1450 1029
1451 −/***/ 129:
1452 −/***/ (function(module) {
1030 +// ## Main Version
1031 +// Three dot-separated numeric identifiers.
1453 1032
1454 −module.exports = require("child_process");
1033 +tok('MAINVERSION')
1034 +src[t.MAINVERSION] = '(' + src[t.NUMERICIDENTIFIER] + ')\\.' +
1035 + '(' + src[t.NUMERICIDENTIFIER] + ')\\.' +
1036 + '(' + src[t.NUMERICIDENTIFIER] + ')'
1455 1037
1456 −/***/ }),
1038 +tok('MAINVERSIONLOOSE')
1039 +src[t.MAINVERSIONLOOSE] = '(' + src[t.NUMERICIDENTIFIERLOOSE] + ')\\.' +
1040 + '(' + src[t.NUMERICIDENTIFIERLOOSE] + ')\\.' +
1041 + '(' + src[t.NUMERICIDENTIFIERLOOSE] + ')'
1457 1042
1458 −/***/ 164:
1459 −/***/ (function(module, __unusedexports, __webpack_require__) {
1043 +// ## Pre-release Version Identifier
1044 +// A numeric identifier, or a non-numeric identifier.
1460 1045
1461 −const SemVer = __webpack_require__(65)
1462 −const Range = __webpack_require__(124)
1463 −const gt = __webpack_require__(486)
1046 +tok('PRERELEASEIDENTIFIER')
1047 +src[t.PRERELEASEIDENTIFIER] = '(?:' + src[t.NUMERICIDENTIFIER] +
1048 + '|' + src[t.NONNUMERICIDENTIFIER] + ')'
1464 1049
1465 −const minVersion = (range, loose) => {
1466 − range = new Range(range, loose)
1050 +tok('PRERELEASEIDENTIFIERLOOSE')
1051 +src[t.PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[t.NUMERICIDENTIFIERLOOSE] +
1052 + '|' + src[t.NONNUMERICIDENTIFIER] + ')'
1467 1053
1468 − let minver = new SemVer('0.0.0')
1469 − if (range.test(minver)) {
1470 − return minver
1471 − }
1054 +// ## Pre-release Version
1055 +// Hyphen, followed by one or more dot-separated pre-release version
1056 +// identifiers.
1472 1057
1473 − minver = new SemVer('0.0.0-0')
1474 − if (range.test(minver)) {
1475 − return minver
1476 − }
1058 +tok('PRERELEASE')
1059 +src[t.PRERELEASE] = '(?:-(' + src[t.PRERELEASEIDENTIFIER] +
1060 + '(?:\\.' + src[t.PRERELEASEIDENTIFIER] + ')*))'
1477 1061
1478 − minver = null
1479 − for (let i = 0; i < range.set.length; ++i) {
1480 − const comparators = range.set[i]
1062 +tok('PRERELEASELOOSE')
1063 +src[t.PRERELEASELOOSE] = '(?:-?(' + src[t.PRERELEASEIDENTIFIERLOOSE] +
1064 + '(?:\\.' + src[t.PRERELEASEIDENTIFIERLOOSE] + ')*))'
1481 1065
1482 − comparators.forEach((comparator) => {
1483 − // Clone to avoid manipulating the comparator's semver object.
1484 − const compver = new SemVer(comparator.semver.version)
1485 − switch (comparator.operator) {
1486 − case '>':
1487 − if (compver.prerelease.length === 0) {
1488 − compver.patch++
1489 − } else {
1490 − compver.prerelease.push(0)
1491 − }
1492 − compver.raw = compver.format()
1493 − /* fallthrough */
1494 − case '':
1495 − case '>=':
1496 − if (!minver || gt(minver, compver)) {
1497 − minver = compver
1498 − }
1499 − break
1500 − case '<':
1501 − case '<=':
1502 − /* Ignore maximum versions */
1503 − break
1504 − /* istanbul ignore next */
1505 − default:
1506 − throw new Error(`Unexpected operation: ${comparator.operator}`)
1507 − }
1508 − })
1509 − }
1066 +// ## Build Metadata Identifier
1067 +// Any combination of digits, letters, or hyphens.
1510 1068
1511 − if (minver && range.test(minver)) {
1512 − return minver
1513 − }
1069 +tok('BUILDIDENTIFIER')
1070 +src[t.BUILDIDENTIFIER] = '[0-9A-Za-z-]+'
1514 1071
1515 − return null
1516 −}
1517 −module.exports = minVersion
1072 +// ## Build Metadata
1073 +// Plus sign, followed by one or more period-separated build metadata
1074 +// identifiers.
1518 1075
1076 +tok('BUILD')
1077 +src[t.BUILD] = '(?:\\+(' + src[t.BUILDIDENTIFIER] +
1078 + '(?:\\.' + src[t.BUILDIDENTIFIER] + ')*))'
1519 1079
1520 −/***/ }),
1080 +// ## Full Version String
1081 +// A main version, followed optionally by a pre-release version and
1082 +// build metadata.
1521 1083
1522 −/***/ 167:
1523 −/***/ (function(module, __unusedexports, __webpack_require__) {
1084 +// Note that the only major, minor, patch, and pre-release sections of
1085 +// the version string are capturing groups. The build metadata is not a
1086 +// capturing group, because it should not ever be used in version
1087 +// comparison.
1524 1088
1525 −const compare = __webpack_require__(874)
1526 −const gte = (a, b, loose) => compare(a, b, loose) >= 0
1527 −module.exports = gte
1089 +tok('FULL')
1090 +tok('FULLPLAIN')
1091 +src[t.FULLPLAIN] = 'v?' + src[t.MAINVERSION] +
1092 + src[t.PRERELEASE] + '?' +
1093 + src[t.BUILD] + '?'
1528 1094
1095 +src[t.FULL] = '^' + src[t.FULLPLAIN] + '$'
1529 1096
1530 −/***/ }),
1097 +// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.
1098 +// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty
1099 +// common in the npm registry.
1100 +tok('LOOSEPLAIN')
1101 +src[t.LOOSEPLAIN] = '[v=\\s]*' + src[t.MAINVERSIONLOOSE] +
1102 + src[t.PRERELEASELOOSE] + '?' +
1103 + src[t.BUILD] + '?'
1531 1104
1532 −/***/ 174:
1533 −/***/ (function(module, __unusedexports, __webpack_require__) {
1105 +tok('LOOSE')
1106 +src[t.LOOSE] = '^' + src[t.LOOSEPLAIN] + '$'
1534 1107
1535 −const ANY = Symbol('SemVer ANY')
1536 −// hoisted class for cyclic dependency
1537 −class Comparator {
1538 − static get ANY () {
1539 − return ANY
1540 − }
1541 − constructor (comp, options) {
1542 − if (!options || typeof options !== 'object') {
1543 − options = {
1544 − loose: !!options,
1545 − includePrerelease: false
1546 − }
1547 − }
1108 +tok('GTLT')
1109 +src[t.GTLT] = '((?:<|>)?=?)'
1548 1110
1549 − if (comp instanceof Comparator) {
1550 − if (comp.loose === !!options.loose) {
1551 − return comp
1552 − } else {
1553 − comp = comp.value
1554 − }
1555 − }
1111 +// Something like "2.*" or "1.2.x".
1112 +// Note that "x.x" is a valid xRange identifer, meaning "any version"
1113 +// Only the first item is strictly required.
1114 +tok('XRANGEIDENTIFIERLOOSE')
1115 +src[t.XRANGEIDENTIFIERLOOSE] = src[t.NUMERICIDENTIFIERLOOSE] + '|x|X|\\*'
1116 +tok('XRANGEIDENTIFIER')
1117 +src[t.XRANGEIDENTIFIER] = src[t.NUMERICIDENTIFIER] + '|x|X|\\*'
1118 +
1119 +tok('XRANGEPLAIN')
1120 +src[t.XRANGEPLAIN] = '[v=\\s]*(' + src[t.XRANGEIDENTIFIER] + ')' +
1121 + '(?:\\.(' + src[t.XRANGEIDENTIFIER] + ')' +
1122 + '(?:\\.(' + src[t.XRANGEIDENTIFIER] + ')' +
1123 + '(?:' + src[t.PRERELEASE] + ')?' +
1124 + src[t.BUILD] + '?' +
1125 + ')?)?'
1126 +
1127 +tok('XRANGEPLAINLOOSE')
1128 +src[t.XRANGEPLAINLOOSE] = '[v=\\s]*(' + src[t.XRANGEIDENTIFIERLOOSE] + ')' +
1129 + '(?:\\.(' + src[t.XRANGEIDENTIFIERLOOSE] + ')' +
1130 + '(?:\\.(' + src[t.XRANGEIDENTIFIERLOOSE] + ')' +
1131 + '(?:' + src[t.PRERELEASELOOSE] + ')?' +
1132 + src[t.BUILD] + '?' +
1133 + ')?)?'
1134 +
1135 +tok('XRANGE')
1136 +src[t.XRANGE] = '^' + src[t.GTLT] + '\\s*' + src[t.XRANGEPLAIN] + '$'
1137 +tok('XRANGELOOSE')
1138 +src[t.XRANGELOOSE] = '^' + src[t.GTLT] + '\\s*' + src[t.XRANGEPLAINLOOSE] + '$'
1556 1139
1557 − debug('comparator', comp, options)
1558 − this.options = options
1559 − this.loose = !!options.loose
1560 − this.parse(comp)
1140 +// Coercion.
1141 +// Extract anything that could conceivably be a part of a valid semver
1142 +tok('COERCE')
1143 +src[t.COERCE] = '(^|[^\\d])' +
1144 + '(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '})' +
1145 + '(?:\\.(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' +
1146 + '(?:\\.(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' +
1147 + '(?:$|[^\\d])'
1148 +tok('COERCERTL')
1149 +re[t.COERCERTL] = new RegExp(src[t.COERCE], 'g')
1561 1150
1562 − if (this.semver === ANY) {
1563 − this.value = ''
1564 − } else {
1565 − this.value = this.operator + this.semver.version
1566 − }
1151 +// Tilde ranges.
1152 +// Meaning is "reasonably at or greater than"
1153 +tok('LONETILDE')
1154 +src[t.LONETILDE] = '(?:~>?)'
1567 1155
1568 − debug('comp', this)
1569 − }
1156 +tok('TILDETRIM')
1157 +src[t.TILDETRIM] = '(\\s*)' + src[t.LONETILDE] + '\\s+'
1158 +re[t.TILDETRIM] = new RegExp(src[t.TILDETRIM], 'g')
1159 +var tildeTrimReplace = '$1~'
1570 1160
1571 − parse (comp) {
1572 − const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]
1573 − const m = comp.match(r)
1161 +tok('TILDE')
1162 +src[t.TILDE] = '^' + src[t.LONETILDE] + src[t.XRANGEPLAIN] + '$'
1163 +tok('TILDELOOSE')
1164 +src[t.TILDELOOSE] = '^' + src[t.LONETILDE] + src[t.XRANGEPLAINLOOSE] + '$'
1574 1165
1575 − if (!m) {
1576 − throw new TypeError(`Invalid comparator: ${comp}`)
1577 − }
1166 +// Caret ranges.
1167 +// Meaning is "at least and backwards compatible with"
1168 +tok('LONECARET')
1169 +src[t.LONECARET] = '(?:\\^)'
1578 1170
1579 − this.operator = m[1] !== undefined ? m[1] : ''
1580 − if (this.operator === '=') {
1581 − this.operator = ''
1582 − }
1171 +tok('CARETTRIM')
1172 +src[t.CARETTRIM] = '(\\s*)' + src[t.LONECARET] + '\\s+'
1173 +re[t.CARETTRIM] = new RegExp(src[t.CARETTRIM], 'g')
1174 +var caretTrimReplace = '$1^'
1583 1175
1584 − // if it literally is just '>' or '' then allow anything.
1585 − if (!m[2]) {
1586 − this.semver = ANY
1587 − } else {
1588 − this.semver = new SemVer(m[2], this.options.loose)
1589 − }
1590 − }
1176 +tok('CARET')
1177 +src[t.CARET] = '^' + src[t.LONECARET] + src[t.XRANGEPLAIN] + '$'
1178 +tok('CARETLOOSE')
1179 +src[t.CARETLOOSE] = '^' + src[t.LONECARET] + src[t.XRANGEPLAINLOOSE] + '$'
1591 1180
1592 − toString () {
1593 − return this.value
1594 − }
1181 +// A simple gt/lt/eq thing, or just "" to indicate "any version"
1182 +tok('COMPARATORLOOSE')
1183 +src[t.COMPARATORLOOSE] = '^' + src[t.GTLT] + '\\s*(' + src[t.LOOSEPLAIN] + ')$|^$'
1184 +tok('COMPARATOR')
1185 +src[t.COMPARATOR] = '^' + src[t.GTLT] + '\\s*(' + src[t.FULLPLAIN] + ')$|^$'
1595 1186
1596 − test (version) {
1597 − debug('Comparator.test', version, this.options.loose)
1187 +// An expression to strip any whitespace between the gtlt and the thing
1188 +// it modifies, so that `> 1.2.3` ==> `>1.2.3`
1189 +tok('COMPARATORTRIM')
1190 +src[t.COMPARATORTRIM] = '(\\s*)' + src[t.GTLT] +
1191 + '\\s*(' + src[t.LOOSEPLAIN] + '|' + src[t.XRANGEPLAIN] + ')'
1598 1192
1599 − if (this.semver === ANY || version === ANY) {
1600 − return true
1601 − }
1193 +// this one has to use the /g flag
1194 +re[t.COMPARATORTRIM] = new RegExp(src[t.COMPARATORTRIM], 'g')
1195 +var comparatorTrimReplace = '$1$2$3'
1602 1196
1603 − if (typeof version === 'string') {
1604 − try {
1605 − version = new SemVer(version, this.options)
1606 − } catch (er) {
1607 − return false
1608 − }
1609 − }
1197 +// Something like `1.2.3 - 1.2.4`
1198 +// Note that these all use the loose form, because they'll be
1199 +// checked against either the strict or loose comparator form
1200 +// later.
1201 +tok('HYPHENRANGE')
1202 +src[t.HYPHENRANGE] = '^\\s*(' + src[t.XRANGEPLAIN] + ')' +
1203 + '\\s+-\\s+' +
1204 + '(' + src[t.XRANGEPLAIN] + ')' +
1205 + '\\s*$'
1206 +
1207 +tok('HYPHENRANGELOOSE')
1208 +src[t.HYPHENRANGELOOSE] = '^\\s*(' + src[t.XRANGEPLAINLOOSE] + ')' +
1209 + '\\s+-\\s+' +
1210 + '(' + src[t.XRANGEPLAINLOOSE] + ')' +
1211 + '\\s*$'
1610 1212
1611 − return cmp(version, this.operator, this.semver, this.options)
1213 +// Star ranges basically just allow anything at all.
1214 +tok('STAR')
1215 +src[t.STAR] = '(<|>)?=?\\s*\\*'
1216 +
1217 +// Compile to actual regexp objects.
1218 +// All are flag-free, unless they were created above with a flag.
1219 +for (var i = 0; i < R; i++) {
1220 + debug(i, src[i])
1221 + if (!re[i]) {
1222 + re[i] = new RegExp(src[i])
1612 1223 }
1224 +}
1613 1225
1614 − intersects (comp, options) {
1615 − if (!(comp instanceof Comparator)) {
1616 − throw new TypeError('a Comparator is required')
1226 +exports.parse = parse
1227 +function parse (version, options) {
1228 + if (!options || typeof options !== 'object') {
1229 + options = {
1230 + loose: !!options,
1231 + includePrerelease: false
1617 1232 }
1233 + }
1618 1234
1619 − if (!options || typeof options !== 'object') {
1620 − options = {
1621 − loose: !!options,
1622 − includePrerelease: false
1623 − }
1624 − }
1235 + if (version instanceof SemVer) {
1236 + return version
1237 + }
1625 1238
1626 − if (this.operator === '') {
1627 − if (this.value === '') {
1628 − return true
1629 − }
1630 − return new Range(comp.value, options).test(this.value)
1631 − } else if (comp.operator === '') {
1632 − if (comp.value === '') {
1633 − return true
1634 − }
1635 − return new Range(this.value, options).test(comp.semver)
1636 − }
1239 + if (typeof version !== 'string') {
1240 + return null
1241 + }
1242 +
1243 + if (version.length > MAX_LENGTH) {
1244 + return null
1245 + }
1637 1246
1638 − const sameDirectionIncreasing =
1639 − (this.operator === '>=' || this.operator === '>') &&
1640 − (comp.operator === '>=' || comp.operator === '>')
1641 − const sameDirectionDecreasing =
1642 − (this.operator === '<=' || this.operator === '<') &&
1643 − (comp.operator === '<=' || comp.operator === '<')
1644 − const sameSemVer = this.semver.version === comp.semver.version
1645 − const differentDirectionsInclusive =
1646 − (this.operator === '>=' || this.operator === '<=') &&
1647 − (comp.operator === '>=' || comp.operator === '<=')
1648 − const oppositeDirectionsLessThan =
1649 − cmp(this.semver, '<', comp.semver, options) &&
1650 − (this.operator === '>=' || this.operator === '>') &&
1651 − (comp.operator === '<=' || comp.operator === '<')
1652 − const oppositeDirectionsGreaterThan =
1653 − cmp(this.semver, '>', comp.semver, options) &&
1654 − (this.operator === '<=' || this.operator === '<') &&
1655 − (comp.operator === '>=' || comp.operator === '>')
1247 + var r = options.loose ? re[t.LOOSE] : re[t.FULL]
1248 + if (!r.test(version)) {
1249 + return null
1250 + }
1656 1251
1657 − return (
1658 − sameDirectionIncreasing ||
1659 − sameDirectionDecreasing ||
1660 − (sameSemVer && differentDirectionsInclusive) ||
1661 − oppositeDirectionsLessThan ||
1662 − oppositeDirectionsGreaterThan
1663 − )
1252 + try {
1253 + return new SemVer(version, options)
1254 + } catch (er) {
1255 + return null
1664 1256 }
1665 1257 }
1666 1258
1667 −module.exports = Comparator
1259 +exports.valid = valid
1260 +function valid (version, options) {
1261 + var v = parse(version, options)
1262 + return v ? v.version : null
1263 +}
1668 1264
1669 −const {re, t} = __webpack_require__(976)
1670 −const cmp = __webpack_require__(752)
1671 −const debug = __webpack_require__(548)
1672 −const SemVer = __webpack_require__(65)
1673 −const Range = __webpack_require__(124)
1265 +exports.clean = clean
1266 +function clean (version, options) {
1267 + var s = parse(version.trim().replace(/^[=v]+/, ''), options)
1268 + return s ? s.version : null
1269 +}
1674 1270
1271 +exports.SemVer = SemVer
1675 1272
1676 −/***/ }),
1273 +function SemVer (version, options) {
1274 + if (!options || typeof options !== 'object') {
1275 + options = {
1276 + loose: !!options,
1277 + includePrerelease: false
1278 + }
1279 + }
1280 + if (version instanceof SemVer) {
1281 + if (version.loose === options.loose) {
1282 + return version
1283 + } else {
1284 + version = version.version
1285 + }
1286 + } else if (typeof version !== 'string') {
1287 + throw new TypeError('Invalid Version: ' + version)
1288 + }
1677 1289
1678 −/***/ 181:
1679 −/***/ (function(module) {
1290 + if (version.length > MAX_LENGTH) {
1291 + throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters')
1292 + }
1680 1293
1681 −// Note: this is the semver.org version of the spec that it implements
1682 −// Not necessarily the package version of this code.
1683 −const SEMVER_SPEC_VERSION = '2.0.0'
1294 + if (!(this instanceof SemVer)) {
1295 + return new SemVer(version, options)
1296 + }
1684 1297
1685 −const MAX_LENGTH = 256
1686 −const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||
1687 − /* istanbul ignore next */ 9007199254740991
1298 + debug('SemVer', version, options)
1299 + this.options = options
1300 + this.loose = !!options.loose
1688 1301
1689 −// Max safe segment length for coercion.
1690 −const MAX_SAFE_COMPONENT_LENGTH = 16
1302 + var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])
1691 1303
1692 −module.exports = {
1693 − SEMVER_SPEC_VERSION,
1694 − MAX_LENGTH,
1695 − MAX_SAFE_INTEGER,
1696 − MAX_SAFE_COMPONENT_LENGTH
1697 −}
1304 + if (!m) {
1305 + throw new TypeError('Invalid Version: ' + version)
1306 + }
1698 1307
1308 + this.raw = version
1699 1309
1700 −/***/ }),
1310 + // these are actually numbers
1311 + this.major = +m[1]
1312 + this.minor = +m[2]
1313 + this.patch = +m[3]
1701 1314
1702 −/***/ 194:
1703 −/***/ (function(__unusedmodule, exports, __webpack_require__) {
1315 + if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
1316 + throw new TypeError('Invalid major version')
1317 + }
1704 1318
1705 −"use strict";
1319 + if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
1320 + throw new TypeError('Invalid minor version')
1321 + }
1706 1322
1707 −var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
1708 − function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
1709 − return new (P || (P = Promise))(function (resolve, reject) {
1710 − function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
1711 − function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
1712 − function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
1713 − step((generator = generator.apply(thisArg, _arguments || [])).next());
1714 − });
1715 −};
1716 −Object.defineProperty(exports, "__esModule", { value: true });
1717 −const childProcess = __webpack_require__(129);
1718 −const path = __webpack_require__(622);
1719 −const util_1 = __webpack_require__(669);
1720 −const ioUtil = __webpack_require__(408);
1721 −const exec = util_1.promisify(childProcess.exec);
1722 −/**
1723 − * Copies a file or folder.
1724 − * Based off of shelljs - https://github.com/shelljs/shelljs/blob/9237f66c52e5daa40458f94f9565e18e8132f5a6/src/cp.js
1725 − *
1726 − * @param source source path
1727 − * @param dest destination path
1728 − * @param options optional. See CopyOptions.
1729 − */
1730 −function cp(source, dest, options = {}) {
1731 − return __awaiter(this, void 0, void 0, function* () {
1732 − const { force, recursive } = readCopyOptions(options);
1733 − const destStat = (yield ioUtil.exists(dest)) ? yield ioUtil.stat(dest) : null;
1734 − // Dest is an existing file, but not forcing
1735 − if (destStat && destStat.isFile() && !force) {
1736 − return;
1737 − }
1738 − // If dest is an existing directory, should copy inside.
1739 − const newDest = destStat && destStat.isDirectory()
1740 − ? path.join(dest, path.basename(source))
1741 − : dest;
1742 − if (!(yield ioUtil.exists(source))) {
1743 − throw new Error(`no such file or directory: ${source}`);
1744 − }
1745 − const sourceStat = yield ioUtil.stat(source);
1746 − if (sourceStat.isDirectory()) {
1747 − if (!recursive) {
1748 − throw new Error(`Failed to copy. ${source} is a directory, but tried to copy without recursive flag.`);
1749 − }
1750 − else {
1751 − yield cpDirRecursive(source, newDest, 0, force);
1752 − }
1753 − }
1754 − else {
1755 − if (path.relative(source, newDest) === '') {
1756 − // a file cannot be copied to itself
1757 − throw new Error(`'${newDest}' and '${source}' are the same file`);
1758 − }
1759 − yield copyFile(source, newDest, force);
1760 − }
1761 − });
1762 −}
1763 −exports.cp = cp;
1764 −/**
1765 − * Moves a path.
1766 − *
1767 − * @param source source path
1768 − * @param dest destination path
1769 − * @param options optional. See MoveOptions.
1770 − */
1771 −function mv(source, dest, options = {}) {
1772 − return __awaiter(this, void 0, void 0, function* () {
1773 − if (yield ioUtil.exists(dest)) {
1774 − let destExists = true;
1775 − if (yield ioUtil.isDirectory(dest)) {
1776 − // If dest is directory copy src into dest
1777 − dest = path.join(dest, path.basename(source));
1778 − destExists = yield ioUtil.exists(dest);
1779 − }
1780 − if (destExists) {
1781 − if (options.force == null || options.force) {
1782 − yield rmRF(dest);
1783 − }
1784 − else {
1785 − throw new Error('Destination already exists');
1786 − }
1787 − }
1788 − }
1789 − yield mkdirP(path.dirname(dest));
1790 − yield ioUtil.rename(source, dest);
1791 − });
1792 −}
1793 −exports.mv = mv;
1794 −/**
1795 − * Remove a path recursively with force
1796 − *
1797 − * @param inputPath path to remove
1798 − */
1799 −function rmRF(inputPath) {
1800 − return __awaiter(this, void 0, void 0, function* () {
1801 − if (ioUtil.IS_WINDOWS) {
1802 − // Node doesn't provide a delete operation, only an unlink function. This means that if the file is being used by another
1803 − // program (e.g. antivirus), it won't be deleted. To address this, we shell out the work to rd/del.
1804 − try {
1805 − if (yield ioUtil.isDirectory(inputPath, true)) {
1806 − yield exec(`rd /s /q "${inputPath}"`);
1807 − }
1808 − else {
1809 − yield exec(`del /f /a "${inputPath}"`);
1810 − }
1811 − }
1812 − catch (err) {
1813 − // if you try to delete a file that doesn't exist, desired result is achieved
1814 − // other errors are valid
1815 − if (err.code !== 'ENOENT')
1816 − throw err;
1817 − }
1818 − // Shelling out fails to remove a symlink folder with missing source, this unlink catches that
1819 − try {
1820 − yield ioUtil.unlink(inputPath);
1821 − }
1822 − catch (err) {
1823 − // if you try to delete a file that doesn't exist, desired result is achieved
1824 − // other errors are valid
1825 − if (err.code !== 'ENOENT')
1826 − throw err;
1827 − }
1828 − }
1829 − else {
1830 − let isDir = false;
1831 − try {
1832 − isDir = yield ioUtil.isDirectory(inputPath);
1833 − }
1834 − catch (err) {
1835 − // if you try to delete a file that doesn't exist, desired result is achieved
1836 − // other errors are valid
1837 − if (err.code !== 'ENOENT')
1838 − throw err;
1839 − return;
1840 − }
1841 − if (isDir) {
1842 − yield exec(`rm -rf "${inputPath}"`);
1843 − }
1844 − else {
1845 − yield ioUtil.unlink(inputPath);
1846 − }
1323 + if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
1324 + throw new TypeError('Invalid patch version')
1325 + }
1326 +
1327 + // numberify any prerelease numeric ids
1328 + if (!m[4]) {
1329 + this.prerelease = []
1330 + } else {
1331 + this.prerelease = m[4].split('.').map(function (id) {
1332 + if (/^[0-9]+$/.test(id)) {
1333 + var num = +id
1334 + if (num >= 0 && num < MAX_SAFE_INTEGER) {
1335 + return num
1847 1336 }
1848 − });
1337 + }
1338 + return id
1339 + })
1340 + }
1341 +
1342 + this.build = m[5] ? m[5].split('.') : []
1343 + this.format()
1849 1344 }
1850 −exports.rmRF = rmRF;
1851 −/**
1852 − * Make a directory. Creates the full path with folders in between
1853 − * Will throw if it fails
1854 − *
1855 − * @param fsPath path to create
1856 − * @returns Promise<void>
1857 − */
1858 −function mkdirP(fsPath) {
1859 − return __awaiter(this, void 0, void 0, function* () {
1860 − yield ioUtil.mkdirP(fsPath);
1861 − });
1345 +
1346 +SemVer.prototype.format = function () {
1347 + this.version = this.major + '.' + this.minor + '.' + this.patch
1348 + if (this.prerelease.length) {
1349 + this.version += '-' + this.prerelease.join('.')
1350 + }
1351 + return this.version
1862 1352 }
1863 −exports.mkdirP = mkdirP;
1864 −/**
1865 − * Returns path of a tool had the tool actually been invoked. Resolves via paths.
1866 − * If you check and the tool does not exist, it will throw.
1867 − *
1868 − * @param tool name of the tool
1869 − * @param check whether to check if tool exists
1870 − * @returns Promise<string> path to tool
1871 − */
1872 −function which(tool, check) {
1873 − return __awaiter(this, void 0, void 0, function* () {
1874 − if (!tool) {
1875 − throw new Error("parameter 'tool' is required");
1876 − }
1877 − // recursive when check=true
1878 − if (check) {
1879 − const result = yield which(tool, false);
1880 − if (!result) {
1881 − if (ioUtil.IS_WINDOWS) {
1882 − throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`);
1883 − }
1884 − else {
1885 − throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`);
1886 − }
1887 − }
1888 − }
1889 − try {
1890 − // build the list of extensions to try
1891 − const extensions = [];
1892 − if (ioUtil.IS_WINDOWS && process.env.PATHEXT) {
1893 − for (const extension of process.env.PATHEXT.split(path.delimiter)) {
1894 − if (extension) {
1895 − extensions.push(extension);
1896 − }
1897 − }
1898 − }
1899 − // if it's rooted, return it if exists. otherwise return empty.
1900 − if (ioUtil.isRooted(tool)) {
1901 − const filePath = yield ioUtil.tryGetExecutablePath(tool, extensions);
1902 − if (filePath) {
1903 − return filePath;
1904 − }
1905 − return '';
1906 − }
1907 − // if any path separators, return empty
1908 − if (tool.includes('/') || (ioUtil.IS_WINDOWS && tool.includes('\\'))) {
1909 − return '';
1910 − }
1911 − // build the list of directories
1912 − //
1913 − // Note, technically "where" checks the current directory on Windows. From a toolkit perspective,
1914 − // it feels like we should not do this. Checking the current directory seems like more of a use
1915 − // case of a shell, and the which() function exposed by the toolkit should strive for consistency
1916 − // across platforms.
1917 − const directories = [];
1918 − if (process.env.PATH) {
1919 − for (const p of process.env.PATH.split(path.delimiter)) {
1920 − if (p) {
1921 − directories.push(p);
1922 − }
1923 − }
1924 − }
1925 − // return the first match
1926 − for (const directory of directories) {
1927 − const filePath = yield ioUtil.tryGetExecutablePath(directory + path.sep + tool, extensions);
1928 − if (filePath) {
1929 − return filePath;
1930 − }
1931 − }
1932 − return '';
1933 − }
1934 − catch (err) {
1935 − throw new Error(`which failed with message ${err.message}`);
1936 − }
1937 − });
1353 +
1354 +SemVer.prototype.toString = function () {
1355 + return this.version
1938 1356 }
1939 −exports.which = which;
1940 −function readCopyOptions(options) {
1941 − const force = options.force == null ? true : options.force;
1942 − const recursive = Boolean(options.recursive);
1943 − return { force, recursive };
1357 +
1358 +SemVer.prototype.compare = function (other) {
1359 + debug('SemVer.compare', this.version, this.options, other)
1360 + if (!(other instanceof SemVer)) {
1361 + other = new SemVer(other, this.options)
1362 + }
1363 +
1364 + return this.compareMain(other) || this.comparePre(other)
1944 1365 }
1945 −function cpDirRecursive(sourceDir, destDir, currentDepth, force) {
1946 − return __awaiter(this, void 0, void 0, function* () {
1947 − // Ensure there is not a run away recursive copy
1948 − if (currentDepth >= 255)
1949 − return;
1950 − currentDepth++;
1951 − yield mkdirP(destDir);
1952 − const files = yield ioUtil.readdir(sourceDir);
1953 − for (const fileName of files) {
1954 − const srcFile = `${sourceDir}/${fileName}`;
1955 − const destFile = `${destDir}/${fileName}`;
1956 − const srcFileStat = yield ioUtil.lstat(srcFile);
1957 − if (srcFileStat.isDirectory()) {
1958 − // Recurse
1959 − yield cpDirRecursive(srcFile, destFile, currentDepth, force);
1960 − }
1961 − else {
1962 − yield copyFile(srcFile, destFile, force);
1963 − }
1964 − }
1965 − // Change the mode for the newly created directory
1966 − yield ioUtil.chmod(destDir, (yield ioUtil.stat(sourceDir)).mode);
1967 − });
1366 +
1367 +SemVer.prototype.compareMain = function (other) {
1368 + if (!(other instanceof SemVer)) {
1369 + other = new SemVer(other, this.options)
1370 + }
1371 +
1372 + return compareIdentifiers(this.major, other.major) ||
1373 + compareIdentifiers(this.minor, other.minor) ||
1374 + compareIdentifiers(this.patch, other.patch)
1968 1375 }
1969 −// Buffered file copy
1970 −function copyFile(srcFile, destFile, force) {
1971 − return __awaiter(this, void 0, void 0, function* () {
1972 − if ((yield ioUtil.lstat(srcFile)).isSymbolicLink()) {
1973 − // unlink/re-link it
1974 − try {
1975 − yield ioUtil.lstat(destFile);
1976 − yield ioUtil.unlink(destFile);
1977 − }
1978 − catch (e) {
1979 − // Try to override file permission
1980 − if (e.code === 'EPERM') {
1981 − yield ioUtil.chmod(destFile, '0666');
1982 − yield ioUtil.unlink(destFile);
1983 − }
1984 − // other errors = it doesn't exist, no work to do
1985 − }
1986 − // Copy over symlink
1987 − const symlinkFull = yield ioUtil.readlink(srcFile);
1988 − yield ioUtil.symlink(symlinkFull, destFile, ioUtil.IS_WINDOWS ? 'junction' : null);
1989 − }
1990 − else if (!(yield ioUtil.exists(destFile)) || force) {
1991 − yield ioUtil.copyFile(srcFile, destFile);
1992 − }
1993 − });
1376 +
1377 +SemVer.prototype.comparePre = function (other) {
1378 + if (!(other instanceof SemVer)) {
1379 + other = new SemVer(other, this.options)
1380 + }
1381 +
1382 + // NOT having a prerelease is > having one
1383 + if (this.prerelease.length && !other.prerelease.length) {
1384 + return -1
1385 + } else if (!this.prerelease.length && other.prerelease.length) {
1386 + return 1
1387 + } else if (!this.prerelease.length && !other.prerelease.length) {
1388 + return 0
1389 + }
1390 +
1391 + var i = 0
1392 + do {
1393 + var a = this.prerelease[i]
1394 + var b = other.prerelease[i]
1395 + debug('prerelease compare', i, a, b)
1396 + if (a === undefined && b === undefined) {
1397 + return 0
1398 + } else if (b === undefined) {
1399 + return 1
1400 + } else if (a === undefined) {
1401 + return -1
1402 + } else if (a === b) {
1403 + continue
1404 + } else {
1405 + return compareIdentifiers(a, b)
1406 + }
1407 + } while (++i)
1994 1408 }
1995 −//# sourceMappingURL=io.js.map
1996 1409
1997 −/***/ }),
1410 +SemVer.prototype.compareBuild = function (other) {
1411 + if (!(other instanceof SemVer)) {
1412 + other = new SemVer(other, this.options)
1413 + }
1998 1414
1999 −/***/ 211:
2000 −/***/ (function(module) {
1415 + var i = 0
1416 + do {
1417 + var a = this.build[i]
1418 + var b = other.build[i]
1419 + debug('prerelease compare', i, a, b)
1420 + if (a === undefined && b === undefined) {
1421 + return 0
1422 + } else if (b === undefined) {
1423 + return 1
1424 + } else if (a === undefined) {
1425 + return -1
1426 + } else if (a === b) {
1427 + continue
1428 + } else {
1429 + return compareIdentifiers(a, b)
1430 + }
1431 + } while (++i)
1432 +}
2001 1433
2002 −module.exports = require("https");
1434 +// preminor will bump the version up to the next minor release, and immediately
1435 +// down to pre-release. premajor and prepatch work the same way.
1436 +SemVer.prototype.inc = function (release, identifier) {
1437 + switch (release) {
1438 + case 'premajor':
1439 + this.prerelease.length = 0
1440 + this.patch = 0
1441 + this.minor = 0
1442 + this.major++
1443 + this.inc('pre', identifier)
1444 + break
1445 + case 'preminor':
1446 + this.prerelease.length = 0
1447 + this.patch = 0
1448 + this.minor++
1449 + this.inc('pre', identifier)
1450 + break
1451 + case 'prepatch':
1452 + // If this is already a prerelease, it will bump to the next version
1453 + // drop any prereleases that might already exist, since they are not
1454 + // relevant at this point.
1455 + this.prerelease.length = 0
1456 + this.inc('patch', identifier)
1457 + this.inc('pre', identifier)
1458 + break
1459 + // If the input is a non-prerelease version, this acts the same as
1460 + // prepatch.
1461 + case 'prerelease':
1462 + if (this.prerelease.length === 0) {
1463 + this.inc('patch', identifier)
1464 + }
1465 + this.inc('pre', identifier)
1466 + break
2003 1467
2004 −/***/ }),
1468 + case 'major':
1469 + // If this is a pre-major version, bump up to the same major version.
1470 + // Otherwise increment major.
1471 + // 1.0.0-5 bumps to 1.0.0
1472 + // 1.1.0 bumps to 2.0.0
1473 + if (this.minor !== 0 ||
1474 + this.patch !== 0 ||
1475 + this.prerelease.length === 0) {
1476 + this.major++
1477 + }
1478 + this.minor = 0
1479 + this.patch = 0
1480 + this.prerelease = []
1481 + break
1482 + case 'minor':
1483 + // If this is a pre-minor version, bump up to the same minor version.
1484 + // Otherwise increment minor.
1485 + // 1.2.0-5 bumps to 1.2.0
1486 + // 1.2.1 bumps to 1.3.0
1487 + if (this.patch !== 0 || this.prerelease.length === 0) {
1488 + this.minor++
1489 + }
1490 + this.patch = 0
1491 + this.prerelease = []
1492 + break
1493 + case 'patch':
1494 + // If this is not a pre-release version, it will increment the patch.
1495 + // If it is a pre-release it will bump up to the same patch version.
1496 + // 1.2.0-5 patches to 1.2.0
1497 + // 1.2.0 patches to 1.2.1
1498 + if (this.prerelease.length === 0) {
1499 + this.patch++
1500 + }
1501 + this.prerelease = []
1502 + break
1503 + // This probably shouldn't be used publicly.
1504 + // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction.
1505 + case 'pre':
1506 + if (this.prerelease.length === 0) {
1507 + this.prerelease = [0]
1508 + } else {
1509 + var i = this.prerelease.length
1510 + while (--i >= 0) {
1511 + if (typeof this.prerelease[i] === 'number') {
1512 + this.prerelease[i]++
1513 + i = -2
1514 + }
1515 + }
1516 + if (i === -1) {
1517 + // didn't increment anything
1518 + this.prerelease.push(0)
1519 + }
1520 + }
1521 + if (identifier) {
1522 + // 1.2.0-beta.1 bumps to 1.2.0-beta.2,
1523 + // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
1524 + if (this.prerelease[0] === identifier) {
1525 + if (isNaN(this.prerelease[1])) {
1526 + this.prerelease = [identifier, 0]
1527 + }
1528 + } else {
1529 + this.prerelease = [identifier, 0]
1530 + }
1531 + }
1532 + break
2005 1533
2006 −/***/ 219:
2007 −/***/ (function(module, __unusedexports, __webpack_require__) {
1534 + default:
1535 + throw new Error('invalid increment argument: ' + release)
1536 + }
1537 + this.format()
1538 + this.raw = this.version
1539 + return this
1540 +}
2008 1541
2009 −const Range = __webpack_require__(124)
1542 +exports.inc = inc
1543 +function inc (version, release, loose, identifier) {
1544 + if (typeof (loose) === 'string') {
1545 + identifier = loose
1546 + loose = undefined
1547 + }
2010 1548
2011 −// Mostly just for testing and legacy API reasons
2012 −const toComparators = (range, options) =>
2013 − new Range(range, options).set
2014 − .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))
1549 + try {
1550 + return new SemVer(version, loose).inc(release, identifier).version
1551 + } catch (er) {
1552 + return null
1553 + }
1554 +}
1555 +
1556 +exports.diff = diff
1557 +function diff (version1, version2) {
1558 + if (eq(version1, version2)) {
1559 + return null
1560 + } else {
1561 + var v1 = parse(version1)
1562 + var v2 = parse(version2)
1563 + var prefix = ''
1564 + if (v1.prerelease.length || v2.prerelease.length) {
1565 + prefix = 'pre'
1566 + var defaultResult = 'prerelease'
1567 + }
1568 + for (var key in v1) {
1569 + if (key === 'major' || key === 'minor' || key === 'patch') {
1570 + if (v1[key] !== v2[key]) {
1571 + return prefix + key
1572 + }
1573 + }
1574 + }
1575 + return defaultResult // may be undefined
1576 + }
1577 +}
2015 1578
2016 −module.exports = toComparators
1579 +exports.compareIdentifiers = compareIdentifiers
2017 1580
1581 +var numeric = /^[0-9]+$/
1582 +function compareIdentifiers (a, b) {
1583 + var anum = numeric.test(a)
1584 + var bnum = numeric.test(b)
2018 1585
2019 −/***/ }),
1586 + if (anum && bnum) {
1587 + a = +a
1588 + b = +b
1589 + }
2020 1590
2021 −/***/ 259:
2022 −/***/ (function(module, __unusedexports, __webpack_require__) {
1591 + return a === b ? 0
1592 + : (anum && !bnum) ? -1
1593 + : (bnum && !anum) ? 1
1594 + : a < b ? -1
1595 + : 1
1596 +}
2023 1597
2024 −const Range = __webpack_require__(124)
2025 −const intersects = (r1, r2, options) => {
2026 − r1 = new Range(r1, options)
2027 − r2 = new Range(r2, options)
2028 − return r1.intersects(r2)
1598 +exports.rcompareIdentifiers = rcompareIdentifiers
1599 +function rcompareIdentifiers (a, b) {
1600 + return compareIdentifiers(b, a)
2029 1601 }
2030 −module.exports = intersects
2031 1602
1603 +exports.major = major
1604 +function major (a, loose) {
1605 + return new SemVer(a, loose).major
1606 +}
2032 1607
2033 −/***/ }),
1608 +exports.minor = minor
1609 +function minor (a, loose) {
1610 + return new SemVer(a, loose).minor
1611 +}
2034 1612
2035 −/***/ 283:
2036 −/***/ (function(module, __unusedexports, __webpack_require__) {
1613 +exports.patch = patch
1614 +function patch (a, loose) {
1615 + return new SemVer(a, loose).patch
1616 +}
2037 1617
2038 −const compare = __webpack_require__(874)
2039 −const compareLoose = (a, b) => compare(a, b, true)
2040 −module.exports = compareLoose
1618 +exports.compare = compare
1619 +function compare (a, b, loose) {
1620 + return new SemVer(a, loose).compare(new SemVer(b, loose))
1621 +}
2041 1622
1623 +exports.compareLoose = compareLoose
1624 +function compareLoose (a, b) {
1625 + return compare(a, b, true)
1626 +}
2042 1627
2043 −/***/ }),
1628 +exports.compareBuild = compareBuild
1629 +function compareBuild (a, b, loose) {
1630 + var versionA = new SemVer(a, loose)
1631 + var versionB = new SemVer(b, loose)
1632 + return versionA.compare(versionB) || versionA.compareBuild(versionB)
1633 +}
2044 1634
2045 −/***/ 298:
2046 −/***/ (function(module, __unusedexports, __webpack_require__) {
1635 +exports.rcompare = rcompare
1636 +function rcompare (a, b, loose) {
1637 + return compare(b, a, loose)
1638 +}
2047 1639
2048 −const compare = __webpack_require__(874)
2049 −const eq = (a, b, loose) => compare(a, b, loose) === 0
2050 −module.exports = eq
1640 +exports.sort = sort
1641 +function sort (list, loose) {
1642 + return list.sort(function (a, b) {
1643 + return exports.compareBuild(a, b, loose)
1644 + })
1645 +}
2051 1646
1647 +exports.rsort = rsort
1648 +function rsort (list, loose) {
1649 + return list.sort(function (a, b) {
1650 + return exports.compareBuild(b, a, loose)
1651 + })
1652 +}
2052 1653
2053 −/***/ }),
1654 +exports.gt = gt
1655 +function gt (a, b, loose) {
1656 + return compare(a, b, loose) > 0
1657 +}
2054 1658
2055 −/***/ 310:
2056 −/***/ (function(module, __unusedexports, __webpack_require__) {
1659 +exports.lt = lt
1660 +function lt (a, b, loose) {
1661 + return compare(a, b, loose) < 0
1662 +}
2057 1663
2058 −const Range = __webpack_require__(124)
2059 −const satisfies = (version, range, options) => {
2060 − try {
2061 − range = new Range(range, options)
2062 − } catch (er) {
2063 − return false
2064 − }
2065 − return range.test(version)
1664 +exports.eq = eq
1665 +function eq (a, b, loose) {
1666 + return compare(a, b, loose) === 0
2066 1667 }
2067 −module.exports = satisfies
2068 1668
1669 +exports.neq = neq
1670 +function neq (a, b, loose) {
1671 + return compare(a, b, loose) !== 0
1672 +}
2069 1673
2070 −/***/ }),
1674 +exports.gte = gte
1675 +function gte (a, b, loose) {
1676 + return compare(a, b, loose) >= 0
1677 +}
2071 1678
2072 −/***/ 323:
2073 −/***/ (function(module, __unusedexports, __webpack_require__) {
1679 +exports.lte = lte
1680 +function lte (a, b, loose) {
1681 + return compare(a, b, loose) <= 0
1682 +}
2074 1683
2075 −const outside = __webpack_require__(462)
2076 −// Determine if version is less than all the versions possible in the range
2077 −const ltr = (version, range, options) => outside(version, range, '<', options)
2078 −module.exports = ltr
1684 +exports.cmp = cmp
1685 +function cmp (a, op, b, loose) {
1686 + switch (op) {
1687 + case '===':
1688 + if (typeof a === 'object')
1689 + a = a.version
1690 + if (typeof b === 'object')
1691 + b = b.version
1692 + return a === b
2079 1693
1694 + case '!==':
1695 + if (typeof a === 'object')
1696 + a = a.version
1697 + if (typeof b === 'object')
1698 + b = b.version
1699 + return a !== b
2080 1700
2081 −/***/ }),
1701 + case '':
1702 + case '=':
1703 + case '==':
1704 + return eq(a, b, loose)
2082 1705
2083 −/***/ 357:
2084 −/***/ (function(module) {
1706 + case '!=':
1707 + return neq(a, b, loose)
2085 1708
2086 −module.exports = require("assert");
1709 + case '>':
1710 + return gt(a, b, loose)
2087 1711
2088 −/***/ }),
1712 + case '>=':
1713 + return gte(a, b, loose)
2089 1714
2090 −/***/ 408:
2091 −/***/ (function(__unusedmodule, exports, __webpack_require__) {
1715 + case '<':
1716 + return lt(a, b, loose)
2092 1717
2093 −"use strict";
1718 + case '<=':
1719 + return lte(a, b, loose)
2094 1720
2095 −var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2096 − function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
2097 − return new (P || (P = Promise))(function (resolve, reject) {
2098 − function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
2099 − function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
2100 − function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
2101 − step((generator = generator.apply(thisArg, _arguments || [])).next());
2102 − });
2103 −};
2104 −var _a;
2105 −Object.defineProperty(exports, "__esModule", { value: true });
2106 −const assert_1 = __webpack_require__(357);
2107 −const fs = __webpack_require__(747);
2108 −const path = __webpack_require__(622);
2109 −_a = fs.promises, exports.chmod = _a.chmod, exports.copyFile = _a.copyFile, exports.lstat = _a.lstat, exports.mkdir = _a.mkdir, exports.readdir = _a.readdir, exports.readlink = _a.readlink, exports.rename = _a.rename, exports.rmdir = _a.rmdir, exports.stat = _a.stat, exports.symlink = _a.symlink, exports.unlink = _a.unlink;
2110 −exports.IS_WINDOWS = process.platform === 'win32';
2111 −function exists(fsPath) {
2112 − return __awaiter(this, void 0, void 0, function* () {
2113 − try {
2114 − yield exports.stat(fsPath);
2115 − }
2116 − catch (err) {
2117 − if (err.code === 'ENOENT') {
2118 − return false;
2119 − }
2120 − throw err;
2121 − }
2122 − return true;
2123 − });
2124 −}
2125 −exports.exists = exists;
2126 −function isDirectory(fsPath, useStat = false) {
2127 − return __awaiter(this, void 0, void 0, function* () {
2128 − const stats = useStat ? yield exports.stat(fsPath) : yield exports.lstat(fsPath);
2129 − return stats.isDirectory();
2130 − });
2131 −}
2132 −exports.isDirectory = isDirectory;
2133 −/**
2134 − * On OSX/Linux, true if path starts with '/'. On Windows, true for paths like:
2135 − * \, \hello, \\hello\share, C:, and C:\hello (and corresponding alternate separator cases).
2136 − */
2137 −function isRooted(p) {
2138 − p = normalizeSeparators(p);
2139 − if (!p) {
2140 − throw new Error('isRooted() parameter "p" cannot be empty');
2141 − }
2142 − if (exports.IS_WINDOWS) {
2143 − return (p.startsWith('\\') || /^[A-Z]:/i.test(p) // e.g. \ or \hello or \\hello
2144 − ); // e.g. C: or C:\hello
2145 − }
2146 − return p.startsWith('/');
2147 −}
2148 −exports.isRooted = isRooted;
2149 −/**
2150 − * Recursively create a directory at `fsPath`.
2151 − *
2152 − * This implementation is optimistic, meaning it attempts to create the full
2153 − * path first, and backs up the path stack from there.
2154 − *
2155 − * @param fsPath The path to create
2156 − * @param maxDepth The maximum recursion depth
2157 − * @param depth The current recursion depth
2158 − */
2159 −function mkdirP(fsPath, maxDepth = 1000, depth = 1) {
2160 − return __awaiter(this, void 0, void 0, function* () {
2161 − assert_1.ok(fsPath, 'a path argument must be provided');
2162 − fsPath = path.resolve(fsPath);
2163 − if (depth >= maxDepth)
2164 − return exports.mkdir(fsPath);
2165 − try {
2166 − yield exports.mkdir(fsPath);
2167 − return;
2168 − }
2169 − catch (err) {
2170 − switch (err.code) {
2171 − case 'ENOENT': {
2172 − yield mkdirP(path.dirname(fsPath), maxDepth, depth + 1);
2173 − yield exports.mkdir(fsPath);
2174 − return;
2175 − }
2176 − default: {
2177 − let stats;
2178 − try {
2179 − stats = yield exports.stat(fsPath);
2180 − }
2181 − catch (err2) {
2182 − throw err;
2183 − }
2184 − if (!stats.isDirectory())
2185 − throw err;
2186 − }
2187 − }
2188 − }
2189 − });
2190 −}
2191 −exports.mkdirP = mkdirP;
2192 −/**
2193 − * Best effort attempt to determine whether a file exists and is executable.
2194 − * @param filePath file path to check
2195 − * @param extensions additional file extensions to try
2196 − * @return if file exists and is executable, returns the file path. otherwise empty string.
2197 − */
2198 −function tryGetExecutablePath(filePath, extensions) {
2199 − return __awaiter(this, void 0, void 0, function* () {
2200 − let stats = undefined;
2201 − try {
2202 − // test file exists
2203 − stats = yield exports.stat(filePath);
2204 − }
2205 − catch (err) {
2206 − if (err.code !== 'ENOENT') {
2207 − // eslint-disable-next-line no-console
2208 − console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`);
2209 − }
2210 − }
2211 − if (stats && stats.isFile()) {
2212 − if (exports.IS_WINDOWS) {
2213 − // on Windows, test for valid extension
2214 − const upperExt = path.extname(filePath).toUpperCase();
2215 − if (extensions.some(validExt => validExt.toUpperCase() === upperExt)) {
2216 − return filePath;
2217 − }
2218 − }
2219 − else {
2220 − if (isUnixExecutable(stats)) {
2221 − return filePath;
2222 − }
2223 − }
2224 − }
2225 − // try each extension
2226 − const originalFilePath = filePath;
2227 − for (const extension of extensions) {
2228 − filePath = originalFilePath + extension;
2229 − stats = undefined;
2230 − try {
2231 − stats = yield exports.stat(filePath);
2232 − }
2233 − catch (err) {
2234 − if (err.code !== 'ENOENT') {
2235 − // eslint-disable-next-line no-console
2236 − console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`);
2237 − }
2238 − }
2239 − if (stats && stats.isFile()) {
2240 − if (exports.IS_WINDOWS) {
2241 − // preserve the case of the actual file (since an extension was appended)
2242 − try {
2243 − const directory = path.dirname(filePath);
2244 − const upperName = path.basename(filePath).toUpperCase();
2245 − for (const actualName of yield exports.readdir(directory)) {
2246 − if (upperName === actualName.toUpperCase()) {
2247 − filePath = path.join(directory, actualName);
2248 − break;
2249 − }
2250 − }
2251 − }
2252 − catch (err) {
2253 − // eslint-disable-next-line no-console
2254 − console.log(`Unexpected error attempting to determine the actual case of the file '${filePath}': ${err}`);
2255 − }
2256 − return filePath;
2257 − }
2258 − else {
2259 − if (isUnixExecutable(stats)) {
2260 − return filePath;
2261 − }
2262 − }
2263 − }
2264 − }
2265 − return '';
2266 − });
2267 −}
2268 −exports.tryGetExecutablePath = tryGetExecutablePath;
2269 −function normalizeSeparators(p) {
2270 − p = p || '';
2271 − if (exports.IS_WINDOWS) {
2272 − // convert slashes on Windows
2273 − p = p.replace(/\//g, '\\');
2274 − // remove redundant slashes
2275 − return p.replace(/\\\\+/g, '\\');
2276 − }
2277 − // remove redundant slashes
2278 − return p.replace(/\/\/+/g, '/');
1721 + default:
1722 + throw new TypeError('Invalid operator: ' + op)
1723 + }
2279 1724 }
2280 −// on Mac/Linux, test the execute bit
2281 −// R W X R W X R W X
2282 −// 256 128 64 32 16 8 4 2 1
2283 −function isUnixExecutable(stats) {
2284 − return ((stats.mode & 1) > 0 ||
2285 − ((stats.mode & 8) > 0 && stats.gid === process.getgid()) ||
2286 − ((stats.mode & 64) > 0 && stats.uid === process.getuid()));
1725 +
1726 +exports.Comparator = Comparator
1727 +function Comparator (comp, options) {
1728 + if (!options || typeof options !== 'object') {
1729 + options = {
1730 + loose: !!options,
1731 + includePrerelease: false
1732 + }
1733 + }
1734 +
1735 + if (comp instanceof Comparator) {
1736 + if (comp.loose === !!options.loose) {
1737 + return comp
1738 + } else {
1739 + comp = comp.value
1740 + }
1741 + }
1742 +
1743 + if (!(this instanceof Comparator)) {
1744 + return new Comparator(comp, options)
1745 + }
1746 +
1747 + debug('comparator', comp, options)
1748 + this.options = options
1749 + this.loose = !!options.loose
1750 + this.parse(comp)
1751 +
1752 + if (this.semver === ANY) {
1753 + this.value = ''
1754 + } else {
1755 + this.value = this.operator + this.semver.version
1756 + }
1757 +
1758 + debug('comp', this)
2287 1759 }
2288 −//# sourceMappingURL=io-util.js.map
2289 1760
2290 −/***/ }),
1761 +var ANY = {}
1762 +Comparator.prototype.parse = function (comp) {
1763 + var r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]
1764 + var m = comp.match(r)
2291 1765
2292 −/***/ 431:
2293 −/***/ (function(__unusedmodule, exports, __webpack_require__) {
1766 + if (!m) {
1767 + throw new TypeError('Invalid comparator: ' + comp)
1768 + }
2294 1769
2295 −"use strict";
1770 + this.operator = m[1] !== undefined ? m[1] : ''
1771 + if (this.operator === '=') {
1772 + this.operator = ''
1773 + }
2296 1774
2297 −var __importStar = (this && this.__importStar) || function (mod) {
2298 − if (mod && mod.__esModule) return mod;
2299 − var result = {};
2300 − if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
2301 − result["default"] = mod;
2302 − return result;
2303 −};
2304 −Object.defineProperty(exports, "__esModule", { value: true });
2305 −const os = __importStar(__webpack_require__(87));
2306 −/**
2307 − * Commands
2308 − *
2309 − * Command Format:
2310 − * ::name key=value,key=value::message
2311 − *
2312 − * Examples:
2313 − * ::warning::This is the message
2314 − * ::set-env name=MY_VAR::some value
2315 − */
2316 −function issueCommand(command, properties, message) {
2317 − const cmd = new Command(command, properties, message);
2318 − process.stdout.write(cmd.toString() + os.EOL);
1775 + // if it literally is just '>' or '' then allow anything.
1776 + if (!m[2]) {
1777 + this.semver = ANY
1778 + } else {
1779 + this.semver = new SemVer(m[2], this.options.loose)
1780 + }
2319 1781 }
2320 −exports.issueCommand = issueCommand;
2321 −function issue(name, message = '') {
2322 − issueCommand(name, {}, message);
1782 +
1783 +Comparator.prototype.toString = function () {
1784 + return this.value
2323 1785 }
2324 −exports.issue = issue;
2325 −const CMD_STRING = '::';
2326 −class Command {
2327 − constructor(command, properties, message) {
2328 − if (!command) {
2329 − command = 'missing.command';
2330 − }
2331 − this.command = command;
2332 − this.properties = properties;
2333 − this.message = message;
2334 − }
2335 − toString() {
2336 − let cmdStr = CMD_STRING + this.command;
2337 − if (this.properties && Object.keys(this.properties).length > 0) {
2338 − cmdStr += ' ';
2339 − let first = true;
2340 − for (const key in this.properties) {
2341 − if (this.properties.hasOwnProperty(key)) {
2342 − const val = this.properties[key];
2343 − if (val) {
2344 − if (first) {
2345 − first = false;
2346 − }
2347 − else {
2348 − cmdStr += ',';
2349 − }
2350 − cmdStr += `${key}=${escapeProperty(val)}`;
2351 − }
2352 − }
2353 − }
2354 − }
2355 − cmdStr += `${CMD_STRING}${escapeData(this.message)}`;
2356 − return cmdStr;
1786 +
1787 +Comparator.prototype.test = function (version) {
1788 + debug('Comparator.test', version, this.options.loose)
1789 +
1790 + if (this.semver === ANY || version === ANY) {
1791 + return true
1792 + }
1793 +
1794 + if (typeof version === 'string') {
1795 + try {
1796 + version = new SemVer(version, this.options)
1797 + } catch (er) {
1798 + return false
2357 1799 }
1800 + }
1801 +
1802 + return cmp(version, this.operator, this.semver, this.options)
2358 1803 }
2359 −/**
2360 − * Sanitizes an input into a string so it can be passed into issueCommand safely
2361 − * @param input input to sanitize into a string
2362 − */
2363 −function toCommandValue(input) {
2364 − if (input === null || input === undefined) {
2365 − return '';
1804 +
1805 +Comparator.prototype.intersects = function (comp, options) {
1806 + if (!(comp instanceof Comparator)) {
1807 + throw new TypeError('a Comparator is required')
1808 + }
1809 +
1810 + if (!options || typeof options !== 'object') {
1811 + options = {
1812 + loose: !!options,
1813 + includePrerelease: false
2366 1814 }
2367 − else if (typeof input === 'string' || input instanceof String) {
2368 − return input;
1815 + }
1816 +
1817 + var rangeTmp
1818 +
1819 + if (this.operator === '') {
1820 + if (this.value === '') {
1821 + return true
2369 1822 }
2370 − return JSON.stringify(input);
1823 + rangeTmp = new Range(comp.value, options)
1824 + return satisfies(this.value, rangeTmp, options)
1825 + } else if (comp.operator === '') {
1826 + if (comp.value === '') {
1827 + return true
1828 + }
1829 + rangeTmp = new Range(this.value, options)
1830 + return satisfies(comp.semver, rangeTmp, options)
1831 + }
1832 +
1833 + var sameDirectionIncreasing =
1834 + (this.operator === '>=' || this.operator === '>') &&
1835 + (comp.operator === '>=' || comp.operator === '>')
1836 + var sameDirectionDecreasing =
1837 + (this.operator === '<=' || this.operator === '<') &&
1838 + (comp.operator === '<=' || comp.operator === '<')
1839 + var sameSemVer = this.semver.version === comp.semver.version
1840 + var differentDirectionsInclusive =
1841 + (this.operator === '>=' || this.operator === '<=') &&
1842 + (comp.operator === '>=' || comp.operator === '<=')
1843 + var oppositeDirectionsLessThan =
1844 + cmp(this.semver, '<', comp.semver, options) &&
1845 + ((this.operator === '>=' || this.operator === '>') &&
1846 + (comp.operator === '<=' || comp.operator === '<'))
1847 + var oppositeDirectionsGreaterThan =
1848 + cmp(this.semver, '>', comp.semver, options) &&
1849 + ((this.operator === '<=' || this.operator === '<') &&
1850 + (comp.operator === '>=' || comp.operator === '>'))
1851 +
1852 + return sameDirectionIncreasing || sameDirectionDecreasing ||
1853 + (sameSemVer && differentDirectionsInclusive) ||
1854 + oppositeDirectionsLessThan || oppositeDirectionsGreaterThan
1855 +}
1856 +
1857 +exports.Range = Range
1858 +function Range (range, options) {
1859 + if (!options || typeof options !== 'object') {
1860 + options = {
1861 + loose: !!options,
1862 + includePrerelease: false
1863 + }
1864 + }
1865 +
1866 + if (range instanceof Range) {
1867 + if (range.loose === !!options.loose &&
1868 + range.includePrerelease === !!options.includePrerelease) {
1869 + return range
1870 + } else {
1871 + return new Range(range.raw, options)
1872 + }
1873 + }
1874 +
1875 + if (range instanceof Comparator) {
1876 + return new Range(range.value, options)
1877 + }
1878 +
1879 + if (!(this instanceof Range)) {
1880 + return new Range(range, options)
1881 + }
1882 +
1883 + this.options = options
1884 + this.loose = !!options.loose
1885 + this.includePrerelease = !!options.includePrerelease
1886 +
1887 + // First, split based on boolean or ||
1888 + this.raw = range
1889 + this.set = range.split(/\s*\|\|\s*/).map(function (range) {
1890 + return this.parseRange(range.trim())
1891 + }, this).filter(function (c) {
1892 + // throw out any that are not relevant for whatever reason
1893 + return c.length
1894 + })
1895 +
1896 + if (!this.set.length) {
1897 + throw new TypeError('Invalid SemVer Range: ' + range)
1898 + }
1899 +
1900 + this.format()
2371 1901 }
2372 −exports.toCommandValue = toCommandValue;
2373 −function escapeData(s) {
2374 − return toCommandValue(s)
2375 − .replace(/%/g, '%25')
2376 − .replace(/\r/g, '%0D')
2377 − .replace(/\n/g, '%0A');
1902 +
1903 +Range.prototype.format = function () {
1904 + this.range = this.set.map(function (comps) {
1905 + return comps.join(' ').trim()
1906 + }).join('||').trim()
1907 + return this.range
2378 1908 }
2379 −function escapeProperty(s) {
2380 − return toCommandValue(s)
2381 − .replace(/%/g, '%25')
2382 − .replace(/\r/g, '%0D')
2383 − .replace(/\n/g, '%0A')
2384 − .replace(/:/g, '%3A')
2385 − .replace(/,/g, '%2C');
1909 +
1910 +Range.prototype.toString = function () {
1911 + return this.range
2386 1912 }
2387 −//# sourceMappingURL=command.js.map
2388 1913
2389 −/***/ }),
1914 +Range.prototype.parseRange = function (range) {
1915 + var loose = this.options.loose
1916 + range = range.trim()
1917 + // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
1918 + var hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]
1919 + range = range.replace(hr, hyphenReplace)
1920 + debug('hyphen replace', range)
1921 + // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
1922 + range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)
1923 + debug('comparator trim', range, re[t.COMPARATORTRIM])
2390 1924
2391 −/***/ 449:
2392 −/***/ (function(module, __unusedexports, __webpack_require__) {
1925 + // `~ 1.2.3` => `~1.2.3`
1926 + range = range.replace(re[t.TILDETRIM], tildeTrimReplace)
2393 1927
2394 −const {exec} = __webpack_require__(917)
2395 −const path = __webpack_require__(622)
2396 −const semver = __webpack_require__(876)
1928 + // `^ 1.2.3` => `^1.2.3`
1929 + range = range.replace(re[t.CARETTRIM], caretTrimReplace)
2397 1930
2398 −module.exports = {installElixir, installOTP}
1931 + // normalize spaces
1932 + range = range.split(/\s+/).join(' ')
2399 1933
2400 −/**
2401 − * Install Elixir.
2402 − *
2403 − * @param {string} version
2404 − * @param {string} otpMajor
2405 − */
2406 −async function installElixir(version, otpMajor) {
2407 − if (process.platform === 'linux') {
2408 − const otpString = otpMajor ? `-otp-${otpMajor}` : ''
2409 − await exec(__webpack_require__.ab + "install-elixir", [version, otpString])
1934 + // At this point, the range is completely trimmed and
1935 + // ready to be split into comparators.
1936 +
1937 + var compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]
1938 + var set = range.split(' ').map(function (comp) {
1939 + return parseComparator(comp, this.options)
1940 + }, this).join(' ').split(/\s+/)
1941 + if (this.options.loose) {
1942 + // in loose mode, throw out any that are not valid comparators
1943 + set = set.filter(function (comp) {
1944 + return !!comp.match(compRe)
1945 + })
2410 1946 }
1947 + set = set.map(function (comp) {
1948 + return new Comparator(comp, this.options)
1949 + }, this)
1950 +
1951 + return set
2411 1952 }
2412 1953
2413 −/**
2414 − * Install OTP.
2415 − *
2416 − * @param {string} version
2417 − */
2418 −async function installOTP(version) {
2419 − if (process.platform === 'linux') {
2420 − await exec(__webpack_require__.ab + "install-otp", [version])
2421 − return
1954 +Range.prototype.intersects = function (range, options) {
1955 + if (!(range instanceof Range)) {
1956 + throw new TypeError('a Range is required')
2422 1957 }
2423 1958
2424 − throw new Error(
2425 − '@actions/setup-elixir only supports Ubuntu Linux at this time'
2426 − )
1959 + return this.set.some(function (thisComparators) {
1960 + return (
1961 + isSatisfiable(thisComparators, options) &&
1962 + range.set.some(function (rangeComparators) {
1963 + return (
1964 + isSatisfiable(rangeComparators, options) &&
1965 + thisComparators.every(function (thisComparator) {
1966 + return rangeComparators.every(function (rangeComparator) {
1967 + return thisComparator.intersects(rangeComparator, options)
1968 + })
1969 + })
1970 + )
1971 + })
1972 + )
1973 + })
2427 1974 }
2428 1975
1976 +// take a set of comparators and determine whether there
1977 +// exists a version which can satisfy it
1978 +function isSatisfiable (comparators, options) {
1979 + var result = true
1980 + var remainingComparators = comparators.slice()
1981 + var testComparator = remainingComparators.pop()
2429 1982
2430 −/***/ }),
1983 + while (result && remainingComparators.length) {
1984 + result = remainingComparators.every(function (otherComparator) {
1985 + return testComparator.intersects(otherComparator, options)
1986 + })
2431 1987
2432 −/***/ 462:
2433 −/***/ (function(module, __unusedexports, __webpack_require__) {
1988 + testComparator = remainingComparators.pop()
1989 + }
2434 1990
2435 −const SemVer = __webpack_require__(65)
2436 −const Comparator = __webpack_require__(174)
2437 −const {ANY} = Comparator
2438 −const Range = __webpack_require__(124)
2439 −const satisfies = __webpack_require__(310)
2440 −const gt = __webpack_require__(486)
2441 −const lt = __webpack_require__(586)
2442 −const lte = __webpack_require__(898)
2443 −const gte = __webpack_require__(167)
2444 −
2445 −const outside = (version, range, hilo, options) => {
2446 − version = new SemVer(version, options)
2447 − range = new Range(range, options)
1991 + return result
1992 +}
2448 1993
2449 − let gtfn, ltefn, ltfn, comp, ecomp
2450 − switch (hilo) {
2451 − case '>':
2452 − gtfn = gt
2453 − ltefn = lte
2454 − ltfn = lt
2455 − comp = '>'
2456 − ecomp = '>='
2457 − break
2458 − case '<':
2459 − gtfn = lt
2460 − ltefn = gte
2461 − ltfn = gt
2462 − comp = '<'
2463 − ecomp = '<='
2464 − break
2465 − default:
2466 − throw new TypeError('Must provide a hilo val of "<" or ">"')
2467 − }
1994 +// Mostly just for testing and legacy API reasons
1995 +exports.toComparators = toComparators
1996 +function toComparators (range, options) {
1997 + return new Range(range, options).set.map(function (comp) {
1998 + return comp.map(function (c) {
1999 + return c.value
2000 + }).join(' ').trim().split(' ')
2001 + })
2002 +}
2468 2003
2469 − // If it satisifes the range it is not outside
2470 − if (satisfies(version, range, options)) {
2471 − return false
2472 − }
2004 +// comprised of xranges, tildes, stars, and gtlt's at this point.
2005 +// already replaced the hyphen ranges
2006 +// turn into a set of JUST comparators.
2007 +function parseComparator (comp, options) {
2008 + debug('comp', comp, options)
2009 + comp = replaceCarets(comp, options)
2010 + debug('caret', comp)
2011 + comp = replaceTildes(comp, options)
2012 + debug('tildes', comp)
2013 + comp = replaceXRanges(comp, options)
2014 + debug('xrange', comp)
2015 + comp = replaceStars(comp, options)
2016 + debug('stars', comp)
2017 + return comp
2018 +}
2473 2019
2474 − // From now on, variable terms are as if we're in "gtr" mode.
2475 − // but note that everything is flipped for the "ltr" function.
2020 +function isX (id) {
2021 + return !id || id.toLowerCase() === 'x' || id === '*'
2022 +}
2023 +
2024 +// ~, ~> --> * (any, kinda silly)
2025 +// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0
2026 +// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0
2027 +// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0
2028 +// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0
2029 +// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0
2030 +function replaceTildes (comp, options) {
2031 + return comp.trim().split(/\s+/).map(function (comp) {
2032 + return replaceTilde(comp, options)
2033 + }).join(' ')
2034 +}
2035 +
2036 +function replaceTilde (comp, options) {
2037 + var r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]
2038 + return comp.replace(r, function (_, M, m, p, pr) {
2039 + debug('tilde', comp, _, M, m, p, pr)
2040 + var ret
2041 +
2042 + if (isX(M)) {
2043 + ret = ''
2044 + } else if (isX(m)) {
2045 + ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'
2046 + } else if (isX(p)) {
2047 + // ~1.2 == >=1.2.0 <1.3.0
2048 + ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'
2049 + } else if (pr) {
2050 + debug('replaceTilde pr', pr)
2051 + ret = '>=' + M + '.' + m + '.' + p + '-' + pr +
2052 + ' <' + M + '.' + (+m + 1) + '.0'
2053 + } else {
2054 + // ~1.2.3 == >=1.2.3 <1.3.0
2055 + ret = '>=' + M + '.' + m + '.' + p +
2056 + ' <' + M + '.' + (+m + 1) + '.0'
2057 + }
2476 2058
2477 − for (let i = 0; i < range.set.length; ++i) {
2478 − const comparators = range.set[i]
2059 + debug('tilde return', ret)
2060 + return ret
2061 + })
2062 +}
2063 +
2064 +// ^ --> * (any, kinda silly)
2065 +// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0
2066 +// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0
2067 +// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0
2068 +// ^1.2.3 --> >=1.2.3 <2.0.0
2069 +// ^1.2.0 --> >=1.2.0 <2.0.0
2070 +function replaceCarets (comp, options) {
2071 + return comp.trim().split(/\s+/).map(function (comp) {
2072 + return replaceCaret(comp, options)
2073 + }).join(' ')
2074 +}
2479 2075
2480 − let high = null
2481 − let low = null
2076 +function replaceCaret (comp, options) {
2077 + debug('caret', comp, options)
2078 + var r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]
2079 + return comp.replace(r, function (_, M, m, p, pr) {
2080 + debug('caret', comp, _, M, m, p, pr)
2081 + var ret
2482 2082
2483 − comparators.forEach((comparator) => {
2484 − if (comparator.semver === ANY) {
2485 − comparator = new Comparator('>=0.0.0')
2083 + if (isX(M)) {
2084 + ret = ''
2085 + } else if (isX(m)) {
2086 + ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'
2087 + } else if (isX(p)) {
2088 + if (M === '0') {
2089 + ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'
2090 + } else {
2091 + ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0'
2486 2092 }
2487 − high = high || comparator
2488 − low = low || comparator
2489 − if (gtfn(comparator.semver, high.semver, options)) {
2490 − high = comparator
2491 − } else if (ltfn(comparator.semver, low.semver, options)) {
2492 − low = comparator
2093 + } else if (pr) {
2094 + debug('replaceCaret pr', pr)
2095 + if (M === '0') {
2096 + if (m === '0') {
2097 + ret = '>=' + M + '.' + m + '.' + p + '-' + pr +
2098 + ' <' + M + '.' + m + '.' + (+p + 1)
2099 + } else {
2100 + ret = '>=' + M + '.' + m + '.' + p + '-' + pr +
2101 + ' <' + M + '.' + (+m + 1) + '.0'
2102 + }
2103 + } else {
2104 + ret = '>=' + M + '.' + m + '.' + p + '-' + pr +
2105 + ' <' + (+M + 1) + '.0.0'
2106 + }
2107 + } else {
2108 + debug('no pr')
2109 + if (M === '0') {
2110 + if (m === '0') {
2111 + ret = '>=' + M + '.' + m + '.' + p +
2112 + ' <' + M + '.' + m + '.' + (+p + 1)
2113 + } else {
2114 + ret = '>=' + M + '.' + m + '.' + p +
2115 + ' <' + M + '.' + (+m + 1) + '.0'
2116 + }
2117 + } else {
2118 + ret = '>=' + M + '.' + m + '.' + p +
2119 + ' <' + (+M + 1) + '.0.0'
2493 2120 }
2494 − })
2495 −
2496 − // If the edge version comparator has a operator then our version
2497 − // isn't outside it
2498 − if (high.operator === comp || high.operator === ecomp) {
2499 − return false
2500 2121 }
2501 2122
2502 − // If the lowest version comparator has an operator and our version
2503 − // is less than it then it isn't higher than the range
2504 − if ((!low.operator || low.operator === comp) &&
2505 − ltefn(version, low.semver)) {
2506 − return false
2507 − } else if (low.operator === ecomp && ltfn(version, low.semver)) {
2508 − return false
2509 − }
2510 − }
2511 − return true
2123 + debug('caret return', ret)
2124 + return ret
2125 + })
2512 2126 }
2513 2127
2514 −module.exports = outside
2128 +function replaceXRanges (comp, options) {
2129 + debug('replaceXRanges', comp, options)
2130 + return comp.split(/\s+/).map(function (comp) {
2131 + return replaceXRange(comp, options)
2132 + }).join(' ')
2133 +}
2515 2134
2135 +function replaceXRange (comp, options) {
2136 + comp = comp.trim()
2137 + var r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]
2138 + return comp.replace(r, function (ret, gtlt, M, m, p, pr) {
2139 + debug('xRange', comp, ret, gtlt, M, m, p, pr)
2140 + var xM = isX(M)
2141 + var xm = xM || isX(m)
2142 + var xp = xm || isX(p)
2143 + var anyX = xp
2516 2144
2517 −/***/ }),
2145 + if (gtlt === '=' && anyX) {
2146 + gtlt = ''
2147 + }
2518 2148
2519 −/***/ 470:
2520 −/***/ (function(__unusedmodule, exports, __webpack_require__) {
2149 + // if we're including prereleases in the match, then we need
2150 + // to fix this to -0, the lowest possible prerelease value
2151 + pr = options.includePrerelease ? '-0' : ''
2521 2152
2522 −"use strict";
2153 + if (xM) {
2154 + if (gtlt === '>' || gtlt === '<') {
2155 + // nothing is allowed
2156 + ret = '<0.0.0-0'
2157 + } else {
2158 + // nothing is forbidden
2159 + ret = '*'
2160 + }
2161 + } else if (gtlt && anyX) {
2162 + // we know patch is an x, because we have any x at all.
2163 + // replace X with 0
2164 + if (xm) {
2165 + m = 0
2166 + }
2167 + p = 0
2523 2168
2524 −var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2525 − function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
2526 − return new (P || (P = Promise))(function (resolve, reject) {
2527 − function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
2528 − function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
2529 − function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
2530 − step((generator = generator.apply(thisArg, _arguments || [])).next());
2531 − });
2532 −};
2533 −var __importStar = (this && this.__importStar) || function (mod) {
2534 − if (mod && mod.__esModule) return mod;
2535 − var result = {};
2536 − if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
2537 − result["default"] = mod;
2538 − return result;
2539 −};
2540 −Object.defineProperty(exports, "__esModule", { value: true });
2541 −const command_1 = __webpack_require__(431);
2542 −const os = __importStar(__webpack_require__(87));
2543 −const path = __importStar(__webpack_require__(622));
2544 −/**
2545 − * The code to exit an action
2546 − */
2547 −var ExitCode;
2548 −(function (ExitCode) {
2549 − /**
2550 − * A code indicating that the action was successful
2551 − */
2552 − ExitCode[ExitCode["Success"] = 0] = "Success";
2553 − /**
2554 − * A code indicating that the action was a failure
2555 − */
2556 − ExitCode[ExitCode["Failure"] = 1] = "Failure";
2557 −})(ExitCode = exports.ExitCode || (exports.ExitCode = {}));
2558 −//-----------------------------------------------------------------------
2559 −// Variables
2560 −//-----------------------------------------------------------------------
2561 −/**
2562 − * Sets env variable for this action and future actions in the job
2563 − * @param name the name of the variable to set
2564 − * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify
2565 − */
2566 −// eslint-disable-next-line @typescript-eslint/no-explicit-any
2567 −function exportVariable(name, val) {
2568 − const convertedVal = command_1.toCommandValue(val);
2569 − process.env[name] = convertedVal;
2570 − command_1.issueCommand('set-env', { name }, convertedVal);
2571 −}
2572 −exports.exportVariable = exportVariable;
2573 −/**
2574 − * Registers a secret which will get masked from logs
2575 − * @param secret value of the secret
2576 − */
2577 −function setSecret(secret) {
2578 − command_1.issueCommand('add-mask', {}, secret);
2579 −}
2580 −exports.setSecret = setSecret;
2581 −/**
2582 − * Prepends inputPath to the PATH (for this action and future actions)
2583 − * @param inputPath
2584 − */
2585 −function addPath(inputPath) {
2586 − command_1.issueCommand('add-path', {}, inputPath);
2587 − process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;
2588 −}
2589 −exports.addPath = addPath;
2590 −/**
2591 − * Gets the value of an input. The value is also trimmed.
2592 − *
2593 − * @param name name of the input to get
2594 − * @param options optional. See InputOptions.
2595 − * @returns string
2596 − */
2597 −function getInput(name, options) {
2598 − const val = process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] || '';
2599 − if (options && options.required && !val) {
2600 − throw new Error(`Input required and not supplied: ${name}`);
2601 − }
2602 − return val.trim();
2603 −}
2604 −exports.getInput = getInput;
2605 −/**
2606 − * Sets the value of an output.
2607 − *
2608 − * @param name name of the output to set
2609 − * @param value value to store. Non-string values will be converted to a string via JSON.stringify
2610 − */
2611 −// eslint-disable-next-line @typescript-eslint/no-explicit-any
2612 −function setOutput(name, value) {
2613 − command_1.issueCommand('set-output', { name }, value);
2614 −}
2615 −exports.setOutput = setOutput;
2616 −/**
2617 − * Enables or disables the echoing of commands into stdout for the rest of the step.
2618 − * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.
2619 − *
2620 − */
2621 −function setCommandEcho(enabled) {
2622 − command_1.issue('echo', enabled ? 'on' : 'off');
2623 −}
2624 −exports.setCommandEcho = setCommandEcho;
2625 −//-----------------------------------------------------------------------
2626 −// Results
2627 −//-----------------------------------------------------------------------
2628 −/**
2629 − * Sets the action status to failed.
2630 − * When the action exits it will be with an exit code of 1
2631 − * @param message add error issue message
2632 − */
2633 −function setFailed(message) {
2634 − process.exitCode = ExitCode.Failure;
2635 − error(message);
2636 −}
2637 −exports.setFailed = setFailed;
2638 −//-----------------------------------------------------------------------
2639 −// Logging Commands
2640 −//-----------------------------------------------------------------------
2641 −/**
2642 − * Gets whether Actions Step Debug is on or not
2643 − */
2644 −function isDebug() {
2645 − return process.env['RUNNER_DEBUG'] === '1';
2646 −}
2647 −exports.isDebug = isDebug;
2648 −/**
2649 − * Writes debug message to user log
2650 − * @param message debug message
2651 − */
2652 −function debug(message) {
2653 − command_1.issueCommand('debug', {}, message);
2654 −}
2655 −exports.debug = debug;
2656 −/**
2657 − * Adds an error issue
2658 − * @param message error issue message. Errors will be converted to string via toString()
2659 − */
2660 −function error(message) {
2661 − command_1.issue('error', message instanceof Error ? message.toString() : message);
2662 −}
2663 −exports.error = error;
2664 −/**
2665 − * Adds an warning issue
2666 − * @param message warning issue message. Errors will be converted to string via toString()
2667 − */
2668 −function warning(message) {
2669 − command_1.issue('warning', message instanceof Error ? message.toString() : message);
2169 + if (gtlt === '>') {
2170 + // >1 => >=2.0.0
2171 + // >1.2 => >=1.3.0
2172 + // >1.2.3 => >= 1.2.4
2173 + gtlt = '>='
2174 + if (xm) {
2175 + M = +M + 1
2176 + m = 0
2177 + p = 0
2178 + } else {
2179 + m = +m + 1
2180 + p = 0
2181 + }
2182 + } else if (gtlt === '<=') {
2183 + // <=0.7.x is actually <0.8.0, since any 0.7.x should
2184 + // pass. Similarly, <=7.x is actually <8.0.0, etc.
2185 + gtlt = '<'
2186 + if (xm) {
2187 + M = +M + 1
2188 + } else {
2189 + m = +m + 1
2190 + }
2191 + }
2192 +
2193 + ret = gtlt + M + '.' + m + '.' + p + pr
2194 + } else if (xm) {
2195 + ret = '>=' + M + '.0.0' + pr + ' <' + (+M + 1) + '.0.0' + pr
2196 + } else if (xp) {
2197 + ret = '>=' + M + '.' + m + '.0' + pr +
2198 + ' <' + M + '.' + (+m + 1) + '.0' + pr
2199 + }
2200 +
2201 + debug('xRange return', ret)
2202 +
2203 + return ret
2204 + })
2670 2205 }
2671 −exports.warning = warning;
2672 −/**
2673 − * Writes info to log with console.log.
2674 − * @param message info message
2675 − */
2676 −function info(message) {
2677 − process.stdout.write(message + os.EOL);
2206 +
2207 +// Because * is AND-ed with everything else in the comparator,
2208 +// and '' means "any version", just remove the *s entirely.
2209 +function replaceStars (comp, options) {
2210 + debug('replaceStars', comp, options)
2211 + // Looseness is ignored here. star is always as loose as it gets!
2212 + return comp.trim().replace(re[t.STAR], '')
2678 2213 }
2679 −exports.info = info;
2680 −/**
2681 − * Begin an output group.
2682 − *
2683 − * Output until the next `groupEnd` will be foldable in this group
2684 − *
2685 − * @param name The name of the output group
2686 − */
2687 −function startGroup(name) {
2688 − command_1.issue('group', name);
2214 +
2215 +// This function is passed to string.replace(re[t.HYPHENRANGE])
2216 +// M, m, patch, prerelease, build
2217 +// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
2218 +// 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do
2219 +// 1.2 - 3.4 => >=1.2.0 <3.5.0
2220 +function hyphenReplace ($0,
2221 + from, fM, fm, fp, fpr, fb,
2222 + to, tM, tm, tp, tpr, tb) {
2223 + if (isX(fM)) {
2224 + from = ''
2225 + } else if (isX(fm)) {
2226 + from = '>=' + fM + '.0.0'
2227 + } else if (isX(fp)) {
2228 + from = '>=' + fM + '.' + fm + '.0'
2229 + } else {
2230 + from = '>=' + from
2231 + }
2232 +
2233 + if (isX(tM)) {
2234 + to = ''
2235 + } else if (isX(tm)) {
2236 + to = '<' + (+tM + 1) + '.0.0'
2237 + } else if (isX(tp)) {
2238 + to = '<' + tM + '.' + (+tm + 1) + '.0'
2239 + } else if (tpr) {
2240 + to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr
2241 + } else {
2242 + to = '<=' + to
2243 + }
2244 +
2245 + return (from + ' ' + to).trim()
2689 2246 }
2690 −exports.startGroup = startGroup;
2691 −/**
2692 − * End an output group.
2693 − */
2694 −function endGroup() {
2695 − command_1.issue('endgroup');
2247 +
2248 +// if ANY of the sets match ALL of its comparators, then pass
2249 +Range.prototype.test = function (version) {
2250 + if (!version) {
2251 + return false
2252 + }
2253 +
2254 + if (typeof version === 'string') {
2255 + try {
2256 + version = new SemVer(version, this.options)
2257 + } catch (er) {
2258 + return false
2259 + }
2260 + }
2261 +
2262 + for (var i = 0; i < this.set.length; i++) {
2263 + if (testSet(this.set[i], version, this.options)) {
2264 + return true
2265 + }
2266 + }
2267 + return false
2696 2268 }
2697 −exports.endGroup = endGroup;
2698 −/**
2699 − * Wrap an asynchronous function call in a group.
2700 − *
2701 − * Returns the same type as the function itself.
2702 − *
2703 − * @param name The name of the group
2704 − * @param fn The function to wrap in the group
2705 − */
2706 −function group(name, fn) {
2707 − return __awaiter(this, void 0, void 0, function* () {
2708 − startGroup(name);
2709 − let result;
2710 − try {
2711 − result = yield fn();
2712 − }
2713 − finally {
2714 − endGroup();
2269 +
2270 +function testSet (set, version, options) {
2271 + for (var i = 0; i < set.length; i++) {
2272 + if (!set[i].test(version)) {
2273 + return false
2274 + }
2275 + }
2276 +
2277 + if (version.prerelease.length && !options.includePrerelease) {
2278 + // Find the set of versions that are allowed to have prereleases
2279 + // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
2280 + // That should allow `1.2.3-pr.2` to pass.
2281 + // However, `1.2.4-alpha.notready` should NOT be allowed,
2282 + // even though it's within the range set by the comparators.
2283 + for (i = 0; i < set.length; i++) {
2284 + debug(set[i].semver)
2285 + if (set[i].semver === ANY) {
2286 + continue
2287 + }
2288 +
2289 + if (set[i].semver.prerelease.length > 0) {
2290 + var allowed = set[i].semver
2291 + if (allowed.major === version.major &&
2292 + allowed.minor === version.minor &&
2293 + allowed.patch === version.patch) {
2294 + return true
2715 2295 }
2716 − return result;
2717 − });
2296 + }
2297 + }
2298 +
2299 + // Version has a -pre, but it's not one of the ones we like.
2300 + return false
2301 + }
2302 +
2303 + return true
2718 2304 }
2719 −exports.group = group;
2720 −//-----------------------------------------------------------------------
2721 −// Wrapper action state
2722 −//-----------------------------------------------------------------------
2723 −/**
2724 − * Saves state for current action, the state can only be retrieved by this action's post job execution.
2725 − *
2726 − * @param name name of the state to store
2727 − * @param value value to store. Non-string values will be converted to a string via JSON.stringify
2728 − */
2729 −// eslint-disable-next-line @typescript-eslint/no-explicit-any
2730 −function saveState(name, value) {
2731 − command_1.issueCommand('save-state', { name }, value);
2305 +
2306 +exports.satisfies = satisfies
2307 +function satisfies (version, range, options) {
2308 + try {
2309 + range = new Range(range, options)
2310 + } catch (er) {
2311 + return false
2312 + }
2313 + return range.test(version)
2732 2314 }
2733 −exports.saveState = saveState;
2734 −/**
2735 − * Gets the value of an state set by this action's main execution.
2736 − *
2737 − * @param name name of the state to get
2738 − * @returns string
2739 − */
2740 −function getState(name) {
2741 − return process.env[`STATE_${name}`] || '';
2315 +
2316 +exports.maxSatisfying = maxSatisfying
2317 +function maxSatisfying (versions, range, options) {
2318 + var max = null
2319 + var maxSV = null
2320 + try {
2321 + var rangeObj = new Range(range, options)
2322 + } catch (er) {
2323 + return null
2324 + }
2325 + versions.forEach(function (v) {
2326 + if (rangeObj.test(v)) {
2327 + // satisfies(v, range, options)
2328 + if (!max || maxSV.compare(v) === -1) {
2329 + // compare(max, v, true)
2330 + max = v
2331 + maxSV = new SemVer(max, options)
2332 + }
2333 + }
2334 + })
2335 + return max
2742 2336 }
2743 −exports.getState = getState;
2744 −//# sourceMappingURL=core.js.map
2745 2337
2746 −/***/ }),
2338 +exports.minSatisfying = minSatisfying
2339 +function minSatisfying (versions, range, options) {
2340 + var min = null
2341 + var minSV = null
2342 + try {
2343 + var rangeObj = new Range(range, options)
2344 + } catch (er) {
2345 + return null
2346 + }
2347 + versions.forEach(function (v) {
2348 + if (rangeObj.test(v)) {
2349 + // satisfies(v, range, options)
2350 + if (!min || minSV.compare(v) === 1) {
2351 + // compare(min, v, true)
2352 + min = v
2353 + minSV = new SemVer(min, options)
2354 + }
2355 + }
2356 + })
2357 + return min
2358 +}
2747 2359
2748 −/***/ 480:
2749 −/***/ (function(module, __unusedexports, __webpack_require__) {
2360 +exports.minVersion = minVersion
2361 +function minVersion (range, loose) {
2362 + range = new Range(range, loose)
2363 +
2364 + var minver = new SemVer('0.0.0')
2365 + if (range.test(minver)) {
2366 + return minver
2367 + }
2368 +
2369 + minver = new SemVer('0.0.0-0')
2370 + if (range.test(minver)) {
2371 + return minver
2372 + }
2373 +
2374 + minver = null
2375 + for (var i = 0; i < range.set.length; ++i) {
2376 + var comparators = range.set[i]
2377 +
2378 + comparators.forEach(function (comparator) {
2379 + // Clone to avoid manipulating the comparator's semver object.
2380 + var compver = new SemVer(comparator.semver.version)
2381 + switch (comparator.operator) {
2382 + case '>':
2383 + if (compver.prerelease.length === 0) {
2384 + compver.patch++
2385 + } else {
2386 + compver.prerelease.push(0)
2387 + }
2388 + compver.raw = compver.format()
2389 + /* fallthrough */
2390 + case '':
2391 + case '>=':
2392 + if (!minver || gt(minver, compver)) {
2393 + minver = compver
2394 + }
2395 + break
2396 + case '<':
2397 + case '<=':
2398 + /* Ignore maximum versions */
2399 + break
2400 + /* istanbul ignore next */
2401 + default:
2402 + throw new Error('Unexpected operation: ' + comparator.operator)
2403 + }
2404 + })
2405 + }
2406 +
2407 + if (minver && range.test(minver)) {
2408 + return minver
2409 + }
2410 +
2411 + return null
2412 +}
2750 2413
2751 −const Range = __webpack_require__(124)
2752 −const validRange = (range, options) => {
2414 +exports.validRange = validRange
2415 +function validRange (range, options) {
2753 2416 try {
2754 2417 // Return '*' instead of '' so that truthiness works.
2755 2418 // This will throw if it's invalid anyway
@@ -2757,40 +2420,105 @@ const validRange = (range, options) => {
2757 2420 } catch (er) {
2758 2421 return null
2759 2422 }
2760 −}
2761 −module.exports = validRange
2762 −
2763 −
2764 −/***/ }),
2765 −
2766 −/***/ 486:
2767 −/***/ (function(module, __unusedexports, __webpack_require__) {
2423 +}
2424 +
2425 +// Determine if version is less than all the versions possible in the range
2426 +exports.ltr = ltr
2427 +function ltr (version, range, options) {
2428 + return outside(version, range, '<', options)
2429 +}
2430 +
2431 +// Determine if version is greater than all the versions possible in the range.
2432 +exports.gtr = gtr
2433 +function gtr (version, range, options) {
2434 + return outside(version, range, '>', options)
2435 +}
2436 +
2437 +exports.outside = outside
2438 +function outside (version, range, hilo, options) {
2439 + version = new SemVer(version, options)
2440 + range = new Range(range, options)
2441 +
2442 + var gtfn, ltefn, ltfn, comp, ecomp
2443 + switch (hilo) {
2444 + case '>':
2445 + gtfn = gt
2446 + ltefn = lte
2447 + ltfn = lt
2448 + comp = '>'
2449 + ecomp = '>='
2450 + break
2451 + case '<':
2452 + gtfn = lt
2453 + ltefn = gte
2454 + ltfn = gt
2455 + comp = '<'
2456 + ecomp = '<='
2457 + break
2458 + default:
2459 + throw new TypeError('Must provide a hilo val of "<" or ">"')
2460 + }
2768 2461
2769 −const compare = __webpack_require__(874)
2770 −const gt = (a, b, loose) => compare(a, b, loose) > 0
2771 −module.exports = gt
2462 + // If it satisifes the range it is not outside
2463 + if (satisfies(version, range, options)) {
2464 + return false
2465 + }
2772 2466
2467 + // From now on, variable terms are as if we're in "gtr" mode.
2468 + // but note that everything is flipped for the "ltr" function.
2773 2469
2774 −/***/ }),
2470 + for (var i = 0; i < range.set.length; ++i) {
2471 + var comparators = range.set[i]
2775 2472
2776 −/***/ 489:
2777 −/***/ (function(module, __unusedexports, __webpack_require__) {
2473 + var high = null
2474 + var low = null
2778 2475
2779 −const SemVer = __webpack_require__(65)
2780 −const patch = (a, loose) => new SemVer(a, loose).patch
2781 −module.exports = patch
2476 + comparators.forEach(function (comparator) {
2477 + if (comparator.semver === ANY) {
2478 + comparator = new Comparator('>=0.0.0')
2479 + }
2480 + high = high || comparator
2481 + low = low || comparator
2482 + if (gtfn(comparator.semver, high.semver, options)) {
2483 + high = comparator
2484 + } else if (ltfn(comparator.semver, low.semver, options)) {
2485 + low = comparator
2486 + }
2487 + })
2782 2488
2489 + // If the edge version comparator has a operator then our version
2490 + // isn't outside it
2491 + if (high.operator === comp || high.operator === ecomp) {
2492 + return false
2493 + }
2783 2494
2784 −/***/ }),
2495 + // If the lowest version comparator has an operator and our version
2496 + // is less than it then it isn't higher than the range
2497 + if ((!low.operator || low.operator === comp) &&
2498 + ltefn(version, low.semver)) {
2499 + return false
2500 + } else if (low.operator === ecomp && ltfn(version, low.semver)) {
2501 + return false
2502 + }
2503 + }
2504 + return true
2505 +}
2785 2506
2786 −/***/ 499:
2787 −/***/ (function(module, __unusedexports, __webpack_require__) {
2507 +exports.prerelease = prerelease
2508 +function prerelease (version, options) {
2509 + var parsed = parse(version, options)
2510 + return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
2511 +}
2788 2512
2789 −const SemVer = __webpack_require__(65)
2790 −const parse = __webpack_require__(830)
2791 −const {re, t} = __webpack_require__(976)
2513 +exports.intersects = intersects
2514 +function intersects (r1, r2, options) {
2515 + r1 = new Range(r1, options)
2516 + r2 = new Range(r2, options)
2517 + return r1.intersects(r2)
2518 +}
2792 2519
2793 −const coerce = (version, options) => {
2520 +exports.coerce = coerce
2521 +function coerce (version, options) {
2794 2522 if (version instanceof SemVer) {
2795 2523 return version
2796 2524 }
@@ -2805,7 +2533,7 @@ const coerce = (version, options) => {
2805 2533
2806 2534 options = options || {}
2807 2535
2808 − let match = null
2536 + var match = null
2809 2537 if (!options.rtl) {
2810 2538 match = version.match(re[t.COERCE])
2811 2539 } else {
@@ -2817,518 +2545,635 @@ const coerce = (version, options) => {
2817 2545 // Manually set the index so as to pick up overlapping matches.
2818 2546 // Stop when we get a match that ends at the string end, since no
2819 2547 // coercible string can be more right-ward without the same terminus.
2820 − let next
2548 + var next
2821 2549 while ((next = re[t.COERCERTL].exec(version)) &&
2822 − (!match || match.index + match[0].length !== version.length)
2550 + (!match || match.index + match[0].length !== version.length)
2823 2551 ) {
2824 2552 if (!match ||
2825 − next.index + next[0].length !== match.index + match[0].length) {
2553 + next.index + next[0].length !== match.index + match[0].length) {
2826 2554 match = next
2827 2555 }
2828 2556 re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length
2829 2557 }
2830 − // leave it in a clean state
2831 − re[t.COERCERTL].lastIndex = -1
2832 − }
2833 −
2834 − if (match === null)
2835 − return null
2836 −
2837 − return parse(`${match[2]}.${match[3] || '0'}.${match[4] || '0'}`, options)
2558 + // leave it in a clean state
2559 + re[t.COERCERTL].lastIndex = -1
2560 + }
2561 +
2562 + if (match === null) {
2563 + return null
2564 + }
2565 +
2566 + return parse(match[2] +
2567 + '.' + (match[3] || '0') +
2568 + '.' + (match[4] || '0'), options)
2569 +}
2570 +
2571 +
2572 +/***/ }),
2573 +
2574 +/***/ 357:
2575 +/***/ (function(module) {
2576 +
2577 +module.exports = require("assert");
2578 +
2579 +/***/ }),
2580 +
2581 +/***/ 408:
2582 +/***/ (function(__unusedmodule, exports, __webpack_require__) {
2583 +
2584 +"use strict";
2585 +
2586 +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2587 + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
2588 + return new (P || (P = Promise))(function (resolve, reject) {
2589 + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
2590 + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
2591 + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
2592 + step((generator = generator.apply(thisArg, _arguments || [])).next());
2593 + });
2594 +};
2595 +var _a;
2596 +Object.defineProperty(exports, "__esModule", { value: true });
2597 +const assert_1 = __webpack_require__(357);
2598 +const fs = __webpack_require__(747);
2599 +const path = __webpack_require__(622);
2600 +_a = fs.promises, exports.chmod = _a.chmod, exports.copyFile = _a.copyFile, exports.lstat = _a.lstat, exports.mkdir = _a.mkdir, exports.readdir = _a.readdir, exports.readlink = _a.readlink, exports.rename = _a.rename, exports.rmdir = _a.rmdir, exports.stat = _a.stat, exports.symlink = _a.symlink, exports.unlink = _a.unlink;
2601 +exports.IS_WINDOWS = process.platform === 'win32';
2602 +function exists(fsPath) {
2603 + return __awaiter(this, void 0, void 0, function* () {
2604 + try {
2605 + yield exports.stat(fsPath);
2606 + }
2607 + catch (err) {
2608 + if (err.code === 'ENOENT') {
2609 + return false;
2610 + }
2611 + throw err;
2612 + }
2613 + return true;
2614 + });
2615 +}
2616 +exports.exists = exists;
2617 +function isDirectory(fsPath, useStat = false) {
2618 + return __awaiter(this, void 0, void 0, function* () {
2619 + const stats = useStat ? yield exports.stat(fsPath) : yield exports.lstat(fsPath);
2620 + return stats.isDirectory();
2621 + });
2622 +}
2623 +exports.isDirectory = isDirectory;
2624 +/**
2625 + * On OSX/Linux, true if path starts with '/'. On Windows, true for paths like:
2626 + * \, \hello, \\hello\share, C:, and C:\hello (and corresponding alternate separator cases).
2627 + */
2628 +function isRooted(p) {
2629 + p = normalizeSeparators(p);
2630 + if (!p) {
2631 + throw new Error('isRooted() parameter "p" cannot be empty');
2632 + }
2633 + if (exports.IS_WINDOWS) {
2634 + return (p.startsWith('\\') || /^[A-Z]:/i.test(p) // e.g. \ or \hello or \\hello
2635 + ); // e.g. C: or C:\hello
2636 + }
2637 + return p.startsWith('/');
2638 +}
2639 +exports.isRooted = isRooted;
2640 +/**
2641 + * Recursively create a directory at `fsPath`.
2642 + *
2643 + * This implementation is optimistic, meaning it attempts to create the full
2644 + * path first, and backs up the path stack from there.
2645 + *
2646 + * @param fsPath The path to create
2647 + * @param maxDepth The maximum recursion depth
2648 + * @param depth The current recursion depth
2649 + */
2650 +function mkdirP(fsPath, maxDepth = 1000, depth = 1) {
2651 + return __awaiter(this, void 0, void 0, function* () {
2652 + assert_1.ok(fsPath, 'a path argument must be provided');
2653 + fsPath = path.resolve(fsPath);
2654 + if (depth >= maxDepth)
2655 + return exports.mkdir(fsPath);
2656 + try {
2657 + yield exports.mkdir(fsPath);
2658 + return;
2659 + }
2660 + catch (err) {
2661 + switch (err.code) {
2662 + case 'ENOENT': {
2663 + yield mkdirP(path.dirname(fsPath), maxDepth, depth + 1);
2664 + yield exports.mkdir(fsPath);
2665 + return;
2666 + }
2667 + default: {
2668 + let stats;
2669 + try {
2670 + stats = yield exports.stat(fsPath);
2671 + }
2672 + catch (err2) {
2673 + throw err;
2674 + }
2675 + if (!stats.isDirectory())
2676 + throw err;
2677 + }
2678 + }
2679 + }
2680 + });
2681 +}
2682 +exports.mkdirP = mkdirP;
2683 +/**
2684 + * Best effort attempt to determine whether a file exists and is executable.
2685 + * @param filePath file path to check
2686 + * @param extensions additional file extensions to try
2687 + * @return if file exists and is executable, returns the file path. otherwise empty string.
2688 + */
2689 +function tryGetExecutablePath(filePath, extensions) {
2690 + return __awaiter(this, void 0, void 0, function* () {
2691 + let stats = undefined;
2692 + try {
2693 + // test file exists
2694 + stats = yield exports.stat(filePath);
2695 + }
2696 + catch (err) {
2697 + if (err.code !== 'ENOENT') {
2698 + // eslint-disable-next-line no-console
2699 + console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`);
2700 + }
2701 + }
2702 + if (stats && stats.isFile()) {
2703 + if (exports.IS_WINDOWS) {
2704 + // on Windows, test for valid extension
2705 + const upperExt = path.extname(filePath).toUpperCase();
2706 + if (extensions.some(validExt => validExt.toUpperCase() === upperExt)) {
2707 + return filePath;
2708 + }
2709 + }
2710 + else {
2711 + if (isUnixExecutable(stats)) {
2712 + return filePath;
2713 + }
2714 + }
2715 + }
2716 + // try each extension
2717 + const originalFilePath = filePath;
2718 + for (const extension of extensions) {
2719 + filePath = originalFilePath + extension;
2720 + stats = undefined;
2721 + try {
2722 + stats = yield exports.stat(filePath);
2723 + }
2724 + catch (err) {
2725 + if (err.code !== 'ENOENT') {
2726 + // eslint-disable-next-line no-console
2727 + console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`);
2728 + }
2729 + }
2730 + if (stats && stats.isFile()) {
2731 + if (exports.IS_WINDOWS) {
2732 + // preserve the case of the actual file (since an extension was appended)
2733 + try {
2734 + const directory = path.dirname(filePath);
2735 + const upperName = path.basename(filePath).toUpperCase();
2736 + for (const actualName of yield exports.readdir(directory)) {
2737 + if (upperName === actualName.toUpperCase()) {
2738 + filePath = path.join(directory, actualName);
2739 + break;
2740 + }
2741 + }
2742 + }
2743 + catch (err) {
2744 + // eslint-disable-next-line no-console
2745 + console.log(`Unexpected error attempting to determine the actual case of the file '${filePath}': ${err}`);
2746 + }
2747 + return filePath;
2748 + }
2749 + else {
2750 + if (isUnixExecutable(stats)) {
2751 + return filePath;
2752 + }
2753 + }
2754 + }
2755 + }
2756 + return '';
2757 + });
2758 +}
2759 +exports.tryGetExecutablePath = tryGetExecutablePath;
2760 +function normalizeSeparators(p) {
2761 + p = p || '';
2762 + if (exports.IS_WINDOWS) {
2763 + // convert slashes on Windows
2764 + p = p.replace(/\//g, '\\');
2765 + // remove redundant slashes
2766 + return p.replace(/\\\\+/g, '\\');
2767 + }
2768 + // remove redundant slashes
2769 + return p.replace(/\/\/+/g, '/');
2838 2770 }
2839 −module.exports = coerce
2840 −
2841 −
2842 −/***/ }),
2843 −
2844 −/***/ 503:
2845 −/***/ (function(module, __unusedexports, __webpack_require__) {
2846 −
2847 −const parse = __webpack_require__(830)
2848 −const clean = (version, options) => {
2849 − const s = parse(version.trim().replace(/^[=v]+/, ''), options)
2850 − return s ? s.version : null
2771 +// on Mac/Linux, test the execute bit
2772 +// R W X R W X R W X
2773 +// 256 128 64 32 16 8 4 2 1
2774 +function isUnixExecutable(stats) {
2775 + return ((stats.mode & 1) > 0 ||
2776 + ((stats.mode & 8) > 0 && stats.gid === process.getgid()) ||
2777 + ((stats.mode & 64) > 0 && stats.uid === process.getuid()));
2851 2778 }
2852 −module.exports = clean
2853 −
2854 −
2855 −/***/ }),
2856 −
2857 −/***/ 531:
2858 −/***/ (function(module, __unusedexports, __webpack_require__) {
2859 −
2860 −// Determine if version is greater than all the versions possible in the range.
2861 −const outside = __webpack_require__(462)
2862 −const gtr = (version, range, options) => outside(version, range, '>', options)
2863 −module.exports = gtr
2864 −
2865 −
2866 −/***/ }),
2867 −
2868 −/***/ 548:
2869 −/***/ (function(module) {
2870 −
2871 −const debug = (
2872 − typeof process === 'object' &&
2873 − process.env &&
2874 − process.env.NODE_DEBUG &&
2875 − /\bsemver\b/i.test(process.env.NODE_DEBUG)
2876 −) ? (...args) => console.error('SEMVER', ...args)
2877 − : () => {}
2878 −
2879 −module.exports = debug
2880 −
2881 −
2882 −/***/ }),
2883 −
2884 −/***/ 586:
2885 −/***/ (function(module, __unusedexports, __webpack_require__) {
2886 −
2887 −const compare = __webpack_require__(874)
2888 −const lt = (a, b, loose) => compare(a, b, loose) < 0
2889 −module.exports = lt
2890 −
2891 −
2892 −/***/ }),
2893 −
2894 −/***/ 593:
2895 −/***/ (function(module, __unusedexports, __webpack_require__) {
2896 −
2897 −const compareBuild = __webpack_require__(16)
2898 −const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))
2899 −module.exports = rsort
2900 −
2901 −
2902 −/***/ }),
2903 −
2904 −/***/ 614:
2905 −/***/ (function(module) {
2906 −
2907 −module.exports = require("events");
2908 −
2909 −/***/ }),
2910 −
2911 −/***/ 622:
2912 −/***/ (function(module) {
2913 −
2914 −module.exports = require("path");
2915 −
2916 −/***/ }),
2917 −
2918 −/***/ 630:
2919 −/***/ (function(module, __unusedexports, __webpack_require__) {
2920 −
2921 −const compare = __webpack_require__(874)
2922 −const rcompare = (a, b, loose) => compare(b, a, loose)
2923 −module.exports = rcompare
2924 −
2779 +//# sourceMappingURL=io-util.js.map
2925 2780
2926 2781 /***/ }),
2927 2782
2928 −/***/ 669:
2929 −/***/ (function(module) {
2930 −
2931 −module.exports = require("util");
2932 −
2933 −/***/ }),
2783 +/***/ 431:
2784 +/***/ (function(__unusedmodule, exports, __webpack_require__) {
2934 2785
2935 −/***/ 714:
2936 −/***/ (function(module, __unusedexports, __webpack_require__) {
2786 +"use strict";
2937 2787
2938 −const parse = __webpack_require__(830)
2939 −const valid = (version, options) => {
2940 − const v = parse(version, options)
2941 − return v ? v.version : null
2788 +var __importStar = (this && this.__importStar) || function (mod) {
2789 + if (mod && mod.__esModule) return mod;
2790 + var result = {};
2791 + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
2792 + result["default"] = mod;
2793 + return result;
2794 +};
2795 +Object.defineProperty(exports, "__esModule", { value: true });
2796 +const os = __importStar(__webpack_require__(87));
2797 +/**
2798 + * Commands
2799 + *
2800 + * Command Format:
2801 + * ::name key=value,key=value::message
2802 + *
2803 + * Examples:
2804 + * ::warning::This is the message
2805 + * ::set-env name=MY_VAR::some value
2806 + */
2807 +function issueCommand(command, properties, message) {
2808 + const cmd = new Command(command, properties, message);
2809 + process.stdout.write(cmd.toString() + os.EOL);
2942 2810 }
2943 −module.exports = valid
2944 −
2945 −
2946 −/***/ }),
2947 −
2948 −/***/ 740:
2949 −/***/ (function(module, __unusedexports, __webpack_require__) {
2950 −
2951 −const SemVer = __webpack_require__(65)
2952 −const Range = __webpack_require__(124)
2953 −const minSatisfying = (versions, range, options) => {
2954 − let min = null
2955 − let minSV = null
2956 − let rangeObj = null
2957 − try {
2958 − rangeObj = new Range(range, options)
2959 − } catch (er) {
2960 − return null
2961 − }
2962 − versions.forEach((v) => {
2963 − if (rangeObj.test(v)) {
2964 − // satisfies(v, range, options)
2965 − if (!min || minSV.compare(v) === 1) {
2966 − // compare(min, v, true)
2967 − min = v
2968 − minSV = new SemVer(min, options)
2969 − }
2811 +exports.issueCommand = issueCommand;
2812 +function issue(name, message = '') {
2813 + issueCommand(name, {}, message);
2814 +}
2815 +exports.issue = issue;
2816 +const CMD_STRING = '::';
2817 +class Command {
2818 + constructor(command, properties, message) {
2819 + if (!command) {
2820 + command = 'missing.command';
2821 + }
2822 + this.command = command;
2823 + this.properties = properties;
2824 + this.message = message;
2825 + }
2826 + toString() {
2827 + let cmdStr = CMD_STRING + this.command;
2828 + if (this.properties && Object.keys(this.properties).length > 0) {
2829 + cmdStr += ' ';
2830 + let first = true;
2831 + for (const key in this.properties) {
2832 + if (this.properties.hasOwnProperty(key)) {
2833 + const val = this.properties[key];
2834 + if (val) {
2835 + if (first) {
2836 + first = false;
2837 + }
2838 + else {
2839 + cmdStr += ',';
2840 + }
2841 + cmdStr += `${key}=${escapeProperty(val)}`;
2842 + }
2843 + }
2844 + }
2845 + }
2846 + cmdStr += `${CMD_STRING}${escapeData(this.message)}`;
2847 + return cmdStr;
2970 2848 }
2971 − })
2972 − return min
2973 2849 }
2974 −module.exports = minSatisfying
2975 −
2976 −
2977 −/***/ }),
2978 −
2979 −/***/ 744:
2980 −/***/ (function(module, __unusedexports, __webpack_require__) {
2981 −
2982 −const SemVer = __webpack_require__(65)
2983 −const major = (a, loose) => new SemVer(a, loose).major
2984 −module.exports = major
2985 −
2986 −
2987 −/***/ }),
2988 −
2989 −/***/ 747:
2990 −/***/ (function(module) {
2991 −
2992 −module.exports = require("fs");
2993 −
2994 −/***/ }),
2995 −
2996 −/***/ 752:
2997 −/***/ (function(module, __unusedexports, __webpack_require__) {
2998 −
2999 −const eq = __webpack_require__(298)
3000 −const neq = __webpack_require__(873)
3001 −const gt = __webpack_require__(486)
3002 −const gte = __webpack_require__(167)
3003 −const lt = __webpack_require__(586)
3004 −const lte = __webpack_require__(898)
3005 −
3006 −const cmp = (a, op, b, loose) => {
3007 − switch (op) {
3008 − case '===':
3009 − if (typeof a === 'object')
3010 − a = a.version
3011 − if (typeof b === 'object')
3012 − b = b.version
3013 − return a === b
3014 −
3015 − case '!==':
3016 − if (typeof a === 'object')
3017 − a = a.version
3018 − if (typeof b === 'object')
3019 − b = b.version
3020 − return a !== b
3021 −
3022 − case '':
3023 − case '=':
3024 − case '==':
3025 − return eq(a, b, loose)
3026 −
3027 − case '!=':
3028 − return neq(a, b, loose)
3029 −
3030 − case '>':
3031 − return gt(a, b, loose)
3032 −
3033 − case '>=':
3034 − return gte(a, b, loose)
3035 −
3036 − case '<':
3037 − return lt(a, b, loose)
3038 −
3039 − case '<=':
3040 − return lte(a, b, loose)
3041 −
3042 − default:
3043 − throw new TypeError(`Invalid operator: ${op}`)
3044 − }
2850 +/**
2851 + * Sanitizes an input into a string so it can be passed into issueCommand safely
2852 + * @param input input to sanitize into a string
2853 + */
2854 +function toCommandValue(input) {
2855 + if (input === null || input === undefined) {
2856 + return '';
2857 + }
2858 + else if (typeof input === 'string' || input instanceof String) {
2859 + return input;
2860 + }
2861 + return JSON.stringify(input);
3045 2862 }
3046 −module.exports = cmp
3047 −
3048 −
3049 −/***/ }),
3050 −
3051 −/***/ 760:
3052 −/***/ (function(module) {
3053 −
3054 −const numeric = /^[0-9]+$/
3055 −const compareIdentifiers = (a, b) => {
3056 − const anum = numeric.test(a)
3057 − const bnum = numeric.test(b)
3058 −
3059 − if (anum && bnum) {
3060 − a = +a
3061 − b = +b
3062 − }
3063 −
3064 − return a === b ? 0
3065 − : (anum && !bnum) ? -1
3066 − : (bnum && !anum) ? 1
3067 − : a < b ? -1
3068 − : 1
2863 +exports.toCommandValue = toCommandValue;
2864 +function escapeData(s) {
2865 + return toCommandValue(s)
2866 + .replace(/%/g, '%25')
2867 + .replace(/\r/g, '%0D')
2868 + .replace(/\n/g, '%0A');
3069 2869 }
3070 −
3071 −const rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)
3072 −
3073 −module.exports = {
3074 − compareIdentifiers,
3075 − rcompareIdentifiers
2870 +function escapeProperty(s) {
2871 + return toCommandValue(s)
2872 + .replace(/%/g, '%25')
2873 + .replace(/\r/g, '%0D')
2874 + .replace(/\n/g, '%0A')
2875 + .replace(/:/g, '%3A')
2876 + .replace(/,/g, '%2C');
3076 2877 }
3077 −
2878 +//# sourceMappingURL=command.js.map
3078 2879
3079 2880 /***/ }),
3080 2881
3081 −/***/ 803:
2882 +/***/ 449:
3082 2883 /***/ (function(module, __unusedexports, __webpack_require__) {
3083 2884
3084 −const SemVer = __webpack_require__(65)
3085 −const minor = (a, loose) => new SemVer(a, loose).minor
3086 −module.exports = minor
3087 −
3088 −
3089 −/***/ }),
2885 +const {exec} = __webpack_require__(917)
2886 +const path = __webpack_require__(622)
2887 +const semver = __webpack_require__(280)
3090 2888
3091 −/***/ 811:
3092 −/***/ (function(module, __unusedexports, __webpack_require__) {
2889 +module.exports = {installElixir, installOTP}
3093 2890
3094 −const SemVer = __webpack_require__(65)
3095 −const Range = __webpack_require__(124)
2891 +/**
2892 + * Install Elixir.
2893 + *
2894 + * @param {string} version
2895 + * @param {string} otpMajor
2896 + */
2897 +async function installElixir(version, otpMajor) {
2898 + if (process.platform === 'linux') {
2899 + const otpString = otpMajor ? `-otp-${otpMajor}` : ''
2900 + await exec(__webpack_require__.ab + "install-elixir", [version, otpString])
2901 + }
2902 +}
3096 2903
3097 −const maxSatisfying = (versions, range, options) => {
3098 − let max = null
3099 − let maxSV = null
3100 − let rangeObj = null
3101 − try {
3102 − rangeObj = new Range(range, options)
3103 − } catch (er) {
3104 − return null
2904 +/**
2905 + * Install OTP.
2906 + *
2907 + * @param {string} version
2908 + */
2909 +async function installOTP(version) {
2910 + if (process.platform === 'linux') {
2911 + await exec(__webpack_require__.ab + "install-otp", [version])
2912 + return
3105 2913 }
3106 − versions.forEach((v) => {
3107 − if (rangeObj.test(v)) {
3108 − // satisfies(v, range, options)
3109 − if (!max || maxSV.compare(v) === -1) {
3110 − // compare(max, v, true)
3111 − max = v
3112 − maxSV = new SemVer(max, options)
3113 − }
3114 − }
3115 − })
3116 − return max
2914 +
2915 + throw new Error(
2916 + '@actions/setup-elixir only supports Ubuntu Linux at this time'
2917 + )
3117 2918 }
3118 −module.exports = maxSatisfying
3119 2919
3120 2920
3121 2921 /***/ }),
3122 2922
3123 −/***/ 822:
3124 −/***/ (function(module, __unusedexports, __webpack_require__) {
2923 +/***/ 470:
2924 +/***/ (function(__unusedmodule, exports, __webpack_require__) {
3125 2925
3126 −const parse = __webpack_require__(830)
3127 −const eq = __webpack_require__(298)
2926 +"use strict";
3128 2927
3129 −const diff = (version1, version2) => {
3130 − if (eq(version1, version2)) {
3131 − return null
3132 − } else {
3133 − const v1 = parse(version1)
3134 − const v2 = parse(version2)
3135 − const hasPre = v1.prerelease.length || v2.prerelease.length
3136 − const prefix = hasPre ? 'pre' : ''
3137 − const defaultResult = hasPre ? 'prerelease' : ''
3138 − for (const key in v1) {
3139 − if (key === 'major' || key === 'minor' || key === 'patch') {
3140 − if (v1[key] !== v2[key]) {
3141 − return prefix + key
3142 − }
3143 − }
2928 +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2929 + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
2930 + return new (P || (P = Promise))(function (resolve, reject) {
2931 + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
2932 + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
2933 + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
2934 + step((generator = generator.apply(thisArg, _arguments || [])).next());
2935 + });
2936 +};
2937 +var __importStar = (this && this.__importStar) || function (mod) {
2938 + if (mod && mod.__esModule) return mod;
2939 + var result = {};
2940 + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
2941 + result["default"] = mod;
2942 + return result;
2943 +};
2944 +Object.defineProperty(exports, "__esModule", { value: true });
2945 +const command_1 = __webpack_require__(431);
2946 +const os = __importStar(__webpack_require__(87));
2947 +const path = __importStar(__webpack_require__(622));
2948 +/**
2949 + * The code to exit an action
2950 + */
2951 +var ExitCode;
2952 +(function (ExitCode) {
2953 + /**
2954 + * A code indicating that the action was successful
2955 + */
2956 + ExitCode[ExitCode["Success"] = 0] = "Success";
2957 + /**
2958 + * A code indicating that the action was a failure
2959 + */
2960 + ExitCode[ExitCode["Failure"] = 1] = "Failure";
2961 +})(ExitCode = exports.ExitCode || (exports.ExitCode = {}));
2962 +//-----------------------------------------------------------------------
2963 +// Variables
2964 +//-----------------------------------------------------------------------
2965 +/**
2966 + * Sets env variable for this action and future actions in the job
2967 + * @param name the name of the variable to set
2968 + * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify
2969 + */
2970 +// eslint-disable-next-line @typescript-eslint/no-explicit-any
2971 +function exportVariable(name, val) {
2972 + const convertedVal = command_1.toCommandValue(val);
2973 + process.env[name] = convertedVal;
2974 + command_1.issueCommand('set-env', { name }, convertedVal);
2975 +}
2976 +exports.exportVariable = exportVariable;
2977 +/**
2978 + * Registers a secret which will get masked from logs
2979 + * @param secret value of the secret
2980 + */
2981 +function setSecret(secret) {
2982 + command_1.issueCommand('add-mask', {}, secret);
2983 +}
2984 +exports.setSecret = setSecret;
2985 +/**
2986 + * Prepends inputPath to the PATH (for this action and future actions)
2987 + * @param inputPath
2988 + */
2989 +function addPath(inputPath) {
2990 + command_1.issueCommand('add-path', {}, inputPath);
2991 + process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;
2992 +}
2993 +exports.addPath = addPath;
2994 +/**
2995 + * Gets the value of an input. The value is also trimmed.
2996 + *
2997 + * @param name name of the input to get
2998 + * @param options optional. See InputOptions.
2999 + * @returns string
3000 + */
3001 +function getInput(name, options) {
3002 + const val = process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] || '';
3003 + if (options && options.required && !val) {
3004 + throw new Error(`Input required and not supplied: ${name}`);
3144 3005 }
3145 − return defaultResult // may be undefined
3146 − }
3006 + return val.trim();
3007 +}
3008 +exports.getInput = getInput;
3009 +/**
3010 + * Sets the value of an output.
3011 + *
3012 + * @param name name of the output to set
3013 + * @param value value to store. Non-string values will be converted to a string via JSON.stringify
3014 + */
3015 +// eslint-disable-next-line @typescript-eslint/no-explicit-any
3016 +function setOutput(name, value) {
3017 + command_1.issueCommand('set-output', { name }, value);
3018 +}
3019 +exports.setOutput = setOutput;
3020 +/**
3021 + * Enables or disables the echoing of commands into stdout for the rest of the step.
3022 + * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.
3023 + *
3024 + */
3025 +function setCommandEcho(enabled) {
3026 + command_1.issue('echo', enabled ? 'on' : 'off');
3027 +}
3028 +exports.setCommandEcho = setCommandEcho;
3029 +//-----------------------------------------------------------------------
3030 +// Results
3031 +//-----------------------------------------------------------------------
3032 +/**
3033 + * Sets the action status to failed.
3034 + * When the action exits it will be with an exit code of 1
3035 + * @param message add error issue message
3036 + */
3037 +function setFailed(message) {
3038 + process.exitCode = ExitCode.Failure;
3039 + error(message);
3040 +}
3041 +exports.setFailed = setFailed;
3042 +//-----------------------------------------------------------------------
3043 +// Logging Commands
3044 +//-----------------------------------------------------------------------
3045 +/**
3046 + * Gets whether Actions Step Debug is on or not
3047 + */
3048 +function isDebug() {
3049 + return process.env['RUNNER_DEBUG'] === '1';
3050 +}
3051 +exports.isDebug = isDebug;
3052 +/**
3053 + * Writes debug message to user log
3054 + * @param message debug message
3055 + */
3056 +function debug(message) {
3057 + command_1.issueCommand('debug', {}, message);
3058 +}
3059 +exports.debug = debug;
3060 +/**
3061 + * Adds an error issue
3062 + * @param message error issue message. Errors will be converted to string via toString()
3063 + */
3064 +function error(message) {
3065 + command_1.issue('error', message instanceof Error ? message.toString() : message);
3066 +}
3067 +exports.error = error;
3068 +/**
3069 + * Adds an warning issue
3070 + * @param message warning issue message. Errors will be converted to string via toString()
3071 + */
3072 +function warning(message) {
3073 + command_1.issue('warning', message instanceof Error ? message.toString() : message);
3074 +}
3075 +exports.warning = warning;
3076 +/**
3077 + * Writes info to log with console.log.
3078 + * @param message info message
3079 + */
3080 +function info(message) {
3081 + process.stdout.write(message + os.EOL);
3082 +}
3083 +exports.info = info;
3084 +/**
3085 + * Begin an output group.
3086 + *
3087 + * Output until the next `groupEnd` will be foldable in this group
3088 + *
3089 + * @param name The name of the output group
3090 + */
3091 +function startGroup(name) {
3092 + command_1.issue('group', name);
3093 +}
3094 +exports.startGroup = startGroup;
3095 +/**
3096 + * End an output group.
3097 + */
3098 +function endGroup() {
3099 + command_1.issue('endgroup');
3100 +}
3101 +exports.endGroup = endGroup;
3102 +/**
3103 + * Wrap an asynchronous function call in a group.
3104 + *
3105 + * Returns the same type as the function itself.
3106 + *
3107 + * @param name The name of the group
3108 + * @param fn The function to wrap in the group
3109 + */
3110 +function group(name, fn) {
3111 + return __awaiter(this, void 0, void 0, function* () {
3112 + startGroup(name);
3113 + let result;
3114 + try {
3115 + result = yield fn();
3116 + }
3117 + finally {
3118 + endGroup();
3119 + }
3120 + return result;
3121 + });
3147 3122 }
3148 −module.exports = diff
3149 −
3150 −
3151 −/***/ }),
3152 −
3153 −/***/ 830:
3154 −/***/ (function(module, __unusedexports, __webpack_require__) {
3155 −
3156 −const {MAX_LENGTH} = __webpack_require__(181)
3157 −const { re, t } = __webpack_require__(976)
3158 −const SemVer = __webpack_require__(65)
3159 −
3160 −const parse = (version, options) => {
3161 − if (!options || typeof options !== 'object') {
3162 − options = {
3163 − loose: !!options,
3164 − includePrerelease: false
3165 − }
3166 − }
3167 −
3168 − if (version instanceof SemVer) {
3169 − return version
3170 − }
3171 −
3172 − if (typeof version !== 'string') {
3173 − return null
3174 − }
3175 −
3176 − if (version.length > MAX_LENGTH) {
3177 − return null
3178 − }
3179 −
3180 − const r = options.loose ? re[t.LOOSE] : re[t.FULL]
3181 − if (!r.test(version)) {
3182 − return null
3183 − }
3184 −
3185 − try {
3186 − return new SemVer(version, options)
3187 − } catch (er) {
3188 − return null
3189 − }
3123 +exports.group = group;
3124 +//-----------------------------------------------------------------------
3125 +// Wrapper action state
3126 +//-----------------------------------------------------------------------
3127 +/**
3128 + * Saves state for current action, the state can only be retrieved by this action's post job execution.
3129 + *
3130 + * @param name name of the state to store
3131 + * @param value value to store. Non-string values will be converted to a string via JSON.stringify
3132 + */
3133 +// eslint-disable-next-line @typescript-eslint/no-explicit-any
3134 +function saveState(name, value) {
3135 + command_1.issueCommand('save-state', { name }, value);
3190 3136 }
3191 −
3192 −module.exports = parse
3193 −
3194 −
3195 −/***/ }),
3196 −
3197 −/***/ 873:
3198 −/***/ (function(module, __unusedexports, __webpack_require__) {
3199 −
3200 −const compare = __webpack_require__(874)
3201 −const neq = (a, b, loose) => compare(a, b, loose) !== 0
3202 −module.exports = neq
3203 −
3137 +exports.saveState = saveState;
3138 +/**
3139 + * Gets the value of an state set by this action's main execution.
3140 + *
3141 + * @param name name of the state to get
3142 + * @returns string
3143 + */
3144 +function getState(name) {
3145 + return process.env[`STATE_${name}`] || '';
3146 +}
3147 +exports.getState = getState;
3148 +//# sourceMappingURL=core.js.map
3204 3149
3205 3150 /***/ }),
3206 3151
3207 −/***/ 874:
3208 −/***/ (function(module, __unusedexports, __webpack_require__) {
3209 −
3210 −const SemVer = __webpack_require__(65)
3211 −const compare = (a, b, loose) =>
3212 − new SemVer(a, loose).compare(new SemVer(b, loose))
3213 −
3214 −module.exports = compare
3152 +/***/ 614:
3153 +/***/ (function(module) {
3215 3154
3155 +module.exports = require("events");
3216 3156
3217 3157 /***/ }),
3218 3158
3219 −/***/ 876:
3220 −/***/ (function(module, __unusedexports, __webpack_require__) {
3221 −
3222 −// just pre-load all the stuff that index.js lazily exports
3223 −const internalRe = __webpack_require__(976)
3224 −module.exports = {
3225 − re: internalRe.re,
3226 − src: internalRe.src,
3227 − tokens: internalRe.t,
3228 − SEMVER_SPEC_VERSION: __webpack_require__(181).SEMVER_SPEC_VERSION,
3229 − SemVer: __webpack_require__(65),
3230 − compareIdentifiers: __webpack_require__(760).compareIdentifiers,
3231 − rcompareIdentifiers: __webpack_require__(760).rcompareIdentifiers,
3232 − parse: __webpack_require__(830),
3233 − valid: __webpack_require__(714),
3234 − clean: __webpack_require__(503),
3235 − inc: __webpack_require__(928),
3236 − diff: __webpack_require__(822),
3237 − major: __webpack_require__(744),
3238 − minor: __webpack_require__(803),
3239 − patch: __webpack_require__(489),
3240 − prerelease: __webpack_require__(968),
3241 − compare: __webpack_require__(874),
3242 − rcompare: __webpack_require__(630),
3243 − compareLoose: __webpack_require__(283),
3244 − compareBuild: __webpack_require__(16),
3245 − sort: __webpack_require__(120),
3246 − rsort: __webpack_require__(593),
3247 − gt: __webpack_require__(486),
3248 − lt: __webpack_require__(586),
3249 − eq: __webpack_require__(298),
3250 − neq: __webpack_require__(873),
3251 − gte: __webpack_require__(167),
3252 − lte: __webpack_require__(898),
3253 − cmp: __webpack_require__(752),
3254 − coerce: __webpack_require__(499),
3255 − Comparator: __webpack_require__(174),
3256 − Range: __webpack_require__(124),
3257 − satisfies: __webpack_require__(310),
3258 − toComparators: __webpack_require__(219),
3259 − maxSatisfying: __webpack_require__(811),
3260 − minSatisfying: __webpack_require__(740),
3261 − minVersion: __webpack_require__(164),
3262 − validRange: __webpack_require__(480),
3263 − outside: __webpack_require__(462),
3264 − gtr: __webpack_require__(531),
3265 − ltr: __webpack_require__(323),
3266 − intersects: __webpack_require__(259),
3267 − simplifyRange: __webpack_require__(877),
3268 − subset: __webpack_require__(999),
3269 −}
3159 +/***/ 622:
3160 +/***/ (function(module) {
3270 3161
3162 +module.exports = require("path");
3271 3163
3272 3164 /***/ }),
3273 3165
3274 −/***/ 877:
3275 −/***/ (function(module, __unusedexports, __webpack_require__) {
3276 −
3277 −// given a set of versions and a range, create a "simplified" range
3278 −// that includes the same versions that the original range does
3279 −// If the original range is shorter than the simplified one, return that.
3280 −const satisfies = __webpack_require__(310)
3281 −const compare = __webpack_require__(874)
3282 −module.exports = (versions, range, options) => {
3283 − const set = []
3284 − let min = null
3285 − let prev = null
3286 − const v = versions.sort((a, b) => compare(a, b, options))
3287 − for (const version of v) {
3288 − const included = satisfies(version, range, options)
3289 − if (included) {
3290 − prev = version
3291 − if (!min)
3292 − min = version
3293 − } else {
3294 − if (prev) {
3295 − set.push([min, prev])
3296 − }
3297 − prev = null
3298 − min = null
3299 − }
3300 − }
3301 − if (min)
3302 − set.push([min, null])
3303 −
3304 − const ranges = []
3305 − for (const [min, max] of set) {
3306 − if (min === max)
3307 − ranges.push(min)
3308 − else if (!max && min === v[0])
3309 − ranges.push('*')
3310 − else if (!max)
3311 − ranges.push(`>=${min}`)
3312 − else if (min === v[0])
3313 − ranges.push(`<=${max}`)
3314 − else
3315 − ranges.push(`${min} - ${max}`)
3316 − }
3317 − const simplified = ranges.join(' || ')
3318 − const original = typeof range.raw === 'string' ? range.raw : String(range)
3319 − return simplified.length < original.length ? simplified : range
3320 −}
3166 +/***/ 669:
3167 +/***/ (function(module) {
3321 3168
3169 +module.exports = require("util");
3322 3170
3323 3171 /***/ }),
3324 3172
3325 −/***/ 898:
3326 −/***/ (function(module, __unusedexports, __webpack_require__) {
3327 −
3328 −const compare = __webpack_require__(874)
3329 −const lte = (a, b, loose) => compare(a, b, loose) <= 0
3330 −module.exports = lte
3173 +/***/ 747:
3174 +/***/ (function(module) {
3331 3175
3176 +module.exports = require("fs");
3332 3177
3333 3178 /***/ }),
3334 3179
@@ -3381,230 +3226,6 @@ function exec(commandLine, args, options) {
3381 3226 exports.exec = exec;
3382 3227 //# sourceMappingURL=exec.js.map
3383 3228
3384 −/***/ }),
3385 −
3386 −/***/ 928:
3387 −/***/ (function(module, __unusedexports, __webpack_require__) {
3388 −
3389 −const SemVer = __webpack_require__(65)
3390 −
3391 −const inc = (version, release, options, identifier) => {
3392 − if (typeof (options) === 'string') {
3393 − identifier = options
3394 − options = undefined
3395 − }
3396 −
3397 − try {
3398 − return new SemVer(version, options).inc(release, identifier).version
3399 − } catch (er) {
3400 − return null
3401 − }
3402 −}
3403 −module.exports = inc
3404 −
3405 −
3406 −/***/ }),
3407 −
3408 −/***/ 968:
3409 −/***/ (function(module, __unusedexports, __webpack_require__) {
3410 −
3411 −const parse = __webpack_require__(830)
3412 −const prerelease = (version, options) => {
3413 − const parsed = parse(version, options)
3414 − return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
3415 −}
3416 −module.exports = prerelease
3417 −
3418 −
3419 −/***/ }),
3420 −
3421 −/***/ 976:
3422 −/***/ (function(module, exports, __webpack_require__) {
3423 −
3424 −const { MAX_SAFE_COMPONENT_LENGTH } = __webpack_require__(181)
3425 −const debug = __webpack_require__(548)
3426 −exports = module.exports = {}
3427 −
3428 −// The actual regexps go on exports.re
3429 −const re = exports.re = []
3430 −const src = exports.src = []
3431 −const t = exports.t = {}
3432 −let R = 0
3433 −
3434 −const createToken = (name, value, isGlobal) => {
3435 − const index = R++
3436 − debug(index, value)
3437 − t[name] = index
3438 − src[index] = value
3439 − re[index] = new RegExp(value, isGlobal ? 'g' : undefined)
3440 −}
3441 −
3442 −// The following Regular Expressions can be used for tokenizing,
3443 −// validating, and parsing SemVer version strings.
3444 −
3445 −// ## Numeric Identifier
3446 −// A single `0`, or a non-zero digit followed by zero or more digits.
3447 −
3448 −createToken('NUMERICIDENTIFIER', '0|[1-9]\\d*')
3449 −createToken('NUMERICIDENTIFIERLOOSE', '[0-9]+')
3450 −
3451 −// ## Non-numeric Identifier
3452 −// Zero or more digits, followed by a letter or hyphen, and then zero or
3453 −// more letters, digits, or hyphens.
3454 −
3455 −createToken('NONNUMERICIDENTIFIER', '\\d*[a-zA-Z-][a-zA-Z0-9-]*')
3456 −
3457 −// ## Main Version
3458 −// Three dot-separated numeric identifiers.
3459 −
3460 −createToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\.` +
3461 − `(${src[t.NUMERICIDENTIFIER]})\\.` +
3462 − `(${src[t.NUMERICIDENTIFIER]})`)
3463 −
3464 −createToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` +
3465 − `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` +
3466 − `(${src[t.NUMERICIDENTIFIERLOOSE]})`)
3467 −
3468 −// ## Pre-release Version Identifier
3469 −// A numeric identifier, or a non-numeric identifier.
3470 −
3471 −createToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]
3472 −}|${src[t.NONNUMERICIDENTIFIER]})`)
3473 −
3474 −createToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE]
3475 −}|${src[t.NONNUMERICIDENTIFIER]})`)
3476 −
3477 −// ## Pre-release Version
3478 −// Hyphen, followed by one or more dot-separated pre-release version
3479 −// identifiers.
3480 −
3481 −createToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]
3482 −}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`)
3483 −
3484 −createToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]
3485 −}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)
3486 −
3487 −// ## Build Metadata Identifier
3488 −// Any combination of digits, letters, or hyphens.
3489 −
3490 −createToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+')
3491 −
3492 −// ## Build Metadata
3493 −// Plus sign, followed by one or more period-separated build metadata
3494 −// identifiers.
3495 −
3496 −createToken('BUILD', `(?:\\+(${src[t.BUILDIDENTIFIER]
3497 −}(?:\\.${src[t.BUILDIDENTIFIER]})*))`)
3498 −
3499 −// ## Full Version String
3500 −// A main version, followed optionally by a pre-release version and
3501 −// build metadata.
3502 −
3503 −// Note that the only major, minor, patch, and pre-release sections of
3504 −// the version string are capturing groups. The build metadata is not a
3505 −// capturing group, because it should not ever be used in version
3506 −// comparison.
3507 −
3508 −createToken('FULLPLAIN', `v?${src[t.MAINVERSION]
3509 −}${src[t.PRERELEASE]}?${
3510 − src[t.BUILD]}?`)
3511 −
3512 −createToken('FULL', `^${src[t.FULLPLAIN]}$`)
3513 −
3514 −// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.
3515 −// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty
3516 −// common in the npm registry.
3517 −createToken('LOOSEPLAIN', `[v=\\s]*${src[t.MAINVERSIONLOOSE]
3518 −}${src[t.PRERELEASELOOSE]}?${
3519 − src[t.BUILD]}?`)
3520 −
3521 −createToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)
3522 −
3523 −createToken('GTLT', '((?:<|>)?=?)')
3524 −
3525 −// Something like "2.*" or "1.2.x".
3526 −// Note that "x.x" is a valid xRange identifer, meaning "any version"
3527 −// Only the first item is strictly required.
3528 −createToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`)
3529 −createToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`)
3530 −
3531 −createToken('XRANGEPLAIN', `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})` +
3532 − `(?:\\.(${src[t.XRANGEIDENTIFIER]})` +
3533 − `(?:\\.(${src[t.XRANGEIDENTIFIER]})` +
3534 − `(?:${src[t.PRERELEASE]})?${
3535 − src[t.BUILD]}?` +
3536 − `)?)?`)
3537 −
3538 −createToken('XRANGEPLAINLOOSE', `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +
3539 − `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +
3540 − `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +
3541 − `(?:${src[t.PRERELEASELOOSE]})?${
3542 − src[t.BUILD]}?` +
3543 − `)?)?`)
3544 −
3545 −createToken('XRANGE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`)
3546 −createToken('XRANGELOOSE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`)
3547 −
3548 −// Coercion.
3549 −// Extract anything that could conceivably be a part of a valid semver
3550 −createToken('COERCE', `${'(^|[^\\d])' +
3551 − '(\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +
3552 − `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +
3553 − `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +
3554 − `(?:$|[^\\d])`)
3555 −createToken('COERCERTL', src[t.COERCE], true)
3556 −
3557 −// Tilde ranges.
3558 −// Meaning is "reasonably at or greater than"
3559 −createToken('LONETILDE', '(?:~>?)')
3560 −
3561 −createToken('TILDETRIM', `(\\s*)${src[t.LONETILDE]}\\s+`, true)
3562 −exports.tildeTrimReplace = '$1~'
3563 −
3564 −createToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)
3565 −createToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)
3566 −
3567 −// Caret ranges.
3568 −// Meaning is "at least and backwards compatible with"
3569 −createToken('LONECARET', '(?:\\^)')
3570 −
3571 −createToken('CARETTRIM', `(\\s*)${src[t.LONECARET]}\\s+`, true)
3572 −exports.caretTrimReplace = '$1^'
3573 −
3574 −createToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)
3575 −createToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)
3576 −
3577 −// A simple gt/lt/eq thing, or just "" to indicate "any version"
3578 −createToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`)
3579 −createToken('COMPARATOR', `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`)
3580 −
3581 −// An expression to strip any whitespace between the gtlt and the thing
3582 −// it modifies, so that `> 1.2.3` ==> `>1.2.3`
3583 −createToken('COMPARATORTRIM', `(\\s*)${src[t.GTLT]
3584 −}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)
3585 −exports.comparatorTrimReplace = '$1$2$3'
3586 −
3587 −// Something like `1.2.3 - 1.2.4`
3588 −// Note that these all use the loose form, because they'll be
3589 −// checked against either the strict or loose comparator form
3590 −// later.
3591 −createToken('HYPHENRANGE', `^\\s*(${src[t.XRANGEPLAIN]})` +
3592 − `\\s+-\\s+` +
3593 − `(${src[t.XRANGEPLAIN]})` +
3594 − `\\s*$`)
3595 −
3596 −createToken('HYPHENRANGELOOSE', `^\\s*(${src[t.XRANGEPLAINLOOSE]})` +
3597 − `\\s+-\\s+` +
3598 − `(${src[t.XRANGEPLAINLOOSE]})` +
3599 − `\\s*$`)
3600 −
3601 −// Star ranges basically just allow anything at all.
3602 −createToken('STAR', '(<|>)?=?\\s*\\*')
3603 −// >=0.0.0 is like a star
3604 −createToken('GTE0', '^\\s*>=\\s*0\.0\.0\\s*$')
3605 −createToken('GTE0PRE', '^\\s*>=\\s*0\.0\.0-0\\s*$')
3606 −
3607 −
3608 3229 /***/ }),
3609 3230
3610 3231 /***/ 986:
@@ -3614,7 +3235,7 @@ const core = __webpack_require__(470)
3614 3235 const {exec} = __webpack_require__(917)
3615 3236 const {installElixir, installOTP} = __webpack_require__(449)
3616 3237 const path = __webpack_require__(622)
3617 −const semver = __webpack_require__(876)
3238 +const semver = __webpack_require__(280)
3618 3239 const https = __webpack_require__(211)
3619 3240 const {
3620 3241 fstat,
@@ -3765,168 +3386,6 @@ function get(url) {
3765 3386 }
3766 3387
3767 3388
3768 −/***/ }),
3769 −
3770 −/***/ 999:
3771 −/***/ (function(module, __unusedexports, __webpack_require__) {
3772 −
3773 −const Range = __webpack_require__(124)
3774 −const { ANY } = __webpack_require__(174)
3775 −const satisfies = __webpack_require__(310)
3776 −const compare = __webpack_require__(874)
3777 −
3778 −// Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff:
3779 −// - Every simple range `r1, r2, ...` is a subset of some `R1, R2, ...`
3780 −//
3781 −// Simple range `c1 c2 ...` is a subset of simple range `C1 C2 ...` iff:
3782 −// - If c is only the ANY comparator
3783 −// - If C is only the ANY comparator, return true
3784 −// - Else return false
3785 −// - Let EQ be the set of = comparators in c
3786 −// - If EQ is more than one, return true (null set)
3787 −// - Let GT be the highest > or >= comparator in c
3788 −// - Let LT be the lowest < or <= comparator in c
3789 −// - If GT and LT, and GT.semver > LT.semver, return true (null set)
3790 −// - If EQ
3791 −// - If GT, and EQ does not satisfy GT, return true (null set)
3792 −// - If LT, and EQ does not satisfy LT, return true (null set)
3793 −// - If EQ satisfies every C, return true
3794 −// - Else return false
3795 −// - If GT
3796 −// - If GT is lower than any > or >= comp in C, return false
3797 −// - If GT is >=, and GT.semver does not satisfy every C, return false
3798 −// - If LT
3799 −// - If LT.semver is greater than that of any > comp in C, return false
3800 −// - If LT is <=, and LT.semver does not satisfy every C, return false
3801 −// - If any C is a = range, and GT or LT are set, return false
3802 −// - Else return true
3803 −
3804 −const subset = (sub, dom, options) => {
3805 − sub = new Range(sub, options)
3806 − dom = new Range(dom, options)
3807 − let sawNonNull = false
3808 −
3809 − OUTER: for (const simpleSub of sub.set) {
3810 − for (const simpleDom of dom.set) {
3811 − const isSub = simpleSubset(simpleSub, simpleDom, options)
3812 − sawNonNull = sawNonNull || isSub !== null
3813 − if (isSub)
3814 − continue OUTER
3815 − }
3816 − // the null set is a subset of everything, but null simple ranges in
3817 − // a complex range should be ignored. so if we saw a non-null range,
3818 − // then we know this isn't a subset, but if EVERY simple range was null,
3819 − // then it is a subset.
3820 − if (sawNonNull)
3821 − return false
3822 − }
3823 − return true
3824 −}
3825 −
3826 −const simpleSubset = (sub, dom, options) => {
3827 − if (sub.length === 1 && sub[0].semver === ANY)
3828 − return dom.length === 1 && dom[0].semver === ANY
3829 −
3830 − const eqSet = new Set()
3831 − let gt, lt
3832 − for (const c of sub) {
3833 − if (c.operator === '>' || c.operator === '>=')
3834 − gt = higherGT(gt, c, options)
3835 − else if (c.operator === '<' || c.operator === '<=')
3836 − lt = lowerLT(lt, c, options)
3837 − else
3838 − eqSet.add(c.semver)
3839 − }
3840 −
3841 − if (eqSet.size > 1)
3842 − return null
3843 −
3844 − let gtltComp
3845 − if (gt && lt) {
3846 − gtltComp = compare(gt.semver, lt.semver, options)
3847 − if (gtltComp > 0)
3848 − return null
3849 − else if (gtltComp === 0 && (gt.operator !== '>=' || lt.operator !== '<='))
3850 − return null
3851 − }
3852 −
3853 − // will iterate one or zero times
3854 − for (const eq of eqSet) {
3855 − if (gt && !satisfies(eq, String(gt), options))
3856 − return null
3857 −
3858 − if (lt && !satisfies(eq, String(lt), options))
3859 − return null
3860 −
3861 − for (const c of dom) {
3862 − if (!satisfies(eq, String(c), options))
3863 − return false
3864 − }
3865 − return true
3866 − }
3867 −
3868 − let higher, lower
3869 − let hasDomLT, hasDomGT
3870 − for (const c of dom) {
3871 − hasDomGT = hasDomGT || c.operator === '>' || c.operator === '>='
3872 − hasDomLT = hasDomLT || c.operator === '<' || c.operator === '<='
3873 − if (gt) {
3874 − if (c.operator === '>' || c.operator === '>=') {
3875 − higher = higherGT(gt, c, options)
3876 − if (higher === c)
3877 − return false
3878 − } else if (gt.operator === '>=' && !satisfies(gt.semver, String(c), options))
3879 − return false
3880 − }
3881 − if (lt) {
3882 − if (c.operator === '<' || c.operator === '<=') {
3883 − lower = lowerLT(lt, c, options)
3884 − if (lower === c)
3885 − return false
3886 − } else if (lt.operator === '<=' && !satisfies(lt.semver, String(c), options))
3887 − return false
3888 − }
3889 − if (!c.operator && (lt || gt) && gtltComp !== 0)
3890 − return false
3891 − }
3892 −
3893 − // if there was a < or >, and nothing in the dom, then must be false
3894 − // UNLESS it was limited by another range in the other direction.
3895 − // Eg, >1.0.0 <1.0.1 is still a subset of <2.0.0
3896 − if (gt && hasDomLT && !lt && gtltComp !== 0)
3897 − return false
3898 −
3899 − if (lt && hasDomGT && !gt && gtltComp !== 0)
3900 − return false
3901 −
3902 − return true
3903 −}
3904 −
3905 −// >=1.2.3 is lower than >1.2.3
3906 −const higherGT = (a, b, options) => {
3907 − if (!a)
3908 − return b
3909 − const comp = compare(a.semver, b.semver, options)
3910 − return comp > 0 ? a
3911 − : comp < 0 ? b
3912 − : b.operator === '>' && a.operator === '>=' ? b
3913 − : a
3914 −}
3915 −
3916 −// <=1.2.3 is higher than <1.2.3
3917 −const lowerLT = (a, b, options) => {
3918 − if (!a)
3919 − return b
3920 − const comp = compare(a.semver, b.semver, options)
3921 − return comp < 0 ? a
3922 − : comp > 0 ? b
3923 − : b.operator === '<' && a.operator === '<=' ? b
3924 − : a
3925 −}
3926 −
3927 −module.exports = subset
3928 −
3929 −
3930 3389 /***/ })
3931 3390
3932 3391 /******/ });
modified package-lock.json
+237 −4888
@@ -68,56 +68,23 @@
68 68 "@babel/highlight": "^7.8.3"
69 69 }
70 70 },
71 − "@babel/core": {
72 − "version": "7.11.6",
73 − "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.6.tgz",
74 − "integrity": "sha512-Wpcv03AGnmkgm6uS6k8iwhIwTrcP0m17TL1n1sy7qD0qelDu4XNeW0dN0mHfa+Gei211yDaLoEe/VlbXQzM4Bg==",
71 + "@babel/helper-validator-identifier": {
72 + "version": "7.9.5",
73 + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz",
74 + "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==",
75 + "dev": true
76 + },
77 + "@babel/highlight": {
78 + "version": "7.9.0",
79 + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz",
80 + "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==",
75 81 "dev": true,
76 82 "requires": {
77 − "@babel/code-frame": "^7.10.4",
78 − "@babel/generator": "^7.11.6",
79 − "@babel/helper-module-transforms": "^7.11.0",
80 − "@babel/helpers": "^7.10.4",
81 − "@babel/parser": "^7.11.5",
82 − "@babel/template": "^7.10.4",
83 − "@babel/traverse": "^7.11.5",
84 − "@babel/types": "^7.11.5",
85 − "convert-source-map": "^1.7.0",
86 − "debug": "^4.1.0",
87 − "gensync": "^1.0.0-beta.1",
88 − "json5": "^2.1.2",
89 − "lodash": "^4.17.19",
90 − "resolve": "^1.3.2",
91 − "semver": "^5.4.1",
92 − "source-map": "^0.5.0"
83 + "@babel/helper-validator-identifier": "^7.9.0",
84 + "chalk": "^2.0.0",
85 + "js-tokens": "^4.0.0"
93 86 },
94 87 "dependencies": {
95 − "@babel/code-frame": {
96 − "version": "7.10.4",
97 − "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
98 − "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
99 − "dev": true,
100 − "requires": {
101 − "@babel/highlight": "^7.10.4"
102 − }
103 − },
104 − "@babel/helper-validator-identifier": {
105 − "version": "7.10.4",
106 − "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz",
107 − "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==",
108 − "dev": true
109 − },
110 − "@babel/highlight": {
111 − "version": "7.10.4",
112 − "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
113 − "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==",
114 − "dev": true,
115 − "requires": {
116 − "@babel/helper-validator-identifier": "^7.10.4",
117 − "chalk": "^2.0.0",
118 − "js-tokens": "^4.0.0"
119 − }
120 − },
121 88 "ansi-styles": {
122 89 "version": "3.2.1",
123 90 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
@@ -159,18 +126,6 @@
159 126 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
160 127 "dev": true
161 128 },
162 − "semver": {
163 − "version": "5.7.1",
164 − "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
165 − "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
166 − "dev": true
167 − },
168 − "source-map": {
169 − "version": "0.5.7",
170 − "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
171 − "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
172 − "dev": true
173 − },
174 129 "supports-color": {
175 130 "version": "5.5.0",
176 131 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
@@ -182,4615 +137,329 @@
182 137 }
183 138 }
184 139 },
185 − "@babel/generator": {
186 − "version": "7.11.6",
187 − "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.6.tgz",
188 − "integrity": "sha512-DWtQ1PV3r+cLbySoHrwn9RWEgKMBLLma4OBQloPRyDYvc5msJM9kvTLo1YnlJd1P/ZuKbdli3ijr5q3FvAF3uA==",
140 + "@babel/runtime": {
141 + "version": "7.9.6",
142 + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.6.tgz",
143 + "integrity": "sha512-64AF1xY3OAkFHqOb9s4jpgk1Mm5vDZ4L3acHvAml+53nO1XbXLuDodsVpO4OIUsmemlUHMxNdYMNJmsvOwLrvQ==",
189 144 "dev": true,
190 145 "requires": {
191 − "@babel/types": "^7.11.5",
192 − "jsesc": "^2.5.1",
193 − "source-map": "^0.5.0"
194 − },
195 − "dependencies": {
196 − "source-map": {
197 − "version": "0.5.7",
198 − "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
199 − "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
200 − "dev": true
201 − }
146 + "regenerator-runtime": "^0.13.4"
202 147 }
203 148 },
204 − "@babel/helper-function-name": {
205 − "version": "7.10.4",
206 − "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz",
207 − "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==",
208 − "dev": true,
209 − "requires": {
210 − "@babel/helper-get-function-arity": "^7.10.4",
211 − "@babel/template": "^7.10.4",
212 − "@babel/types": "^7.10.4"
213 − }
149 + "@types/color-name": {
150 + "version": "1.1.1",
151 + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
152 + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
153 + "dev": true
214 154 },
215 − "@babel/helper-get-function-arity": {
216 − "version": "7.10.4",
217 − "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz",
218 − "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==",
219 − "dev": true,
220 − "requires": {
221 − "@babel/types": "^7.10.4"
222 − }
155 + "@types/parse-json": {
156 + "version": "4.0.0",
157 + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
158 + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==",
159 + "dev": true
223 160 },
224 − "@babel/helper-member-expression-to-functions": {
225 − "version": "7.11.0",
226 − "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz",
227 − "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==",
228 − "dev": true,
229 − "requires": {
230 − "@babel/types": "^7.11.0"
231 − }
161 + "@zeit/ncc": {
162 + "version": "0.22.1",
163 + "resolved": "https://registry.npmjs.org/@zeit/ncc/-/ncc-0.22.1.tgz",
164 + "integrity": "sha512-Qq3bMuonkcnV/96jhy9SQYdh39NXHxNMJ1O31ZFzWG9n52fR2DLtgrNzhj/ahlEjnBziMLGVWDbaS9sf03/fEw==",
165 + "dev": true
232 166 },
233 − "@babel/helper-module-imports": {
234 − "version": "7.10.4",
235 − "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz",
236 − "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==",
167 + "ansi-styles": {
168 + "version": "4.2.1",
169 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
170 + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
237 171 "dev": true,
238 172 "requires": {
239 − "@babel/types": "^7.10.4"
173 + "@types/color-name": "^1.1.1",
174 + "color-convert": "^2.0.1"
240 175 }
241 176 },
242 − "@babel/helper-module-transforms": {
243 − "version": "7.11.0",
244 − "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz",
245 − "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==",
246 − "dev": true,
247 − "requires": {
248 − "@babel/helper-module-imports": "^7.10.4",
249 − "@babel/helper-replace-supers": "^7.10.4",
250 − "@babel/helper-simple-access": "^7.10.4",
251 − "@babel/helper-split-export-declaration": "^7.11.0",
252 − "@babel/template": "^7.10.4",
253 − "@babel/types": "^7.11.0",
254 − "lodash": "^4.17.19"
255 − }
177 + "callsites": {
178 + "version": "3.1.0",
179 + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
180 + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
181 + "dev": true
256 182 },
257 − "@babel/helper-optimise-call-expression": {
258 − "version": "7.10.4",
259 − "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz",
260 − "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==",
183 + "chalk": {
184 + "version": "4.0.0",
185 + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz",
186 + "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==",
261 187 "dev": true,
262 188 "requires": {
263 − "@babel/types": "^7.10.4"
189 + "ansi-styles": "^4.1.0",
190 + "supports-color": "^7.1.0"
264 191 }
265 192 },
266 − "@babel/helper-plugin-utils": {
267 − "version": "7.10.4",
268 − "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz",
269 − "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==",
193 + "ci-info": {
194 + "version": "2.0.0",
195 + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
196 + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
270 197 "dev": true
271 198 },
272 − "@babel/helper-replace-supers": {
273 − "version": "7.10.4",
274 − "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz",
275 − "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==",
199 + "color-convert": {
200 + "version": "2.0.1",
201 + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
202 + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
276 203 "dev": true,
277 204 "requires": {
278 − "@babel/helper-member-expression-to-functions": "^7.10.4",
279 − "@babel/helper-optimise-call-expression": "^7.10.4",
280 − "@babel/traverse": "^7.10.4",
281 − "@babel/types": "^7.10.4"
205 + "color-name": "~1.1.4"
282 206 }
283 207 },
284 − "@babel/helper-simple-access": {
285 − "version": "7.10.4",
286 − "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz",
287 − "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==",
208 + "color-name": {
209 + "version": "1.1.4",
210 + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
211 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
212 + "dev": true
213 + },
214 + "compare-versions": {
215 + "version": "3.6.0",
216 + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz",
217 + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==",
218 + "dev": true
219 + },
220 + "cosmiconfig": {
221 + "version": "6.0.0",
222 + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
223 + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
288 224 "dev": true,
289 225 "requires": {
290 − "@babel/template": "^7.10.4",
291 − "@babel/types": "^7.10.4"
226 + "@types/parse-json": "^4.0.0",
227 + "import-fresh": "^3.1.0",
228 + "parse-json": "^5.0.0",
229 + "path-type": "^4.0.0",
230 + "yaml": "^1.7.2"
292 231 }
293 232 },
294 − "@babel/helper-split-export-declaration": {
295 − "version": "7.11.0",
296 − "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz",
297 − "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==",
233 + "error-ex": {
234 + "version": "1.3.2",
235 + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
236 + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
298 237 "dev": true,
299 238 "requires": {
300 − "@babel/types": "^7.11.0"
239 + "is-arrayish": "^0.2.1"
301 240 }
302 241 },
303 − "@babel/helper-validator-identifier": {
304 − "version": "7.9.5",
305 − "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz",
306 − "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==",
242 + "escape-string-regexp": {
243 + "version": "1.0.5",
244 + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
245 + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
307 246 "dev": true
308 247 },
309 − "@babel/helpers": {
310 − "version": "7.10.4",
311 − "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz",
312 − "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==",
248 + "find-up": {
249 + "version": "4.1.0",
250 + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
251 + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
313 252 "dev": true,
314 253 "requires": {
315 − "@babel/template": "^7.10.4",
316 − "@babel/traverse": "^7.10.4",
317 − "@babel/types": "^7.10.4"
254 + "locate-path": "^5.0.0",
255 + "path-exists": "^4.0.0"
318 256 }
319 257 },
320 − "@babel/highlight": {
321 − "version": "7.9.0",
322 − "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz",
323 − "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==",
258 + "find-versions": {
259 + "version": "3.2.0",
260 + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz",
261 + "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==",
324 262 "dev": true,
325 263 "requires": {
326 − "@babel/helper-validator-identifier": "^7.9.0",
327 − "chalk": "^2.0.0",
328 − "js-tokens": "^4.0.0"
329 − },
330 − "dependencies": {
331 − "ansi-styles": {
332 − "version": "3.2.1",
333 − "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
334 − "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
335 − "dev": true,
336 − "requires": {
337 − "color-convert": "^1.9.0"
338 − }
339 − },
340 − "chalk": {
341 − "version": "2.4.2",
342 − "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
343 − "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
344 − "dev": true,
345 − "requires": {
346 − "ansi-styles": "^3.2.1",
347 − "escape-string-regexp": "^1.0.5",
348 − "supports-color": "^5.3.0"
349 − }
350 − },
351 − "color-convert": {
352 − "version": "1.9.3",
353 − "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
354 − "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
355 − "dev": true,
356 − "requires": {
357 − "color-name": "1.1.3"
358 − }
359 − },
360 − "color-name": {
361 − "version": "1.1.3",
362 − "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
363 − "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
364 − "dev": true
365 − },
366 − "has-flag": {
367 − "version": "3.0.0",
368 − "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
369 − "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
370 − "dev": true
371 − },
372 − "supports-color": {
373 − "version": "5.5.0",
374 − "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
375 − "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
376 − "dev": true,
377 − "requires": {
378 − "has-flag": "^3.0.0"
379 − }
380 − }
264 + "semver-regex": "^2.0.0"
381 265 }
382 266 },
383 − "@babel/parser": {
384 − "version": "7.11.5",
385 − "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.5.tgz",
386 − "integrity": "sha512-X9rD8qqm695vgmeaQ4fvz/o3+Wk4ZzQvSHkDBgpYKxpD4qTAUm88ZKtHkVqIOsYFFbIQ6wQYhC6q7pjqVK0E0Q==",
267 + "has-flag": {
268 + "version": "4.0.0",
269 + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
270 + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
387 271 "dev": true
388 272 },
389 − "@babel/plugin-syntax-async-generators": {
390 − "version": "7.8.4",
391 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
392 − "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
273 + "husky": {
274 + "version": "4.2.5",
275 + "resolved": "https://registry.npmjs.org/husky/-/husky-4.2.5.tgz",
276 + "integrity": "sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ==",
393 277 "dev": true,
394 278 "requires": {
395 − "@babel/helper-plugin-utils": "^7.8.0"
279 + "chalk": "^4.0.0",
280 + "ci-info": "^2.0.0",
281 + "compare-versions": "^3.6.0",
282 + "cosmiconfig": "^6.0.0",
283 + "find-versions": "^3.2.0",
284 + "opencollective-postinstall": "^2.0.2",
285 + "pkg-dir": "^4.2.0",
286 + "please-upgrade-node": "^3.2.0",
287 + "slash": "^3.0.0",
288 + "which-pm-runs": "^1.0.0"
396 289 }
397 290 },
398 − "@babel/plugin-syntax-bigint": {
399 − "version": "7.8.3",
400 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
401 − "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
291 + "import-fresh": {
292 + "version": "3.2.1",
293 + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
294 + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
402 295 "dev": true,
403 296 "requires": {
404 − "@babel/helper-plugin-utils": "^7.8.0"
297 + "parent-module": "^1.0.0",
298 + "resolve-from": "^4.0.0"
405 299 }
406 300 },
407 − "@babel/plugin-syntax-class-properties": {
408 − "version": "7.10.4",
409 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz",
410 − "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==",
411 − "dev": true,
412 − "requires": {
413 − "@babel/helper-plugin-utils": "^7.10.4"
414 − }
301 + "is-arrayish": {
302 + "version": "0.2.1",
303 + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
304 + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
305 + "dev": true
415 306 },
416 − "@babel/plugin-syntax-import-meta": {
417 − "version": "7.10.4",
418 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
419 − "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
420 − "dev": true,
421 − "requires": {
422 − "@babel/helper-plugin-utils": "^7.10.4"
423 − }
307 + "js-tokens": {
308 + "version": "4.0.0",
309 + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
310 + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
311 + "dev": true
424 312 },
425 − "@babel/plugin-syntax-json-strings": {
426 − "version": "7.8.3",
427 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
428 − "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
429 − "dev": true,
430 − "requires": {
431 − "@babel/helper-plugin-utils": "^7.8.0"
432 − }
313 + "json-parse-better-errors": {
314 + "version": "1.0.2",
315 + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
316 + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
317 + "dev": true
318 + },
319 + "lines-and-columns": {
320 + "version": "1.1.6",
321 + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz",
322 + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
323 + "dev": true
433 324 },
434 − "@babel/plugin-syntax-logical-assignment-operators": {
435 − "version": "7.10.4",
436 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
437 − "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
325 + "locate-path": {
326 + "version": "5.0.0",
327 + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
328 + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
438 329 "dev": true,
439 330 "requires": {
440 − "@babel/helper-plugin-utils": "^7.10.4"
331 + "p-locate": "^4.1.0"
441 332 }
442 333 },
443 − "@babel/plugin-syntax-nullish-coalescing-operator": {
444 − "version": "7.8.3",
445 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
446 − "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
447 − "dev": true,
448 − "requires": {
449 − "@babel/helper-plugin-utils": "^7.8.0"
450 − }
451 − },
452 − "@babel/plugin-syntax-numeric-separator": {
453 − "version": "7.10.4",
454 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
455 − "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
456 − "dev": true,
457 − "requires": {
458 − "@babel/helper-plugin-utils": "^7.10.4"
459 − }
460 − },
461 − "@babel/plugin-syntax-object-rest-spread": {
462 − "version": "7.8.3",
463 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
464 − "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
465 − "dev": true,
466 − "requires": {
467 − "@babel/helper-plugin-utils": "^7.8.0"
468 − }
469 − },
470 − "@babel/plugin-syntax-optional-catch-binding": {
471 − "version": "7.8.3",
472 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
473 − "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
474 − "dev": true,
475 − "requires": {
476 − "@babel/helper-plugin-utils": "^7.8.0"
477 − }
478 − },
479 − "@babel/plugin-syntax-optional-chaining": {
480 − "version": "7.8.3",
481 − "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
482 − "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
483 − "dev": true,
484 − "requires": {
485 − "@babel/helper-plugin-utils": "^7.8.0"
486 − }
487 − },
488 − "@babel/runtime": {
489 − "version": "7.9.6",
490 − "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.6.tgz",
491 − "integrity": "sha512-64AF1xY3OAkFHqOb9s4jpgk1Mm5vDZ4L3acHvAml+53nO1XbXLuDodsVpO4OIUsmemlUHMxNdYMNJmsvOwLrvQ==",
492 − "dev": true,
493 − "requires": {
494 − "regenerator-runtime": "^0.13.4"
495 − }
496 − },
497 − "@babel/template": {
498 − "version": "7.10.4",
499 − "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz",
500 − "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==",
501 − "dev": true,
502 − "requires": {
503 − "@babel/code-frame": "^7.10.4",
504 − "@babel/parser": "^7.10.4",
505 − "@babel/types": "^7.10.4"
506 − },
507 − "dependencies": {
508 − "@babel/code-frame": {
509 − "version": "7.10.4",
510 − "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
511 − "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
512 − "dev": true,
513 − "requires": {
514 − "@babel/highlight": "^7.10.4"
515 − }
516 − },
517 − "@babel/helper-validator-identifier": {
518 − "version": "7.10.4",
519 − "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz",
520 − "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==",
521 − "dev": true
522 − },
523 − "@babel/highlight": {
524 − "version": "7.10.4",
525 − "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
526 − "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==",
527 − "dev": true,
528 − "requires": {
529 − "@babel/helper-validator-identifier": "^7.10.4",
530 − "chalk": "^2.0.0",
531 − "js-tokens": "^4.0.0"
532 − }
533 − },
534 − "ansi-styles": {
535 − "version": "3.2.1",
536 − "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
537 − "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
538 − "dev": true,
539 − "requires": {
540 − "color-convert": "^1.9.0"
541 − }
542 − },
543 − "chalk": {
544 − "version": "2.4.2",
545 − "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
546 − "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
547 − "dev": true,
548 − "requires": {
549 − "ansi-styles": "^3.2.1",
550 − "escape-string-regexp": "^1.0.5",
551 − "supports-color": "^5.3.0"
552 − }
553 − },
554 − "color-convert": {
555 − "version": "1.9.3",
556 − "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
557 − "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
558 − "dev": true,
559 − "requires": {
560 − "color-name": "1.1.3"
561 − }
562 − },
563 − "color-name": {
564 − "version": "1.1.3",
565 − "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
566 − "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
567 − "dev": true
568 − },
569 − "has-flag": {
570 − "version": "3.0.0",
571 − "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
572 − "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
573 − "dev": true
574 − },
575 − "supports-color": {
576 − "version": "5.5.0",
577 − "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
578 − "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
579 − "dev": true,
580 − "requires": {
581 − "has-flag": "^3.0.0"
582 − }
583 − }
584 − }
585 − },
586 − "@babel/traverse": {
587 − "version": "7.11.5",
588 − "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.5.tgz",
589 − "integrity": "sha512-EjiPXt+r7LiCZXEfRpSJd+jUMnBd4/9OUv7Nx3+0u9+eimMwJmG0Q98lw4/289JCoxSE8OolDMNZaaF/JZ69WQ==",
590 − "dev": true,
591 − "requires": {
592 − "@babel/code-frame": "^7.10.4",
593 − "@babel/generator": "^7.11.5",
594 − "@babel/helper-function-name": "^7.10.4",
595 − "@babel/helper-split-export-declaration": "^7.11.0",
596 − "@babel/parser": "^7.11.5",
597 − "@babel/types": "^7.11.5",
598 − "debug": "^4.1.0",
599 − "globals": "^11.1.0",
600 − "lodash": "^4.17.19"
601 − },
602 − "dependencies": {
603 − "@babel/code-frame": {
604 − "version": "7.10.4",
605 − "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
606 − "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
607 − "dev": true,
608 − "requires": {
609 − "@babel/highlight": "^7.10.4"
610 − }
611 − },
612 − "@babel/helper-validator-identifier": {
613 − "version": "7.10.4",
614 − "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz",
615 − "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==",
616 − "dev": true
617 − },
618 − "@babel/highlight": {
619 − "version": "7.10.4",
620 − "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
621 − "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==",
622 − "dev": true,
623 − "requires": {
624 − "@babel/helper-validator-identifier": "^7.10.4",
625 − "chalk": "^2.0.0",
626 − "js-tokens": "^4.0.0"
627 − }
628 − },
629 − "ansi-styles": {
630 − "version": "3.2.1",
631 − "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
632 − "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
633 − "dev": true,
634 − "requires": {
635 − "color-convert": "^1.9.0"
636 − }
637 − },
638 − "chalk": {
639 − "version": "2.4.2",
640 − "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
641 − "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
642 − "dev": true,
643 − "requires": {
644 − "ansi-styles": "^3.2.1",
645 − "escape-string-regexp": "^1.0.5",
646 − "supports-color": "^5.3.0"
647 − }
648 − },
649 − "color-convert": {
650 − "version": "1.9.3",
651 − "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
652 − "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
653 − "dev": true,
654 − "requires": {
655 − "color-name": "1.1.3"
656 − }
657 − },
658 − "color-name": {
659 − "version": "1.1.3",
660 − "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
661 − "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
662 − "dev": true
663 − },
664 − "has-flag": {
665 − "version": "3.0.0",
666 − "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
667 − "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
668 − "dev": true
669 − },
670 − "supports-color": {
671 − "version": "5.5.0",
672 − "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
673 − "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
674 − "dev": true,
675 − "requires": {
676 − "has-flag": "^3.0.0"
677 − }
678 − }
679 − }
680 − },
681 − "@babel/types": {
682 − "version": "7.11.5",
683 − "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.5.tgz",
684 − "integrity": "sha512-bvM7Qz6eKnJVFIn+1LPtjlBFPVN5jNDc1XmN15vWe7Q3DPBufWWsLiIvUu7xW87uTG6QoggpIDnUgLQvPheU+Q==",
685 − "dev": true,
686 − "requires": {
687 − "@babel/helper-validator-identifier": "^7.10.4",
688 − "lodash": "^4.17.19",
689 − "to-fast-properties": "^2.0.0"
690 − },
691 − "dependencies": {
692 − "@babel/helper-validator-identifier": {
693 − "version": "7.10.4",
694 − "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz",
695 − "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==",
696 − "dev": true
697 − }
698 − }
699 − },
700 − "@bcoe/v8-coverage": {
701 − "version": "0.2.3",
702 − "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
703 − "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
704 − "dev": true
705 − },
706 − "@cnakazawa/watch": {
707 − "version": "1.0.4",
708 − "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz",
709 − "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==",
710 − "dev": true,
711 − "requires": {
712 − "exec-sh": "^0.3.2",
713 − "minimist": "^1.2.0"
714 − }
715 − },
716 − "@istanbuljs/load-nyc-config": {
717 − "version": "1.1.0",
718 − "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
719 − "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
720 − "dev": true,
721 − "requires": {
722 − "camelcase": "^5.3.1",
723 − "find-up": "^4.1.0",
724 − "get-package-type": "^0.1.0",
725 − "js-yaml": "^3.13.1",
726 − "resolve-from": "^5.0.0"
727 − },
728 − "dependencies": {
729 − "resolve-from": {
730 − "version": "5.0.0",
731 − "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
732 − "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
733 − "dev": true
734 − }
735 − }
736 − },
737 − "@istanbuljs/schema": {
738 − "version": "0.1.2",
739 − "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz",
740 − "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==",
741 − "dev": true
742 − },
743 − "@jest/console": {
744 − "version": "26.3.0",
745 − "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.3.0.tgz",
746 − "integrity": "sha512-/5Pn6sJev0nPUcAdpJHMVIsA8sKizL2ZkcKPE5+dJrCccks7tcM7c9wbgHudBJbxXLoTbqsHkG1Dofoem4F09w==",
747 − "dev": true,
748 − "requires": {
749 − "@jest/types": "^26.3.0",
750 − "@types/node": "*",
751 − "chalk": "^4.0.0",
752 − "jest-message-util": "^26.3.0",
753 − "jest-util": "^26.3.0",
754 − "slash": "^3.0.0"
755 − }
756 − },
757 − "@jest/core": {
758 − "version": "26.4.2",
759 − "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.4.2.tgz",
760 − "integrity": "sha512-sDva7YkeNprxJfepOctzS8cAk9TOekldh+5FhVuXS40+94SHbiicRO1VV2tSoRtgIo+POs/Cdyf8p76vPTd6dg==",
761 − "dev": true,
762 − "requires": {
763 − "@jest/console": "^26.3.0",
764 − "@jest/reporters": "^26.4.1",
765 − "@jest/test-result": "^26.3.0",
766 − "@jest/transform": "^26.3.0",
767 − "@jest/types": "^26.3.0",
768 − "@types/node": "*",
769 − "ansi-escapes": "^4.2.1",
770 − "chalk": "^4.0.0",
771 − "exit": "^0.1.2",
772 − "graceful-fs": "^4.2.4",
773 − "jest-changed-files": "^26.3.0",
774 − "jest-config": "^26.4.2",
775 − "jest-haste-map": "^26.3.0",
776 − "jest-message-util": "^26.3.0",
777 − "jest-regex-util": "^26.0.0",
778 − "jest-resolve": "^26.4.0",
779 − "jest-resolve-dependencies": "^26.4.2",
780 − "jest-runner": "^26.4.2",
781 − "jest-runtime": "^26.4.2",
782 − "jest-snapshot": "^26.4.2",
783 − "jest-util": "^26.3.0",
784 − "jest-validate": "^26.4.2",
785 − "jest-watcher": "^26.3.0",
786 − "micromatch": "^4.0.2",
787 − "p-each-series": "^2.1.0",
788 − "rimraf": "^3.0.0",
789 − "slash": "^3.0.0",
790 − "strip-ansi": "^6.0.0"
791 − }
792 − },
793 − "@jest/environment": {
794 − "version": "26.3.0",
795 − "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.3.0.tgz",
796 − "integrity": "sha512-EW+MFEo0DGHahf83RAaiqQx688qpXgl99wdb8Fy67ybyzHwR1a58LHcO376xQJHfmoXTu89M09dH3J509cx2AA==",
797 − "dev": true,
798 − "requires": {
799 − "@jest/fake-timers": "^26.3.0",
800 − "@jest/types": "^26.3.0",
801 − "@types/node": "*",
802 − "jest-mock": "^26.3.0"
803 − }
804 − },
805 − "@jest/fake-timers": {
806 − "version": "26.3.0",
807 − "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.3.0.tgz",
808 − "integrity": "sha512-ZL9ytUiRwVP8ujfRepffokBvD2KbxbqMhrXSBhSdAhISCw3gOkuntisiSFv+A6HN0n0fF4cxzICEKZENLmW+1A==",
809 − "dev": true,
810 − "requires": {
811 − "@jest/types": "^26.3.0",
812 − "@sinonjs/fake-timers": "^6.0.1",
813 − "@types/node": "*",
814 − "jest-message-util": "^26.3.0",
815 − "jest-mock": "^26.3.0",
816 − "jest-util": "^26.3.0"
817 − }
818 − },
819 − "@jest/globals": {
820 − "version": "26.4.2",
821 − "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.4.2.tgz",
822 − "integrity": "sha512-Ot5ouAlehhHLRhc+sDz2/9bmNv9p5ZWZ9LE1pXGGTCXBasmi5jnYjlgYcYt03FBwLmZXCZ7GrL29c33/XRQiow==",
823 − "dev": true,
824 − "requires": {
825 − "@jest/environment": "^26.3.0",
826 − "@jest/types": "^26.3.0",
827 − "expect": "^26.4.2"
828 − }
829 − },
830 − "@jest/reporters": {
831 − "version": "26.4.1",
832 − "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.4.1.tgz",
833 − "integrity": "sha512-aROTkCLU8++yiRGVxLsuDmZsQEKO6LprlrxtAuzvtpbIFl3eIjgIf3EUxDKgomkS25R9ZzwGEdB5weCcBZlrpQ==",
834 − "dev": true,
835 − "requires": {
836 − "@bcoe/v8-coverage": "^0.2.3",
837 − "@jest/console": "^26.3.0",
838 − "@jest/test-result": "^26.3.0",
839 − "@jest/transform": "^26.3.0",
840 − "@jest/types": "^26.3.0",
841 − "chalk": "^4.0.0",
842 − "collect-v8-coverage": "^1.0.0",
843 − "exit": "^0.1.2",
844 − "glob": "^7.1.2",
845 − "graceful-fs": "^4.2.4",
846 − "istanbul-lib-coverage": "^3.0.0",
847 − "istanbul-lib-instrument": "^4.0.3",
848 − "istanbul-lib-report": "^3.0.0",
849 − "istanbul-lib-source-maps": "^4.0.0",
850 − "istanbul-reports": "^3.0.2",
851 − "jest-haste-map": "^26.3.0",
852 − "jest-resolve": "^26.4.0",
853 − "jest-util": "^26.3.0",
854 − "jest-worker": "^26.3.0",
855 − "node-notifier": "^8.0.0",
856 − "slash": "^3.0.0",
857 − "source-map": "^0.6.0",
858 − "string-length": "^4.0.1",
859 − "terminal-link": "^2.0.0",
860 − "v8-to-istanbul": "^5.0.1"
861 − }
862 − },
863 − "@jest/source-map": {
864 − "version": "26.3.0",
865 − "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.3.0.tgz",
866 − "integrity": "sha512-hWX5IHmMDWe1kyrKl7IhFwqOuAreIwHhbe44+XH2ZRHjrKIh0LO5eLQ/vxHFeAfRwJapmxuqlGAEYLadDq6ZGQ==",
867 − "dev": true,
868 − "requires": {
869 − "callsites": "^3.0.0",
870 − "graceful-fs": "^4.2.4",
871 − "source-map": "^0.6.0"
872 − }
873 − },
874 − "@jest/test-result": {
875 − "version": "26.3.0",
876 − "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.3.0.tgz",
877 − "integrity": "sha512-a8rbLqzW/q7HWheFVMtghXV79Xk+GWwOK1FrtimpI5n1la2SY0qHri3/b0/1F0Ve0/yJmV8pEhxDfVwiUBGtgg==",
878 − "dev": true,
879 − "requires": {
880 − "@jest/console": "^26.3.0",
881 − "@jest/types": "^26.3.0",
882 − "@types/istanbul-lib-coverage": "^2.0.0",
883 − "collect-v8-coverage": "^1.0.0"
884 − }
885 − },
886 − "@jest/test-sequencer": {
887 − "version": "26.4.2",
888 − "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.4.2.tgz",
889 − "integrity": "sha512-83DRD8N3M0tOhz9h0bn6Kl6dSp+US6DazuVF8J9m21WAp5x7CqSMaNycMP0aemC/SH/pDQQddbsfHRTBXVUgog==",
890 − "dev": true,
891 − "requires": {
892 − "@jest/test-result": "^26.3.0",
893 − "graceful-fs": "^4.2.4",
894 − "jest-haste-map": "^26.3.0",
895 − "jest-runner": "^26.4.2",
896 − "jest-runtime": "^26.4.2"
897 − }
898 − },
899 − "@jest/transform": {
900 − "version": "26.3.0",
901 − "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.3.0.tgz",
902 − "integrity": "sha512-Isj6NB68QorGoFWvcOjlUhpkT56PqNIsXKR7XfvoDlCANn/IANlh8DrKAA2l2JKC3yWSMH5wS0GwuQM20w3b2A==",
903 − "dev": true,
904 − "requires": {
905 − "@babel/core": "^7.1.0",
906 − "@jest/types": "^26.3.0",
907 − "babel-plugin-istanbul": "^6.0.0",
908 − "chalk": "^4.0.0",
909 − "convert-source-map": "^1.4.0",
910 − "fast-json-stable-stringify": "^2.0.0",
911 − "graceful-fs": "^4.2.4",
912 − "jest-haste-map": "^26.3.0",
913 − "jest-regex-util": "^26.0.0",
914 − "jest-util": "^26.3.0",
915 − "micromatch": "^4.0.2",
916 − "pirates": "^4.0.1",
917 − "slash": "^3.0.0",
918 − "source-map": "^0.6.1",
919 − "write-file-atomic": "^3.0.0"
920 − }
921 − },
922 − "@jest/types": {
923 − "version": "26.3.0",
924 − "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.3.0.tgz",
925 − "integrity": "sha512-BDPG23U0qDeAvU4f99haztXwdAg3hz4El95LkAM+tHAqqhiVzRpEGHHU8EDxT/AnxOrA65YjLBwDahdJ9pTLJQ==",
926 − "dev": true,
927 − "requires": {
928 − "@types/istanbul-lib-coverage": "^2.0.0",
929 − "@types/istanbul-reports": "^3.0.0",
930 − "@types/node": "*",
931 − "@types/yargs": "^15.0.0",
932 − "chalk": "^4.0.0"
933 − }
934 − },
935 − "@sinonjs/commons": {
936 − "version": "1.8.1",
937 − "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz",
938 − "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==",
939 − "dev": true,
940 − "requires": {
941 − "type-detect": "4.0.8"
942 − }
943 − },
944 − "@sinonjs/fake-timers": {
945 − "version": "6.0.1",
946 − "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz",
947 − "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==",
948 − "dev": true,
949 − "requires": {
950 − "@sinonjs/commons": "^1.7.0"
951 − }
952 − },
953 − "@types/babel__core": {
954 − "version": "7.1.9",
955 − "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.9.tgz",
956 − "integrity": "sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw==",
957 − "dev": true,
958 − "requires": {
959 − "@babel/parser": "^7.1.0",
960 − "@babel/types": "^7.0.0",
961 − "@types/babel__generator": "*",
962 − "@types/babel__template": "*",
963 − "@types/babel__traverse": "*"
964 − }
965 − },
966 − "@types/babel__generator": {
967 − "version": "7.6.1",
968 − "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz",
969 − "integrity": "sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==",
970 − "dev": true,
971 − "requires": {
972 − "@babel/types": "^7.0.0"
973 − }
974 − },
975 − "@types/babel__template": {
976 − "version": "7.0.2",
977 − "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz",
978 − "integrity": "sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==",
979 − "dev": true,
980 − "requires": {
981 − "@babel/parser": "^7.1.0",
982 − "@babel/types": "^7.0.0"
983 − }
984 − },
985 − "@types/babel__traverse": {
986 − "version": "7.0.14",
987 − "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.14.tgz",
988 − "integrity": "sha512-8w9szzKs14ZtBVuP6Wn7nMLRJ0D6dfB0VEBEyRgxrZ/Ln49aNMykrghM2FaNn4FJRzNppCSa0Rv9pBRM5Xc3wg==",
989 − "dev": true,
990 − "requires": {
991 − "@babel/types": "^7.3.0"
992 − }
993 − },
994 − "@types/color-name": {
995 − "version": "1.1.1",
996 − "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
997 − "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
998 − "dev": true
999 − },
1000 − "@types/graceful-fs": {
1001 − "version": "4.1.3",
1002 − "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.3.tgz",
1003 − "integrity": "sha512-AiHRaEB50LQg0pZmm659vNBb9f4SJ0qrAnteuzhSeAUcJKxoYgEnprg/83kppCnc2zvtCKbdZry1a5pVY3lOTQ==",
1004 − "dev": true,
1005 − "requires": {
1006 − "@types/node": "*"
1007 − }
1008 − },
1009 − "@types/istanbul-lib-coverage": {
1010 − "version": "2.0.3",
1011 − "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz",
1012 − "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==",
1013 − "dev": true
1014 − },
1015 − "@types/istanbul-lib-report": {
1016 − "version": "3.0.0",
1017 − "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
1018 − "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
1019 − "dev": true,
1020 − "requires": {
1021 − "@types/istanbul-lib-coverage": "*"
1022 − }
1023 − },
1024 − "@types/istanbul-reports": {
1025 − "version": "3.0.0",
1026 − "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz",
1027 − "integrity": "sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==",
1028 − "dev": true,
1029 − "requires": {
1030 − "@types/istanbul-lib-report": "*"
1031 − }
1032 − },
1033 − "@types/node": {
1034 − "version": "14.10.2",
1035 − "resolved": "https://registry.npmjs.org/@types/node/-/node-14.10.2.tgz",
1036 − "integrity": "sha512-IzMhbDYCpv26pC2wboJ4MMOa9GKtjplXfcAqrMeNJpUUwpM/2ATt2w1JPUXwS6spu856TvKZL2AOmeU2rAxskw==",
1037 − "dev": true
1038 − },
1039 − "@types/normalize-package-data": {
1040 − "version": "2.4.0",
1041 − "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
1042 − "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==",
1043 − "dev": true
1044 − },
1045 − "@types/parse-json": {
1046 − "version": "4.0.0",
1047 − "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
1048 − "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==",
1049 − "dev": true
1050 − },
1051 − "@types/prettier": {
1052 − "version": "2.1.1",
1053 − "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.1.1.tgz",
1054 − "integrity": "sha512-2zs+O+UkDsJ1Vcp667pd3f8xearMdopz/z54i99wtRDI5KLmngk7vlrYZD0ZjKHaROR03EznlBbVY9PfAEyJIQ==",
1055 − "dev": true
1056 − },
1057 − "@types/stack-utils": {
1058 − "version": "1.0.1",
1059 − "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz",
1060 − "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==",
1061 − "dev": true
1062 − },
1063 − "@types/yargs": {
1064 − "version": "15.0.5",
1065 − "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.5.tgz",
1066 − "integrity": "sha512-Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w==",
1067 − "dev": true,
1068 − "requires": {
1069 − "@types/yargs-parser": "*"
1070 − }
1071 − },
1072 − "@types/yargs-parser": {
1073 − "version": "15.0.0",
1074 − "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz",
1075 − "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==",
1076 − "dev": true
1077 − },
1078 − "@zeit/ncc": {
1079 − "version": "0.22.1",
1080 − "resolved": "https://registry.npmjs.org/@zeit/ncc/-/ncc-0.22.1.tgz",
1081 − "integrity": "sha512-Qq3bMuonkcnV/96jhy9SQYdh39NXHxNMJ1O31ZFzWG9n52fR2DLtgrNzhj/ahlEjnBziMLGVWDbaS9sf03/fEw==",
1082 − "dev": true
1083 − },
1084 − "abab": {
1085 − "version": "2.0.5",
1086 − "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz",
1087 − "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==",
1088 − "dev": true
1089 − },
1090 − "acorn": {
1091 − "version": "7.4.0",
1092 − "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
1093 − "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
1094 − "dev": true
1095 − },
1096 − "acorn-globals": {
1097 − "version": "6.0.0",
1098 − "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz",
1099 − "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==",
1100 − "dev": true,
1101 − "requires": {
1102 − "acorn": "^7.1.1",
1103 − "acorn-walk": "^7.1.1"
1104 − }
1105 − },
1106 − "acorn-walk": {
1107 − "version": "7.2.0",
1108 − "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
1109 − "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
1110 − "dev": true
1111 − },
1112 − "ajv": {
1113 − "version": "6.12.5",
1114 − "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz",
1115 − "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==",
1116 − "dev": true,
1117 − "requires": {
1118 − "fast-deep-equal": "^3.1.1",
1119 − "fast-json-stable-stringify": "^2.0.0",
1120 − "json-schema-traverse": "^0.4.1",
1121 − "uri-js": "^4.2.2"
1122 − }
1123 − },
1124 − "ansi-escapes": {
1125 − "version": "4.3.1",
1126 − "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz",
1127 − "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==",
1128 − "dev": true,
1129 − "requires": {
1130 − "type-fest": "^0.11.0"
1131 − },
1132 − "dependencies": {
1133 − "type-fest": {
1134 − "version": "0.11.0",
1135 − "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz",
1136 − "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==",
1137 − "dev": true
1138 − }
1139 − }
1140 − },
1141 − "ansi-regex": {
1142 − "version": "5.0.0",
1143 − "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
1144 − "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
1145 − "dev": true
1146 − },
1147 − "ansi-styles": {
1148 − "version": "4.2.1",
1149 − "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
1150 − "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
1151 − "dev": true,
1152 − "requires": {
1153 − "@types/color-name": "^1.1.1",
1154 − "color-convert": "^2.0.1"
1155 − }
1156 − },
1157 − "anymatch": {
1158 − "version": "3.1.1",
1159 − "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
1160 − "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
1161 − "dev": true,
1162 − "requires": {
1163 − "normalize-path": "^3.0.0",
1164 − "picomatch": "^2.0.4"
1165 − }
1166 − },
1167 − "argparse": {
1168 − "version": "1.0.10",
1169 − "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
1170 − "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
1171 − "dev": true,
1172 − "requires": {
1173 − "sprintf-js": "~1.0.2"
1174 − }
1175 − },
1176 − "arr-diff": {
1177 − "version": "4.0.0",
1178 − "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
1179 − "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
1180 − "dev": true
1181 − },
1182 − "arr-flatten": {
1183 − "version": "1.1.0",
1184 − "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
1185 − "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
1186 − "dev": true
1187 − },
1188 − "arr-union": {
1189 − "version": "3.1.0",
1190 − "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
1191 − "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
1192 − "dev": true
1193 − },
1194 − "array-unique": {
1195 − "version": "0.3.2",
1196 − "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
1197 − "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
1198 − "dev": true
1199 − },
1200 − "asn1": {
1201 − "version": "0.2.4",
1202 − "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
1203 − "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
1204 − "dev": true,
1205 − "requires": {
1206 − "safer-buffer": "~2.1.0"
1207 − }
1208 − },
1209 − "assert-plus": {
1210 − "version": "1.0.0",
1211 − "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
1212 − "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
1213 − "dev": true
1214 − },
1215 − "assign-symbols": {
1216 − "version": "1.0.0",
1217 − "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
1218 − "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
1219 − "dev": true
1220 − },
1221 − "asynckit": {
1222 − "version": "0.4.0",
1223 − "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
1224 − "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
1225 − "dev": true
1226 − },
1227 − "atob": {
1228 − "version": "2.1.2",
1229 − "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
1230 − "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
1231 − "dev": true
1232 − },
1233 − "aws-sign2": {
1234 − "version": "0.7.0",
1235 − "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
1236 − "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
1237 − "dev": true
1238 − },
1239 − "aws4": {
1240 − "version": "1.10.1",
1241 − "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.1.tgz",
1242 − "integrity": "sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA==",
1243 − "dev": true
1244 − },
1245 − "babel-jest": {
1246 − "version": "26.3.0",
1247 − "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.3.0.tgz",
1248 − "integrity": "sha512-sxPnQGEyHAOPF8NcUsD0g7hDCnvLL2XyblRBcgrzTWBB/mAIpWow3n1bEL+VghnnZfreLhFSBsFluRoK2tRK4g==",
1249 − "dev": true,
1250 − "requires": {
1251 − "@jest/transform": "^26.3.0",
1252 − "@jest/types": "^26.3.0",
1253 − "@types/babel__core": "^7.1.7",
1254 − "babel-plugin-istanbul": "^6.0.0",
1255 − "babel-preset-jest": "^26.3.0",
1256 − "chalk": "^4.0.0",
1257 − "graceful-fs": "^4.2.4",
1258 − "slash": "^3.0.0"
1259 − }
1260 − },
1261 − "babel-plugin-istanbul": {
1262 − "version": "6.0.0",
1263 − "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz",
1264 − "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==",
1265 − "dev": true,
1266 − "requires": {
1267 − "@babel/helper-plugin-utils": "^7.0.0",
1268 − "@istanbuljs/load-nyc-config": "^1.0.0",
1269 − "@istanbuljs/schema": "^0.1.2",
1270 − "istanbul-lib-instrument": "^4.0.0",
1271 − "test-exclude": "^6.0.0"
1272 − }
1273 − },
1274 − "babel-plugin-jest-hoist": {
1275 − "version": "26.2.0",
1276 − "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.2.0.tgz",
1277 − "integrity": "sha512-B/hVMRv8Nh1sQ1a3EY8I0n4Y1Wty3NrR5ebOyVT302op+DOAau+xNEImGMsUWOC3++ZlMooCytKz+NgN8aKGbA==",
1278 − "dev": true,
1279 − "requires": {
1280 − "@babel/template": "^7.3.3",
1281 − "@babel/types": "^7.3.3",
1282 − "@types/babel__core": "^7.0.0",
1283 − "@types/babel__traverse": "^7.0.6"
1284 − }
1285 − },
1286 − "babel-preset-current-node-syntax": {
1287 − "version": "0.1.3",
1288 − "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.3.tgz",
1289 − "integrity": "sha512-uyexu1sVwcdFnyq9o8UQYsXwXflIh8LvrF5+cKrYam93ned1CStffB3+BEcsxGSgagoA3GEyjDqO4a/58hyPYQ==",
1290 − "dev": true,
1291 − "requires": {
1292 − "@babel/plugin-syntax-async-generators": "^7.8.4",
1293 − "@babel/plugin-syntax-bigint": "^7.8.3",
1294 − "@babel/plugin-syntax-class-properties": "^7.8.3",
1295 − "@babel/plugin-syntax-import-meta": "^7.8.3",
1296 − "@babel/plugin-syntax-json-strings": "^7.8.3",
1297 − "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3",
1298 − "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
1299 − "@babel/plugin-syntax-numeric-separator": "^7.8.3",
1300 − "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
1301 − "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
1302 − "@babel/plugin-syntax-optional-chaining": "^7.8.3"
1303 − }
1304 − },
1305 − "babel-preset-jest": {
1306 − "version": "26.3.0",
1307 − "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.3.0.tgz",
1308 − "integrity": "sha512-5WPdf7nyYi2/eRxCbVrE1kKCWxgWY4RsPEbdJWFm7QsesFGqjdkyLeu1zRkwM1cxK6EPIlNd6d2AxLk7J+t4pw==",
1309 − "dev": true,
1310 − "requires": {
1311 − "babel-plugin-jest-hoist": "^26.2.0",
1312 − "babel-preset-current-node-syntax": "^0.1.3"
1313 − }
1314 − },
1315 − "balanced-match": {
1316 − "version": "1.0.0",
1317 − "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
1318 − "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
1319 − "dev": true
1320 − },
1321 − "base": {
1322 − "version": "0.11.2",
1323 − "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
1324 − "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
1325 − "dev": true,
1326 − "requires": {
1327 − "cache-base": "^1.0.1",
1328 − "class-utils": "^0.3.5",
1329 − "component-emitter": "^1.2.1",
1330 − "define-property": "^1.0.0",
1331 − "isobject": "^3.0.1",
1332 − "mixin-deep": "^1.2.0",
1333 − "pascalcase": "^0.1.1"
1334 − },
1335 − "dependencies": {
1336 − "define-property": {
1337 − "version": "1.0.0",
1338 − "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
1339 − "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
1340 − "dev": true,
1341 − "requires": {
1342 − "is-descriptor": "^1.0.0"
1343 − }
1344 − },
1345 − "is-accessor-descriptor": {
1346 − "version": "1.0.0",
1347 − "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
1348 − "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
1349 − "dev": true,
1350 − "requires": {
1351 − "kind-of": "^6.0.0"
1352 − }
1353 − },
1354 − "is-data-descriptor": {
1355 − "version": "1.0.0",
1356 − "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
1357 − "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
1358 − "dev": true,
1359 − "requires": {
1360 − "kind-of": "^6.0.0"
1361 − }
1362 − },
1363 − "is-descriptor": {
1364 − "version": "1.0.2",
1365 − "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
1366 − "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
1367 − "dev": true,
1368 − "requires": {
1369 − "is-accessor-descriptor": "^1.0.0",
1370 − "is-data-descriptor": "^1.0.0",
1371 − "kind-of": "^6.0.2"
1372 − }
1373 − }
1374 − }
1375 − },
1376 − "bcrypt-pbkdf": {
1377 − "version": "1.0.2",
1378 − "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
1379 − "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
1380 − "dev": true,
1381 − "requires": {
1382 − "tweetnacl": "^0.14.3"
1383 − }
1384 − },
1385 − "brace-expansion": {
1386 − "version": "1.1.11",
1387 − "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
1388 − "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
1389 − "dev": true,
1390 − "requires": {
1391 − "balanced-match": "^1.0.0",
1392 − "concat-map": "0.0.1"
1393 − }
1394 − },
1395 − "braces": {
1396 − "version": "3.0.2",
1397 − "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
1398 − "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
1399 − "dev": true,
1400 − "requires": {
1401 − "fill-range": "^7.0.1"
1402 − }
1403 − },
1404 − "browser-process-hrtime": {
1405 − "version": "1.0.0",
1406 − "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz",
1407 − "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==",
1408 − "dev": true
1409 − },
1410 − "bser": {
1411 − "version": "2.1.1",
1412 − "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
1413 − "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
1414 − "dev": true,
1415 − "requires": {
1416 − "node-int64": "^0.4.0"
1417 − }
1418 − },
1419 − "buffer-from": {
1420 − "version": "1.1.1",
1421 − "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
1422 − "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
1423 − "dev": true
1424 − },
1425 − "cache-base": {
1426 − "version": "1.0.1",
1427 − "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
1428 − "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
1429 − "dev": true,
1430 − "requires": {
1431 − "collection-visit": "^1.0.0",
1432 − "component-emitter": "^1.2.1",
1433 − "get-value": "^2.0.6",
1434 − "has-value": "^1.0.0",
1435 − "isobject": "^3.0.1",
1436 − "set-value": "^2.0.0",
1437 − "to-object-path": "^0.3.0",
1438 − "union-value": "^1.0.0",
1439 − "unset-value": "^1.0.0"
1440 − }
1441 − },
1442 − "callsites": {
1443 − "version": "3.1.0",
1444 − "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
1445 − "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
1446 − "dev": true
1447 − },
1448 − "camelcase": {
1449 − "version": "5.3.1",
1450 − "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
1451 − "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
1452 − "dev": true
1453 − },
1454 − "capture-exit": {
1455 − "version": "2.0.0",
1456 − "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz",
1457 − "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==",
1458 − "dev": true,
1459 − "requires": {
1460 − "rsvp": "^4.8.4"
1461 − }
1462 − },
1463 − "caseless": {
1464 − "version": "0.12.0",
1465 − "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
1466 − "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
1467 − "dev": true
1468 − },
1469 − "chalk": {
1470 − "version": "4.0.0",
1471 − "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz",
1472 − "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==",
1473 − "dev": true,
1474 − "requires": {
1475 − "ansi-styles": "^4.1.0",
1476 − "supports-color": "^7.1.0"
1477 − }
1478 − },
1479 − "char-regex": {
1480 − "version": "1.0.2",
1481 − "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz",
1482 − "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==",
1483 − "dev": true
1484 − },
1485 − "ci-info": {
1486 − "version": "2.0.0",
1487 − "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
1488 − "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
1489 − "dev": true
1490 − },
1491 − "class-utils": {
1492 − "version": "0.3.6",
1493 − "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
1494 − "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
1495 − "dev": true,
1496 − "requires": {
1497 − "arr-union": "^3.1.0",
1498 − "define-property": "^0.2.5",
1499 − "isobject": "^3.0.0",
1500 − "static-extend": "^0.1.1"
1501 − },
1502 − "dependencies": {
1503 − "define-property": {
1504 − "version": "0.2.5",
1505 − "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
1506 − "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
1507 − "dev": true,
1508 − "requires": {
1509 − "is-descriptor": "^0.1.0"
1510 − }
1511 − }
1512 − }
1513 − },
1514 − "cliui": {
1515 − "version": "6.0.0",
1516 − "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
1517 − "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
1518 − "dev": true,
1519 − "requires": {
1520 − "string-width": "^4.2.0",
1521 − "strip-ansi": "^6.0.0",
1522 − "wrap-ansi": "^6.2.0"
1523 − }
1524 − },
1525 − "co": {
1526 − "version": "4.6.0",
1527 − "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
1528 − "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
1529 − "dev": true
1530 − },
1531 − "collect-v8-coverage": {
1532 − "version": "1.0.1",
1533 − "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz",
1534 − "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==",
1535 − "dev": true
1536 − },
1537 − "collection-visit": {
1538 − "version": "1.0.0",
1539 − "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
1540 − "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
1541 − "dev": true,
1542 − "requires": {
1543 − "map-visit": "^1.0.0",
1544 − "object-visit": "^1.0.0"
1545 − }
1546 − },
1547 − "color-convert": {
1548 − "version": "2.0.1",
1549 − "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1550 − "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1551 − "dev": true,
1552 − "requires": {
1553 − "color-name": "~1.1.4"
1554 − }
1555 − },
1556 − "color-name": {
1557 − "version": "1.1.4",
1558 − "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1559 − "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1560 − "dev": true
1561 − },
1562 − "combined-stream": {
1563 − "version": "1.0.8",
1564 − "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
1565 − "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
1566 − "dev": true,
1567 − "requires": {
1568 − "delayed-stream": "~1.0.0"
1569 − }
1570 − },
1571 − "compare-versions": {
1572 − "version": "3.6.0",
1573 − "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz",
1574 − "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==",
1575 − "dev": true
1576 − },
1577 − "component-emitter": {
1578 − "version": "1.3.0",
1579 − "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
1580 − "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
1581 − "dev": true
1582 − },
1583 − "concat-map": {
1584 − "version": "0.0.1",
1585 − "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
1586 − "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
1587 − "dev": true
1588 − },
1589 − "convert-source-map": {
1590 − "version": "1.7.0",
1591 − "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
1592 − "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==",
1593 − "dev": true,
1594 − "requires": {
1595 − "safe-buffer": "~5.1.1"
1596 − }
1597 − },
1598 − "copy-descriptor": {
1599 − "version": "0.1.1",
1600 − "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
1601 − "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
1602 − "dev": true
1603 − },
1604 − "core-util-is": {
1605 − "version": "1.0.2",
1606 − "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
1607 − "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
1608 − "dev": true
1609 − },
1610 − "cosmiconfig": {
1611 − "version": "6.0.0",
1612 − "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
1613 − "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
1614 − "dev": true,
1615 − "requires": {
1616 − "@types/parse-json": "^4.0.0",
1617 − "import-fresh": "^3.1.0",
1618 − "parse-json": "^5.0.0",
1619 − "path-type": "^4.0.0",
1620 − "yaml": "^1.7.2"
1621 − }
1622 − },
1623 − "cross-spawn": {
1624 − "version": "6.0.5",
1625 − "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
1626 − "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
1627 − "dev": true,
1628 − "requires": {
1629 − "nice-try": "^1.0.4",
1630 − "path-key": "^2.0.1",
1631 − "semver": "^5.5.0",
1632 − "shebang-command": "^1.2.0",
1633 − "which": "^1.2.9"
1634 − },
1635 − "dependencies": {
1636 − "semver": {
1637 − "version": "5.7.1",
1638 − "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
1639 − "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
1640 − "dev": true
1641 − }
1642 − }
1643 − },
1644 − "cssom": {
1645 − "version": "0.4.4",
1646 − "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz",
1647 − "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==",
1648 − "dev": true
1649 − },
1650 − "cssstyle": {
1651 − "version": "2.3.0",
1652 − "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz",
1653 − "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==",
1654 − "dev": true,
1655 − "requires": {
1656 − "cssom": "~0.3.6"
1657 − },
1658 − "dependencies": {
1659 − "cssom": {
1660 − "version": "0.3.8",
1661 − "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz",
1662 − "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==",
1663 − "dev": true
1664 − }
1665 − }
1666 − },
1667 − "dashdash": {
1668 − "version": "1.14.1",
1669 − "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
1670 − "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
1671 − "dev": true,
1672 − "requires": {
1673 − "assert-plus": "^1.0.0"
1674 − }
1675 − },
1676 − "data-urls": {
1677 − "version": "2.0.0",
1678 − "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz",
1679 − "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==",
1680 − "dev": true,
1681 − "requires": {
1682 − "abab": "^2.0.3",
1683 − "whatwg-mimetype": "^2.3.0",
1684 − "whatwg-url": "^8.0.0"
1685 − }
1686 − },
1687 − "debug": {
1688 − "version": "4.1.1",
1689 − "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
1690 − "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
1691 − "dev": true,
1692 − "requires": {
1693 − "ms": "^2.1.1"
1694 − }
1695 − },
1696 − "decamelize": {
1697 − "version": "1.2.0",
1698 − "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
1699 − "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
1700 − "dev": true
1701 − },
1702 − "decimal.js": {
1703 − "version": "10.2.0",
1704 − "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.0.tgz",
1705 − "integrity": "sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw==",
1706 − "dev": true
1707 − },
1708 − "decode-uri-component": {
1709 − "version": "0.2.0",
1710 − "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
1711 − "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
1712 − "dev": true
1713 − },
1714 − "deep-is": {
1715 − "version": "0.1.3",
1716 − "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
1717 − "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
1718 − "dev": true
1719 − },
1720 − "deepmerge": {
1721 − "version": "4.2.2",
1722 − "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
1723 − "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
1724 − "dev": true
1725 − },
1726 − "define-property": {
1727 − "version": "2.0.2",
1728 − "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
1729 − "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
1730 − "dev": true,
1731 − "requires": {
1732 − "is-descriptor": "^1.0.2",
1733 − "isobject": "^3.0.1"
1734 − },
1735 − "dependencies": {
1736 − "is-accessor-descriptor": {
1737 − "version": "1.0.0",
1738 − "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
1739 − "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
1740 − "dev": true,
1741 − "requires": {
1742 − "kind-of": "^6.0.0"
1743 − }
1744 − },
1745 − "is-data-descriptor": {
1746 − "version": "1.0.0",
1747 − "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
1748 − "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
1749 − "dev": true,
1750 − "requires": {
1751 − "kind-of": "^6.0.0"
1752 − }
1753 − },
1754 − "is-descriptor": {
1755 − "version": "1.0.2",
1756 − "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
1757 − "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
1758 − "dev": true,
1759 − "requires": {
1760 − "is-accessor-descriptor": "^1.0.0",
1761 − "is-data-descriptor": "^1.0.0",
1762 − "kind-of": "^6.0.2"
1763 − }
1764 − }
1765 − }
1766 − },
1767 − "delayed-stream": {
1768 − "version": "1.0.0",
1769 − "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
1770 − "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
1771 − "dev": true
1772 − },
1773 − "detect-newline": {
1774 − "version": "3.1.0",
1775 − "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
1776 − "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
1777 − "dev": true
1778 − },
1779 − "diff-sequences": {
1780 − "version": "26.3.0",
1781 − "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.3.0.tgz",
1782 − "integrity": "sha512-5j5vdRcw3CNctePNYN0Wy2e/JbWT6cAYnXv5OuqPhDpyCGc0uLu2TK0zOCJWNB9kOIfYMSpIulRaDgIi4HJ6Ig==",
1783 − "dev": true
1784 − },
1785 − "domexception": {
1786 − "version": "2.0.1",
1787 − "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz",
1788 − "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==",
1789 − "dev": true,
1790 − "requires": {
1791 − "webidl-conversions": "^5.0.0"
1792 − },
1793 − "dependencies": {
1794 − "webidl-conversions": {
1795 − "version": "5.0.0",
1796 − "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz",
1797 − "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==",
1798 − "dev": true
1799 − }
1800 − }
1801 − },
1802 − "ecc-jsbn": {
1803 − "version": "0.1.2",
1804 − "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
1805 − "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
1806 − "dev": true,
1807 − "requires": {
1808 − "jsbn": "~0.1.0",
1809 − "safer-buffer": "^2.1.0"
1810 − }
1811 − },
1812 − "emittery": {
1813 − "version": "0.7.1",
1814 − "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.1.tgz",
1815 − "integrity": "sha512-d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ==",
1816 − "dev": true
1817 − },
1818 − "emoji-regex": {
1819 − "version": "8.0.0",
1820 − "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
1821 − "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
1822 − "dev": true
1823 − },
1824 − "end-of-stream": {
1825 − "version": "1.4.4",
1826 − "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
1827 − "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
1828 − "dev": true,
1829 − "requires": {
1830 − "once": "^1.4.0"
1831 − }
1832 − },
1833 − "error-ex": {
1834 − "version": "1.3.2",
1835 − "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
1836 − "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
1837 − "dev": true,
1838 − "requires": {
1839 − "is-arrayish": "^0.2.1"
1840 − }
1841 − },
1842 − "escape-string-regexp": {
1843 − "version": "1.0.5",
1844 − "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1845 − "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
1846 − "dev": true
1847 − },
1848 − "escodegen": {
1849 − "version": "1.14.3",
1850 − "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz",
1851 − "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==",
1852 − "dev": true,
1853 − "requires": {
1854 − "esprima": "^4.0.1",
1855 − "estraverse": "^4.2.0",
1856 − "esutils": "^2.0.2",
1857 − "optionator": "^0.8.1",
1858 − "source-map": "~0.6.1"
1859 − }
1860 − },
1861 − "esprima": {
1862 − "version": "4.0.1",
1863 − "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
1864 − "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
1865 − "dev": true
1866 − },
1867 − "estraverse": {
1868 − "version": "4.3.0",
1869 − "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
1870 − "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
1871 − "dev": true
1872 − },
1873 − "esutils": {
1874 − "version": "2.0.3",
1875 − "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
1876 − "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
1877 − "dev": true
1878 − },
1879 − "exec-sh": {
1880 − "version": "0.3.4",
1881 − "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz",
1882 − "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==",
1883 − "dev": true
1884 − },
1885 − "execa": {
1886 − "version": "1.0.0",
1887 − "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
1888 − "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
1889 − "dev": true,
1890 − "requires": {
1891 − "cross-spawn": "^6.0.0",
1892 − "get-stream": "^4.0.0",
1893 − "is-stream": "^1.1.0",
1894 − "npm-run-path": "^2.0.0",
1895 − "p-finally": "^1.0.0",
1896 − "signal-exit": "^3.0.0",
1897 − "strip-eof": "^1.0.0"
1898 − }
1899 − },
1900 − "exit": {
1901 − "version": "0.1.2",
1902 − "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
1903 − "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
1904 − "dev": true
1905 − },
1906 − "expand-brackets": {
1907 − "version": "2.1.4",
1908 − "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
1909 − "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
1910 − "dev": true,
1911 − "requires": {
1912 − "debug": "^2.3.3",
1913 − "define-property": "^0.2.5",
1914 − "extend-shallow": "^2.0.1",
1915 − "posix-character-classes": "^0.1.0",
1916 − "regex-not": "^1.0.0",
1917 − "snapdragon": "^0.8.1",
1918 − "to-regex": "^3.0.1"
1919 − },
1920 − "dependencies": {
1921 − "debug": {
1922 − "version": "2.6.9",
1923 − "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
1924 − "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
1925 − "dev": true,
1926 − "requires": {
1927 − "ms": "2.0.0"
1928 − }
1929 − },
1930 − "define-property": {
1931 − "version": "0.2.5",
1932 − "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
1933 − "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
1934 − "dev": true,
1935 − "requires": {
1936 − "is-descriptor": "^0.1.0"
1937 − }
1938 − },
1939 − "extend-shallow": {
1940 − "version": "2.0.1",
1941 − "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1942 − "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1943 − "dev": true,
1944 − "requires": {
1945 − "is-extendable": "^0.1.0"
1946 − }
1947 − },
1948 − "ms": {
1949 − "version": "2.0.0",
1950 − "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1951 − "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
1952 − "dev": true
1953 − }
1954 − }
1955 − },
1956 − "expect": {
1957 − "version": "26.4.2",
1958 − "resolved": "https://registry.npmjs.org/expect/-/expect-26.4.2.tgz",
1959 − "integrity": "sha512-IlJ3X52Z0lDHm7gjEp+m76uX46ldH5VpqmU0006vqDju/285twh7zaWMRhs67VpQhBwjjMchk+p5aA0VkERCAA==",
1960 − "dev": true,
1961 − "requires": {
1962 − "@jest/types": "^26.3.0",
1963 − "ansi-styles": "^4.0.0",
1964 − "jest-get-type": "^26.3.0",
1965 − "jest-matcher-utils": "^26.4.2",
1966 − "jest-message-util": "^26.3.0",
1967 − "jest-regex-util": "^26.0.0"
1968 − }
1969 − },
1970 − "extend": {
1971 − "version": "3.0.2",
1972 − "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
1973 − "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
1974 − "dev": true
1975 − },
1976 − "extend-shallow": {
1977 − "version": "3.0.2",
1978 − "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
1979 − "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
1980 − "dev": true,
1981 − "requires": {
1982 − "assign-symbols": "^1.0.0",
1983 − "is-extendable": "^1.0.1"
1984 − },
1985 − "dependencies": {
1986 − "is-extendable": {
1987 − "version": "1.0.1",
1988 − "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
1989 − "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
1990 − "dev": true,
1991 − "requires": {
1992 − "is-plain-object": "^2.0.4"
1993 − }
1994 − }
1995 − }
1996 − },
1997 − "extglob": {
1998 − "version": "2.0.4",
1999 − "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
2000 − "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
2001 − "dev": true,
2002 − "requires": {
2003 − "array-unique": "^0.3.2",
2004 − "define-property": "^1.0.0",
2005 − "expand-brackets": "^2.1.4",
2006 − "extend-shallow": "^2.0.1",
2007 − "fragment-cache": "^0.2.1",
2008 − "regex-not": "^1.0.0",
2009 − "snapdragon": "^0.8.1",
2010 − "to-regex": "^3.0.1"
2011 − },
2012 − "dependencies": {
2013 − "define-property": {
2014 − "version": "1.0.0",
2015 − "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
2016 − "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
2017 − "dev": true,
2018 − "requires": {
2019 − "is-descriptor": "^1.0.0"
2020 − }
2021 − },
2022 − "extend-shallow": {
2023 − "version": "2.0.1",
2024 − "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
2025 − "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
2026 − "dev": true,
2027 − "requires": {
2028 − "is-extendable": "^0.1.0"
2029 − }
2030 − },
2031 − "is-accessor-descriptor": {
2032 − "version": "1.0.0",
2033 − "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
2034 − "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
2035 − "dev": true,
2036 − "requires": {
2037 − "kind-of": "^6.0.0"
2038 − }
2039 − },
2040 − "is-data-descriptor": {
2041 − "version": "1.0.0",
2042 − "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
2043 − "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
2044 − "dev": true,
2045 − "requires": {
2046 − "kind-of": "^6.0.0"
2047 − }
2048 − },
2049 − "is-descriptor": {
2050 − "version": "1.0.2",
2051 − "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
2052 − "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
2053 − "dev": true,
2054 − "requires": {
2055 − "is-accessor-descriptor": "^1.0.0",
2056 − "is-data-descriptor": "^1.0.0",
2057 − "kind-of": "^6.0.2"
2058 − }
2059 − }
2060 − }
2061 − },
2062 − "extsprintf": {
2063 − "version": "1.3.0",
2064 − "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
2065 − "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
2066 − "dev": true
2067 − },
2068 − "fast-deep-equal": {
2069 − "version": "3.1.3",
2070 − "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
2071 − "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
2072 − "dev": true
2073 − },
2074 − "fast-json-stable-stringify": {
2075 − "version": "2.1.0",
2076 − "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
2077 − "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
2078 − "dev": true
2079 − },
2080 − "fast-levenshtein": {
2081 − "version": "2.0.6",
2082 − "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
2083 − "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
2084 − "dev": true
2085 − },
2086 − "fb-watchman": {
2087 − "version": "2.0.1",
2088 − "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz",
2089 − "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==",
2090 − "dev": true,
2091 − "requires": {
2092 − "bser": "2.1.1"
2093 − }
2094 − },
2095 − "fill-range": {
2096 − "version": "7.0.1",
2097 − "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
2098 − "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
2099 − "dev": true,
2100 − "requires": {
2101 − "to-regex-range": "^5.0.1"
2102 − }
2103 − },
2104 − "find-up": {
2105 − "version": "4.1.0",
2106 − "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
2107 − "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
2108 − "dev": true,
2109 − "requires": {
2110 − "locate-path": "^5.0.0",
2111 − "path-exists": "^4.0.0"
2112 − }
2113 − },
2114 − "find-versions": {
2115 − "version": "3.2.0",
2116 − "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz",
2117 − "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==",
2118 − "dev": true,
2119 − "requires": {
2120 − "semver-regex": "^2.0.0"
2121 − }
2122 − },
2123 − "for-in": {
2124 − "version": "1.0.2",
2125 − "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
2126 − "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
2127 − "dev": true
2128 − },
2129 − "forever-agent": {
2130 − "version": "0.6.1",
2131 − "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
2132 − "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
2133 − "dev": true
2134 − },
2135 − "form-data": {
2136 − "version": "2.3.3",
2137 − "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
2138 − "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
2139 − "dev": true,
2140 − "requires": {
2141 − "asynckit": "^0.4.0",
2142 − "combined-stream": "^1.0.6",
2143 − "mime-types": "^2.1.12"
2144 − }
2145 − },
2146 − "fragment-cache": {
2147 − "version": "0.2.1",
2148 − "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
2149 − "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
2150 − "dev": true,
2151 − "requires": {
2152 − "map-cache": "^0.2.2"
2153 − }
2154 − },
2155 − "fs.realpath": {
2156 − "version": "1.0.0",
2157 − "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
2158 − "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
2159 − "dev": true
2160 − },
2161 − "fsevents": {
2162 − "version": "2.1.3",
2163 − "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
2164 − "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
2165 − "dev": true,
2166 − "optional": true
2167 − },
2168 − "gensync": {
2169 − "version": "1.0.0-beta.1",
2170 − "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz",
2171 − "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==",
2172 − "dev": true
2173 − },
2174 − "get-caller-file": {
2175 − "version": "2.0.5",
2176 − "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
2177 − "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
2178 − "dev": true
2179 − },
2180 − "get-package-type": {
2181 − "version": "0.1.0",
2182 − "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
2183 − "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
2184 − "dev": true
2185 − },
2186 − "get-stream": {
2187 − "version": "4.1.0",
2188 − "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
2189 − "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
2190 − "dev": true,
2191 − "requires": {
2192 − "pump": "^3.0.0"
2193 − }
2194 − },
2195 − "get-value": {
2196 − "version": "2.0.6",
2197 − "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
2198 − "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
2199 − "dev": true
2200 − },
2201 − "getpass": {
2202 − "version": "0.1.7",
2203 − "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
2204 − "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
2205 − "dev": true,
2206 − "requires": {
2207 − "assert-plus": "^1.0.0"
2208 − }
2209 − },
2210 − "glob": {
2211 − "version": "7.1.6",
2212 − "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
2213 − "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
2214 − "dev": true,
2215 − "requires": {
2216 − "fs.realpath": "^1.0.0",
2217 − "inflight": "^1.0.4",
2218 − "inherits": "2",
2219 − "minimatch": "^3.0.4",
2220 − "once": "^1.3.0",
2221 − "path-is-absolute": "^1.0.0"
2222 − }
2223 − },
2224 − "globals": {
2225 − "version": "11.12.0",
2226 − "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
2227 − "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
2228 − "dev": true
2229 − },
2230 − "graceful-fs": {
2231 − "version": "4.2.4",
2232 − "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz",
2233 − "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==",
2234 − "dev": true
2235 − },
2236 − "growly": {
2237 − "version": "1.3.0",
2238 − "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz",
2239 − "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=",
2240 − "dev": true,
2241 − "optional": true
2242 − },
2243 − "har-schema": {
2244 − "version": "2.0.0",
2245 − "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
2246 − "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
2247 − "dev": true
2248 − },
2249 − "har-validator": {
2250 − "version": "5.1.5",
2251 − "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
2252 − "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
2253 − "dev": true,
2254 − "requires": {
2255 − "ajv": "^6.12.3",
2256 − "har-schema": "^2.0.0"
2257 − }
2258 − },
2259 − "has-flag": {
2260 − "version": "4.0.0",
2261 − "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2262 − "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2263 − "dev": true
2264 − },
2265 − "has-value": {
2266 − "version": "1.0.0",
2267 − "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
2268 − "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
2269 − "dev": true,
2270 − "requires": {
2271 − "get-value": "^2.0.6",
2272 − "has-values": "^1.0.0",
2273 − "isobject": "^3.0.0"
2274 − }
2275 − },
2276 − "has-values": {
2277 − "version": "1.0.0",
2278 − "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
2279 − "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
2280 − "dev": true,
2281 − "requires": {
2282 − "is-number": "^3.0.0",
2283 − "kind-of": "^4.0.0"
2284 − },
2285 − "dependencies": {
2286 − "is-number": {
2287 − "version": "3.0.0",
2288 − "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
2289 − "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
2290 − "dev": true,
2291 − "requires": {
2292 − "kind-of": "^3.0.2"
2293 − },
2294 − "dependencies": {
2295 − "kind-of": {
2296 − "version": "3.2.2",
2297 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
2298 − "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
2299 − "dev": true,
2300 − "requires": {
2301 − "is-buffer": "^1.1.5"
2302 − }
2303 − }
2304 − }
2305 − },
2306 − "kind-of": {
2307 − "version": "4.0.0",
2308 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
2309 − "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
2310 − "dev": true,
2311 − "requires": {
2312 − "is-buffer": "^1.1.5"
2313 − }
2314 − }
2315 − }
2316 − },
2317 − "hosted-git-info": {
2318 − "version": "2.8.8",
2319 − "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
2320 − "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==",
2321 − "dev": true
2322 − },
2323 − "html-encoding-sniffer": {
2324 − "version": "2.0.1",
2325 − "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz",
2326 − "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==",
2327 − "dev": true,
2328 − "requires": {
2329 − "whatwg-encoding": "^1.0.5"
2330 − }
2331 − },
2332 − "html-escaper": {
2333 − "version": "2.0.2",
2334 − "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
2335 − "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
2336 − "dev": true
2337 − },
2338 − "http-signature": {
2339 − "version": "1.2.0",
2340 − "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
2341 − "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
2342 − "dev": true,
2343 − "requires": {
2344 − "assert-plus": "^1.0.0",
2345 − "jsprim": "^1.2.2",
2346 − "sshpk": "^1.7.0"
2347 − }
2348 − },
2349 − "human-signals": {
2350 − "version": "1.1.1",
2351 − "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
2352 − "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
2353 − "dev": true
2354 − },
2355 − "husky": {
2356 − "version": "4.2.5",
2357 − "resolved": "https://registry.npmjs.org/husky/-/husky-4.2.5.tgz",
2358 − "integrity": "sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ==",
2359 − "dev": true,
2360 − "requires": {
2361 − "chalk": "^4.0.0",
2362 − "ci-info": "^2.0.0",
2363 − "compare-versions": "^3.6.0",
2364 − "cosmiconfig": "^6.0.0",
2365 − "find-versions": "^3.2.0",
2366 − "opencollective-postinstall": "^2.0.2",
2367 − "pkg-dir": "^4.2.0",
2368 − "please-upgrade-node": "^3.2.0",
2369 − "slash": "^3.0.0",
2370 − "which-pm-runs": "^1.0.0"
2371 − }
2372 − },
2373 − "iconv-lite": {
2374 − "version": "0.4.24",
2375 − "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
2376 − "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
2377 − "dev": true,
2378 − "requires": {
2379 − "safer-buffer": ">= 2.1.2 < 3"
2380 − }
2381 − },
2382 − "import-fresh": {
2383 − "version": "3.2.1",
2384 − "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
2385 − "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
2386 − "dev": true,
2387 − "requires": {
2388 − "parent-module": "^1.0.0",
2389 − "resolve-from": "^4.0.0"
2390 − }
2391 − },
2392 − "import-local": {
2393 − "version": "3.0.2",
2394 − "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz",
2395 − "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==",
2396 − "dev": true,
2397 − "requires": {
2398 − "pkg-dir": "^4.2.0",
2399 − "resolve-cwd": "^3.0.0"
2400 − }
2401 − },
2402 − "imurmurhash": {
2403 − "version": "0.1.4",
2404 − "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
2405 − "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
2406 − "dev": true
2407 − },
2408 − "inflight": {
2409 − "version": "1.0.6",
2410 − "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
2411 − "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
2412 − "dev": true,
2413 − "requires": {
2414 − "once": "^1.3.0",
2415 − "wrappy": "1"
2416 − }
2417 − },
2418 − "inherits": {
2419 − "version": "2.0.4",
2420 − "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
2421 − "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
2422 − "dev": true
2423 − },
2424 − "ip-regex": {
2425 − "version": "2.1.0",
2426 − "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz",
2427 − "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=",
2428 − "dev": true
2429 − },
2430 − "is-accessor-descriptor": {
2431 − "version": "0.1.6",
2432 − "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
2433 − "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
2434 − "dev": true,
2435 − "requires": {
2436 − "kind-of": "^3.0.2"
2437 − },
2438 − "dependencies": {
2439 − "kind-of": {
2440 − "version": "3.2.2",
2441 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
2442 − "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
2443 − "dev": true,
2444 − "requires": {
2445 − "is-buffer": "^1.1.5"
2446 − }
2447 − }
2448 − }
2449 − },
2450 − "is-arrayish": {
2451 − "version": "0.2.1",
2452 − "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
2453 − "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
2454 − "dev": true
2455 − },
2456 − "is-buffer": {
2457 − "version": "1.1.6",
2458 − "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
2459 − "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
2460 − "dev": true
2461 − },
2462 − "is-ci": {
2463 − "version": "2.0.0",
2464 − "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz",
2465 − "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==",
2466 − "dev": true,
2467 − "requires": {
2468 − "ci-info": "^2.0.0"
2469 − }
2470 − },
2471 − "is-data-descriptor": {
2472 − "version": "0.1.4",
2473 − "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
2474 − "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
2475 − "dev": true,
2476 − "requires": {
2477 − "kind-of": "^3.0.2"
2478 − },
2479 − "dependencies": {
2480 − "kind-of": {
2481 − "version": "3.2.2",
2482 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
2483 − "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
2484 − "dev": true,
2485 − "requires": {
2486 − "is-buffer": "^1.1.5"
2487 − }
2488 − }
2489 − }
2490 − },
2491 − "is-descriptor": {
2492 − "version": "0.1.6",
2493 − "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
2494 − "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
2495 − "dev": true,
2496 − "requires": {
2497 − "is-accessor-descriptor": "^0.1.6",
2498 − "is-data-descriptor": "^0.1.4",
2499 − "kind-of": "^5.0.0"
2500 − },
2501 − "dependencies": {
2502 − "kind-of": {
2503 − "version": "5.1.0",
2504 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
2505 − "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
2506 − "dev": true
2507 − }
2508 − }
2509 − },
2510 − "is-docker": {
2511 − "version": "2.1.1",
2512 − "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz",
2513 − "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==",
2514 − "dev": true,
2515 − "optional": true
2516 − },
2517 − "is-extendable": {
2518 − "version": "0.1.1",
2519 − "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
2520 − "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
2521 − "dev": true
2522 − },
2523 − "is-fullwidth-code-point": {
2524 − "version": "3.0.0",
2525 − "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
2526 − "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
2527 − "dev": true
2528 − },
2529 − "is-generator-fn": {
2530 − "version": "2.1.0",
2531 − "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz",
2532 − "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==",
2533 − "dev": true
2534 − },
2535 − "is-number": {
2536 − "version": "7.0.0",
2537 − "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
2538 − "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
2539 − "dev": true
2540 − },
2541 − "is-plain-object": {
2542 − "version": "2.0.4",
2543 − "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
2544 − "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
2545 − "dev": true,
2546 − "requires": {
2547 − "isobject": "^3.0.1"
2548 − }
2549 − },
2550 − "is-potential-custom-element-name": {
2551 − "version": "1.0.0",
2552 − "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz",
2553 − "integrity": "sha1-DFLlS8yjkbssSUsh6GJtczbG45c=",
2554 − "dev": true
2555 − },
2556 − "is-stream": {
2557 − "version": "1.1.0",
2558 − "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
2559 − "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
2560 − "dev": true
2561 − },
2562 − "is-typedarray": {
2563 − "version": "1.0.0",
2564 − "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
2565 − "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
2566 − "dev": true
2567 − },
2568 − "is-windows": {
2569 − "version": "1.0.2",
2570 − "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
2571 − "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
2572 − "dev": true
2573 − },
2574 − "is-wsl": {
2575 − "version": "2.2.0",
2576 − "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
2577 − "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
2578 − "dev": true,
2579 − "optional": true,
2580 − "requires": {
2581 − "is-docker": "^2.0.0"
2582 − }
2583 − },
2584 − "isarray": {
2585 − "version": "1.0.0",
2586 − "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
2587 − "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
2588 − "dev": true
2589 − },
2590 − "isexe": {
2591 − "version": "2.0.0",
2592 − "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
2593 − "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
2594 − "dev": true
2595 − },
2596 − "isobject": {
2597 − "version": "3.0.1",
2598 − "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
2599 − "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
2600 − "dev": true
2601 − },
2602 − "isstream": {
2603 − "version": "0.1.2",
2604 − "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
2605 − "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
2606 − "dev": true
2607 − },
2608 − "istanbul-lib-coverage": {
2609 − "version": "3.0.0",
2610 − "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz",
2611 − "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==",
2612 − "dev": true
2613 − },
2614 − "istanbul-lib-instrument": {
2615 − "version": "4.0.3",
2616 − "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz",
2617 − "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==",
2618 − "dev": true,
2619 − "requires": {
2620 − "@babel/core": "^7.7.5",
2621 − "@istanbuljs/schema": "^0.1.2",
2622 − "istanbul-lib-coverage": "^3.0.0",
2623 − "semver": "^6.3.0"
2624 − },
2625 − "dependencies": {
2626 − "semver": {
2627 − "version": "6.3.0",
2628 − "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
2629 − "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
2630 − "dev": true
2631 − }
2632 − }
2633 − },
2634 − "istanbul-lib-report": {
2635 − "version": "3.0.0",
2636 − "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
2637 − "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
2638 − "dev": true,
2639 − "requires": {
2640 − "istanbul-lib-coverage": "^3.0.0",
2641 − "make-dir": "^3.0.0",
2642 − "supports-color": "^7.1.0"
2643 − }
2644 − },
2645 − "istanbul-lib-source-maps": {
2646 − "version": "4.0.0",
2647 − "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz",
2648 − "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==",
2649 − "dev": true,
2650 − "requires": {
2651 − "debug": "^4.1.1",
2652 − "istanbul-lib-coverage": "^3.0.0",
2653 − "source-map": "^0.6.1"
2654 − }
2655 − },
2656 − "istanbul-reports": {
2657 − "version": "3.0.2",
2658 − "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz",
2659 − "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==",
2660 − "dev": true,
2661 − "requires": {
2662 − "html-escaper": "^2.0.0",
2663 − "istanbul-lib-report": "^3.0.0"
2664 − }
2665 − },
2666 − "jest": {
2667 − "version": "26.4.2",
2668 − "resolved": "https://registry.npmjs.org/jest/-/jest-26.4.2.tgz",
2669 − "integrity": "sha512-LLCjPrUh98Ik8CzW8LLVnSCfLaiY+wbK53U7VxnFSX7Q+kWC4noVeDvGWIFw0Amfq1lq2VfGm7YHWSLBV62MJw==",
2670 − "dev": true,
2671 − "requires": {
2672 − "@jest/core": "^26.4.2",
2673 − "import-local": "^3.0.2",
2674 − "jest-cli": "^26.4.2"
2675 − },
2676 − "dependencies": {
2677 − "jest-cli": {
2678 − "version": "26.4.2",
2679 − "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.4.2.tgz",
2680 − "integrity": "sha512-zb+lGd/SfrPvoRSC/0LWdaWCnscXc1mGYW//NP4/tmBvRPT3VntZ2jtKUONsRi59zc5JqmsSajA9ewJKFYp8Cw==",
2681 − "dev": true,
2682 − "requires": {
2683 − "@jest/core": "^26.4.2",
2684 − "@jest/test-result": "^26.3.0",
2685 − "@jest/types": "^26.3.0",
2686 − "chalk": "^4.0.0",
2687 − "exit": "^0.1.2",
2688 − "graceful-fs": "^4.2.4",
2689 − "import-local": "^3.0.2",
2690 − "is-ci": "^2.0.0",
2691 − "jest-config": "^26.4.2",
2692 − "jest-util": "^26.3.0",
2693 − "jest-validate": "^26.4.2",
2694 − "prompts": "^2.0.1",
2695 − "yargs": "^15.3.1"
2696 − }
2697 − }
2698 − }
2699 − },
2700 − "jest-changed-files": {
2701 − "version": "26.3.0",
2702 − "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.3.0.tgz",
2703 − "integrity": "sha512-1C4R4nijgPltX6fugKxM4oQ18zimS7LqQ+zTTY8lMCMFPrxqBFb7KJH0Z2fRQJvw2Slbaipsqq7s1mgX5Iot+g==",
2704 − "dev": true,
2705 − "requires": {
2706 − "@jest/types": "^26.3.0",
2707 − "execa": "^4.0.0",
2708 − "throat": "^5.0.0"
2709 − },
2710 − "dependencies": {
2711 − "cross-spawn": {
2712 − "version": "7.0.3",
2713 − "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
2714 − "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
2715 − "dev": true,
2716 − "requires": {
2717 − "path-key": "^3.1.0",
2718 − "shebang-command": "^2.0.0",
2719 − "which": "^2.0.1"
2720 − }
2721 − },
2722 − "execa": {
2723 − "version": "4.0.3",
2724 − "resolved": "https://registry.npmjs.org/execa/-/execa-4.0.3.tgz",
2725 − "integrity": "sha512-WFDXGHckXPWZX19t1kCsXzOpqX9LWYNqn4C+HqZlk/V0imTkzJZqf87ZBhvpHaftERYknpk0fjSylnXVlVgI0A==",
2726 − "dev": true,
2727 − "requires": {
2728 − "cross-spawn": "^7.0.0",
2729 − "get-stream": "^5.0.0",
2730 − "human-signals": "^1.1.1",
2731 − "is-stream": "^2.0.0",
2732 − "merge-stream": "^2.0.0",
2733 − "npm-run-path": "^4.0.0",
2734 − "onetime": "^5.1.0",
2735 − "signal-exit": "^3.0.2",
2736 − "strip-final-newline": "^2.0.0"
2737 − }
2738 − },
2739 − "get-stream": {
2740 − "version": "5.2.0",
2741 − "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
2742 − "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
2743 − "dev": true,
2744 − "requires": {
2745 − "pump": "^3.0.0"
2746 − }
2747 − },
2748 − "is-stream": {
2749 − "version": "2.0.0",
2750 − "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
2751 − "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
2752 − "dev": true
2753 − },
2754 − "npm-run-path": {
2755 − "version": "4.0.1",
2756 − "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
2757 − "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
2758 − "dev": true,
2759 − "requires": {
2760 − "path-key": "^3.0.0"
2761 − }
2762 − },
2763 − "path-key": {
2764 − "version": "3.1.1",
2765 − "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
2766 − "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
2767 − "dev": true
2768 − },
2769 − "shebang-command": {
2770 − "version": "2.0.0",
2771 − "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
2772 − "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
2773 − "dev": true,
2774 − "requires": {
2775 − "shebang-regex": "^3.0.0"
2776 − }
2777 − },
2778 − "shebang-regex": {
2779 − "version": "3.0.0",
2780 − "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
2781 − "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
2782 − "dev": true
2783 − },
2784 − "which": {
2785 − "version": "2.0.2",
2786 − "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
2787 − "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
2788 − "dev": true,
2789 − "requires": {
2790 − "isexe": "^2.0.0"
2791 − }
2792 − }
2793 − }
2794 − },
2795 − "jest-config": {
2796 − "version": "26.4.2",
2797 − "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.4.2.tgz",
2798 − "integrity": "sha512-QBf7YGLuToiM8PmTnJEdRxyYy3mHWLh24LJZKVdXZ2PNdizSe1B/E8bVm+HYcjbEzGuVXDv/di+EzdO/6Gq80A==",
2799 − "dev": true,
2800 − "requires": {
2801 − "@babel/core": "^7.1.0",
2802 − "@jest/test-sequencer": "^26.4.2",
2803 − "@jest/types": "^26.3.0",
2804 − "babel-jest": "^26.3.0",
2805 − "chalk": "^4.0.0",
2806 − "deepmerge": "^4.2.2",
2807 − "glob": "^7.1.1",
2808 − "graceful-fs": "^4.2.4",
2809 − "jest-environment-jsdom": "^26.3.0",
2810 − "jest-environment-node": "^26.3.0",
2811 − "jest-get-type": "^26.3.0",
2812 − "jest-jasmine2": "^26.4.2",
2813 − "jest-regex-util": "^26.0.0",
2814 − "jest-resolve": "^26.4.0",
2815 − "jest-util": "^26.3.0",
2816 − "jest-validate": "^26.4.2",
2817 − "micromatch": "^4.0.2",
2818 − "pretty-format": "^26.4.2"
2819 − }
2820 − },
2821 − "jest-diff": {
2822 − "version": "26.4.2",
2823 − "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.4.2.tgz",
2824 − "integrity": "sha512-6T1XQY8U28WH0Z5rGpQ+VqZSZz8EN8rZcBtfvXaOkbwxIEeRre6qnuZQlbY1AJ4MKDxQF8EkrCvK+hL/VkyYLQ==",
2825 − "dev": true,
2826 − "requires": {
2827 − "chalk": "^4.0.0",
2828 − "diff-sequences": "^26.3.0",
2829 − "jest-get-type": "^26.3.0",
2830 − "pretty-format": "^26.4.2"
2831 − }
2832 − },
2833 − "jest-docblock": {
2834 − "version": "26.0.0",
2835 − "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz",
2836 − "integrity": "sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w==",
2837 − "dev": true,
2838 − "requires": {
2839 − "detect-newline": "^3.0.0"
2840 − }
2841 − },
2842 − "jest-each": {
2843 − "version": "26.4.2",
2844 − "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.4.2.tgz",
2845 − "integrity": "sha512-p15rt8r8cUcRY0Mvo1fpkOGYm7iI8S6ySxgIdfh3oOIv+gHwrHTy5VWCGOecWUhDsit4Nz8avJWdT07WLpbwDA==",
2846 − "dev": true,
2847 − "requires": {
2848 − "@jest/types": "^26.3.0",
2849 − "chalk": "^4.0.0",
2850 − "jest-get-type": "^26.3.0",
2851 − "jest-util": "^26.3.0",
2852 − "pretty-format": "^26.4.2"
2853 − }
2854 − },
2855 − "jest-environment-jsdom": {
2856 − "version": "26.3.0",
2857 − "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.3.0.tgz",
2858 − "integrity": "sha512-zra8He2btIMJkAzvLaiZ9QwEPGEetbxqmjEBQwhH3CA+Hhhu0jSiEJxnJMbX28TGUvPLxBt/zyaTLrOPF4yMJA==",
2859 − "dev": true,
2860 − "requires": {
2861 − "@jest/environment": "^26.3.0",
2862 − "@jest/fake-timers": "^26.3.0",
2863 − "@jest/types": "^26.3.0",
2864 − "@types/node": "*",
2865 − "jest-mock": "^26.3.0",
2866 − "jest-util": "^26.3.0",
2867 − "jsdom": "^16.2.2"
2868 − }
2869 − },
2870 − "jest-environment-node": {
2871 − "version": "26.3.0",
2872 − "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.3.0.tgz",
2873 − "integrity": "sha512-c9BvYoo+FGcMj5FunbBgtBnbR5qk3uky8PKyRVpSfe2/8+LrNQMiXX53z6q2kY+j15SkjQCOSL/6LHnCPLVHNw==",
2874 − "dev": true,
2875 − "requires": {
2876 − "@jest/environment": "^26.3.0",
2877 − "@jest/fake-timers": "^26.3.0",
2878 − "@jest/types": "^26.3.0",
2879 − "@types/node": "*",
2880 − "jest-mock": "^26.3.0",
2881 − "jest-util": "^26.3.0"
2882 − }
2883 − },
2884 − "jest-get-type": {
2885 − "version": "26.3.0",
2886 − "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz",
2887 − "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==",
2888 − "dev": true
2889 − },
2890 − "jest-haste-map": {
2891 − "version": "26.3.0",
2892 − "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.3.0.tgz",
2893 − "integrity": "sha512-DHWBpTJgJhLLGwE5Z1ZaqLTYqeODQIZpby0zMBsCU9iRFHYyhklYqP4EiG73j5dkbaAdSZhgB938mL51Q5LeZA==",
2894 − "dev": true,
2895 − "requires": {
2896 − "@jest/types": "^26.3.0",
2897 − "@types/graceful-fs": "^4.1.2",
2898 − "@types/node": "*",
2899 − "anymatch": "^3.0.3",
2900 − "fb-watchman": "^2.0.0",
2901 − "fsevents": "^2.1.2",
2902 − "graceful-fs": "^4.2.4",
2903 − "jest-regex-util": "^26.0.0",
2904 − "jest-serializer": "^26.3.0",
2905 − "jest-util": "^26.3.0",
2906 − "jest-worker": "^26.3.0",
2907 − "micromatch": "^4.0.2",
2908 − "sane": "^4.0.3",
2909 − "walker": "^1.0.7"
2910 − }
2911 − },
2912 − "jest-jasmine2": {
2913 − "version": "26.4.2",
2914 − "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.4.2.tgz",
2915 − "integrity": "sha512-z7H4EpCldHN1J8fNgsja58QftxBSL+JcwZmaXIvV9WKIM+x49F4GLHu/+BQh2kzRKHAgaN/E82od+8rTOBPyPA==",
2916 − "dev": true,
2917 − "requires": {
2918 − "@babel/traverse": "^7.1.0",
2919 − "@jest/environment": "^26.3.0",
2920 − "@jest/source-map": "^26.3.0",
2921 − "@jest/test-result": "^26.3.0",
2922 − "@jest/types": "^26.3.0",
2923 − "@types/node": "*",
2924 − "chalk": "^4.0.0",
2925 − "co": "^4.6.0",
2926 − "expect": "^26.4.2",
2927 − "is-generator-fn": "^2.0.0",
2928 − "jest-each": "^26.4.2",
2929 − "jest-matcher-utils": "^26.4.2",
2930 − "jest-message-util": "^26.3.0",
2931 − "jest-runtime": "^26.4.2",
2932 − "jest-snapshot": "^26.4.2",
2933 − "jest-util": "^26.3.0",
2934 − "pretty-format": "^26.4.2",
2935 − "throat": "^5.0.0"
2936 − }
2937 − },
2938 − "jest-leak-detector": {
2939 − "version": "26.4.2",
2940 − "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.4.2.tgz",
2941 − "integrity": "sha512-akzGcxwxtE+9ZJZRW+M2o+nTNnmQZxrHJxX/HjgDaU5+PLmY1qnQPnMjgADPGCRPhB+Yawe1iij0REe+k/aHoA==",
2942 − "dev": true,
2943 − "requires": {
2944 − "jest-get-type": "^26.3.0",
2945 − "pretty-format": "^26.4.2"
2946 − }
2947 − },
2948 − "jest-matcher-utils": {
2949 − "version": "26.4.2",
2950 − "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.4.2.tgz",
2951 − "integrity": "sha512-KcbNqWfWUG24R7tu9WcAOKKdiXiXCbMvQYT6iodZ9k1f7065k0keUOW6XpJMMvah+hTfqkhJhRXmA3r3zMAg0Q==",
2952 − "dev": true,
2953 − "requires": {
2954 − "chalk": "^4.0.0",
2955 − "jest-diff": "^26.4.2",
2956 − "jest-get-type": "^26.3.0",
2957 − "pretty-format": "^26.4.2"
2958 − }
2959 − },
2960 − "jest-message-util": {
2961 − "version": "26.3.0",
2962 − "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.3.0.tgz",
2963 − "integrity": "sha512-xIavRYqr4/otGOiLxLZGj3ieMmjcNE73Ui+LdSW/Y790j5acqCsAdDiLIbzHCZMpN07JOENRWX5DcU+OQ+TjTA==",
2964 − "dev": true,
2965 − "requires": {
2966 − "@babel/code-frame": "^7.0.0",
2967 − "@jest/types": "^26.3.0",
2968 − "@types/stack-utils": "^1.0.1",
2969 − "chalk": "^4.0.0",
2970 − "graceful-fs": "^4.2.4",
2971 − "micromatch": "^4.0.2",
2972 − "slash": "^3.0.0",
2973 − "stack-utils": "^2.0.2"
2974 − }
2975 − },
2976 − "jest-mock": {
2977 − "version": "26.3.0",
2978 − "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.3.0.tgz",
2979 − "integrity": "sha512-PeaRrg8Dc6mnS35gOo/CbZovoDPKAeB1FICZiuagAgGvbWdNNyjQjkOaGUa/3N3JtpQ/Mh9P4A2D4Fv51NnP8Q==",
2980 − "dev": true,
2981 − "requires": {
2982 − "@jest/types": "^26.3.0",
2983 − "@types/node": "*"
2984 − }
2985 − },
2986 − "jest-pnp-resolver": {
2987 − "version": "1.2.2",
2988 − "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz",
2989 − "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==",
2990 − "dev": true
2991 − },
2992 − "jest-regex-util": {
2993 − "version": "26.0.0",
2994 − "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz",
2995 − "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==",
2996 − "dev": true
2997 − },
2998 − "jest-resolve": {
2999 − "version": "26.4.0",
3000 − "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.4.0.tgz",
3001 − "integrity": "sha512-bn/JoZTEXRSlEx3+SfgZcJAVuTMOksYq9xe9O6s4Ekg84aKBObEaVXKOEilULRqviSLAYJldnoWV9c07kwtiCg==",
3002 − "dev": true,
3003 − "requires": {
3004 − "@jest/types": "^26.3.0",
3005 − "chalk": "^4.0.0",
3006 − "graceful-fs": "^4.2.4",
3007 − "jest-pnp-resolver": "^1.2.2",
3008 − "jest-util": "^26.3.0",
3009 − "read-pkg-up": "^7.0.1",
3010 − "resolve": "^1.17.0",
3011 − "slash": "^3.0.0"
3012 − }
3013 − },
3014 − "jest-resolve-dependencies": {
3015 − "version": "26.4.2",
3016 − "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.4.2.tgz",
3017 − "integrity": "sha512-ADHaOwqEcVc71uTfySzSowA/RdxUpCxhxa2FNLiin9vWLB1uLPad3we+JSSROq5+SrL9iYPdZZF8bdKM7XABTQ==",
3018 − "dev": true,
3019 − "requires": {
3020 − "@jest/types": "^26.3.0",
3021 − "jest-regex-util": "^26.0.0",
3022 − "jest-snapshot": "^26.4.2"
3023 − }
3024 − },
3025 − "jest-runner": {
3026 − "version": "26.4.2",
3027 − "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.4.2.tgz",
3028 − "integrity": "sha512-FgjDHeVknDjw1gRAYaoUoShe1K3XUuFMkIaXbdhEys+1O4bEJS8Avmn4lBwoMfL8O5oFTdWYKcf3tEJyyYyk8g==",
3029 − "dev": true,
3030 − "requires": {
3031 − "@jest/console": "^26.3.0",
3032 − "@jest/environment": "^26.3.0",
3033 − "@jest/test-result": "^26.3.0",
3034 − "@jest/types": "^26.3.0",
3035 − "@types/node": "*",
3036 − "chalk": "^4.0.0",
3037 − "emittery": "^0.7.1",
3038 − "exit": "^0.1.2",
3039 − "graceful-fs": "^4.2.4",
3040 − "jest-config": "^26.4.2",
3041 − "jest-docblock": "^26.0.0",
3042 − "jest-haste-map": "^26.3.0",
3043 − "jest-leak-detector": "^26.4.2",
3044 − "jest-message-util": "^26.3.0",
3045 − "jest-resolve": "^26.4.0",
3046 − "jest-runtime": "^26.4.2",
3047 − "jest-util": "^26.3.0",
3048 − "jest-worker": "^26.3.0",
3049 − "source-map-support": "^0.5.6",
3050 − "throat": "^5.0.0"
3051 − }
3052 − },
3053 − "jest-runtime": {
3054 − "version": "26.4.2",
3055 − "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.4.2.tgz",
3056 − "integrity": "sha512-4Pe7Uk5a80FnbHwSOk7ojNCJvz3Ks2CNQWT5Z7MJo4tX0jb3V/LThKvD9tKPNVNyeMH98J/nzGlcwc00R2dSHQ==",
3057 − "dev": true,
3058 − "requires": {
3059 − "@jest/console": "^26.3.0",
3060 − "@jest/environment": "^26.3.0",
3061 − "@jest/fake-timers": "^26.3.0",
3062 − "@jest/globals": "^26.4.2",
3063 − "@jest/source-map": "^26.3.0",
3064 − "@jest/test-result": "^26.3.0",
3065 − "@jest/transform": "^26.3.0",
3066 − "@jest/types": "^26.3.0",
3067 − "@types/yargs": "^15.0.0",
3068 − "chalk": "^4.0.0",
3069 − "collect-v8-coverage": "^1.0.0",
3070 − "exit": "^0.1.2",
3071 − "glob": "^7.1.3",
3072 − "graceful-fs": "^4.2.4",
3073 − "jest-config": "^26.4.2",
3074 − "jest-haste-map": "^26.3.0",
3075 − "jest-message-util": "^26.3.0",
3076 − "jest-mock": "^26.3.0",
3077 − "jest-regex-util": "^26.0.0",
3078 − "jest-resolve": "^26.4.0",
3079 − "jest-snapshot": "^26.4.2",
3080 − "jest-util": "^26.3.0",
3081 − "jest-validate": "^26.4.2",
3082 − "slash": "^3.0.0",
3083 − "strip-bom": "^4.0.0",
3084 − "yargs": "^15.3.1"
3085 − }
3086 − },
3087 − "jest-serializer": {
3088 − "version": "26.3.0",
3089 − "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.3.0.tgz",
3090 − "integrity": "sha512-IDRBQBLPlKa4flg77fqg0n/pH87tcRKwe8zxOVTWISxGpPHYkRZ1dXKyh04JOja7gppc60+soKVZ791mruVdow==",
3091 − "dev": true,
3092 − "requires": {
3093 − "@types/node": "*",
3094 − "graceful-fs": "^4.2.4"
3095 − }
3096 − },
3097 − "jest-snapshot": {
3098 − "version": "26.4.2",
3099 − "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.4.2.tgz",
3100 − "integrity": "sha512-N6Uub8FccKlf5SBFnL2Ri/xofbaA68Cc3MGjP/NuwgnsvWh+9hLIR/DhrxbSiKXMY9vUW5dI6EW1eHaDHqe9sg==",
3101 − "dev": true,
3102 − "requires": {
3103 − "@babel/types": "^7.0.0",
3104 − "@jest/types": "^26.3.0",
3105 − "@types/prettier": "^2.0.0",
3106 − "chalk": "^4.0.0",
3107 − "expect": "^26.4.2",
3108 − "graceful-fs": "^4.2.4",
3109 − "jest-diff": "^26.4.2",
3110 − "jest-get-type": "^26.3.0",
3111 − "jest-haste-map": "^26.3.0",
3112 − "jest-matcher-utils": "^26.4.2",
3113 − "jest-message-util": "^26.3.0",
3114 − "jest-resolve": "^26.4.0",
3115 − "natural-compare": "^1.4.0",
3116 − "pretty-format": "^26.4.2",
3117 − "semver": "^7.3.2"
3118 − }
3119 − },
3120 − "jest-util": {
3121 − "version": "26.3.0",
3122 − "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.3.0.tgz",
3123 − "integrity": "sha512-4zpn6bwV0+AMFN0IYhH/wnzIQzRaYVrz1A8sYnRnj4UXDXbOVtWmlaZkO9mipFqZ13okIfN87aDoJWB7VH6hcw==",
3124 − "dev": true,
3125 − "requires": {
3126 − "@jest/types": "^26.3.0",
3127 − "@types/node": "*",
3128 − "chalk": "^4.0.0",
3129 − "graceful-fs": "^4.2.4",
3130 − "is-ci": "^2.0.0",
3131 − "micromatch": "^4.0.2"
3132 − }
3133 − },
3134 − "jest-validate": {
3135 − "version": "26.4.2",
3136 − "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.4.2.tgz",
3137 − "integrity": "sha512-blft+xDX7XXghfhY0mrsBCYhX365n8K5wNDC4XAcNKqqjEzsRUSXP44m6PL0QJEW2crxQFLLztVnJ4j7oPlQrQ==",
3138 − "dev": true,
3139 − "requires": {
3140 − "@jest/types": "^26.3.0",
3141 − "camelcase": "^6.0.0",
3142 − "chalk": "^4.0.0",
3143 − "jest-get-type": "^26.3.0",
3144 − "leven": "^3.1.0",
3145 − "pretty-format": "^26.4.2"
3146 − },
3147 − "dependencies": {
3148 − "camelcase": {
3149 − "version": "6.0.0",
3150 − "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.0.0.tgz",
3151 − "integrity": "sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w==",
3152 − "dev": true
3153 − }
3154 − }
3155 − },
3156 − "jest-watcher": {
3157 − "version": "26.3.0",
3158 − "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.3.0.tgz",
3159 − "integrity": "sha512-XnLdKmyCGJ3VoF6G/p5ohbJ04q/vv5aH9ENI+i6BL0uu9WWB6Z7Z2lhQQk0d2AVZcRGp1yW+/TsoToMhBFPRdQ==",
3160 − "dev": true,
3161 − "requires": {
3162 − "@jest/test-result": "^26.3.0",
3163 − "@jest/types": "^26.3.0",
3164 − "@types/node": "*",
3165 − "ansi-escapes": "^4.2.1",
3166 − "chalk": "^4.0.0",
3167 − "jest-util": "^26.3.0",
3168 − "string-length": "^4.0.1"
3169 − }
3170 − },
3171 − "jest-worker": {
3172 − "version": "26.3.0",
3173 − "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.3.0.tgz",
3174 − "integrity": "sha512-Vmpn2F6IASefL+DVBhPzI2J9/GJUsqzomdeN+P+dK8/jKxbh8R3BtFnx3FIta7wYlPU62cpJMJQo4kuOowcMnw==",
3175 − "dev": true,
3176 − "requires": {
3177 − "@types/node": "*",
3178 − "merge-stream": "^2.0.0",
3179 − "supports-color": "^7.0.0"
3180 − }
3181 − },
3182 − "js-tokens": {
3183 − "version": "4.0.0",
3184 − "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
3185 − "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
3186 − "dev": true
3187 − },
3188 − "js-yaml": {
3189 − "version": "3.14.0",
3190 − "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz",
3191 − "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==",
3192 − "dev": true,
3193 − "requires": {
3194 − "argparse": "^1.0.7",
3195 − "esprima": "^4.0.0"
3196 − }
3197 − },
3198 − "jsbn": {
3199 − "version": "0.1.1",
3200 − "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
3201 − "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
3202 − "dev": true
3203 − },
3204 − "jsdom": {
3205 − "version": "16.4.0",
3206 − "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.4.0.tgz",
3207 − "integrity": "sha512-lYMm3wYdgPhrl7pDcRmvzPhhrGVBeVhPIqeHjzeiHN3DFmD1RBpbExbi8vU7BJdH8VAZYovR8DMt0PNNDM7k8w==",
3208 − "dev": true,
3209 − "requires": {
3210 − "abab": "^2.0.3",
3211 − "acorn": "^7.1.1",
3212 − "acorn-globals": "^6.0.0",
3213 − "cssom": "^0.4.4",
3214 − "cssstyle": "^2.2.0",
3215 − "data-urls": "^2.0.0",
3216 − "decimal.js": "^10.2.0",
3217 − "domexception": "^2.0.1",
3218 − "escodegen": "^1.14.1",
3219 − "html-encoding-sniffer": "^2.0.1",
3220 − "is-potential-custom-element-name": "^1.0.0",
3221 − "nwsapi": "^2.2.0",
3222 − "parse5": "5.1.1",
3223 − "request": "^2.88.2",
3224 − "request-promise-native": "^1.0.8",
3225 − "saxes": "^5.0.0",
3226 − "symbol-tree": "^3.2.4",
3227 − "tough-cookie": "^3.0.1",
3228 − "w3c-hr-time": "^1.0.2",
3229 − "w3c-xmlserializer": "^2.0.0",
3230 − "webidl-conversions": "^6.1.0",
3231 − "whatwg-encoding": "^1.0.5",
3232 − "whatwg-mimetype": "^2.3.0",
3233 − "whatwg-url": "^8.0.0",
3234 − "ws": "^7.2.3",
3235 − "xml-name-validator": "^3.0.0"
3236 − }
3237 − },
3238 − "jsesc": {
3239 − "version": "2.5.2",
3240 − "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
3241 − "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
3242 − "dev": true
3243 − },
3244 − "json-parse-better-errors": {
3245 − "version": "1.0.2",
3246 − "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
3247 − "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
3248 − "dev": true
3249 − },
3250 − "json-schema": {
3251 − "version": "0.2.3",
3252 − "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
3253 − "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
3254 − "dev": true
3255 − },
3256 − "json-schema-traverse": {
3257 − "version": "0.4.1",
3258 − "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
3259 − "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
3260 − "dev": true
3261 − },
3262 − "json-stringify-safe": {
3263 − "version": "5.0.1",
3264 − "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
3265 − "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
3266 − "dev": true
3267 − },
3268 − "json5": {
3269 − "version": "2.1.3",
3270 − "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
3271 − "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==",
3272 − "dev": true,
3273 − "requires": {
3274 − "minimist": "^1.2.5"
3275 − }
3276 − },
3277 − "jsprim": {
3278 − "version": "1.4.1",
3279 − "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
3280 − "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
3281 − "dev": true,
3282 − "requires": {
3283 − "assert-plus": "1.0.0",
3284 − "extsprintf": "1.3.0",
3285 − "json-schema": "0.2.3",
3286 − "verror": "1.10.0"
3287 − }
3288 − },
3289 − "kind-of": {
3290 − "version": "6.0.3",
3291 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
3292 − "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
3293 − "dev": true
3294 − },
3295 − "kleur": {
3296 − "version": "3.0.3",
3297 − "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
3298 − "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
3299 − "dev": true
3300 − },
3301 − "leven": {
3302 − "version": "3.1.0",
3303 − "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
3304 − "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
3305 − "dev": true
3306 − },
3307 − "levn": {
3308 − "version": "0.3.0",
3309 − "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
3310 − "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
3311 − "dev": true,
3312 − "requires": {
3313 − "prelude-ls": "~1.1.2",
3314 − "type-check": "~0.3.2"
3315 − }
3316 − },
3317 − "lines-and-columns": {
3318 − "version": "1.1.6",
3319 − "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz",
3320 − "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
3321 − "dev": true
3322 − },
3323 − "locate-path": {
3324 − "version": "5.0.0",
3325 − "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
3326 − "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
3327 − "dev": true,
3328 − "requires": {
3329 − "p-locate": "^4.1.0"
3330 − }
3331 − },
3332 − "lodash": {
3333 − "version": "4.17.20",
3334 − "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
3335 − "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
3336 − "dev": true
3337 − },
3338 − "lodash.sortby": {
3339 − "version": "4.7.0",
3340 − "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
3341 − "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=",
3342 − "dev": true
3343 − },
3344 − "make-dir": {
3345 − "version": "3.1.0",
3346 − "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
3347 − "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
3348 − "dev": true,
3349 − "requires": {
3350 − "semver": "^6.0.0"
3351 − },
3352 − "dependencies": {
3353 − "semver": {
3354 − "version": "6.3.0",
3355 − "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
3356 − "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
3357 − "dev": true
3358 − }
3359 − }
3360 − },
3361 − "makeerror": {
3362 − "version": "1.0.11",
3363 − "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz",
3364 − "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=",
3365 − "dev": true,
3366 − "requires": {
3367 − "tmpl": "1.0.x"
3368 − }
3369 − },
3370 − "map-cache": {
3371 − "version": "0.2.2",
3372 − "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
3373 − "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
3374 − "dev": true
3375 − },
3376 − "map-visit": {
3377 − "version": "1.0.0",
3378 − "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
3379 − "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
3380 − "dev": true,
3381 − "requires": {
3382 − "object-visit": "^1.0.0"
3383 − }
3384 − },
3385 − "merge-stream": {
3386 − "version": "2.0.0",
3387 − "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
3388 − "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
3389 − "dev": true
3390 − },
3391 − "micromatch": {
3392 − "version": "4.0.2",
3393 − "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz",
3394 − "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==",
3395 − "dev": true,
3396 − "requires": {
3397 − "braces": "^3.0.1",
3398 − "picomatch": "^2.0.5"
3399 − }
3400 − },
3401 − "mime-db": {
3402 − "version": "1.44.0",
3403 − "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz",
3404 − "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==",
3405 − "dev": true
3406 − },
3407 − "mime-types": {
3408 − "version": "2.1.27",
3409 − "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz",
3410 − "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==",
3411 − "dev": true,
3412 − "requires": {
3413 − "mime-db": "1.44.0"
3414 − }
3415 − },
3416 − "mimic-fn": {
3417 − "version": "2.1.0",
3418 − "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
3419 − "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
3420 − "dev": true
3421 − },
3422 − "minimatch": {
3423 − "version": "3.0.4",
3424 − "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
3425 − "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
3426 − "dev": true,
3427 − "requires": {
3428 − "brace-expansion": "^1.1.7"
3429 − }
3430 − },
3431 − "minimist": {
3432 − "version": "1.2.5",
3433 − "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
3434 − "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
3435 − "dev": true
3436 − },
3437 − "mixin-deep": {
3438 − "version": "1.3.2",
3439 − "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
3440 − "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
3441 − "dev": true,
3442 − "requires": {
3443 − "for-in": "^1.0.2",
3444 − "is-extendable": "^1.0.1"
3445 − },
3446 − "dependencies": {
3447 − "is-extendable": {
3448 − "version": "1.0.1",
3449 − "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
3450 − "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
3451 − "dev": true,
3452 − "requires": {
3453 − "is-plain-object": "^2.0.4"
3454 − }
3455 − }
3456 − }
3457 − },
3458 − "ms": {
3459 − "version": "2.1.2",
3460 − "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
3461 − "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
3462 − "dev": true
3463 − },
3464 − "nanomatch": {
3465 − "version": "1.2.13",
3466 − "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
3467 − "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
3468 − "dev": true,
3469 − "requires": {
3470 − "arr-diff": "^4.0.0",
3471 − "array-unique": "^0.3.2",
3472 − "define-property": "^2.0.2",
3473 − "extend-shallow": "^3.0.2",
3474 − "fragment-cache": "^0.2.1",
3475 − "is-windows": "^1.0.2",
3476 − "kind-of": "^6.0.2",
3477 − "object.pick": "^1.3.0",
3478 − "regex-not": "^1.0.0",
3479 − "snapdragon": "^0.8.1",
3480 − "to-regex": "^3.0.1"
3481 − }
3482 − },
3483 − "natural-compare": {
3484 − "version": "1.4.0",
3485 − "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
3486 − "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
3487 − "dev": true
3488 − },
3489 − "nice-try": {
3490 − "version": "1.0.5",
3491 − "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
3492 − "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
3493 − "dev": true
3494 − },
3495 − "node-int64": {
3496 − "version": "0.4.0",
3497 − "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
3498 − "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=",
3499 − "dev": true
3500 − },
3501 − "node-modules-regexp": {
3502 − "version": "1.0.0",
3503 − "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz",
3504 − "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=",
3505 − "dev": true
3506 − },
3507 − "node-notifier": {
3508 − "version": "8.0.0",
3509 − "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-8.0.0.tgz",
3510 − "integrity": "sha512-46z7DUmcjoYdaWyXouuFNNfUo6eFa94t23c53c+lG/9Cvauk4a98rAUp9672X5dxGdQmLpPzTxzu8f/OeEPaFA==",
3511 − "dev": true,
3512 − "optional": true,
3513 − "requires": {
3514 − "growly": "^1.3.0",
3515 − "is-wsl": "^2.2.0",
3516 − "semver": "^7.3.2",
3517 − "shellwords": "^0.1.1",
3518 − "uuid": "^8.3.0",
3519 − "which": "^2.0.2"
3520 − },
3521 − "dependencies": {
3522 − "uuid": {
3523 − "version": "8.3.0",
3524 − "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.0.tgz",
3525 − "integrity": "sha512-fX6Z5o4m6XsXBdli9g7DtWgAx+osMsRRZFKma1mIUsLCz6vRvv+pz5VNbyu9UEDzpMWulZfvpgb/cmDXVulYFQ==",
3526 − "dev": true,
3527 − "optional": true
3528 − },
3529 − "which": {
3530 − "version": "2.0.2",
3531 − "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
3532 − "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
3533 − "dev": true,
3534 − "optional": true,
3535 − "requires": {
3536 − "isexe": "^2.0.0"
3537 − }
3538 − }
3539 − }
3540 − },
3541 − "normalize-package-data": {
3542 − "version": "2.5.0",
3543 − "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
3544 − "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
3545 − "dev": true,
3546 − "requires": {
3547 − "hosted-git-info": "^2.1.4",
3548 − "resolve": "^1.10.0",
3549 − "semver": "2 || 3 || 4 || 5",
3550 − "validate-npm-package-license": "^3.0.1"
3551 − },
3552 − "dependencies": {
3553 − "semver": {
3554 − "version": "5.7.1",
3555 − "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
3556 − "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
3557 − "dev": true
3558 − }
3559 − }
3560 − },
3561 − "normalize-path": {
3562 − "version": "3.0.0",
3563 − "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
3564 − "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
3565 − "dev": true
3566 − },
3567 − "npm-run-path": {
3568 − "version": "2.0.2",
3569 − "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
3570 − "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
3571 − "dev": true,
3572 − "requires": {
3573 − "path-key": "^2.0.0"
3574 − }
3575 − },
3576 − "nwsapi": {
3577 − "version": "2.2.0",
3578 − "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz",
3579 − "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==",
3580 − "dev": true
3581 − },
3582 − "oauth-sign": {
3583 − "version": "0.9.0",
3584 − "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
3585 − "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
3586 − "dev": true
3587 − },
3588 − "object-copy": {
3589 − "version": "0.1.0",
3590 − "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
3591 − "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
3592 − "dev": true,
3593 − "requires": {
3594 − "copy-descriptor": "^0.1.0",
3595 − "define-property": "^0.2.5",
3596 − "kind-of": "^3.0.3"
3597 − },
3598 − "dependencies": {
3599 − "define-property": {
3600 − "version": "0.2.5",
3601 − "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
3602 − "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
3603 − "dev": true,
3604 − "requires": {
3605 − "is-descriptor": "^0.1.0"
3606 − }
3607 − },
3608 − "kind-of": {
3609 − "version": "3.2.2",
3610 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
3611 − "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
3612 − "dev": true,
3613 − "requires": {
3614 − "is-buffer": "^1.1.5"
3615 − }
3616 − }
3617 − }
3618 − },
3619 − "object-visit": {
3620 − "version": "1.0.1",
3621 − "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
3622 − "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
3623 − "dev": true,
3624 − "requires": {
3625 − "isobject": "^3.0.0"
3626 − }
3627 − },
3628 − "object.pick": {
3629 − "version": "1.3.0",
3630 − "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
3631 − "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
3632 − "dev": true,
3633 − "requires": {
3634 − "isobject": "^3.0.1"
3635 − }
3636 − },
3637 − "once": {
3638 − "version": "1.4.0",
3639 − "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
3640 − "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
3641 − "dev": true,
3642 − "requires": {
3643 − "wrappy": "1"
3644 − }
3645 − },
3646 − "onetime": {
3647 − "version": "5.1.2",
3648 − "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
3649 − "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
3650 − "dev": true,
3651 − "requires": {
3652 − "mimic-fn": "^2.1.0"
3653 − }
3654 − },
3655 − "opencollective-postinstall": {
3656 − "version": "2.0.2",
3657 − "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz",
3658 − "integrity": "sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw==",
3659 − "dev": true
3660 − },
3661 − "optionator": {
3662 − "version": "0.8.3",
3663 − "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
3664 − "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
3665 − "dev": true,
3666 − "requires": {
3667 − "deep-is": "~0.1.3",
3668 − "fast-levenshtein": "~2.0.6",
3669 − "levn": "~0.3.0",
3670 − "prelude-ls": "~1.1.2",
3671 − "type-check": "~0.3.2",
3672 − "word-wrap": "~1.2.3"
3673 − }
3674 − },
3675 − "p-each-series": {
3676 − "version": "2.1.0",
3677 − "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.1.0.tgz",
3678 − "integrity": "sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ==",
3679 − "dev": true
3680 − },
3681 − "p-finally": {
3682 − "version": "1.0.0",
3683 − "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
3684 − "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
3685 − "dev": true
3686 − },
3687 − "p-limit": {
3688 − "version": "2.3.0",
3689 − "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
3690 − "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
3691 − "dev": true,
3692 − "requires": {
3693 − "p-try": "^2.0.0"
3694 − }
3695 − },
3696 − "p-locate": {
3697 − "version": "4.1.0",
3698 − "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
3699 − "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
3700 − "dev": true,
3701 − "requires": {
3702 − "p-limit": "^2.2.0"
3703 − }
3704 − },
3705 − "p-try": {
3706 − "version": "2.2.0",
3707 − "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
3708 − "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
3709 − "dev": true
3710 − },
3711 − "parent-module": {
3712 − "version": "1.0.1",
3713 − "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
3714 − "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
3715 − "dev": true,
3716 − "requires": {
3717 − "callsites": "^3.0.0"
3718 − }
3719 − },
3720 − "parse-json": {
3721 − "version": "5.0.0",
3722 − "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz",
3723 − "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==",
3724 − "dev": true,
3725 − "requires": {
3726 − "@babel/code-frame": "^7.0.0",
3727 − "error-ex": "^1.3.1",
3728 − "json-parse-better-errors": "^1.0.1",
3729 − "lines-and-columns": "^1.1.6"
3730 − }
3731 − },
3732 − "parse5": {
3733 − "version": "5.1.1",
3734 − "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz",
3735 − "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==",
3736 − "dev": true
3737 − },
3738 − "pascalcase": {
3739 − "version": "0.1.1",
3740 − "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
3741 − "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
3742 − "dev": true
3743 − },
3744 − "path-exists": {
3745 − "version": "4.0.0",
3746 − "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
3747 − "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
3748 − "dev": true
3749 − },
3750 − "path-is-absolute": {
3751 − "version": "1.0.1",
3752 − "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
3753 − "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
3754 − "dev": true
3755 − },
3756 − "path-key": {
3757 − "version": "2.0.1",
3758 − "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
3759 − "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
3760 − "dev": true
3761 − },
3762 − "path-parse": {
3763 − "version": "1.0.6",
3764 − "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
3765 − "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
3766 − "dev": true
3767 − },
3768 − "path-type": {
3769 − "version": "4.0.0",
3770 − "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
3771 − "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
3772 − "dev": true
3773 − },
3774 − "performance-now": {
3775 − "version": "2.1.0",
3776 − "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
3777 − "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
3778 − "dev": true
3779 − },
3780 − "picomatch": {
3781 − "version": "2.2.2",
3782 − "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
3783 − "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==",
3784 − "dev": true
3785 − },
3786 − "pirates": {
3787 − "version": "4.0.1",
3788 − "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz",
3789 − "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==",
3790 − "dev": true,
3791 − "requires": {
3792 − "node-modules-regexp": "^1.0.0"
3793 − }
3794 − },
3795 − "pkg-dir": {
3796 − "version": "4.2.0",
3797 − "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
3798 − "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
3799 − "dev": true,
3800 − "requires": {
3801 − "find-up": "^4.0.0"
3802 − }
3803 − },
3804 − "please-upgrade-node": {
3805 − "version": "3.2.0",
3806 − "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz",
3807 − "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==",
3808 − "dev": true,
3809 − "requires": {
3810 − "semver-compare": "^1.0.0"
3811 − }
3812 − },
3813 − "posix-character-classes": {
3814 − "version": "0.1.1",
3815 − "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
3816 − "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
3817 − "dev": true
3818 − },
3819 − "prelude-ls": {
3820 − "version": "1.1.2",
3821 − "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
3822 − "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
3823 − "dev": true
3824 − },
3825 − "prettier": {
3826 − "version": "2.0.5",
3827 − "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.0.5.tgz",
3828 − "integrity": "sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg==",
3829 − "dev": true
3830 − },
3831 − "pretty-format": {
3832 − "version": "26.4.2",
3833 − "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.4.2.tgz",
3834 − "integrity": "sha512-zK6Gd8zDsEiVydOCGLkoBoZuqv8VTiHyAbKznXe/gaph/DAeZOmit9yMfgIz5adIgAMMs5XfoYSwAX3jcCO1tA==",
3835 − "dev": true,
3836 − "requires": {
3837 − "@jest/types": "^26.3.0",
3838 − "ansi-regex": "^5.0.0",
3839 − "ansi-styles": "^4.0.0",
3840 − "react-is": "^16.12.0"
3841 − }
3842 − },
3843 − "prompts": {
3844 − "version": "2.3.2",
3845 − "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.3.2.tgz",
3846 − "integrity": "sha512-Q06uKs2CkNYVID0VqwfAl9mipo99zkBv/n2JtWY89Yxa3ZabWSrs0e2KTudKVa3peLUvYXMefDqIleLPVUBZMA==",
3847 − "dev": true,
3848 − "requires": {
3849 − "kleur": "^3.0.3",
3850 − "sisteransi": "^1.0.4"
3851 − }
3852 − },
3853 − "psl": {
3854 − "version": "1.8.0",
3855 − "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
3856 − "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==",
3857 − "dev": true
3858 − },
3859 − "pump": {
3860 − "version": "3.0.0",
3861 − "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
3862 − "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
3863 − "dev": true,
3864 − "requires": {
3865 − "end-of-stream": "^1.1.0",
3866 − "once": "^1.3.1"
3867 − }
3868 − },
3869 − "punycode": {
3870 − "version": "2.1.1",
3871 − "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
3872 − "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
3873 − "dev": true
3874 − },
3875 − "qs": {
3876 − "version": "6.5.2",
3877 − "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
3878 − "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
3879 − "dev": true
3880 − },
3881 − "react-is": {
3882 − "version": "16.13.1",
3883 − "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
3884 − "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==",
3885 − "dev": true
3886 − },
3887 − "read-pkg": {
3888 − "version": "5.2.0",
3889 − "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
3890 − "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
3891 − "dev": true,
3892 − "requires": {
3893 − "@types/normalize-package-data": "^2.4.0",
3894 − "normalize-package-data": "^2.5.0",
3895 − "parse-json": "^5.0.0",
3896 − "type-fest": "^0.6.0"
3897 − },
3898 − "dependencies": {
3899 − "type-fest": {
3900 − "version": "0.6.0",
3901 − "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
3902 − "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
3903 − "dev": true
3904 − }
3905 − }
3906 − },
3907 − "read-pkg-up": {
3908 − "version": "7.0.1",
3909 − "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
3910 − "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
3911 − "dev": true,
3912 − "requires": {
3913 − "find-up": "^4.1.0",
3914 − "read-pkg": "^5.2.0",
3915 − "type-fest": "^0.8.1"
3916 − }
3917 − },
3918 − "regenerator-runtime": {
3919 − "version": "0.13.5",
3920 − "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz",
3921 − "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==",
3922 − "dev": true
3923 − },
3924 − "regex-not": {
3925 − "version": "1.0.2",
3926 − "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
3927 − "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
3928 − "dev": true,
3929 − "requires": {
3930 − "extend-shallow": "^3.0.2",
3931 − "safe-regex": "^1.1.0"
3932 − }
3933 − },
3934 − "remove-trailing-separator": {
3935 − "version": "1.1.0",
3936 − "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
3937 − "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
3938 − "dev": true
3939 − },
3940 − "repeat-element": {
3941 − "version": "1.1.3",
3942 − "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
3943 − "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==",
3944 − "dev": true
3945 − },
3946 − "repeat-string": {
3947 − "version": "1.6.1",
3948 − "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
3949 − "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
3950 − "dev": true
3951 − },
3952 − "request": {
3953 − "version": "2.88.2",
3954 − "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
3955 − "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
3956 − "dev": true,
3957 − "requires": {
3958 − "aws-sign2": "~0.7.0",
3959 − "aws4": "^1.8.0",
3960 − "caseless": "~0.12.0",
3961 − "combined-stream": "~1.0.6",
3962 − "extend": "~3.0.2",
3963 − "forever-agent": "~0.6.1",
3964 − "form-data": "~2.3.2",
3965 − "har-validator": "~5.1.3",
3966 − "http-signature": "~1.2.0",
3967 − "is-typedarray": "~1.0.0",
3968 − "isstream": "~0.1.2",
3969 − "json-stringify-safe": "~5.0.1",
3970 − "mime-types": "~2.1.19",
3971 − "oauth-sign": "~0.9.0",
3972 − "performance-now": "^2.1.0",
3973 − "qs": "~6.5.2",
3974 − "safe-buffer": "^5.1.2",
3975 − "tough-cookie": "~2.5.0",
3976 − "tunnel-agent": "^0.6.0",
3977 − "uuid": "^3.3.2"
3978 − },
3979 − "dependencies": {
3980 − "tough-cookie": {
3981 − "version": "2.5.0",
3982 − "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
3983 − "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
3984 − "dev": true,
3985 − "requires": {
3986 − "psl": "^1.1.28",
3987 − "punycode": "^2.1.1"
3988 − }
3989 − }
3990 − }
3991 − },
3992 − "request-promise-core": {
3993 − "version": "1.1.4",
3994 − "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz",
3995 − "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==",
3996 − "dev": true,
3997 − "requires": {
3998 − "lodash": "^4.17.19"
3999 − }
4000 − },
4001 − "request-promise-native": {
4002 − "version": "1.0.9",
4003 − "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz",
4004 − "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==",
4005 − "dev": true,
4006 − "requires": {
4007 − "request-promise-core": "1.1.4",
4008 − "stealthy-require": "^1.1.1",
4009 − "tough-cookie": "^2.3.3"
4010 − },
4011 − "dependencies": {
4012 − "tough-cookie": {
4013 − "version": "2.5.0",
4014 − "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
4015 − "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
4016 − "dev": true,
4017 − "requires": {
4018 − "psl": "^1.1.28",
4019 − "punycode": "^2.1.1"
4020 − }
4021 − }
4022 − }
4023 − },
4024 − "require-directory": {
4025 − "version": "2.1.1",
4026 − "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
4027 − "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
4028 − "dev": true
4029 − },
4030 − "require-main-filename": {
4031 − "version": "2.0.0",
4032 − "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
4033 − "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
4034 − "dev": true
4035 − },
4036 − "resolve": {
4037 − "version": "1.17.0",
4038 − "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
4039 − "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
4040 − "dev": true,
4041 − "requires": {
4042 − "path-parse": "^1.0.6"
4043 − }
4044 − },
4045 − "resolve-cwd": {
4046 − "version": "3.0.0",
4047 − "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
4048 − "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
4049 − "dev": true,
4050 − "requires": {
4051 − "resolve-from": "^5.0.0"
4052 − },
4053 − "dependencies": {
4054 − "resolve-from": {
4055 − "version": "5.0.0",
4056 − "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
4057 − "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
4058 − "dev": true
4059 − }
4060 − }
4061 − },
4062 − "resolve-from": {
4063 − "version": "4.0.0",
4064 − "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
4065 − "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
4066 − "dev": true
4067 − },
4068 − "resolve-url": {
4069 − "version": "0.2.1",
4070 − "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
4071 − "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
4072 − "dev": true
4073 − },
4074 − "ret": {
4075 − "version": "0.1.15",
4076 − "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
4077 − "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
4078 − "dev": true
4079 − },
4080 − "rimraf": {
4081 − "version": "3.0.2",
4082 − "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
4083 − "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
4084 − "dev": true,
4085 − "requires": {
4086 − "glob": "^7.1.3"
4087 − }
4088 − },
4089 − "rsvp": {
4090 − "version": "4.8.5",
4091 − "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz",
4092 − "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==",
4093 − "dev": true
4094 − },
4095 − "safe-buffer": {
4096 − "version": "5.1.2",
4097 − "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
4098 − "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
4099 − "dev": true
4100 − },
4101 − "safe-regex": {
4102 − "version": "1.1.0",
4103 − "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
4104 − "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
4105 − "dev": true,
4106 − "requires": {
4107 − "ret": "~0.1.10"
4108 − }
4109 − },
4110 − "safer-buffer": {
4111 − "version": "2.1.2",
4112 − "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
4113 − "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
4114 − "dev": true
4115 − },
4116 − "sane": {
4117 − "version": "4.1.0",
4118 − "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz",
4119 − "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==",
4120 − "dev": true,
4121 − "requires": {
4122 − "@cnakazawa/watch": "^1.0.3",
4123 − "anymatch": "^2.0.0",
4124 − "capture-exit": "^2.0.0",
4125 − "exec-sh": "^0.3.2",
4126 − "execa": "^1.0.0",
4127 − "fb-watchman": "^2.0.0",
4128 − "micromatch": "^3.1.4",
4129 − "minimist": "^1.1.1",
4130 − "walker": "~1.0.5"
4131 − },
4132 − "dependencies": {
4133 − "anymatch": {
4134 − "version": "2.0.0",
4135 − "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
4136 − "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
4137 − "dev": true,
4138 − "requires": {
4139 − "micromatch": "^3.1.4",
4140 − "normalize-path": "^2.1.1"
4141 − }
4142 − },
4143 − "braces": {
4144 − "version": "2.3.2",
4145 − "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
4146 − "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
4147 − "dev": true,
4148 − "requires": {
4149 − "arr-flatten": "^1.1.0",
4150 − "array-unique": "^0.3.2",
4151 − "extend-shallow": "^2.0.1",
4152 − "fill-range": "^4.0.0",
4153 − "isobject": "^3.0.1",
4154 − "repeat-element": "^1.1.2",
4155 − "snapdragon": "^0.8.1",
4156 − "snapdragon-node": "^2.0.1",
4157 − "split-string": "^3.0.2",
4158 − "to-regex": "^3.0.1"
4159 − },
4160 − "dependencies": {
4161 − "extend-shallow": {
4162 − "version": "2.0.1",
4163 − "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
4164 − "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
4165 − "dev": true,
4166 − "requires": {
4167 − "is-extendable": "^0.1.0"
4168 − }
4169 − }
4170 − }
4171 − },
4172 − "fill-range": {
4173 − "version": "4.0.0",
4174 − "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
4175 − "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
4176 − "dev": true,
4177 − "requires": {
4178 − "extend-shallow": "^2.0.1",
4179 − "is-number": "^3.0.0",
4180 − "repeat-string": "^1.6.1",
4181 − "to-regex-range": "^2.1.0"
4182 − },
4183 − "dependencies": {
4184 − "extend-shallow": {
4185 − "version": "2.0.1",
4186 − "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
4187 − "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
4188 − "dev": true,
4189 − "requires": {
4190 − "is-extendable": "^0.1.0"
4191 − }
4192 − }
4193 − }
4194 − },
4195 − "is-number": {
4196 − "version": "3.0.0",
4197 − "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
4198 − "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
4199 − "dev": true,
4200 − "requires": {
4201 − "kind-of": "^3.0.2"
4202 − },
4203 − "dependencies": {
4204 − "kind-of": {
4205 − "version": "3.2.2",
4206 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
4207 − "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
4208 − "dev": true,
4209 − "requires": {
4210 − "is-buffer": "^1.1.5"
4211 − }
4212 − }
4213 − }
4214 − },
4215 − "micromatch": {
4216 − "version": "3.1.10",
4217 − "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
4218 − "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
4219 − "dev": true,
4220 − "requires": {
4221 − "arr-diff": "^4.0.0",
4222 − "array-unique": "^0.3.2",
4223 − "braces": "^2.3.1",
4224 − "define-property": "^2.0.2",
4225 − "extend-shallow": "^3.0.2",
4226 − "extglob": "^2.0.4",
4227 − "fragment-cache": "^0.2.1",
4228 − "kind-of": "^6.0.2",
4229 − "nanomatch": "^1.2.9",
4230 − "object.pick": "^1.3.0",
4231 − "regex-not": "^1.0.0",
4232 − "snapdragon": "^0.8.1",
4233 − "to-regex": "^3.0.2"
4234 − }
4235 − },
4236 − "normalize-path": {
4237 − "version": "2.1.1",
4238 − "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
4239 − "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
4240 − "dev": true,
4241 − "requires": {
4242 − "remove-trailing-separator": "^1.0.1"
4243 − }
4244 − },
4245 − "to-regex-range": {
4246 − "version": "2.1.1",
4247 − "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
4248 − "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
4249 − "dev": true,
4250 − "requires": {
4251 − "is-number": "^3.0.0",
4252 − "repeat-string": "^1.6.1"
4253 − }
4254 − }
4255 − }
4256 − },
4257 − "saxes": {
4258 − "version": "5.0.1",
4259 − "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz",
4260 − "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==",
4261 − "dev": true,
4262 − "requires": {
4263 − "xmlchars": "^2.2.0"
4264 − }
4265 − },
4266 − "semver": {
4267 − "version": "7.3.2",
4268 − "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
4269 − "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ=="
4270 − },
4271 − "semver-compare": {
4272 − "version": "1.0.0",
4273 − "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz",
4274 − "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=",
4275 − "dev": true
4276 − },
4277 − "semver-regex": {
4278 − "version": "2.0.0",
4279 − "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz",
4280 − "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==",
4281 − "dev": true
4282 − },
4283 − "set-blocking": {
4284 − "version": "2.0.0",
4285 − "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
4286 − "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
4287 − "dev": true
4288 − },
4289 − "set-value": {
4290 − "version": "2.0.1",
4291 − "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
4292 − "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
4293 − "dev": true,
4294 − "requires": {
4295 − "extend-shallow": "^2.0.1",
4296 − "is-extendable": "^0.1.1",
4297 − "is-plain-object": "^2.0.3",
4298 − "split-string": "^3.0.1"
4299 − },
4300 − "dependencies": {
4301 − "extend-shallow": {
4302 − "version": "2.0.1",
4303 − "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
4304 − "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
4305 − "dev": true,
4306 − "requires": {
4307 − "is-extendable": "^0.1.0"
4308 − }
4309 − }
4310 − }
4311 − },
4312 − "shebang-command": {
4313 − "version": "1.2.0",
4314 − "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
4315 − "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
4316 − "dev": true,
4317 − "requires": {
4318 − "shebang-regex": "^1.0.0"
4319 − }
4320 − },
4321 − "shebang-regex": {
4322 − "version": "1.0.0",
4323 − "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
4324 − "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
4325 − "dev": true
4326 − },
4327 − "shellwords": {
4328 − "version": "0.1.1",
4329 − "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz",
4330 − "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==",
4331 − "dev": true,
4332 − "optional": true
4333 − },
4334 − "signal-exit": {
4335 − "version": "3.0.3",
4336 − "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
4337 − "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
4338 − "dev": true
4339 − },
4340 − "sisteransi": {
4341 − "version": "1.0.5",
4342 − "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
4343 − "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==",
4344 − "dev": true
4345 − },
4346 − "slash": {
4347 − "version": "3.0.0",
4348 − "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
4349 − "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
4350 − "dev": true
4351 − },
4352 − "snapdragon": {
4353 − "version": "0.8.2",
4354 − "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
4355 − "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
4356 − "dev": true,
4357 − "requires": {
4358 − "base": "^0.11.1",
4359 − "debug": "^2.2.0",
4360 − "define-property": "^0.2.5",
4361 − "extend-shallow": "^2.0.1",
4362 − "map-cache": "^0.2.2",
4363 − "source-map": "^0.5.6",
4364 − "source-map-resolve": "^0.5.0",
4365 − "use": "^3.1.0"
4366 − },
4367 − "dependencies": {
4368 − "debug": {
4369 − "version": "2.6.9",
4370 − "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
4371 − "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
4372 − "dev": true,
4373 − "requires": {
4374 − "ms": "2.0.0"
4375 − }
4376 − },
4377 − "define-property": {
4378 − "version": "0.2.5",
4379 − "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
4380 − "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
4381 − "dev": true,
4382 − "requires": {
4383 − "is-descriptor": "^0.1.0"
4384 − }
4385 − },
4386 − "extend-shallow": {
4387 − "version": "2.0.1",
4388 − "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
4389 − "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
4390 − "dev": true,
4391 − "requires": {
4392 − "is-extendable": "^0.1.0"
4393 − }
4394 − },
4395 − "ms": {
4396 − "version": "2.0.0",
4397 − "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
4398 − "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
4399 − "dev": true
4400 − },
4401 − "source-map": {
4402 − "version": "0.5.7",
4403 − "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
4404 − "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
4405 − "dev": true
4406 − }
4407 − }
4408 − },
4409 − "snapdragon-node": {
4410 − "version": "2.1.1",
4411 − "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
4412 − "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
4413 − "dev": true,
4414 − "requires": {
4415 − "define-property": "^1.0.0",
4416 − "isobject": "^3.0.0",
4417 − "snapdragon-util": "^3.0.1"
4418 − },
4419 − "dependencies": {
4420 − "define-property": {
4421 − "version": "1.0.0",
4422 − "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
4423 − "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
4424 − "dev": true,
4425 − "requires": {
4426 − "is-descriptor": "^1.0.0"
4427 − }
4428 − },
4429 − "is-accessor-descriptor": {
4430 − "version": "1.0.0",
4431 − "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
4432 − "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
4433 − "dev": true,
4434 − "requires": {
4435 − "kind-of": "^6.0.0"
4436 − }
4437 − },
4438 − "is-data-descriptor": {
4439 − "version": "1.0.0",
4440 − "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
4441 − "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
4442 − "dev": true,
4443 − "requires": {
4444 − "kind-of": "^6.0.0"
4445 − }
4446 − },
4447 − "is-descriptor": {
4448 − "version": "1.0.2",
4449 − "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
4450 − "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
4451 − "dev": true,
4452 − "requires": {
4453 − "is-accessor-descriptor": "^1.0.0",
4454 − "is-data-descriptor": "^1.0.0",
4455 − "kind-of": "^6.0.2"
4456 − }
4457 − }
4458 − }
4459 − },
4460 − "snapdragon-util": {
4461 − "version": "3.0.1",
4462 − "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
4463 − "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
4464 − "dev": true,
4465 − "requires": {
4466 − "kind-of": "^3.2.0"
4467 − },
4468 − "dependencies": {
4469 − "kind-of": {
4470 − "version": "3.2.2",
4471 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
4472 − "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
4473 − "dev": true,
4474 − "requires": {
4475 − "is-buffer": "^1.1.5"
4476 − }
4477 − }
4478 − }
4479 − },
4480 − "source-map": {
4481 − "version": "0.6.1",
4482 − "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
4483 − "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
4484 − "dev": true
4485 − },
4486 − "source-map-resolve": {
4487 − "version": "0.5.3",
4488 − "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
4489 − "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
4490 − "dev": true,
4491 − "requires": {
4492 − "atob": "^2.1.2",
4493 − "decode-uri-component": "^0.2.0",
4494 − "resolve-url": "^0.2.1",
4495 − "source-map-url": "^0.4.0",
4496 − "urix": "^0.1.0"
4497 − }
4498 − },
4499 − "source-map-support": {
4500 − "version": "0.5.19",
4501 − "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
4502 − "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
4503 − "dev": true,
4504 − "requires": {
4505 − "buffer-from": "^1.0.0",
4506 − "source-map": "^0.6.0"
4507 − }
4508 − },
4509 − "source-map-url": {
4510 − "version": "0.4.0",
4511 − "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
4512 − "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
4513 − "dev": true
4514 − },
4515 − "spdx-correct": {
4516 − "version": "3.1.1",
4517 − "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
4518 − "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
4519 − "dev": true,
4520 − "requires": {
4521 − "spdx-expression-parse": "^3.0.0",
4522 − "spdx-license-ids": "^3.0.0"
4523 − }
4524 − },
4525 − "spdx-exceptions": {
4526 − "version": "2.3.0",
4527 − "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
4528 − "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
4529 − "dev": true
4530 − },
4531 − "spdx-expression-parse": {
4532 − "version": "3.0.1",
4533 − "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
4534 − "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
4535 − "dev": true,
4536 − "requires": {
4537 − "spdx-exceptions": "^2.1.0",
4538 − "spdx-license-ids": "^3.0.0"
4539 − }
4540 − },
4541 − "spdx-license-ids": {
4542 − "version": "3.0.5",
4543 − "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz",
4544 − "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==",
4545 − "dev": true
4546 − },
4547 − "split-string": {
4548 − "version": "3.1.0",
4549 − "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
4550 − "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
4551 − "dev": true,
4552 − "requires": {
4553 − "extend-shallow": "^3.0.0"
4554 − }
4555 − },
4556 − "sprintf-js": {
4557 − "version": "1.0.3",
4558 − "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
4559 − "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
4560 − "dev": true
4561 − },
4562 − "sshpk": {
4563 − "version": "1.16.1",
4564 − "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz",
4565 − "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==",
4566 − "dev": true,
4567 − "requires": {
4568 − "asn1": "~0.2.3",
4569 − "assert-plus": "^1.0.0",
4570 − "bcrypt-pbkdf": "^1.0.0",
4571 − "dashdash": "^1.12.0",
4572 − "ecc-jsbn": "~0.1.1",
4573 − "getpass": "^0.1.1",
4574 − "jsbn": "~0.1.0",
4575 − "safer-buffer": "^2.0.2",
4576 − "tweetnacl": "~0.14.0"
4577 − }
4578 − },
4579 − "stack-utils": {
4580 − "version": "2.0.2",
4581 − "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.2.tgz",
4582 − "integrity": "sha512-0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg==",
4583 − "dev": true,
4584 − "requires": {
4585 − "escape-string-regexp": "^2.0.0"
4586 − },
4587 − "dependencies": {
4588 − "escape-string-regexp": {
4589 − "version": "2.0.0",
4590 − "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
4591 − "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
4592 − "dev": true
4593 − }
4594 − }
4595 − },
4596 − "static-extend": {
4597 − "version": "0.1.2",
4598 − "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
4599 − "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
4600 − "dev": true,
4601 − "requires": {
4602 − "define-property": "^0.2.5",
4603 − "object-copy": "^0.1.0"
4604 − },
4605 − "dependencies": {
4606 − "define-property": {
4607 − "version": "0.2.5",
4608 − "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
4609 − "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
4610 − "dev": true,
4611 − "requires": {
4612 − "is-descriptor": "^0.1.0"
4613 − }
4614 − }
4615 − }
4616 − },
4617 − "stealthy-require": {
4618 − "version": "1.1.1",
4619 − "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz",
4620 − "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=",
334 + "opencollective-postinstall": {
335 + "version": "2.0.2",
336 + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz",
337 + "integrity": "sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw==",
4621 338 "dev": true
4622 339 },
4623 − "string-length": {
4624 − "version": "4.0.1",
4625 − "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.1.tgz",
4626 − "integrity": "sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw==",
4627 − "dev": true,
4628 − "requires": {
4629 − "char-regex": "^1.0.2",
4630 − "strip-ansi": "^6.0.0"
4631 − }
4632 − },
4633 − "string-width": {
4634 − "version": "4.2.0",
4635 − "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
4636 − "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
340 + "p-limit": {
341 + "version": "2.3.0",
342 + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
343 + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
4637 344 "dev": true,
4638 345 "requires": {
4639 − "emoji-regex": "^8.0.0",
4640 − "is-fullwidth-code-point": "^3.0.0",
4641 − "strip-ansi": "^6.0.0"
346 + "p-try": "^2.0.0"
4642 347 }
4643 348 },
4644 − "strip-ansi": {
4645 − "version": "6.0.0",
4646 − "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
4647 − "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
349 + "p-locate": {
350 + "version": "4.1.0",
351 + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
352 + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
4648 353 "dev": true,
4649 354 "requires": {
4650 − "ansi-regex": "^5.0.0"
355 + "p-limit": "^2.2.0"
4651 356 }
4652 357 },
4653 − "strip-bom": {
4654 − "version": "4.0.0",
4655 − "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
4656 − "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
4657 − "dev": true
4658 − },
4659 − "strip-eof": {
4660 − "version": "1.0.0",
4661 − "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
4662 − "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
4663 − "dev": true
4664 − },
4665 − "strip-final-newline": {
4666 − "version": "2.0.0",
4667 − "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
4668 − "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
358 + "p-try": {
359 + "version": "2.2.0",
360 + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
361 + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
4669 362 "dev": true
4670 363 },
4671 − "supports-color": {
4672 − "version": "7.1.0",
4673 − "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
4674 − "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
364 + "parent-module": {
365 + "version": "1.0.1",
366 + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
367 + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
4675 368 "dev": true,
4676 369 "requires": {
4677 − "has-flag": "^4.0.0"
370 + "callsites": "^3.0.0"
4678 371 }
4679 372 },
4680 − "supports-hyperlinks": {
4681 − "version": "2.1.0",
4682 − "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz",
4683 − "integrity": "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==",
373 + "parse-json": {
374 + "version": "5.0.0",
375 + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz",
376 + "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==",
4684 377 "dev": true,
4685 378 "requires": {
4686 − "has-flag": "^4.0.0",
4687 − "supports-color": "^7.0.0"
379 + "@babel/code-frame": "^7.0.0",
380 + "error-ex": "^1.3.1",
381 + "json-parse-better-errors": "^1.0.1",
382 + "lines-and-columns": "^1.1.6"
4688 383 }
4689 384 },
4690 − "symbol-tree": {
4691 − "version": "3.2.4",
4692 − "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
4693 − "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
385 + "path-exists": {
386 + "version": "4.0.0",
387 + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
388 + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
389 + "dev": true
390 + },
391 + "path-type": {
392 + "version": "4.0.0",
393 + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
394 + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
4694 395 "dev": true
4695 396 },
4696 − "terminal-link": {
4697 − "version": "2.1.1",
4698 − "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz",
4699 − "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==",
397 + "pkg-dir": {
398 + "version": "4.2.0",
399 + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
400 + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
4700 401 "dev": true,
4701 402 "requires": {
4702 − "ansi-escapes": "^4.2.1",
4703 − "supports-hyperlinks": "^2.0.0"
403 + "find-up": "^4.0.0"
4704 404 }
4705 405 },
4706 − "test-exclude": {
4707 − "version": "6.0.0",
4708 − "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
4709 − "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
406 + "please-upgrade-node": {
407 + "version": "3.2.0",
408 + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz",
409 + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==",
4710 410 "dev": true,
4711 411 "requires": {
4712 − "@istanbuljs/schema": "^0.1.2",
4713 − "glob": "^7.1.4",
4714 − "minimatch": "^3.0.4"
412 + "semver-compare": "^1.0.0"
4715 413 }
4716 414 },
4717 − "throat": {
4718 − "version": "5.0.0",
4719 − "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz",
4720 − "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==",
415 + "prettier": {
416 + "version": "2.0.5",
417 + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.0.5.tgz",
418 + "integrity": "sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg==",
4721 419 "dev": true
4722 420 },
4723 − "tmpl": {
4724 − "version": "1.0.4",
4725 − "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz",
4726 − "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=",
421 + "regenerator-runtime": {
422 + "version": "0.13.5",
423 + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz",
424 + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==",
4727 425 "dev": true
4728 426 },
4729 − "to-fast-properties": {
4730 − "version": "2.0.0",
4731 − "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
4732 − "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
427 + "resolve-from": {
428 + "version": "4.0.0",
429 + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
430 + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
4733 431 "dev": true
4734 432 },
4735 − "to-object-path": {
4736 − "version": "0.3.0",
4737 − "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
4738 − "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
4739 − "dev": true,
4740 − "requires": {
4741 − "kind-of": "^3.0.2"
4742 − },
4743 − "dependencies": {
4744 − "kind-of": {
4745 − "version": "3.2.2",
4746 − "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
4747 − "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
4748 − "dev": true,
4749 − "requires": {
4750 − "is-buffer": "^1.1.5"
4751 − }
4752 − }
4753 − }
433 + "semver": {
434 + "version": "6.3.0",
435 + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
436 + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
4754 437 },
4755 − "to-regex": {
4756 − "version": "3.0.2",
4757 − "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
4758 − "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
4759 − "dev": true,
4760 − "requires": {
4761 − "define-property": "^2.0.2",
4762 − "extend-shallow": "^3.0.2",
4763 − "regex-not": "^1.0.2",
4764 − "safe-regex": "^1.1.0"
4765 − }
438 + "semver-compare": {
439 + "version": "1.0.0",
440 + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz",
441 + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=",
442 + "dev": true
4766 443 },
4767 − "to-regex-range": {
4768 − "version": "5.0.1",
4769 − "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
4770 − "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
4771 − "dev": true,
4772 − "requires": {
4773 − "is-number": "^7.0.0"
4774 − }
444 + "semver-regex": {
445 + "version": "2.0.0",
446 + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz",
447 + "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==",
448 + "dev": true
4775 449 },
4776 − "tough-cookie": {
4777 − "version": "3.0.1",
4778 − "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz",
4779 − "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==",
4780 − "dev": true,
4781 − "requires": {
4782 − "ip-regex": "^2.1.0",
4783 − "psl": "^1.1.28",
4784 − "punycode": "^2.1.1"
4785 − }
450 + "slash": {
451 + "version": "3.0.0",
452 + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
453 + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
454 + "dev": true
4786 455 },
4787 − "tr46": {
4788 − "version": "2.0.2",
4789 − "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.0.2.tgz",
4790 − "integrity": "sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg==",
456 + "supports-color": {
457 + "version": "7.1.0",
458 + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
459 + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
4791 460 "dev": true,
4792 461 "requires": {
4793 − "punycode": "^2.1.1"
462 + "has-flag": "^4.0.0"
4794 463 }
4795 464 },
4796 465 "tunnel": {
@@ -4798,42 +467,6 @@
4798 467 "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.4.tgz",
4799 468 "integrity": "sha1-LTeFoVjBdMmhbcLARuxfxfF0IhM="
4800 469 },
4801 − "tunnel-agent": {
4802 − "version": "0.6.0",
4803 − "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
4804 − "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
4805 − "dev": true,
4806 − "requires": {
4807 − "safe-buffer": "^5.0.1"
4808 − }
4809 − },
4810 − "tweetnacl": {
4811 − "version": "0.14.5",
4812 − "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
4813 − "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
4814 − "dev": true
4815 − },
4816 − "type-check": {
4817 − "version": "0.3.2",
4818 − "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
4819 − "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
4820 − "dev": true,
4821 − "requires": {
4822 − "prelude-ls": "~1.1.2"
4823 − }
4824 − },
4825 − "type-detect": {
4826 − "version": "4.0.8",
4827 − "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
4828 − "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
4829 − "dev": true
4830 − },
4831 − "type-fest": {
4832 − "version": "0.8.1",
4833 − "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
4834 − "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
4835 − "dev": true
4836 − },
4837 470 "typed-rest-client": {
4838 471 "version": "1.5.0",
4839 472 "resolved": "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.5.0.tgz",
@@ -4843,277 +476,22 @@
4843 476 "underscore": "1.8.3"
4844 477 }
4845 478 },
4846 − "typedarray-to-buffer": {
4847 − "version": "3.1.5",
4848 − "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
4849 − "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
4850 − "dev": true,
4851 − "requires": {
4852 − "is-typedarray": "^1.0.0"
4853 − }
4854 − },
4855 479 "underscore": {
4856 480 "version": "1.8.3",
4857 481 "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz",
4858 482 "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI="
4859 483 },
4860 − "union-value": {
4861 − "version": "1.0.1",
4862 − "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
4863 − "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
4864 − "dev": true,
4865 − "requires": {
4866 − "arr-union": "^3.1.0",
4867 − "get-value": "^2.0.6",
4868 − "is-extendable": "^0.1.1",
4869 − "set-value": "^2.0.1"
4870 − }
4871 − },
4872 − "unset-value": {
4873 − "version": "1.0.0",
4874 − "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
4875 − "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
4876 − "dev": true,
4877 − "requires": {
4878 − "has-value": "^0.3.1",
4879 − "isobject": "^3.0.0"
4880 − },
4881 − "dependencies": {
4882 − "has-value": {
4883 − "version": "0.3.1",
4884 − "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
4885 − "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
4886 − "dev": true,
4887 − "requires": {
4888 − "get-value": "^2.0.3",
4889 − "has-values": "^0.1.4",
4890 − "isobject": "^2.0.0"
4891 − },
4892 − "dependencies": {
4893 − "isobject": {
4894 − "version": "2.1.0",
4895 − "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
4896 − "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
4897 − "dev": true,
4898 − "requires": {
4899 − "isarray": "1.0.0"
4900 − }
4901 − }
4902 − }
4903 − },
4904 − "has-values": {
4905 − "version": "0.1.4",
4906 − "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
4907 − "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
4908 − "dev": true
4909 − }
4910 − }
4911 − },
4912 − "uri-js": {
4913 − "version": "4.4.0",
4914 − "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz",
4915 − "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==",
4916 − "dev": true,
4917 − "requires": {
4918 − "punycode": "^2.1.0"
4919 − }
4920 − },
4921 − "urix": {
4922 − "version": "0.1.0",
4923 − "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
4924 − "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
4925 − "dev": true
4926 − },
4927 − "use": {
4928 − "version": "3.1.1",
4929 − "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
4930 − "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
4931 − "dev": true
4932 − },
4933 484 "uuid": {
4934 485 "version": "3.3.3",
4935 486 "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz",
4936 487 "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ=="
4937 488 },
4938 − "v8-to-istanbul": {
4939 − "version": "5.0.1",
4940 − "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-5.0.1.tgz",
4941 − "integrity": "sha512-mbDNjuDajqYe3TXFk5qxcQy8L1msXNE37WTlLoqqpBfRsimbNcrlhQlDPntmECEcUvdC+AQ8CyMMf6EUx1r74Q==",
4942 − "dev": true,
4943 − "requires": {
4944 − "@types/istanbul-lib-coverage": "^2.0.1",
4945 − "convert-source-map": "^1.6.0",
4946 − "source-map": "^0.7.3"
4947 − },
4948 − "dependencies": {
4949 − "source-map": {
4950 − "version": "0.7.3",
4951 − "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
4952 − "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
4953 − "dev": true
4954 − }
4955 − }
4956 − },
4957 − "validate-npm-package-license": {
4958 − "version": "3.0.4",
4959 − "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
4960 − "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
4961 − "dev": true,
4962 − "requires": {
4963 − "spdx-correct": "^3.0.0",
4964 − "spdx-expression-parse": "^3.0.0"
4965 − }
4966 − },
4967 − "verror": {
4968 − "version": "1.10.0",
4969 − "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
4970 − "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
4971 − "dev": true,
4972 − "requires": {
4973 − "assert-plus": "^1.0.0",
4974 − "core-util-is": "1.0.2",
4975 − "extsprintf": "^1.2.0"
4976 − }
4977 − },
4978 − "w3c-hr-time": {
4979 − "version": "1.0.2",
4980 − "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz",
4981 − "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==",
4982 − "dev": true,
4983 − "requires": {
4984 − "browser-process-hrtime": "^1.0.0"
4985 − }
4986 − },
4987 − "w3c-xmlserializer": {
4988 − "version": "2.0.0",
4989 − "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz",
4990 − "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==",
4991 − "dev": true,
4992 − "requires": {
4993 − "xml-name-validator": "^3.0.0"
4994 − }
4995 − },
4996 − "walker": {
4997 − "version": "1.0.7",
4998 − "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz",
4999 − "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=",
5000 − "dev": true,
5001 − "requires": {
5002 − "makeerror": "1.0.x"
5003 − }
5004 − },
5005 − "webidl-conversions": {
5006 − "version": "6.1.0",
5007 − "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz",
5008 − "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==",
5009 − "dev": true
5010 − },
5011 − "whatwg-encoding": {
5012 − "version": "1.0.5",
5013 − "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz",
5014 − "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==",
5015 − "dev": true,
5016 − "requires": {
5017 − "iconv-lite": "0.4.24"
5018 − }
5019 − },
5020 − "whatwg-mimetype": {
5021 − "version": "2.3.0",
5022 − "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz",
5023 − "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==",
5024 − "dev": true
5025 − },
5026 − "whatwg-url": {
5027 − "version": "8.2.2",
5028 − "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.2.2.tgz",
5029 − "integrity": "sha512-PcVnO6NiewhkmzV0qn7A+UZ9Xx4maNTI+O+TShmfE4pqjoCMwUMjkvoNhNHPTvgR7QH9Xt3R13iHuWy2sToFxQ==",
5030 − "dev": true,
5031 − "requires": {
5032 − "lodash.sortby": "^4.7.0",
5033 − "tr46": "^2.0.2",
5034 − "webidl-conversions": "^6.1.0"
5035 − }
5036 − },
5037 − "which": {
5038 − "version": "1.3.1",
5039 − "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
5040 − "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
5041 − "dev": true,
5042 − "requires": {
5043 − "isexe": "^2.0.0"
5044 − }
5045 − },
5046 − "which-module": {
5047 − "version": "2.0.0",
5048 − "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
5049 − "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
5050 − "dev": true
5051 − },
5052 489 "which-pm-runs": {
5053 490 "version": "1.0.0",
5054 491 "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz",
5055 492 "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=",
5056 493 "dev": true
5057 494 },
5058 − "word-wrap": {
5059 − "version": "1.2.3",
5060 − "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
5061 − "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
5062 − "dev": true
5063 − },
5064 − "wrap-ansi": {
5065 − "version": "6.2.0",
5066 − "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
5067 − "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
5068 − "dev": true,
5069 − "requires": {
5070 − "ansi-styles": "^4.0.0",
5071 − "string-width": "^4.1.0",
5072 − "strip-ansi": "^6.0.0"
5073 − }
5074 − },
5075 − "wrappy": {
5076 − "version": "1.0.2",
5077 − "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
5078 − "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
5079 − "dev": true
5080 − },
5081 − "write-file-atomic": {
5082 − "version": "3.0.3",
5083 − "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
5084 − "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
5085 − "dev": true,
5086 − "requires": {
5087 − "imurmurhash": "^0.1.4",
5088 − "is-typedarray": "^1.0.0",
5089 − "signal-exit": "^3.0.2",
5090 − "typedarray-to-buffer": "^3.1.5"
5091 − }
5092 − },
5093 − "ws": {
5094 − "version": "7.3.1",
5095 − "resolved": "https://registry.npmjs.org/ws/-/ws-7.3.1.tgz",
5096 − "integrity": "sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==",
5097 − "dev": true
5098 − },
5099 − "xml-name-validator": {
5100 − "version": "3.0.0",
5101 − "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz",
5102 − "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==",
5103 − "dev": true
5104 − },
5105 − "xmlchars": {
5106 − "version": "2.2.0",
5107 − "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz",
5108 − "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
5109 − "dev": true
5110 − },
5111 − "y18n": {
5112 − "version": "4.0.0",
5113 − "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz",
5114 − "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==",
5115 − "dev": true
5116 − },
5117 495 "yaml": {
5118 496 "version": "1.9.2",
5119 497 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.9.2.tgz",
@@ -5122,35 +500,6 @@
5122 500 "requires": {
5123 501 "@babel/runtime": "^7.9.2"
5124 502 }
5125 − },
5126 − "yargs": {
5127 − "version": "15.4.1",
5128 − "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
5129 − "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
5130 − "dev": true,
5131 − "requires": {
5132 − "cliui": "^6.0.0",
5133 − "decamelize": "^1.2.0",
5134 − "find-up": "^4.1.0",
5135 − "get-caller-file": "^2.0.1",
5136 − "require-directory": "^2.1.1",
5137 − "require-main-filename": "^2.0.0",
5138 − "set-blocking": "^2.0.0",
5139 − "string-width": "^4.2.0",
5140 − "which-module": "^2.0.0",
5141 − "y18n": "^4.0.0",
5142 − "yargs-parser": "^18.1.2"
5143 − }
5144 − },
5145 − "yargs-parser": {
5146 − "version": "18.1.3",
5147 − "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
5148 − "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
5149 − "dev": true,
5150 − "requires": {
5151 − "camelcase": "^5.0.0",
5152 − "decamelize": "^1.2.0"
5153 − }
5154 503 }
5155 504 }
5156 505 }
modified package.json
+2 −3
@@ -5,8 +5,7 @@
5 5 "private": true,
6 6 "scripts": {
7 7 "build": "ncc build src/setup-elixir.js",
8 − "format": "prettier \"src/**/*.js\"",
9 − "test": "node __tests__/setup-elixir.test.js"
8 + "format": "prettier \"src/**/*.js\""
10 9 },
11 10 "husky": {
12 11 "hooks": {
@@ -17,7 +16,7 @@
17 16 "@actions/core": "^1.0.0",
18 17 "@actions/exec": "^1.0.0",
19 18 "@actions/tool-cache": "^1.1.0",
20 − "semver": "^7.3.2"
19 + "semver": "^6.3.0"
21 20 },
22 21 "devDependencies": {
23 22 "@zeit/ncc": "^0.22.1",

Parents: e0c9b41