提交 434f7dc5 编写于 作者: B baiy 提交者: ninecents

补码反码原码 #94

crontab 修改时间格式 #99
ARM to HEX #83
垂直高度自动 #95
上级 729b165d
{ {
"name": "c-tool", "name": "c-tool",
"version": "1.8.3", "version": "1.9.1",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {
...@@ -308,9 +308,9 @@ ...@@ -308,9 +308,9 @@
} }
}, },
"@babel/parser": { "@babel/parser": {
"version": "7.15.8", "version": "7.16.4",
"resolved": "https://registry.npmmirror.com/@babel/parser/download/@babel/parser-7.15.8.tgz", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz",
"integrity": "sha1-e6zcvnG9w/+TbVEMFdzqfPC5kBY=" "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng=="
}, },
"@babel/plugin-proposal-async-generator-functions": { "@babel/plugin-proposal-async-generator-functions": {
"version": "7.13.15", "version": "7.13.15",
...@@ -803,7 +803,6 @@ ...@@ -803,7 +803,6 @@
"version": "7.13.10", "version": "7.13.10",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.10.tgz", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.10.tgz",
"integrity": "sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw==", "integrity": "sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw==",
"dev": true,
"requires": { "requires": {
"regenerator-runtime": "^0.13.4" "regenerator-runtime": "^0.13.4"
} }
...@@ -904,6 +903,351 @@ ...@@ -904,6 +903,351 @@
"cssnano": "^4.0.0", "cssnano": "^4.0.0",
"cssnano-preset-default": "^4.0.0", "cssnano-preset-default": "^4.0.0",
"postcss": "^7.0.0" "postcss": "^7.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
}
},
"@jimp/bmp": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.16.1.tgz",
"integrity": "sha512-iwyNYQeBawrdg/f24x3pQ5rEx+/GwjZcCXd3Kgc+ZUd+Ivia7sIqBsOnDaMZdKCBPlfW364ekexnlOqyVa0NWg==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1",
"bmp-js": "^0.1.0"
}
},
"@jimp/core": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.16.1.tgz",
"integrity": "sha512-la7kQia31V6kQ4q1kI/uLimu8FXx7imWVajDGtwUG8fzePLWDFJyZl0fdIXVCL1JW2nBcRHidUot6jvlRDi2+g==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1",
"any-base": "^1.1.0",
"buffer": "^5.2.0",
"exif-parser": "^0.1.12",
"file-type": "^9.0.0",
"load-bmfont": "^1.3.1",
"mkdirp": "^0.5.1",
"phin": "^2.9.1",
"pixelmatch": "^4.0.2",
"tinycolor2": "^1.4.1"
}
},
"@jimp/custom": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.16.1.tgz",
"integrity": "sha512-DNUAHNSiUI/j9hmbatD6WN/EBIyeq4AO0frl5ETtt51VN1SvE4t4v83ZA/V6ikxEf3hxLju4tQ5Pc3zmZkN/3A==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/core": "^0.16.1"
}
},
"@jimp/gif": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.16.1.tgz",
"integrity": "sha512-r/1+GzIW1D5zrP4tNrfW+3y4vqD935WBXSc8X/wm23QTY9aJO9Lw6PEdzpYCEY+SOklIFKaJYUAq/Nvgm/9ryw==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1",
"gifwrap": "^0.9.2",
"omggif": "^1.0.9"
}
},
"@jimp/jpeg": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.16.1.tgz",
"integrity": "sha512-8352zrdlCCLFdZ/J+JjBslDvml+fS3Z8gttdml0We759PnnZGqrnPRhkOEOJbNUlE+dD4ckLeIe6NPxlS/7U+w==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1",
"jpeg-js": "0.4.2"
}
},
"@jimp/plugin-blit": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.16.1.tgz",
"integrity": "sha512-fKFNARm32RoLSokJ8WZXHHH2CGzz6ire2n1Jh6u+XQLhk9TweT1DcLHIXwQMh8oR12KgjbgsMGvrMVlVknmOAg==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-blur": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.16.1.tgz",
"integrity": "sha512-1WhuLGGj9MypFKRcPvmW45ht7nXkOKu+lg3n2VBzIB7r4kKNVchuI59bXaCYQumOLEqVK7JdB4glaDAbCQCLyw==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-circle": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.16.1.tgz",
"integrity": "sha512-JK7yi1CIU7/XL8hdahjcbGA3V7c+F+Iw+mhMQhLEi7Q0tCnZ69YJBTamMiNg3fWPVfMuvWJJKOBRVpwNTuaZRg==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-color": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.16.1.tgz",
"integrity": "sha512-9yQttBAO5SEFj7S6nJK54f+1BnuBG4c28q+iyzm1JjtnehjqMg6Ljw4gCSDCvoCQ3jBSYHN66pmwTV74SU1B7A==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1",
"tinycolor2": "^1.4.1"
}
},
"@jimp/plugin-contain": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.16.1.tgz",
"integrity": "sha512-44F3dUIjBDHN+Ym/vEfg+jtjMjAqd2uw9nssN67/n4FdpuZUVs7E7wadKY1RRNuJO+WgcD5aDQcsvurXMETQTg==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-cover": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.16.1.tgz",
"integrity": "sha512-YztWCIldBAVo0zxcQXR+a/uk3/TtYnpKU2CanOPJ7baIuDlWPsG+YE4xTsswZZc12H9Kl7CiziEbDtvF9kwA/Q==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-crop": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.16.1.tgz",
"integrity": "sha512-UQdva9oQzCVadkyo3T5Tv2CUZbf0klm2cD4cWMlASuTOYgaGaFHhT9st+kmfvXjKL8q3STkBu/zUPV6PbuV3ew==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-displace": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.16.1.tgz",
"integrity": "sha512-iVAWuz2+G6Heu8gVZksUz+4hQYpR4R0R/RtBzpWEl8ItBe7O6QjORAkhxzg+WdYLL2A/Yd4ekTpvK0/qW8hTVw==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-dither": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.16.1.tgz",
"integrity": "sha512-tADKVd+HDC9EhJRUDwMvzBXPz4GLoU6s5P7xkVq46tskExYSptgj5713J5Thj3NMgH9Rsqu22jNg1H/7tr3V9Q==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-fisheye": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.16.1.tgz",
"integrity": "sha512-BWHnc5hVobviTyIRHhIy9VxI1ACf4CeSuCfURB6JZm87YuyvgQh5aX5UDKtOz/3haMHXBLP61ZBxlNpMD8CG4A==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-flip": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.16.1.tgz",
"integrity": "sha512-KdxTf0zErfZ8DyHkImDTnQBuHby+a5YFdoKI/G3GpBl3qxLBvC+PWkS2F/iN3H7wszP7/TKxTEvWL927pypT0w==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-gaussian": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.16.1.tgz",
"integrity": "sha512-u9n4wjskh3N1mSqketbL6tVcLU2S5TEaFPR40K6TDv4phPLZALi1Of7reUmYpVm8mBDHt1I6kGhuCJiWvzfGyg==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-invert": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.16.1.tgz",
"integrity": "sha512-2DKuyVXANH8WDpW9NG+PYFbehzJfweZszFYyxcaewaPLN0GxvxVLOGOPP1NuUTcHkOdMFbE0nHDuB7f+sYF/2w==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-mask": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.16.1.tgz",
"integrity": "sha512-snfiqHlVuj4bSFS0v96vo2PpqCDMe4JB+O++sMo5jF5mvGcGL6AIeLo8cYqPNpdO6BZpBJ8MY5El0Veckhr39Q==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-normalize": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.16.1.tgz",
"integrity": "sha512-dOQfIOvGLKDKXPU8xXWzaUeB0nvkosHw6Xg1WhS1Z5Q0PazByhaxOQkSKgUryNN/H+X7UdbDvlyh/yHf3ITRaw==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-print": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.16.1.tgz",
"integrity": "sha512-ceWgYN40jbN4cWRxixym+csyVymvrryuKBQ+zoIvN5iE6OyS+2d7Mn4zlNgumSczb9GGyZZESIgVcBDA1ezq0Q==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1",
"load-bmfont": "^1.4.0"
}
},
"@jimp/plugin-resize": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.16.1.tgz",
"integrity": "sha512-u4JBLdRI7dargC04p2Ha24kofQBk3vhaf0q8FwSYgnCRwxfvh2RxvhJZk9H7Q91JZp6wgjz/SjvEAYjGCEgAwQ==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-rotate": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.16.1.tgz",
"integrity": "sha512-ZUU415gDQ0VjYutmVgAYYxC9Og9ixu2jAGMCU54mSMfuIlmohYfwARQmI7h4QB84M76c9hVLdONWjuo+rip/zg==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-scale": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.16.1.tgz",
"integrity": "sha512-jM2QlgThIDIc4rcyughD5O7sOYezxdafg/2Xtd1csfK3z6fba3asxDwthqPZAgitrLgiKBDp6XfzC07Y/CefUw==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-shadow": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.16.1.tgz",
"integrity": "sha512-MeD2Is17oKzXLnsphAa1sDstTu6nxscugxAEk3ji0GV1FohCvpHBcec0nAq6/czg4WzqfDts+fcPfC79qWmqrA==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugin-threshold": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.16.1.tgz",
"integrity": "sha512-iGW8U/wiCSR0+6syrPioVGoSzQFt4Z91SsCRbgNKTAk7D+XQv6OI78jvvYg4o0c2FOlwGhqz147HZV5utoSLxA==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1"
}
},
"@jimp/plugins": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.16.1.tgz",
"integrity": "sha512-c+lCqa25b+4q6mJZSetlxhMoYuiltyS+ValLzdwK/47+aYsq+kcJNl+TuxIEKf59yr9+5rkbpsPkZHLF/V7FFA==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/plugin-blit": "^0.16.1",
"@jimp/plugin-blur": "^0.16.1",
"@jimp/plugin-circle": "^0.16.1",
"@jimp/plugin-color": "^0.16.1",
"@jimp/plugin-contain": "^0.16.1",
"@jimp/plugin-cover": "^0.16.1",
"@jimp/plugin-crop": "^0.16.1",
"@jimp/plugin-displace": "^0.16.1",
"@jimp/plugin-dither": "^0.16.1",
"@jimp/plugin-fisheye": "^0.16.1",
"@jimp/plugin-flip": "^0.16.1",
"@jimp/plugin-gaussian": "^0.16.1",
"@jimp/plugin-invert": "^0.16.1",
"@jimp/plugin-mask": "^0.16.1",
"@jimp/plugin-normalize": "^0.16.1",
"@jimp/plugin-print": "^0.16.1",
"@jimp/plugin-resize": "^0.16.1",
"@jimp/plugin-rotate": "^0.16.1",
"@jimp/plugin-scale": "^0.16.1",
"@jimp/plugin-shadow": "^0.16.1",
"@jimp/plugin-threshold": "^0.16.1",
"timm": "^1.6.1"
}
},
"@jimp/png": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.16.1.tgz",
"integrity": "sha512-iyWoCxEBTW0OUWWn6SveD4LePW89kO7ZOy5sCfYeDM/oTPLpR8iMIGvZpZUz1b8kvzFr27vPst4E5rJhGjwsdw==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/utils": "^0.16.1",
"pngjs": "^3.3.3"
}
},
"@jimp/tiff": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.16.1.tgz",
"integrity": "sha512-3K3+xpJS79RmSkAvFMgqY5dhSB+/sxhwTFA9f4AVHUK0oKW+u6r52Z1L0tMXHnpbAdR9EJ+xaAl2D4x19XShkQ==",
"requires": {
"@babel/runtime": "^7.7.2",
"utif": "^2.0.1"
}
},
"@jimp/types": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.16.1.tgz",
"integrity": "sha512-g1w/+NfWqiVW4CaXSJyD28JQqZtm2eyKMWPhBBDCJN9nLCN12/Az0WFF3JUAktzdsEC2KRN2AqB1a2oMZBNgSQ==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/bmp": "^0.16.1",
"@jimp/gif": "^0.16.1",
"@jimp/jpeg": "^0.16.1",
"@jimp/png": "^0.16.1",
"@jimp/tiff": "^0.16.1",
"timm": "^1.6.1"
}
},
"@jimp/utils": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.16.1.tgz",
"integrity": "sha512-8fULQjB0x4LzUSiSYG6ZtQl355sZjxbv8r9PPAuYHzS9sGiSHJQavNqK/nKnpDsVkU88/vRGcE7t3nMU0dEnVw==",
"requires": {
"@babel/runtime": "^7.7.2",
"regenerator-runtime": "^0.13.3"
} }
}, },
"@mrmlnc/readdir-enhanced": { "@mrmlnc/readdir-enhanced": {
...@@ -948,28 +1292,19 @@ ...@@ -948,28 +1292,19 @@
} }
}, },
"@prettier/plugin-php": { "@prettier/plugin-php": {
"version": "0.17.5", "version": "0.17.6",
"resolved": "https://registry.npmjs.org/@prettier/plugin-php/-/plugin-php-0.17.5.tgz", "resolved": "https://registry.npmjs.org/@prettier/plugin-php/-/plugin-php-0.17.6.tgz",
"integrity": "sha512-RjnM1hPYJfM42bwMKucLwnconyamPAl6EWXUobJvR+QR6+O57YL2du5CSz4U6XjRnkj/pCdmHxQ9egxDJcgrBA==", "integrity": "sha512-Nxkq+Gl8bGbutRV7e3/p5d+Bcftn75oH61RT8xzk44T5ET7fVP50pUdaOdvt704GSNr6wwmfBW8MhBz5IKt+fA==",
"requires": { "requires": {
"linguist-languages": "^7.5.1", "linguist-languages": "^7.5.1",
"mem": "^8.0.0", "mem": "^8.0.0",
"php-parser": "github:glayzzle/php-parser#4c5b0675f52c0baab2e5b10a4e50e5d7a79b2767" "php-parser": "git+https://github.com/glayzzle/php-parser.git#27abcb2337ac6450c068ef064982dfabf77916a5"
}, },
"dependencies": { "dependencies": {
"php-parser": { "php-parser": {
"version": "github:glayzzle/php-parser#4c5b0675f52c0baab2e5b10a4e50e5d7a79b2767", "version": "git+https://github.com/glayzzle/php-parser.git#27abcb2337ac6450c068ef064982dfabf77916a5",
"from": "github:glayzzle/php-parser#4c5b0675f52c0baab2e5b10a4e50e5d7a79b2767" "from": "git+https://github.com/glayzzle/php-parser.git#27abcb2337ac6450c068ef064982dfabf77916a5"
}
} }
},
"@prettier/plugin-xml": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/@prettier/plugin-xml/-/plugin-xml-1.1.0.tgz",
"integrity": "sha512-ftQAIB3icdzvfMWmQ6HhxWFwIkVE2bZaPb2Z2YgX9BVqq3ucf33eQAdPwD1wWvPwXwbeZvDoz60vYZv/Qjq+rg==",
"requires": {
"@xml-tools/parser": "^1.0.11",
"prettier": ">=2.3"
} }
}, },
"@soda/friendly-errors-webpack-plugin": { "@soda/friendly-errors-webpack-plugin": {
...@@ -1025,17 +1360,17 @@ ...@@ -1025,17 +1360,17 @@
"dev": true "dev": true
}, },
"@typescript-eslint/types": { "@typescript-eslint/types": {
"version": "5.2.0", "version": "5.4.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.2.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.4.0.tgz",
"integrity": "sha512-cTk6x08qqosps6sPyP2j7NxyFPlCNsJwSDasqPNjEQ8JMD5xxj2NHxcLin5AJQ8pAVwpQ8BMI3bTxR0zxmK9qQ==" "integrity": "sha512-GjXNpmn+n1LvnttarX+sPD6+S7giO+9LxDIGlRl4wK3a7qMWALOHYuVSZpPTfEIklYjaWuMtfKdeByx0AcaThA=="
}, },
"@typescript-eslint/typescript-estree": { "@typescript-eslint/typescript-estree": {
"version": "5.2.0", "version": "5.4.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.2.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.4.0.tgz",
"integrity": "sha512-RsdXq2XmVgKbm9nLsE3mjNUM7BTr/K4DYR9WfFVMUuozHWtH5gMpiNZmtrMG8GR385EOSQ3kC9HiEMJWimxd/g==", "integrity": "sha512-nhlNoBdhKuwiLMx6GrybPT3SFILm5Gij2YBdPEPFlYNFAXUJWX6QRgvi/lwVoadaQEFsizohs6aFRMqsXI2ewA==",
"requires": { "requires": {
"@typescript-eslint/types": "5.2.0", "@typescript-eslint/types": "5.4.0",
"@typescript-eslint/visitor-keys": "5.2.0", "@typescript-eslint/visitor-keys": "5.4.0",
"debug": "^4.3.2", "debug": "^4.3.2",
"globby": "^11.0.4", "globby": "^11.0.4",
"is-glob": "^4.0.3", "is-glob": "^4.0.3",
...@@ -1119,9 +1454,9 @@ ...@@ -1119,9 +1454,9 @@
} }
}, },
"ignore": { "ignore": {
"version": "5.1.8", "version": "5.1.9",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.9.tgz",
"integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" "integrity": "sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ=="
}, },
"is-glob": { "is-glob": {
"version": "4.0.3", "version": "4.0.3",
...@@ -1187,18 +1522,18 @@ ...@@ -1187,18 +1522,18 @@
} }
}, },
"@typescript-eslint/visitor-keys": { "@typescript-eslint/visitor-keys": {
"version": "5.2.0", "version": "5.4.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.2.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.4.0.tgz",
"integrity": "sha512-Nk7HizaXWWCUBfLA/rPNKMzXzWS8Wg9qHMuGtT+v2/YpPij4nVXrVJc24N/r5WrrmqK31jCrZxeHqIgqRzs0Xg==", "integrity": "sha512-PVbax7MeE7tdLfW5SA0fs8NGVVr+buMPrcj+CWYWPXsZCH8qZ1THufDzbXm1xrZ2b2PA1iENJ0sRq5fuUtvsJg==",
"requires": { "requires": {
"@typescript-eslint/types": "5.2.0", "@typescript-eslint/types": "5.4.0",
"eslint-visitor-keys": "^3.0.0" "eslint-visitor-keys": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"eslint-visitor-keys": { "eslint-visitor-keys": {
"version": "3.0.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz",
"integrity": "sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q==" "integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA=="
} }
} }
}, },
...@@ -1821,6 +2156,22 @@ ...@@ -1821,6 +2156,22 @@
"yallist": "^2.1.2" "yallist": "^2.1.2"
} }
}, },
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"prettier": { "prettier": {
"version": "1.19.1", "version": "1.19.1",
"resolved": "https://registry.nlark.com/prettier/download/prettier-1.19.1.tgz?cache=0&sync_timestamp=1631777194110&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprettier%2Fdownload%2Fprettier-1.19.1.tgz", "resolved": "https://registry.nlark.com/prettier/download/prettier-1.19.1.tgz?cache=0&sync_timestamp=1631777194110&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprettier%2Fdownload%2Fprettier-1.19.1.tgz",
...@@ -2029,14 +2380,6 @@ ...@@ -2029,14 +2380,6 @@
"@xtuc/long": "4.2.2" "@xtuc/long": "4.2.2"
} }
}, },
"@xml-tools/parser": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/@xml-tools/parser/-/parser-1.0.11.tgz",
"integrity": "sha512-aKqQ077XnR+oQtHJlrAflaZaL7qZsulWc/i/ZEooar5JiWj1eLt0+Wg28cpa+XLney107wXqneC+oG1IZvxkTA==",
"requires": {
"chevrotain": "7.1.1"
}
},
"@xtuc/ieee754": { "@xtuc/ieee754": {
"version": "1.2.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
...@@ -2051,7 +2394,7 @@ ...@@ -2051,7 +2394,7 @@
}, },
"JSV": { "JSV": {
"version": "4.0.2", "version": "4.0.2",
"resolved": "https://registry.npm.taobao.org/JSV/download/JSV-4.0.2.tgz", "resolved": "https://registry.npmjs.org/JSV/-/JSV-4.0.2.tgz",
"integrity": "sha1-0Hf2glVx+CEy+d/67Vh7QCn+/1c=" "integrity": "sha1-0Hf2glVx+CEy+d/67Vh7QCn+/1c="
}, },
"accepts": { "accepts": {
...@@ -2120,8 +2463,8 @@ ...@@ -2120,8 +2463,8 @@
}, },
"angular-html-parser": { "angular-html-parser": {
"version": "1.8.0", "version": "1.8.0",
"resolved": "https://registry.npmmirror.com/angular-html-parser/download/angular-html-parser-1.8.0.tgz", "resolved": "https://registry.npmjs.org/angular-html-parser/-/angular-html-parser-1.8.0.tgz",
"integrity": "sha1-vTFbdOgGkTWgRpAgeMc9lZ0cxRw=", "integrity": "sha512-n5ZowjJJs1OPG3DHDSyUXZvscQzy7uQG227ncL1NzbJEPzfb2XtBZ9qT0PW7cbD7MViho3ijawXoRLCM0ih1rw==",
"requires": { "requires": {
"tslib": "^1.9.3" "tslib": "^1.9.3"
} }
...@@ -2157,6 +2500,11 @@ ...@@ -2157,6 +2500,11 @@
"color-convert": "^1.9.0" "color-convert": "^1.9.0"
} }
}, },
"any-base": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/any-base/-/any-base-1.1.0.tgz",
"integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg=="
},
"any-promise": { "any-promise": {
"version": "1.3.0", "version": "1.3.0",
"resolved": "https://registry.npm.taobao.org/any-promise/download/any-promise-1.3.0.tgz", "resolved": "https://registry.npm.taobao.org/any-promise/download/any-promise-1.3.0.tgz",
...@@ -2371,6 +2719,30 @@ ...@@ -2371,6 +2719,30 @@
"num2fraction": "^1.2.2", "num2fraction": "^1.2.2",
"postcss": "^7.0.32", "postcss": "^7.0.32",
"postcss-value-parser": "^4.1.0" "postcss-value-parser": "^4.1.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"aws-sign2": { "aws-sign2": {
...@@ -2394,9 +2766,9 @@ ...@@ -2394,9 +2766,9 @@
}, },
"dependencies": { "dependencies": {
"follow-redirects": { "follow-redirects": {
"version": "1.14.3", "version": "1.14.5",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.3.tgz", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz",
"integrity": "sha512-3MkHxknWMUtb23apkgz/83fDoe+y+qr0TdgacGIA7bew+QLBo3vdgEN2xEsuXNivpFy4CyDhBBZnNZOtalmenw==" "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA=="
} }
} }
}, },
...@@ -2539,7 +2911,7 @@ ...@@ -2539,7 +2911,7 @@
}, },
"babel-runtime": { "babel-runtime": {
"version": "6.26.0", "version": "6.26.0",
"resolved": "http://registry.npm.taobao.org/babel-runtime/download/babel-runtime-6.26.0.tgz", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
"integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
"requires": { "requires": {
"core-js": "^2.4.0", "core-js": "^2.4.0",
...@@ -2598,7 +2970,7 @@ ...@@ -2598,7 +2970,7 @@
}, },
"batch-processor": { "batch-processor": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "http://registry.npm.taobao.org/batch-processor/download/batch-processor-1.0.0.tgz", "resolved": "https://registry.npmjs.org/batch-processor/-/batch-processor-1.0.0.tgz",
"integrity": "sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg=" "integrity": "sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg="
}, },
"bcrypt-pbkdf": { "bcrypt-pbkdf": {
...@@ -2630,7 +3002,8 @@ ...@@ -2630,7 +3002,8 @@
"big.js": { "big.js": {
"version": "5.2.2", "version": "5.2.2",
"resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
"integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
"dev": true
}, },
"bignumber.js": { "bignumber.js": {
"version": "9.0.1", "version": "9.0.1",
...@@ -2660,6 +3033,11 @@ ...@@ -2660,6 +3033,11 @@
"integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
"dev": true "dev": true
}, },
"bmp-js": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/bmp-js/-/bmp-js-0.1.0.tgz",
"integrity": "sha1-4Fpj95amwf8l9Hcex62twUjAcjM="
},
"bn.js": { "bn.js": {
"version": "5.2.0", "version": "5.2.0",
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz",
...@@ -2924,9 +3302,14 @@ ...@@ -2924,9 +3302,14 @@
"resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
"integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg=="
}, },
"buffer-equal": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz",
"integrity": "sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs="
},
"buffer-fill": { "buffer-fill": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "http://registry.npm.taobao.org/buffer-fill/download/buffer-fill-1.0.0.tgz", "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
"integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw="
}, },
"buffer-from": { "buffer-from": {
...@@ -3156,14 +3539,6 @@ ...@@ -3156,14 +3539,6 @@
"integrity": "sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==", "integrity": "sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==",
"dev": true "dev": true
}, },
"chevrotain": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-7.1.1.tgz",
"integrity": "sha512-wy3mC1x4ye+O+QkEinVJkPf5u2vsrDIYW9G7ZuwFl6v/Yu0LwUuT2POsb+NUWApebyxfkQq6+yDfRExbnI5rcw==",
"requires": {
"regexp-to-ast": "0.5.0"
}
},
"chokidar": { "chokidar": {
"version": "3.5.1", "version": "3.5.1",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz",
...@@ -3265,11 +3640,6 @@ ...@@ -3265,11 +3640,6 @@
"dev": true, "dev": true,
"optional": true "optional": true
}, },
"clamp": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz",
"integrity": "sha1-ZqDmQBGBbjcZaCj9yMjBRzEshjQ="
},
"class-utils": { "class-utils": {
"version": "0.3.6", "version": "0.3.6",
"resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
...@@ -3515,6 +3885,20 @@ ...@@ -3515,6 +3885,20 @@
"resolved": "https://registry.npmjs.org/code-formatter/-/code-formatter-0.0.1.tgz", "resolved": "https://registry.npmjs.org/code-formatter/-/code-formatter-0.0.1.tgz",
"integrity": "sha512-472wqY+x6uc/pgV/+6bGnKvqvoHuPjb0O6pDNAfYKkFnAOqocTrro1mni69PZPMXFuE23ZSKdi9/37+uC0jI1Q==" "integrity": "sha512-472wqY+x6uc/pgV/+6bGnKvqvoHuPjb0O6pDNAfYKkFnAOqocTrro1mni69PZPMXFuE23ZSKdi9/37+uC0jI1Q=="
}, },
"codemirror": {
"version": "5.63.3",
"resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.63.3.tgz",
"integrity": "sha512-1C+LELr+5grgJYqwZKqxrcbPsHFHapVaVAloBsFBASbpLnQqLw1U8yXJ3gT5D+rhxIiSpo+kTqN+hQ+9ialIXw=="
},
"codemirror-graphql": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/codemirror-graphql/-/codemirror-graphql-1.1.0.tgz",
"integrity": "sha512-bp2XUg7epL07kJcylM8VCISK6X+rFsHL2lUkPQAw2v721MVhn+80FgjMP8tiZCOfJgHn1+JgsA71L5nOHWgUdA==",
"requires": {
"graphql-language-service-interface": "^2.9.0",
"graphql-language-service-parser": "^1.10.0"
}
},
"collection-visit": { "collection-visit": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "http://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz", "resolved": "http://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz",
...@@ -4015,6 +4399,30 @@ ...@@ -4015,6 +4399,30 @@
"requires": { "requires": {
"postcss": "^7.0.1", "postcss": "^7.0.1",
"timsort": "^0.3.0" "timsort": "^0.3.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"css-loader": { "css-loader": {
...@@ -4130,6 +4538,30 @@ ...@@ -4130,6 +4538,30 @@
"cssnano-preset-default": "^4.0.8", "cssnano-preset-default": "^4.0.8",
"is-resolvable": "^1.0.0", "is-resolvable": "^1.0.0",
"postcss": "^7.0.0" "postcss": "^7.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"cssnano-preset-default": { "cssnano-preset-default": {
...@@ -4168,6 +4600,30 @@ ...@@ -4168,6 +4600,30 @@
"postcss-reduce-transforms": "^4.0.2", "postcss-reduce-transforms": "^4.0.2",
"postcss-svgo": "^4.0.3", "postcss-svgo": "^4.0.3",
"postcss-unique-selectors": "^4.0.1" "postcss-unique-selectors": "^4.0.1"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"cssnano-util-get-arguments": { "cssnano-util-get-arguments": {
...@@ -4189,6 +4645,30 @@ ...@@ -4189,6 +4645,30 @@
"dev": true, "dev": true,
"requires": { "requires": {
"postcss": "^7.0.0" "postcss": "^7.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"cssnano-util-same-parent": { "cssnano-util-same-parent": {
...@@ -4515,6 +4995,11 @@ ...@@ -4515,6 +4995,11 @@
"integrity": "sha512-qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw==", "integrity": "sha512-qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw==",
"dev": true "dev": true
}, },
"diff-match-patch": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/diff-match-patch/-/diff-match-patch-1.0.5.tgz",
"integrity": "sha512-IayShXAgj/QMXgB0IWmKx+rOPuGMhqm5w6jvFxmVenXKIzRqTAAsbBPT3kWQeGANj3jGgvcvv4yK6SxqYmikgw=="
},
"diffie-hellman": { "diffie-hellman": {
"version": "5.0.3", "version": "5.0.3",
"resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
...@@ -4535,9 +5020,9 @@ ...@@ -4535,9 +5020,9 @@
} }
}, },
"dijkstrajs": { "dijkstrajs": {
"version": "1.0.1", "version": "1.0.2",
"resolved": "https://registry.npm.taobao.org/dijkstrajs/download/dijkstrajs-1.0.1.tgz", "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.2.tgz",
"integrity": "sha1-082BIh4+pAdCz83lVtTpnpjdxxs=" "integrity": "sha512-QV6PMaHTCNmKSeP6QoXhVTw9snc9VD8MulTT0Bd99Pacp4SS1cjcrYPgBPmibqKVtMJJfqC6XvOXgPMEEPH/fg=="
}, },
"dir-glob": { "dir-glob": {
"version": "2.2.2", "version": "2.2.2",
...@@ -4609,6 +5094,11 @@ ...@@ -4609,6 +5094,11 @@
} }
} }
}, },
"dom-walk": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz",
"integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w=="
},
"domain-browser": { "domain-browser": {
"version": "1.2.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
...@@ -4760,7 +5250,8 @@ ...@@ -4760,7 +5250,8 @@
"emojis-list": { "emojis-list": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
"integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
"dev": true
}, },
"encodeurl": { "encodeurl": {
"version": "1.0.2", "version": "1.0.2",
...@@ -5136,6 +5627,11 @@ ...@@ -5136,6 +5627,11 @@
"strip-eof": "^1.0.0" "strip-eof": "^1.0.0"
} }
}, },
"exif-parser": {
"version": "0.1.12",
"resolved": "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz",
"integrity": "sha1-WKnS1ywCwfbwKg70qRZicrd2CSI="
},
"expand-brackets": { "expand-brackets": {
"version": "2.1.4", "version": "2.1.4",
"resolved": "http://registry.npm.taobao.org/expand-brackets/download/expand-brackets-2.1.4.tgz", "resolved": "http://registry.npm.taobao.org/expand-brackets/download/expand-brackets-2.1.4.tgz",
...@@ -5492,6 +5988,11 @@ ...@@ -5492,6 +5988,11 @@
} }
} }
}, },
"file-type": {
"version": "9.0.0",
"resolved": "https://registry.npmjs.org/file-type/-/file-type-9.0.0.tgz",
"integrity": "sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw=="
},
"file-uri-to-path": { "file-uri-to-path": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
...@@ -5808,6 +6309,15 @@ ...@@ -5808,6 +6309,15 @@
"assert-plus": "^1.0.0" "assert-plus": "^1.0.0"
} }
}, },
"gifwrap": {
"version": "0.9.2",
"resolved": "https://registry.npmjs.org/gifwrap/-/gifwrap-0.9.2.tgz",
"integrity": "sha512-fcIswrPaiCDAyO8xnWvHSZdWChjKXUanKKpAiWWJ/UTkEi/aYKn5+90e7DE820zbEaVR9CE2y4z9bzhQijZ0BA==",
"requires": {
"image-q": "^1.1.1",
"omggif": "^1.0.10"
}
},
"glob": { "glob": {
"version": "7.1.6", "version": "7.1.6",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
...@@ -5849,6 +6359,15 @@ ...@@ -5849,6 +6359,15 @@
"integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=",
"dev": true "dev": true
}, },
"global": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz",
"integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==",
"requires": {
"min-document": "^2.19.0",
"process": "^0.11.10"
}
},
"globals": { "globals": {
"version": "11.12.0", "version": "11.12.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
...@@ -5882,9 +6401,47 @@ ...@@ -5882,9 +6401,47 @@
"resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz",
"integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU="
}, },
"gzip-size": { "graphql": {
"version": "5.1.1", "version": "15.5.0",
"resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.5.0.tgz",
"integrity": "sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA=="
},
"graphql-language-service-interface": {
"version": "2.9.0",
"resolved": "https://registry.npmjs.org/graphql-language-service-interface/-/graphql-language-service-interface-2.9.0.tgz",
"integrity": "sha512-FrfmEJCgYo9zz97VBs6093uGIHxxpb+z6dRi5MLV+spQYdEhfWy7BFJ7XjHPreDvxekK8SFtbVCYypETSGYe7w==",
"requires": {
"graphql-language-service-parser": "^1.10.0",
"graphql-language-service-types": "^1.8.0",
"graphql-language-service-utils": "^2.5.1",
"vscode-languageserver-types": "^3.15.1"
}
},
"graphql-language-service-parser": {
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/graphql-language-service-parser/-/graphql-language-service-parser-1.10.0.tgz",
"integrity": "sha512-cLExv0EjqT2hsKdwVTPmKU6eMfjZAjxqywgCPnWD48eJn6tyuePMyG7ye+jpX1PRPPx/cDHfFJGf8sUclchvng==",
"requires": {
"graphql-language-service-types": "^1.8.0"
}
},
"graphql-language-service-types": {
"version": "1.8.2",
"resolved": "https://registry.npmjs.org/graphql-language-service-types/-/graphql-language-service-types-1.8.2.tgz",
"integrity": "sha512-Sj07RHnMwAhEvAt7Jdt1l/x56ZpoNh+V6g+T58CF6GiYqI5l4vXqqRB4d4xHDcNQX98GpJfnf3o8BqPgP3C5Sw=="
},
"graphql-language-service-utils": {
"version": "2.5.3",
"resolved": "https://registry.npmjs.org/graphql-language-service-utils/-/graphql-language-service-utils-2.5.3.tgz",
"integrity": "sha512-ydevEZ0AgzEKQF3hiCbLXuS0o7189Ww/T30WtCKCLaRHDYk9Yyb2PZWdhSTWLxYZTaX2TccV6NtFWvzIC7UP3g==",
"requires": {
"graphql-language-service-types": "^1.8.0",
"nullthrows": "^1.0.0"
}
},
"gzip-size": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz",
"integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==",
"dev": true, "dev": true,
"requires": { "requires": {
...@@ -5947,7 +6504,7 @@ ...@@ -5947,7 +6504,7 @@
}, },
"has-color": { "has-color": {
"version": "0.1.7", "version": "0.1.7",
"resolved": "https://registry.npm.taobao.org/has-color/download/has-color-0.1.7.tgz", "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz",
"integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=" "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8="
}, },
"has-flag": { "has-flag": {
...@@ -6143,6 +6700,32 @@ ...@@ -6143,6 +6700,32 @@
"param-case": "2.1.x", "param-case": "2.1.x",
"relateurl": "0.2.x", "relateurl": "0.2.x",
"uglify-js": "3.4.x" "uglify-js": "3.4.x"
},
"dependencies": {
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
},
"uglify-js": {
"version": "3.4.10",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz",
"integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==",
"dev": true,
"requires": {
"commander": "~2.19.0",
"source-map": "~0.6.1"
},
"dependencies": {
"commander": {
"version": "2.19.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz",
"integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==",
"dev": true
}
}
}
} }
}, },
"html-tags": { "html-tags": {
...@@ -6231,11 +6814,6 @@ ...@@ -6231,11 +6814,6 @@
} }
} }
}, },
"http-build-query": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/http-build-query/-/http-build-query-0.7.0.tgz",
"integrity": "sha512-r5jnQ/PcKzFg2dLJAj9xU8cBHuLubxLli6NiFtziNrDqVwPcjIgioamZszzGOPJq6ekUu+WfIcgsuPqe9MX4Ag=="
},
"http-deceiver": { "http-deceiver": {
"version": "1.2.7", "version": "1.2.7",
"resolved": "https://registry.npm.taobao.org/http-deceiver/download/http-deceiver-1.2.7.tgz", "resolved": "https://registry.npm.taobao.org/http-deceiver/download/http-deceiver-1.2.7.tgz",
...@@ -6375,6 +6953,11 @@ ...@@ -6375,6 +6953,11 @@
"integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
"dev": true "dev": true
}, },
"image-q": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/image-q/-/image-q-1.1.1.tgz",
"integrity": "sha1-/IQJlmRGC5DKhi2TALa/u7+/gFY="
},
"image-size": { "image-size": {
"version": "0.5.5", "version": "0.5.5",
"resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz",
...@@ -6580,7 +7163,7 @@ ...@@ -6580,7 +7163,7 @@
}, },
"ipinyinjs": { "ipinyinjs": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npm.taobao.org/ipinyinjs/download/ipinyinjs-1.0.0.tgz", "resolved": "https://registry.npmjs.org/ipinyinjs/-/ipinyinjs-1.0.0.tgz",
"integrity": "sha1-NlEy7jIB6ncjQigicCXTpDE6q34=" "integrity": "sha1-NlEy7jIB6ncjQigicCXTpDE6q34="
}, },
"is-absolute-url": { "is-absolute-url": {
...@@ -6739,6 +7322,11 @@ ...@@ -6739,6 +7322,11 @@
"resolved": "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz", "resolved": "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz",
"integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8="
}, },
"is-function": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz",
"integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ=="
},
"is-glob": { "is-glob": {
"version": "4.0.1", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
...@@ -6877,11 +7465,6 @@ ...@@ -6877,11 +7465,6 @@
"integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
"dev": true "dev": true
}, },
"is-url": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz",
"integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww=="
},
"is-windows": { "is-windows": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
...@@ -6920,30 +7503,6 @@ ...@@ -6920,30 +7503,6 @@
"integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
"dev": true "dev": true
}, },
"java-parser": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/java-parser/-/java-parser-2.0.0.tgz",
"integrity": "sha512-5sTEggUlp+uns7tfHGwRTN+cMlgPHw00oNjAz6YdwEyQyWQ9VzUNbYuPuDyJDWfcFyZTlHKD5f7VbtChKZf4xw==",
"requires": {
"chevrotain": "6.5.0",
"lodash": "4.17.21"
},
"dependencies": {
"chevrotain": {
"version": "6.5.0",
"resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-6.5.0.tgz",
"integrity": "sha512-BwqQ/AgmKJ8jcMEjaSnfMybnKMgGTrtDKowfTP3pX4jwVy0kNjRsT/AP6h+wC3+3NC+X8X15VWBnTCQlX+wQFg==",
"requires": {
"regexp-to-ast": "0.4.0"
}
},
"regexp-to-ast": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.4.0.tgz",
"integrity": "sha512-4qf/7IsIKfSNHQXSwial1IFmfM1Cc/whNBQqRwe0V2stPe7KmN1U0tWQiIx6JiirgSrisjE0eECdNf7Tav1Ntw=="
}
}
},
"javascript-stringify": { "javascript-stringify": {
"version": "1.6.0", "version": "1.6.0",
"resolved": "http://registry.npm.taobao.org/javascript-stringify/download/javascript-stringify-1.6.0.tgz", "resolved": "http://registry.npm.taobao.org/javascript-stringify/download/javascript-stringify-1.6.0.tgz",
...@@ -6955,6 +7514,23 @@ ...@@ -6955,6 +7514,23 @@
"resolved": "https://registry.npmjs.org/jian_fan/-/jian_fan-1.0.3.tgz", "resolved": "https://registry.npmjs.org/jian_fan/-/jian_fan-1.0.3.tgz",
"integrity": "sha512-b7Dr2hckX8zViAcEMBMQ/SPtqmfmqQ9Za6W9KD05rcZpb52E2PzxPUwTn0H2TMDv4gaqfa5tUrGNLci9dcnLxw==" "integrity": "sha512-b7Dr2hckX8zViAcEMBMQ/SPtqmfmqQ9Za6W9KD05rcZpb52E2PzxPUwTn0H2TMDv4gaqfa5tUrGNLci9dcnLxw=="
}, },
"jimp": {
"version": "0.16.1",
"resolved": "https://registry.npmjs.org/jimp/-/jimp-0.16.1.tgz",
"integrity": "sha512-+EKVxbR36Td7Hfd23wKGIeEyHbxShZDX6L8uJkgVW3ESA9GiTEPK08tG1XI2r/0w5Ch0HyJF5kPqF9K7EmGjaw==",
"requires": {
"@babel/runtime": "^7.7.2",
"@jimp/custom": "^0.16.1",
"@jimp/plugins": "^0.16.1",
"@jimp/types": "^0.16.1",
"regenerator-runtime": "^0.13.3"
}
},
"jpeg-js": {
"version": "0.4.2",
"resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.2.tgz",
"integrity": "sha512-+az2gi/hvex7eLTMTlbRLOhH6P6WFdk2ITI8HJsaH2VqYO0I594zXSYEP+tf4FW+8Cy68ScDXoAsQdyQanv3sw=="
},
"js-base64": { "js-base64": {
"version": "2.6.4", "version": "2.6.4",
"resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz",
...@@ -7143,9 +7719,9 @@ ...@@ -7143,9 +7719,9 @@
} }
}, },
"jsqr": { "jsqr": {
"version": "1.3.1", "version": "1.4.0",
"resolved": "https://registry.npmjs.org/jsqr/-/jsqr-1.3.1.tgz", "resolved": "https://registry.npmjs.org/jsqr/-/jsqr-1.4.0.tgz",
"integrity": "sha512-zCTP6Qd/WwjrpuHFkJuXc5opRdKprUr7eI7+JCCtcetThJt45qptu82MWQ+eET+FtDrMo7+BYjo3iD0XIq1L9Q==" "integrity": "sha512-dxLob7q65Xg2DvstYkRpkYtmKm2sPJ9oFhrhmudT1dZvNFFTlroai3AWSpLey/w5vMcLBXRgOJsbXpdN9HzU/A=="
}, },
"jsrsasign": { "jsrsasign": {
"version": "10.4.1", "version": "10.4.1",
...@@ -7405,6 +7981,28 @@ ...@@ -7405,6 +7981,28 @@
"resolved": "https://registry.npmjs.org/linguist-languages/-/linguist-languages-7.15.0.tgz", "resolved": "https://registry.npmjs.org/linguist-languages/-/linguist-languages-7.15.0.tgz",
"integrity": "sha512-qkSSNDjDDycZ2Wcw+GziNBB3nNo3ddYUInM/PL8Amgwbd9RQ/BKGj2/1d6mdxKgBFnUqZuaDbkIwkE4KUwwmtQ==" "integrity": "sha512-qkSSNDjDDycZ2Wcw+GziNBB3nNo3ddYUInM/PL8Amgwbd9RQ/BKGj2/1d6mdxKgBFnUqZuaDbkIwkE4KUwwmtQ=="
}, },
"load-bmfont": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.1.tgz",
"integrity": "sha512-8UyQoYmdRDy81Brz6aLAUhfZLwr5zV0L3taTQ4hju7m6biuwiWiJXjPhBJxbUQJA8PrkvJ/7Enqmwk2sM14soA==",
"requires": {
"buffer-equal": "0.0.1",
"mime": "^1.3.4",
"parse-bmfont-ascii": "^1.0.3",
"parse-bmfont-binary": "^1.0.5",
"parse-bmfont-xml": "^1.1.4",
"phin": "^2.9.1",
"xhr": "^2.0.1",
"xtend": "^4.0.0"
},
"dependencies": {
"mime": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
"integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="
}
}
},
"loader-fs-cache": { "loader-fs-cache": {
"version": "1.0.3", "version": "1.0.3",
"resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz", "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz",
...@@ -7512,32 +8110,32 @@ ...@@ -7512,32 +8110,32 @@
}, },
"lodash.isarray": { "lodash.isarray": {
"version": "3.0.3", "version": "3.0.3",
"resolved": "https://registry.npm.taobao.org/lodash.isarray/download/lodash.isarray-3.0.3.tgz", "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.3.tgz",
"integrity": "sha1-TboTmi2QfCT9CWhJzkLxnCVSNVM=" "integrity": "sha1-TboTmi2QfCT9CWhJzkLxnCVSNVM="
}, },
"lodash.isboolean": { "lodash.isboolean": {
"version": "3.0.1", "version": "3.0.1",
"resolved": "https://registry.npm.taobao.org/lodash.isboolean/download/lodash.isboolean-3.0.1.tgz", "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.1.tgz",
"integrity": "sha1-78xyujJHQ67YimGIta2qWNnDGaQ=" "integrity": "sha1-78xyujJHQ67YimGIta2qWNnDGaQ="
}, },
"lodash.isnull": { "lodash.isnull": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npm.taobao.org/lodash.isnull/download/lodash.isnull-3.0.0.tgz", "resolved": "https://registry.npmjs.org/lodash.isnull/-/lodash.isnull-3.0.0.tgz",
"integrity": "sha1-+vvlnqHcon7teGU0A53YTC4HxW4=" "integrity": "sha1-+vvlnqHcon7teGU0A53YTC4HxW4="
}, },
"lodash.isnumber": { "lodash.isnumber": {
"version": "3.0.1", "version": "3.0.1",
"resolved": "https://registry.npm.taobao.org/lodash.isnumber/download/lodash.isnumber-3.0.1.tgz", "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.1.tgz",
"integrity": "sha1-YoofPxmOLdzSt+uRY1QLZ3YlWYU=" "integrity": "sha1-YoofPxmOLdzSt+uRY1QLZ3YlWYU="
}, },
"lodash.isobject": { "lodash.isobject": {
"version": "3.0.2", "version": "3.0.2",
"resolved": "https://registry.npm.taobao.org/lodash.isobject/download/lodash.isobject-3.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flodash.isobject%2Fdownload%2Flodash.isobject-3.0.2.tgz", "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz",
"integrity": "sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0=" "integrity": "sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0="
}, },
"lodash.isstring": { "lodash.isstring": {
"version": "3.0.1", "version": "3.0.1",
"resolved": "https://registry.npm.taobao.org/lodash.isstring/download/lodash.isstring-3.0.1.tgz", "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-3.0.1.tgz",
"integrity": "sha1-QWOJROoELvZ61nwpOqVB0/PW5Tw=" "integrity": "sha1-QWOJROoELvZ61nwpOqVB0/PW5Tw="
}, },
"lodash.kebabcase": { "lodash.kebabcase": {
...@@ -7560,7 +8158,7 @@ ...@@ -7560,7 +8158,7 @@
}, },
"lodash.throttle": { "lodash.throttle": {
"version": "4.1.1", "version": "4.1.1",
"resolved": "http://registry.npm.taobao.org/lodash.throttle/download/lodash.throttle-4.1.1.tgz", "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz",
"integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ="
}, },
"lodash.transform": { "lodash.transform": {
...@@ -7646,11 +8244,6 @@ ...@@ -7646,11 +8244,6 @@
"object-visit": "^1.0.0" "object-visit": "^1.0.0"
} }
}, },
"material-colors": {
"version": "1.2.6",
"resolved": "https://registry.npmjs.org/material-colors/-/material-colors-1.2.6.tgz",
"integrity": "sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg=="
},
"md5.js": { "md5.js": {
"version": "1.3.5", "version": "1.3.5",
"resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
...@@ -7792,17 +8385,17 @@ ...@@ -7792,17 +8385,17 @@
"dev": true "dev": true
}, },
"mime-types": { "mime-types": {
"version": "2.1.33", "version": "2.1.34",
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz",
"integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==", "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==",
"requires": { "requires": {
"mime-db": "1.50.0" "mime-db": "1.51.0"
}, },
"dependencies": { "dependencies": {
"mime-db": { "mime-db": {
"version": "1.50.0", "version": "1.51.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz",
"integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==" "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g=="
} }
} }
}, },
...@@ -7812,6 +8405,14 @@ ...@@ -7812,6 +8405,14 @@
"integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==",
"dev": true "dev": true
}, },
"min-document": {
"version": "2.19.0",
"resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz",
"integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=",
"requires": {
"dom-walk": "^0.1.0"
}
},
"mini-css-extract-plugin": { "mini-css-extract-plugin": {
"version": "0.8.2", "version": "0.8.2",
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.2.tgz", "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.2.tgz",
...@@ -7907,7 +8508,6 @@ ...@@ -7907,7 +8508,6 @@
"version": "0.5.5", "version": "0.5.5",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
"integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
"dev": true,
"requires": { "requires": {
"minimist": "^1.2.5" "minimist": "^1.2.5"
} }
...@@ -7925,31 +8525,6 @@ ...@@ -7925,31 +8525,6 @@
"moment": ">= 2.9.0" "moment": ">= 2.9.0"
} }
}, },
"monaco-editor": {
"version": "0.29.1",
"resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.29.1.tgz",
"integrity": "sha512-rguaEG/zrPQSaKzQB7IfX/PpNa0qxF1FY8ZXRkN4WIl8qZdTQRSRJCtRto7IMcSgrU6H53RXI+fTcywOBC4aVw=="
},
"monaco-editor-webpack-plugin": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/monaco-editor-webpack-plugin/-/monaco-editor-webpack-plugin-5.0.0.tgz",
"integrity": "sha512-KrUUTmMO3lDCNK4honZ6rrrKjOI7FFLeyCktPetIo5HlRqr5dfE6ewaA9qNLH96XY7CekE3Z+v/+I6ufAs3ObA==",
"requires": {
"loader-utils": "^2.0.0"
},
"dependencies": {
"loader-utils": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
"integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
}
}
},
"move-concurrently": { "move-concurrently": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz", "resolved": "https://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz",
...@@ -8009,6 +8584,11 @@ ...@@ -8009,6 +8584,11 @@
"dev": true, "dev": true,
"optional": true "optional": true
}, },
"nanoid": {
"version": "3.1.30",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz",
"integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ=="
},
"nanomatch": { "nanomatch": {
"version": "1.2.13", "version": "1.2.13",
"resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
...@@ -8141,16 +8721,16 @@ ...@@ -8141,16 +8721,16 @@
"dev": true "dev": true
}, },
"node-sql-parser": { "node-sql-parser": {
"version": "3.8.4", "version": "3.9.4",
"resolved": "https://registry.npmjs.org/node-sql-parser/-/node-sql-parser-3.8.4.tgz", "resolved": "https://registry.npmjs.org/node-sql-parser/-/node-sql-parser-3.9.4.tgz",
"integrity": "sha512-sxqk8JFsKXBrXMV2ai860VytxVKsj10crDhYQM/UoAuObL1a3Mt6u2cGAlz8ppo8V1fEkHjm2vu4OhKTwWwEqQ==", "integrity": "sha512-U8xa/QBpNz/dc4BERBkMg//XTrBDcj0uIg5YDYPV4ChYgHPEw4JhoT5YWTxQuKBg/3C1kfkTO4MuEYw7fCYHJw==",
"requires": { "requires": {
"big-integer": "^1.6.48" "big-integer": "^1.6.48"
} }
}, },
"nomnom": { "nomnom": {
"version": "1.8.1", "version": "1.8.1",
"resolved": "https://registry.npm.taobao.org/nomnom/download/nomnom-1.8.1.tgz", "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz",
"integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=",
"requires": { "requires": {
"chalk": "~0.4.0", "chalk": "~0.4.0",
...@@ -8159,12 +8739,12 @@ ...@@ -8159,12 +8739,12 @@
"dependencies": { "dependencies": {
"ansi-styles": { "ansi-styles": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-1.0.0.tgz", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz",
"integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=" "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg="
}, },
"chalk": { "chalk": {
"version": "0.4.0", "version": "0.4.0",
"resolved": "https://registry.npm.taobao.org/chalk/download/chalk-0.4.0.tgz", "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz",
"integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=",
"requires": { "requires": {
"ansi-styles": "~1.0.0", "ansi-styles": "~1.0.0",
...@@ -8174,7 +8754,7 @@ ...@@ -8174,7 +8754,7 @@
}, },
"strip-ansi": { "strip-ansi": {
"version": "0.1.1", "version": "0.1.1",
"resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-0.1.1.tgz?cache=0&sync_timestamp=1573280518303&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-0.1.1.tgz", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz",
"integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=" "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE="
} }
} }
...@@ -8259,6 +8839,11 @@ ...@@ -8259,6 +8839,11 @@
"boolbase": "~1.0.0" "boolbase": "~1.0.0"
} }
}, },
"nullthrows": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz",
"integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw=="
},
"num2fraction": { "num2fraction": {
"version": "1.2.2", "version": "1.2.2",
"resolved": "https://registry.npm.taobao.org/num2fraction/download/num2fraction-1.2.2.tgz", "resolved": "https://registry.npm.taobao.org/num2fraction/download/num2fraction-1.2.2.tgz",
...@@ -8431,6 +9016,11 @@ ...@@ -8431,6 +9016,11 @@
"integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==",
"dev": true "dev": true
}, },
"omggif": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/omggif/-/omggif-1.0.10.tgz",
"integrity": "sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw=="
},
"on-finished": { "on-finished": {
"version": "2.3.0", "version": "2.3.0",
"resolved": "http://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz", "resolved": "http://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz",
...@@ -8675,6 +9265,30 @@ ...@@ -8675,6 +9265,30 @@
"safe-buffer": "^5.1.1" "safe-buffer": "^5.1.1"
} }
}, },
"parse-bmfont-ascii": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/parse-bmfont-ascii/-/parse-bmfont-ascii-1.0.6.tgz",
"integrity": "sha1-Eaw8P/WPfCAgqyJ2kHkQjU36AoU="
},
"parse-bmfont-binary": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/parse-bmfont-binary/-/parse-bmfont-binary-1.0.6.tgz",
"integrity": "sha1-0Di0dtPp3Z2x4RoLDlOiJ5K2kAY="
},
"parse-bmfont-xml": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/parse-bmfont-xml/-/parse-bmfont-xml-1.1.4.tgz",
"integrity": "sha512-bjnliEOmGv3y1aMEfREMBJ9tfL3WR0i0CKPj61DnSLaoxWR3nLrsQrEbCId/8rF4NyRF0cCqisSVXyQYWM+mCQ==",
"requires": {
"xml-parse-from-string": "^1.0.0",
"xml2js": "^0.4.5"
}
},
"parse-headers": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.4.tgz",
"integrity": "sha512-psZ9iZoCNFLrgRjZ1d8mn0h9WRqJwFxM9q3x7iUjN/YT2OksthDJ5TiPCu2F38kS4zutqfW+YdVVkBZZx3/1aw=="
},
"parse-json": { "parse-json": {
"version": "4.0.0", "version": "4.0.0",
"resolved": "https://registry.npm.taobao.org/parse-json/download/parse-json-4.0.0.tgz", "resolved": "https://registry.npm.taobao.org/parse-json/download/parse-json-4.0.0.tgz",
...@@ -8803,22 +9417,29 @@ ...@@ -8803,22 +9417,29 @@
"integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
"dev": true "dev": true
}, },
"phin": {
"version": "2.9.3",
"resolved": "https://registry.npmjs.org/phin/-/phin-2.9.3.tgz",
"integrity": "sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA=="
},
"php-array-reader": { "php-array-reader": {
"version": "1.3.0", "version": "1.3.2",
"resolved": "https://registry.npmjs.org/php-array-reader/-/php-array-reader-1.3.0.tgz", "resolved": "https://registry.npmjs.org/php-array-reader/-/php-array-reader-1.3.2.tgz",
"integrity": "sha512-mTWGcWL7U0R6AkR0OYTxJXkvVGDaoIQC0rTa5ljxWoL8bG4nlRXG0hqIsORKXFfTQDqC76ei7qw/sjwoZ/ACyg==", "integrity": "sha512-cst+HORl+eE4tVnyPnmSY2T1zJWGZTE+u2BlGeo488AAfZY66RIfetNDGXFjtQODHVqVTuMRgC0TUnd1fxti0w==",
"requires": { "requires": {
"php-parser": "^3.0.3" "php-parser": "^3.0.3"
}
}, },
"dependencies": {
"php-parser": { "php-parser": {
"version": "3.0.3", "version": "3.0.3",
"resolved": "https://registry.npmjs.org/php-parser/-/php-parser-3.0.3.tgz", "resolved": "https://registry.npmjs.org/php-parser/-/php-parser-3.0.3.tgz",
"integrity": "sha512-WjbrtYrwmLY9hpoKoq1+mVqJhT0dEVDZRWSpNIw2MpTw3VM/K4C6e0WR4KlU6G/XROkV7tpH4NesV2dDiPxqaw==" "integrity": "sha512-WjbrtYrwmLY9hpoKoq1+mVqJhT0dEVDZRWSpNIw2MpTw3VM/K4C6e0WR4KlU6G/XROkV7tpH4NesV2dDiPxqaw=="
}
}
}, },
"phparr": { "phparr": {
"version": "0.2.0", "version": "0.2.0",
"resolved": "https://registry.npm.taobao.org/phparr/download/phparr-0.2.0.tgz", "resolved": "https://registry.npmjs.org/phparr/-/phparr-0.2.0.tgz",
"integrity": "sha1-WeqkMXLYSM7x3QMJtHLDfOkRTWU=", "integrity": "sha1-WeqkMXLYSM7x3QMJtHLDfOkRTWU=",
"requires": { "requires": {
"lodash.isarray": "3.0.3", "lodash.isarray": "3.0.3",
...@@ -8829,6 +9450,11 @@ ...@@ -8829,6 +9450,11 @@
"lodash.isstring": "3.0.1" "lodash.isstring": "3.0.1"
} }
}, },
"picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
},
"picomatch": { "picomatch": {
"version": "2.2.3", "version": "2.2.3",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.3.tgz", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.3.tgz",
...@@ -8855,6 +9481,14 @@ ...@@ -8855,6 +9481,14 @@
"pinkie": "^2.0.0" "pinkie": "^2.0.0"
} }
}, },
"pixelmatch": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-4.0.2.tgz",
"integrity": "sha1-j0fc7FARtHe2fbA8JDvB8wheiFQ=",
"requires": {
"pngjs": "^3.0.0"
}
},
"pkg-dir": { "pkg-dir": {
"version": "4.2.0", "version": "4.2.0",
"resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
...@@ -8949,31 +9583,13 @@ ...@@ -8949,31 +9583,13 @@
"dev": true "dev": true
}, },
"postcss": { "postcss": {
"version": "7.0.35", "version": "8.3.11",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz",
"integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==",
"dev": true,
"requires": { "requires": {
"chalk": "^2.4.2", "nanoid": "^3.1.30",
"source-map": "^0.6.1", "picocolors": "^1.0.0",
"supports-color": "^6.1.0" "source-map-js": "^0.6.2"
},
"dependencies": {
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
},
"supports-color": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
"integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
"dev": true,
"requires": {
"has-flag": "^3.0.0"
}
}
} }
}, },
"postcss-calc": { "postcss-calc": {
...@@ -8985,6 +9601,30 @@ ...@@ -8985,6 +9601,30 @@
"postcss": "^7.0.27", "postcss": "^7.0.27",
"postcss-selector-parser": "^6.0.2", "postcss-selector-parser": "^6.0.2",
"postcss-value-parser": "^4.0.2" "postcss-value-parser": "^4.0.2"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"postcss-colormin": { "postcss-colormin": {
...@@ -9000,11 +9640,33 @@ ...@@ -9000,11 +9640,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9018,11 +9680,33 @@ ...@@ -9018,11 +9680,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9033,6 +9717,30 @@ ...@@ -9033,6 +9717,30 @@
"dev": true, "dev": true,
"requires": { "requires": {
"postcss": "^7.0.0" "postcss": "^7.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"postcss-discard-duplicates": { "postcss-discard-duplicates": {
...@@ -9042,6 +9750,30 @@ ...@@ -9042,6 +9750,30 @@
"dev": true, "dev": true,
"requires": { "requires": {
"postcss": "^7.0.0" "postcss": "^7.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"postcss-discard-empty": { "postcss-discard-empty": {
...@@ -9051,6 +9783,30 @@ ...@@ -9051,6 +9783,30 @@
"dev": true, "dev": true,
"requires": { "requires": {
"postcss": "^7.0.0" "postcss": "^7.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"postcss-discard-overridden": { "postcss-discard-overridden": {
...@@ -9060,12 +9816,36 @@ ...@@ -9060,12 +9816,36 @@
"dev": true, "dev": true,
"requires": { "requires": {
"postcss": "^7.0.0" "postcss": "^7.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"postcss-less": { "postcss-less": {
"version": "5.0.0", "version": "5.0.0",
"resolved": "https://registry.nlark.com/postcss-less/download/postcss-less-5.0.0.tgz?cache=0&sync_timestamp=1627346587136&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-less%2Fdownload%2Fpostcss-less-5.0.0.tgz", "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-5.0.0.tgz",
"integrity": "sha1-P6Nh7Y5SqcPm5P25u5X9kDLzxis=" "integrity": "sha512-djK6NlApALJeBnNx7CzLatq64eMF3BCyzBH+faYPxrvNHHM/YCimJ6XQkgWgtim2G89EzdQG4Ed0lGNCXPfD7A=="
}, },
"postcss-load-config": { "postcss-load-config": {
"version": "2.1.2", "version": "2.1.2",
...@@ -9089,6 +9869,22 @@ ...@@ -9089,6 +9869,22 @@
"schema-utils": "^1.0.0" "schema-utils": "^1.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"schema-utils": { "schema-utils": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
...@@ -9099,6 +9895,12 @@ ...@@ -9099,6 +9895,12 @@
"ajv-errors": "^1.0.0", "ajv-errors": "^1.0.0",
"ajv-keywords": "^3.1.0" "ajv-keywords": "^3.1.0"
} }
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9114,11 +9916,33 @@ ...@@ -9114,11 +9916,33 @@
"stylehacks": "^4.0.0" "stylehacks": "^4.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9136,6 +9960,22 @@ ...@@ -9136,6 +9960,22 @@
"vendors": "^1.0.0" "vendors": "^1.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-selector-parser": { "postcss-selector-parser": {
"version": "3.1.2", "version": "3.1.2",
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
...@@ -9146,6 +9986,12 @@ ...@@ -9146,6 +9986,12 @@
"indexes-of": "^1.0.1", "indexes-of": "^1.0.1",
"uniq": "^1.0.1" "uniq": "^1.0.1"
} }
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9159,11 +10005,33 @@ ...@@ -9159,11 +10005,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9179,11 +10047,33 @@ ...@@ -9179,11 +10047,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9201,11 +10091,33 @@ ...@@ -9201,11 +10091,33 @@
"uniqs": "^2.0.0" "uniqs": "^2.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9221,6 +10133,22 @@ ...@@ -9221,6 +10133,22 @@
"postcss-selector-parser": "^3.0.0" "postcss-selector-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-selector-parser": { "postcss-selector-parser": {
"version": "3.1.2", "version": "3.1.2",
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
...@@ -9231,6 +10159,12 @@ ...@@ -9231,6 +10159,12 @@
"indexes-of": "^1.0.1", "indexes-of": "^1.0.1",
"uniq": "^1.0.1" "uniq": "^1.0.1"
} }
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9356,6 +10290,30 @@ ...@@ -9356,6 +10290,30 @@
"dev": true, "dev": true,
"requires": { "requires": {
"postcss": "^7.0.0" "postcss": "^7.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"postcss-normalize-display-values": { "postcss-normalize-display-values": {
...@@ -9369,11 +10327,33 @@ ...@@ -9369,11 +10327,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9389,11 +10369,33 @@ ...@@ -9389,11 +10369,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9408,12 +10410,34 @@ ...@@ -9408,12 +10410,34 @@
"postcss": "^7.0.0", "postcss": "^7.0.0",
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9428,11 +10452,33 @@ ...@@ -9428,11 +10452,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9447,11 +10493,33 @@ ...@@ -9447,11 +10493,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9466,11 +10534,33 @@ ...@@ -9466,11 +10534,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9492,11 +10582,33 @@ ...@@ -9492,11 +10582,33 @@
"integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==",
"dev": true "dev": true
}, },
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9510,11 +10622,33 @@ ...@@ -9510,11 +10622,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9529,11 +10663,33 @@ ...@@ -9529,11 +10663,33 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9547,6 +10703,30 @@ ...@@ -9547,6 +10703,30 @@
"caniuse-api": "^3.0.0", "caniuse-api": "^3.0.0",
"has": "^1.0.0", "has": "^1.0.0",
"postcss": "^7.0.0" "postcss": "^7.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"postcss-reduce-transforms": { "postcss-reduce-transforms": {
...@@ -9561,18 +10741,40 @@ ...@@ -9561,18 +10741,40 @@
"postcss-value-parser": "^3.0.0" "postcss-value-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
"postcss-scss": { "postcss-scss": {
"version": "4.0.1", "version": "4.0.2",
"resolved": "https://registry.npmmirror.com/postcss-scss/download/postcss-scss-4.0.1.tgz", "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.2.tgz",
"integrity": "sha1-b1gn9EV9rDX8xaCz3lZs+zd9sec=" "integrity": "sha512-xfdkU128CkKKKVAwkyt0M8OdnelJ3MRcIRAPPQkRpoPeuzWY3RIeg7piRCpZ79MK7Q16diLXMMAD9dN5mauPlQ=="
}, },
"postcss-selector-parser": { "postcss-selector-parser": {
"version": "6.0.5", "version": "6.0.5",
...@@ -9595,11 +10797,33 @@ ...@@ -9595,11 +10797,33 @@
"svgo": "^1.0.0" "svgo": "^1.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-value-parser": { "postcss-value-parser": {
"version": "3.3.1", "version": "3.3.1",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
"integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
"dev": true "dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -9612,6 +10836,30 @@ ...@@ -9612,6 +10836,30 @@
"alphanum-sort": "^1.0.0", "alphanum-sort": "^1.0.0",
"postcss": "^7.0.0", "postcss": "^7.0.0",
"uniqs": "^2.0.0" "uniqs": "^2.0.0"
},
"dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
} }
}, },
"postcss-value-parser": { "postcss-value-parser": {
...@@ -9634,25 +10882,8 @@ ...@@ -9634,25 +10882,8 @@
}, },
"prettier": { "prettier": {
"version": "2.4.1", "version": "2.4.1",
"resolved": "https://registry.nlark.com/prettier/download/prettier-2.4.1.tgz?cache=0&sync_timestamp=1631777194110&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprettier%2Fdownload%2Fprettier-2.4.1.tgz", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz",
"integrity": "sha1-Zx4RyJwUpM/Ids5WQQbEpnJsn1w=" "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA=="
},
"prettier-plugin-java": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/prettier-plugin-java/-/prettier-plugin-java-1.5.0.tgz",
"integrity": "sha512-ULiWgCuZaMdpUwoQIocB+RREv0dIEbcxwM7ewUy7yZgQfE9bVYMhQ6YVtS5y2g3AVodHJc+ki+wRidt4l0q3Uw==",
"requires": {
"java-parser": "2.0.0",
"lodash": "4.17.21",
"prettier": "2.3.1"
},
"dependencies": {
"prettier": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.3.1.tgz",
"integrity": "sha512-p+vNbgpLjif/+D+DwAZAbndtRrR0md0MwfmOVN9N+2RgyACMT+7tfaRnT+WDPkqnuVwleyuBIG2XBxKDme3hPA=="
}
}
}, },
"prettier-plugin-sql": { "prettier-plugin-sql": {
"version": "0.3.0", "version": "0.3.0",
...@@ -9676,8 +10907,7 @@ ...@@ -9676,8 +10907,7 @@
"process": { "process": {
"version": "0.11.10", "version": "0.11.10",
"resolved": "https://registry.npm.taobao.org/process/download/process-0.11.10.tgz", "resolved": "https://registry.npm.taobao.org/process/download/process-0.11.10.tgz",
"integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI="
"dev": true
}, },
"process-nextick-args": { "process-nextick-args": {
"version": "2.0.1", "version": "2.0.1",
...@@ -10060,8 +11290,7 @@ ...@@ -10060,8 +11290,7 @@
"regenerator-runtime": { "regenerator-runtime": {
"version": "0.13.7", "version": "0.13.7",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz",
"integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==", "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew=="
"dev": true
}, },
"regenerator-transform": { "regenerator-transform": {
"version": "0.14.5", "version": "0.14.5",
...@@ -10082,11 +11311,6 @@ ...@@ -10082,11 +11311,6 @@
"safe-regex": "^1.1.0" "safe-regex": "^1.1.0"
} }
}, },
"regexp-to-ast": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.5.0.tgz",
"integrity": "sha512-tlbJqcMHnPKI9zSrystikWKwHkBqu2a/Sgw01h3zFjvYrMxEDYHzzoMZnUrbIfpTFEsoRnnviOXNCzFiSc54Qw=="
},
"regexp.prototype.flags": { "regexp.prototype.flags": {
"version": "1.3.1", "version": "1.3.1",
"resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz",
...@@ -10471,8 +11695,7 @@ ...@@ -10471,8 +11695,7 @@
"sax": { "sax": {
"version": "1.2.4", "version": "1.2.4",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
"integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
"dev": true
}, },
"schema-utils": { "schema-utils": {
"version": "2.7.1", "version": "2.7.1",
...@@ -10566,7 +11789,7 @@ ...@@ -10566,7 +11789,7 @@
}, },
"serialize-php": { "serialize-php": {
"version": "1.1.2", "version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/serialize-php/download/serialize-php-1.1.2.tgz", "resolved": "https://registry.npmjs.org/serialize-php/-/serialize-php-1.1.2.tgz",
"integrity": "sha1-rtn4fFazb1hr466Pk2s1VlR/b8o=" "integrity": "sha1-rtn4fFazb1hr466Pk2s1VlR/b8o="
}, },
"serve-index": { "serve-index": {
...@@ -10981,6 +12204,11 @@ ...@@ -10981,6 +12204,11 @@
"is-plain-obj": "^1.0.0" "is-plain-obj": "^1.0.0"
} }
}, },
"sortablejs": {
"version": "1.10.2",
"resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.10.2.tgz",
"integrity": "sha512-YkPGufevysvfwn5rfdlGyrGjt7/CRHwvRPogD/lC+TnvcN29jDpCifKP+rBqf+LRldfXSTh+0CGLcSg0VIxq3A=="
},
"source-list-map": { "source-list-map": {
"version": "2.0.1", "version": "2.0.1",
"resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
...@@ -10993,6 +12221,11 @@ ...@@ -10993,6 +12221,11 @@
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
"dev": true "dev": true
}, },
"source-map-js": {
"version": "0.6.2",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz",
"integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug=="
},
"source-map-resolve": { "source-map-resolve": {
"version": "0.5.3", "version": "0.5.3",
"resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
...@@ -11118,7 +12351,7 @@ ...@@ -11118,7 +12351,7 @@
}, },
"sprintf-js": { "sprintf-js": {
"version": "1.0.3", "version": "1.0.3",
"resolved": "http://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw="
}, },
"sql-formatter": { "sql-formatter": {
...@@ -11444,6 +12677,22 @@ ...@@ -11444,6 +12677,22 @@
"postcss-selector-parser": "^3.0.0" "postcss-selector-parser": "^3.0.0"
}, },
"dependencies": { "dependencies": {
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
"dev": true
},
"postcss": {
"version": "7.0.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
"integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
"dev": true,
"requires": {
"picocolors": "^0.2.1",
"source-map": "^0.6.1"
}
},
"postcss-selector-parser": { "postcss-selector-parser": {
"version": "3.1.2", "version": "3.1.2",
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
...@@ -11454,6 +12703,12 @@ ...@@ -11454,6 +12703,12 @@
"indexes-of": "^1.0.1", "indexes-of": "^1.0.1",
"uniq": "^1.0.1" "uniq": "^1.0.1"
} }
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
} }
} }
}, },
...@@ -11791,6 +13046,11 @@ ...@@ -11791,6 +13046,11 @@
"setimmediate": "^1.0.4" "setimmediate": "^1.0.4"
} }
}, },
"timm": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/timm/-/timm-1.7.1.tgz",
"integrity": "sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw=="
},
"timsort": { "timsort": {
"version": "0.3.0", "version": "0.3.0",
"resolved": "https://registry.npm.taobao.org/timsort/download/timsort-0.3.0.tgz", "resolved": "https://registry.npm.taobao.org/timsort/download/timsort-0.3.0.tgz",
...@@ -11958,29 +13218,15 @@ ...@@ -11958,29 +13218,15 @@
"integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
"dev": true "dev": true
}, },
"uglify-js": { "typescript": {
"version": "3.4.10", "version": "4.5.2",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.2.tgz",
"integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==", "integrity": "sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw=="
"dev": true,
"requires": {
"commander": "~2.19.0",
"source-map": "~0.6.1"
},
"dependencies": {
"commander": {
"version": "2.19.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz",
"integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==",
"dev": true
}, },
"source-map": { "uglify-js": {
"version": "0.6.1", "version": "3.14.3",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.3.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "integrity": "sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g=="
"dev": true
}
}
}, },
"unbox-primitive": { "unbox-primitive": {
"version": "1.0.1", "version": "1.0.1",
...@@ -11996,7 +13242,7 @@ ...@@ -11996,7 +13242,7 @@
}, },
"underscore": { "underscore": {
"version": "1.6.0", "version": "1.6.0",
"resolved": "https://registry.npm.taobao.org/underscore/download/underscore-1.6.0.tgz", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz",
"integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag="
}, },
"unicode-canonical-property-names-ecmascript": { "unicode-canonical-property-names-ecmascript": {
...@@ -12234,6 +13480,14 @@ ...@@ -12234,6 +13480,14 @@
"integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
"dev": true "dev": true
}, },
"utif": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/utif/-/utif-2.0.1.tgz",
"integrity": "sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==",
"requires": {
"pako": "^1.0.5"
}
},
"util": { "util": {
"version": "0.11.1", "version": "0.11.1",
"resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz",
...@@ -12329,9 +13583,9 @@ ...@@ -12329,9 +13583,9 @@
} }
}, },
"view-design": { "view-design": {
"version": "4.6.1", "version": "4.7.0",
"resolved": "https://registry.npmjs.org/view-design/-/view-design-4.6.1.tgz", "resolved": "https://registry.npmjs.org/view-design/-/view-design-4.7.0.tgz",
"integrity": "sha512-0pc9j8SEmmSWa/GGRM3H3T9WdEQ7IJHr2AMKJAIsW/1ft4glwhhuRN/lXDR11jHz/6g4nRZwzlneIbc0SpGFdQ==", "integrity": "sha512-WRvVRfsZciN0aJYlz+6b1zxs5G8tLFb4OUKOu+PiN0QyIGmdgWVziEyEmioYtJahQpueWiQpRYGzyxrpz3UkWQ==",
"requires": { "requires": {
"async-validator": "^3.3.0", "async-validator": "^3.3.0",
"deepmerge": "^2.2.1", "deepmerge": "^2.2.1",
...@@ -12349,6 +13603,11 @@ ...@@ -12349,6 +13603,11 @@
"integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==",
"dev": true "dev": true
}, },
"vscode-languageserver-types": {
"version": "3.16.0",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz",
"integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA=="
},
"vue": { "vue": {
"version": "2.6.14", "version": "2.6.14",
"resolved": "https://registry.npmjs.org/vue/-/vue-2.6.14.tgz", "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.14.tgz",
...@@ -12360,17 +13619,6 @@ ...@@ -12360,17 +13619,6 @@
"integrity": "sha512-cCjEgTD4nO5YQeRgdrrOqN7Qc2MzBx2u90J/CJ3Gp4PZ2sUONZE67/Qy+zWNHCWVCYsSEIvbnPSuiiQeEr1KSQ==", "integrity": "sha512-cCjEgTD4nO5YQeRgdrrOqN7Qc2MzBx2u90J/CJ3Gp4PZ2sUONZE67/Qy+zWNHCWVCYsSEIvbnPSuiiQeEr1KSQ==",
"dev": true "dev": true
}, },
"vue-color": {
"version": "2.8.1",
"resolved": "https://registry.npmjs.org/vue-color/-/vue-color-2.8.1.tgz",
"integrity": "sha512-BoLCEHisXi2QgwlhZBg9UepvzZZmi4176vbr+31Shen5WWZwSLVgdScEPcB+yrAtuHAz42309C0A4+WiL9lNBw==",
"requires": {
"clamp": "^1.0.1",
"lodash.throttle": "^4.0.0",
"material-colors": "^1.0.0",
"tinycolor2": "^1.1.2"
}
},
"vue-eslint-parser": { "vue-eslint-parser": {
"version": "5.0.0", "version": "5.0.0",
"resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-5.0.0.tgz", "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-5.0.0.tgz",
...@@ -12404,6 +13652,11 @@ ...@@ -12404,6 +13652,11 @@
"integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==", "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==",
"dev": true "dev": true
}, },
"vue-i18n": {
"version": "8.26.7",
"resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.26.7.tgz",
"integrity": "sha512-7apa5PvRg1YCLoraE3lOgpCG8hJGupLCtywQWedWsgBbvF0TOgFvhitqK9xRH0PBGG1G8aiJz9oklyNDFfDxLg=="
},
"vue-loader": { "vue-loader": {
"version": "15.9.6", "version": "15.9.6",
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.6.tgz", "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.6.tgz",
...@@ -12448,6 +13701,14 @@ ...@@ -12448,6 +13701,14 @@
"integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==", "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==",
"dev": true "dev": true
}, },
"vuedraggable": {
"version": "2.24.3",
"resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-2.24.3.tgz",
"integrity": "sha512-6/HDXi92GzB+Hcs9fC6PAAozK1RLt1ewPTLjK0anTYguXLAeySDmcnqE8IC0xa7shvSzRjQXq3/+dsZ7ETGF3g==",
"requires": {
"sortablejs": "1.10.2"
}
},
"watchpack": { "watchpack": {
"version": "1.7.5", "version": "1.7.5",
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz",
...@@ -13105,11 +14366,53 @@ ...@@ -13105,11 +14366,53 @@
"version": "github:abdolence/x2js#185e410b3fa621070fea1f86a389b477afa216b9", "version": "github:abdolence/x2js#185e410b3fa621070fea1f86a389b477afa216b9",
"from": "github:abdolence/x2js" "from": "github:abdolence/x2js"
}, },
"xhr": {
"version": "2.6.0",
"resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz",
"integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==",
"requires": {
"global": "~4.4.0",
"is-function": "^1.0.1",
"parse-headers": "^2.0.0",
"xtend": "^4.0.0"
}
},
"xml-formatter": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.5.1.tgz",
"integrity": "sha512-qJwnz5uNMs4mc7jX3UH80taCK4BHnXX91MvByple+iOS2P1eNeifGAfPnKuteyHg8pehbhTBHPBunGOQ53nKdQ==",
"requires": {
"xml-parser-xo": "^3.1.2"
}
},
"xml-parse-from-string": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz",
"integrity": "sha1-qQKekp09vN7RafPG4oI42VpdWig="
},
"xml-parser-xo": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.1.2.tgz",
"integrity": "sha512-Qyttmiy305unyg1ONpArT4FPDL3J+ohXWpMI1ecopClGMw53lCRHJ4FV/fVYHFU6qfEzMV0frqSlNaLo2dw15Q=="
},
"xml2js": {
"version": "0.4.23",
"resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz",
"integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==",
"requires": {
"sax": ">=0.6.0",
"xmlbuilder": "~11.0.0"
}
},
"xmlbuilder": {
"version": "11.0.1",
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz",
"integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA=="
},
"xtend": { "xtend": {
"version": "4.0.2", "version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
"integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="
"dev": true
}, },
"y18n": { "y18n": {
"version": "4.0.3", "version": "4.0.3",
......
{ {
"name": "c-tool", "name": "c-tool",
"version": "1.8.3", "version": "1.9.2",
"private": true, "private": true,
"scripts": { "scripts": {
"serve": "vue-cli-service serve --port 8081", "serve": "vue-cli-service serve --port 8081",
"build": "vue-cli-service build", "build": "vue-cli-service build",
"report": "vue-cli-service build --report",
"lint": "vue-cli-service lint" "lint": "vue-cli-service lint"
}, },
"dependencies": { "dependencies": {
"@babel/parser": "^7.15.8", "@babel/parser": "^7.16.4",
"@prettier/plugin-php": "^0.17.5", "@prettier/plugin-php": "^0.17.6",
"@prettier/plugin-xml": "^1.1.0", "@typescript-eslint/typescript-estree": "^5.4.0",
"@typescript-eslint/typescript-estree": "^5.2.0",
"angular-html-parser": "^1.8.0", "angular-html-parser": "^1.8.0",
"axios": "^0.21.4", "axios": "^0.21.4",
"babel-runtime": "^6.26.0", "babel-runtime": "^6.26.0",
"bignumber.js": "^9.0.1", "bignumber.js": "^9.0.1",
"code-formatter": "0.0.1", "code-formatter": "0.0.1",
"codemirror": "^5.63.3",
"codemirror-graphql": "^1.1.0",
"cron-parser": "^2.16.3", "cron-parser": "^2.16.3",
"cronstrue": "^1.122.0", "cronstrue": "^1.122.0",
"crypto-js": "^3.3.0", "crypto-js": "^3.3.0",
"diff-match-patch": "^1.0.5",
"file": "^0.2.2", "file": "^0.2.2",
"http-build-query": "^0.7.0", "graphql": "15.5.0",
"ipinyinjs": "^1.0.0", "ipinyinjs": "^1.0.0",
"is-url": "^1.2.4",
"jian_fan": "^1.0.3", "jian_fan": "^1.0.3",
"jimp": "^0.16.1",
"js-base64": "^2.6.4", "js-base64": "^2.6.4",
"js-htmlencode": "^0.3.0", "js-htmlencode": "^0.3.0",
"js-yaml": "^3.14.1", "js-yaml": "^3.14.1",
"jsbarcode": "^3.11.5", "jsbarcode": "^3.11.5",
"json-to-properties": "^1.1.3", "json-to-properties": "^1.1.3",
"json5": "^2.2.0",
"jsonlint": "^1.6.3", "jsonlint": "^1.6.3",
"jsrsasign": "^10.4.1", "jsrsasign": "^10.4.1",
"jsrsasign-util": "^1.0.5", "jsrsasign-util": "^1.0.5",
"jwt-decode": "^3.1.2", "jwt-decode": "^3.1.2",
"lodash": "^4.17.21", "lodash": "^4.17.21",
"mime-types": "^2.1.33", "mime-types": "^2.1.34",
"moment": "^2.29.1", "moment": "^2.29.1",
"monaco-editor": "^0.29.1", "php-array-reader": "^1.3.2",
"monaco-editor-webpack-plugin": "^5.0.0",
"php-array-reader": "^1.3.0",
"phparr": "^0.2.0", "phparr": "^0.2.0",
"postcss": "^8.3.11",
"postcss-less": "^5.0.0", "postcss-less": "^5.0.0",
"postcss-scss": "^4.0.1", "postcss-scss": "^4.0.2",
"prettier": "^2.4.1", "prettier": "^2.4.1",
"prettier-plugin-java": "^1.5.0",
"prettier-plugin-sql": "^0.3.0", "prettier-plugin-sql": "^0.3.0",
"properties-to-json": "^0.1.7", "properties-to-json": "^0.1.7",
"qrcode": "^1.4.4", "qrcode": "^1.4.4",
"qrcode-parser": "^1.2.0", "qrcode-parser": "^1.2.0",
"query-string": "^6.13.7", "query-string": "^6.14.1",
"serialize-php": "^1.1.2", "serialize-php": "^1.1.2",
"sm-crypto": "^0.1.4", "sm-crypto": "^0.1.4",
"system": "^2.0.1", "system": "^2.0.1",
"typescript": "^4.5.2",
"uglify-js": "3.14.3",
"uuid": "^8.3.2", "uuid": "^8.3.2",
"view-design": "^4.6.1", "view-design": "^4.7.0",
"vue": "^2.6.14", "vue": "^2.6.14",
"vue-color": "^2.8.1", "vue-i18n": "^8.26.7",
"vue-router": "^3.5.3", "vue-router": "^3.5.3",
"x2js": "github:abdolence/x2js" "vuedraggable": "^2.24.3",
"x2js": "github:abdolence/x2js",
"xml-formatter": "^2.5.1"
}, },
"devDependencies": { "devDependencies": {
"@vue/cli-plugin-babel": "^3.12.1", "@vue/cli-plugin-babel": "^3.12.1",
...@@ -94,6 +100,9 @@ ...@@ -94,6 +100,9 @@
}, },
"parserOptions": { "parserOptions": {
"parser": "babel-eslint" "parser": "babel-eslint"
},
"globals": {
"__": "writable"
} }
}, },
"postcss": { "postcss": {
......
...@@ -14,54 +14,54 @@ const DEFAULT_COMMON_TOOL = [ ...@@ -14,54 +14,54 @@ const DEFAULT_COMMON_TOOL = [
] ]
const category = [ const category = [
{'name': 'common', 'title': '常用'}, {'name': 'common'},
{'name': 'encryption', 'title': '加解密'}, {'name': 'encryption'},
{'name': 'conversion', 'title': '转换'}, {'name': 'conversion'},
{'name': 'serialize', 'title': '序列化'}, {'name': 'encoder_decoder'},
{'name': 'check', 'title': '校验'}, {'name': 'check'},
{'name': 'generate', 'title': '生成'}, {'name': 'generate'},
{'name': 'other', 'title': '其他'}, {'name': 'other'},
] ]
const tool = [ const tool = [
{ {
'name': 'hash', 'name': 'hash',
'title': '哈希(hash)',
'cat': ['encryption'] 'cat': ['encryption']
}, },
{ {
'name': 'encrypt', 'name': 'encrypt',
'title': '加密/解密',
'cat': ['encryption'] 'cat': ['encryption']
}, },
{'name': 'sign', 'title': '签名/验签', 'cat': ['encryption']}, {'name': 'sign', 'cat': ['encryption', 'check']},
{'name': 'base64', 'title': 'BASE64编码', 'cat': ['encryption']}, {'name': 'base64', 'cat': ['encryption','encoder_decoder']},
{'name': 'json', 'title': 'JSON工具', 'cat': ['conversion', 'serialize']}, {'name': 'json', 'cat': ['conversion']},
{'name': 'url', 'title': 'URL编码', 'cat': ['conversion']}, {'name': 'url', 'cat': ['encoder_decoder']},
{'name': 'timestamp', 'title': '时间戳', 'cat': ['conversion']}, {'name': 'timestamp', 'cat': ['conversion']},
{'name': 'qrCode', 'title': '二维码', 'cat': ['generate']}, {'name': 'qrCode', 'cat': ['generate']},
{'name': 'barcode', 'title': '条形码', 'cat': ['generate']}, {'name': 'barcode', 'cat': ['generate']},
{'name': 'pinyin', 'title': '汉字转拼音', 'cat': ['conversion']}, {'name': 'pinyin', 'cat': ['conversion']},
{'name': 'ip', 'title': 'IP地址查询', 'cat': ['other']}, {'name': 'ip', 'cat': ['other']},
{'name': 'code', 'title': '代码格式化', 'cat': ['other']}, {'name': 'code', 'cat': ['other']},
{'name': 'unicode', 'title': 'Unicode', 'cat': ['conversion']}, {'name': 'unicode', 'cat': ['encoder_decoder']},
{'name': 'decimalConvert', 'title': '进制转换', 'cat': ['conversion']}, {'name': 'decimalConvert', 'cat': ['conversion']},
{'name': 'regex', 'title': '正则表达式', 'cat': ['check']}, {'name': 'regex', 'cat': ['check']},
{'name': 'randomString', 'title': '随机字符生成', 'cat': ['generate']}, {'name': 'randomString', 'cat': ['generate']},
{'name': 'serializeConversion', 'title': '序列化转换', 'cat': ['conversion', 'serialize']}, {'name': 'serializeConversion', 'cat': ['conversion']},
{'name': 'diffs', 'title': '文本差异化对比', 'cat': ['check']}, {'name': 'diffs', 'cat': ['check']},
{'name': 'crontab', 'title': 'crontab校验', 'cat': ['check']}, {'name': 'crontab', 'cat': ['check']},
{'name': 'websocket', 'title': 'websocket调试', 'cat': ['other']}, {'name': 'websocket', 'cat': ['other']},
{'name': 'unit', 'title': '单位换算', 'cat': ['other']}, {'name': 'unit', 'cat': ['other']},
{'name': 'time', 'title': '时间计算器', 'cat': ['other']}, {'name': 'time', 'cat': ['other']},
{'name': 'uuid', 'title': 'UUID生成', 'cat': ['generate']}, {'name': 'uuid', 'cat': ['generate']},
{'name': 'jsonToObject', 'title': 'JSON转实体类', 'cat': ['conversion', 'serialize']}, {'name': 'jsonToObject', 'cat': ['conversion','generate']},
{'name': 'ascii', 'title': 'ASCII转换', 'cat': ['conversion']}, {'name': 'ascii', 'cat': ['conversion']},
{'name': 'variableConversion', 'title': '变量名转换', 'cat': ['conversion']}, {'name': 'variableConversion', 'cat': ['conversion']},
{'name': 'jwt', 'title': 'JWT解码', 'cat': ['conversion']}, {'name': 'jwt', 'cat': ['encoder_decoder']},
{'name': 'hexString', 'title': 'Hex/String转换', 'cat': ['conversion']}, {'name': 'hexString', 'cat': ['conversion']},
{'name': 'text', 'title': '文本处理', 'cat': ['other']}, {'name': 'text', 'cat': ['other']},
{'name': 'html', 'title': 'html编码', 'cat': ['conversion']}, {'name': 'html', 'cat': ['encoder_decoder']},
{'name': 'binary', 'cat': ['generate']},
{'name': 'armConverter', 'cat': ['conversion']},
] ]
// 工具类功能配置 // 工具类功能配置
...@@ -80,6 +80,8 @@ const utools = { ...@@ -80,6 +80,8 @@ const utools = {
hexString: ['hex to string', 'string to hex', '十六进制转字符串', '字符串转十六机制'], hexString: ['hex to string', 'string to hex', '十六进制转字符串', '字符串转十六机制'],
text: ['文本处理', '大小写转换', '中英文标点转换', '简繁转换', '字符替换', '字符统计', '行去重', '添加行号', '行排序', '过滤行首尾不可见字符', '过滤空行'], text: ['文本处理', '大小写转换', '中英文标点转换', '简繁转换', '字符替换', '字符统计', '行去重', '添加行号', '行排序', '过滤行首尾不可见字符', '过滤空行'],
sign: ['签名', '验签', 'rsa'], sign: ['签名', '验签', 'rsa'],
binary: ['原码', '补码', '反码'],
armConverter: ['ARM', 'HEX'],
}, },
cmds: { cmds: {
timestamp: [ timestamp: [
......
{
"info_source": "Information Source: ",
"convert": "Convert",
"output": "Output",
"error": "error: {0}"
}
{
"input": "Input",
"length": "{0} bit",
"true_form": "trueForm",
"inverse": "Inverse",
"complement": "Complement",
"error": "error: {0}"
}
{ {
// ui // ui
"ui_setting": "Settings", "ui_setting": "Settings",
"ui_reset": "Reset",
"ui_views": "View", "ui_views": "View",
"ui_load":"Loading", "ui_load": "Loading",
"ui_close": "Close", "ui_close": "Close",
"ui_copy_text_ok":"Result Copied ^o^", "ui_copy_text_ok": "Result Copied ^o^",
"ui_copy_image_ok":"Image Copied ^o^", "ui_copy_image_ok": "Image Copied ^o^",
// views // views
"setting_language": "Language", "setting_language": "Language",
"common_tool": "Common Tool", "common_tool": "Common Tool",
"keyboard_setting":"Setting Shortcuts", "unselected_tool": "Unselected Tool",
"keyboard_setting": "Setting Shortcuts",
"display_mode": "Theme", "display_mode": "Theme",
"display_mode_light":"Light", "display_mode_light": "Light",
"display_mode_dark":"Dark", "display_mode_dark": "Dark",
"display_mode_auto":"Auto", "display_mode_auto": "Auto",
"copy_results_to_clipboard":"Copy results to clipboard", "copy_results_to_clipboard": "Copy results to clipboard",
"read_content_from_clipboard": "Read content from clipboard", "read_content_from_clipboard": "Read content from clipboard",
"read_clipboard_content_trim":"Read clipboard content trim", "read_clipboard_content_trim": "Read clipboard content trim",
"common_tool_setting": "Common Tool Settings", "common_tool_setting": "Common Tool Settings",
"keyboard_firefox_1":"Need to manually set shortcuts", "keyboard_firefox_1": "Need to manually set shortcuts",
"keyboard_firefox_2": "Open [Add-ons Manager(about:addons)],Click the setting button on the right side of [Manage your extension],Select [Manage Extension Shortcuts] to modify these shortcuts.", "keyboard_firefox_2": "Open [Add-ons Manager(about:addons)],Click the setting button on the right side of [Manage your extension],Select [Manage Extension Shortcuts] to modify these shortcuts.",
"keyboard_firefox_3":"Operation Method", "keyboard_firefox_3": "Operation Method",
"history": "History", "history": "History",
"history_clear": "Clear history", "history_clear": "Clear history",
"history_time": "Operation time", "history_time": "Operation time",
"history_data":"Data", "history_data": "Data",
"history_op": "Operation", "history_op": "Operation",
"history_null":"History not found", "history_null": "History not found",
// category // category
"category_common": "Common", "category_common": "Common",
"category_encryption": "En/Decrypt", "category_encryption": "En/Decrypt",
"category_conversion": "Convert", "category_conversion": "Convert",
"category_serialize": "Serialize", "category_encoder_decoder": "En/Decoder",
"category_check": "Validator", "category_check": "Validator",
"category_generate": "Generate", "category_generate": "Generate",
"category_other": "Other", "category_other": "Other",
...@@ -68,7 +67,8 @@ ...@@ -68,7 +67,8 @@
"tool_hexString": "Hex/String", "tool_hexString": "Hex/String",
"tool_text": "Text", "tool_text": "Text",
"tool_html": "Html En/Decode", "tool_html": "Html En/Decode",
"tool_binary": "trueForm/inverse/complement",
"tool_armConverter": "ARM/HEX",
// other // other
"css_main_category_item_style": "padding: 0 10px" "css_main_category_item_style": "padding: 0 10px"
} }
...@@ -59,5 +59,5 @@ ...@@ -59,5 +59,5 @@
"explain_blank_line_length_name": "Line Length", "explain_blank_line_length_name": "Line Length",
"explain_blank_line_length_info": "Blank lines are also included in the number of lines", "explain_blank_line_length_info": "Blank lines are also included in the number of lines",
"value": "value", "value": "value",
"stat_show": "Word:{1} UTF-8:{1} GBK:{2}" "stat_show": "Word:{0} UTF-8:{1} GBK:{2}"
} }
{
"info_source": "数据来源:",
"convert": "转换",
"output": "输出",
"error": "错误: {0}"
}
{
"input": "输入",
"length": "{0} 位",
"true_form": "原码",
"inverse": "反码",
"complement": "补码",
"error": "错误: {0}"
}
{ {
// ui // ui
"ui_setting": "设置", "ui_setting": "设置",
"ui_reset": "重置",
"ui_views": "查看", "ui_views": "查看",
"ui_load":"加载", "ui_load": "加载",
"ui_close": "关闭", "ui_close": "关闭",
"ui_copy_text_ok":"结果已复制 ^o^", "ui_copy_text_ok": "结果已复制 ^o^",
"ui_copy_image_ok":"图片已复制 ^o^", "ui_copy_image_ok": "图片已复制 ^o^",
// 界面 // 界面
"setting_language": "语言", "setting_language": "语言",
"common_tool": "常用工具", "common_tool": "常用工具",
"keyboard_setting":"快捷键设置", "unselected_tool": "未选择工具",
"keyboard_setting": "快捷键设置",
"display_mode": "主题", "display_mode": "主题",
"display_mode_light":"浅色", "display_mode_light": "浅色",
"display_mode_dark":"深色", "display_mode_dark": "深色",
"display_mode_auto":"自动", "display_mode_auto": "自动",
"copy_results_to_clipboard":"自动复制结果到剪贴板", "copy_results_to_clipboard": "自动复制结果到剪贴板",
"read_content_from_clipboard": "自动读取剪贴板内容", "read_content_from_clipboard": "自动读取剪贴板内容",
"read_clipboard_content_trim":"读取剪贴板内容过滤首尾不可见字符", "read_clipboard_content_trim": "读取剪贴板内容过滤首尾不可见字符",
"common_tool_setting": "常用工具设置", "common_tool_setting": "常用工具设置",
"keyboard_firefox_1":"请手动设置快捷键", "keyboard_firefox_1": "请手动设置快捷键",
"keyboard_firefox_2": "请打开附加组件管理器(about:addons),点击“管理扩展程序”右侧的设置按钮,选择“管理扩展快捷键”来修改这些快捷键。", "keyboard_firefox_2": "请打开附加组件管理器(about:addons),点击“管理扩展程序”右侧的设置按钮,选择“管理扩展快捷键”来修改这些快捷键。",
"keyboard_firefox_3":"操作方法", "keyboard_firefox_3": "操作方法",
"history": "历史记录", "history": "历史记录",
"history_clear": "清空历史记录", "history_clear": "清空历史记录",
"history_time": "操作时间", "history_time": "操作时间",
"history_data":"数据", "history_data": "数据",
"history_op": "操作", "history_op": "操作",
"history_null":"暂无历史记录", "history_null": "暂无历史记录",
// 分类 // 分类
"category_common": "常用", "category_common": "常用",
"category_encryption": "加解密", "category_encryption": "加解密",
"category_conversion": "转换", "category_conversion": "转换",
"category_serialize": "序列化", "category_encoder_decoder": "编解码",
"category_check": "校验", "category_check": "校验",
"category_generate": "生成", "category_generate": "生成",
"category_other": "其他", "category_other": "其他",
...@@ -65,10 +64,11 @@ ...@@ -65,10 +64,11 @@
"tool_ascii": "ASCII转换", "tool_ascii": "ASCII转换",
"tool_variableConversion": "变量名转换", "tool_variableConversion": "变量名转换",
"tool_jwt": "JWT解码", "tool_jwt": "JWT解码",
"tool_hexString": "Hex/String转换", "tool_hexString": "Hex/String",
"tool_text": "文本处理", "tool_text": "文本处理",
"tool_html": "html编码", "tool_html": "Html编码",
"tool_binary": "原码/反码/补码",
"tool_armConverter": "ARM/HEX",
// 其他 // 其他
"css_main_category_item_style": "padding: 0 20px" "css_main_category_item_style": "padding: 0 20px"
} }
...@@ -145,6 +145,14 @@ const routes = [ ...@@ -145,6 +145,14 @@ const routes = [
{ {
path: '/tool/html', path: '/tool/html',
component: r => require(['./views/tool/html.vue'], r) component: r => require(['./views/tool/html.vue'], r)
},
{
path: '/tool/binary',
component: r => require(['./views/tool/binary.vue'], r)
},
{
path: '/tool/armConverter',
component: r => require(['./views/tool/armConverter.vue'], r)
} }
] ]
......
...@@ -67,6 +67,7 @@ ...@@ -67,6 +67,7 @@
<script> <script>
import config from './tool/config' import config from './tool/config'
import {dispatchCategoryClickEvent} from './tool/event'
import instance from './tool/instance' import instance from './tool/instance'
import BottomBlock from './bottom' import BottomBlock from './bottom'
import settingBlock from "./views/setting/block" import settingBlock from "./views/setting/block"
...@@ -201,6 +202,9 @@ export default { ...@@ -201,6 +202,9 @@ export default {
this.currentCategory = name this.currentCategory = name
model.setCategoryHistory(name) model.setCategoryHistory(name)
this.currentTool = model.getToolHistory(this.currentCategory) this.currentTool = model.getToolHistory(this.currentCategory)
this.$nextTick(()=>{
dispatchCategoryClickEvent(name)
})
break break
} }
}, },
......
...@@ -33,22 +33,22 @@ const setUserCommon = function (tools) { ...@@ -33,22 +33,22 @@ const setUserCommon = function (tools) {
cache.setNoVersion('user_common', tools) cache.setNoVersion('user_common', tools)
} }
const getToolTitle = function (name) { const getToolDefaultCategory = function (name) {
for (let i = 0; i < tool.length; i++) { for (let i = 0; i < tool.length; i++) {
if (tool[i].name === name) { if (tool[i].name === name) {
return tool[i].title return tool[i].cat[0]
} }
} }
return '' return ''
} }
const getToolDefaultCategory = function (name) { const getToolByName = (name) => {
for (let i = 0; i < tool.length; i++) { for (let item of tool) {
if (tool[i].name === name) { if (name === item.name) {
return tool[i].cat[0] return item
} }
} }
return '' return null
} }
/** /**
...@@ -74,19 +74,21 @@ const saveSetting = function (name, value) { ...@@ -74,19 +74,21 @@ const saveSetting = function (name, value) {
} }
export default { export default {
tool, tool: tool,
saveSetting, saveSetting,
getSetting, getSetting,
category, category,
setUserCommon, setUserCommon,
getToolTitle,
getUserCommon, getUserCommon,
getToolByCategory(cat) { getToolByCategory(cat) {
let common = getUserCommon();
return tool.filter((t) => {
if (cat === 'common') { if (cat === 'common') {
return common.includes(t.name) return getUserCommon().map((name) => {
return getToolByName(name)
}).filter((item) => {
return item !== null
});
} }
return tool.filter((t) => {
return t.cat.includes(cat); return t.cat.includes(cat);
}) })
}, },
......
// 定义分类点击事件
export const CATEGORY_CLICK_EVENT_NAME = "ctoolCategoryClick"
export const dispatchCategoryClickEvent = (name) => {
const event = new CustomEvent(CATEGORY_CLICK_EVENT_NAME, {detail: {name}})
window.dispatchEvent(event);
}
...@@ -2,44 +2,49 @@ ...@@ -2,44 +2,49 @@
<div> <div>
<div> <div>
<CellGroup @on-click="open"> <CellGroup @on-click="open">
<Cell title="常用工具设置" name="setting"/> <Cell :title="$t('main_common_tool')" name="setting"/>
<Cell v-if="is_chromium || is_firefox" title="快捷键设置" name="shortcuts"/> <Cell v-if="is_chromium || is_firefox" :title="$t('main_keyboard_setting')" name="shortcuts"/>
<Cell title="外观显示"> <Cell :title="$t('main_display_mode')">
<Select v-model="display_mode" slot="extra" transfer> <Select v-model="display_mode" slot="extra" transfer>
<Option v-for="item in display_mode_list" :value="item.v" :key="item.v">{{ item.n }}</Option> <Option v-for="item in display_mode_list" :value="item" :key="item">{{ $t('main_display_mode_'+item)}}</Option>
</Select>
</Cell>
<Cell :title="$t('main_setting_language')">
<Select v-model="locale" slot="extra" transfer>
<Option v-for="item in locales" :value="item.code" :key="item.code">{{ item.name }}</Option>
</Select> </Select>
</Cell> </Cell>
</CellGroup> </CellGroup>
<CellGroup> <CellGroup>
<Cell title="自动复制结果到剪贴板"> <Cell :title="$t('main_copy_results_to_clipboard')">
<i-switch v-model="auto_save_copy" slot="extra"/> <i-switch v-model="auto_save_copy" slot="extra"/>
</Cell> </Cell>
<Cell title="自动读取剪贴板内容"> <Cell :title="$t('main_read_content_from_clipboard')">
<i-switch v-model="auto_read_copy" slot="extra"/> <i-switch v-model="auto_read_copy" slot="extra"/>
</Cell> </Cell>
<Cell title="读取剪贴板内容过滤首尾不可见字符"> <Cell :title="$t('main_read_clipboard_content_trim')">
<i-switch v-model="auto_read_copy_filter" slot="extra"/> <i-switch v-model="auto_read_copy_filter" slot="extra"/>
</Cell> </Cell>
</CellGroup> </CellGroup>
</div> </div>
<Drawer title="设置" placement="left" v-model="settingShow" :width="90"> <Drawer :title="$t('main_common_tool_setting')" placement="left" v-model="commonShow" :width="100">
<setting-block v-if="settingShow"></setting-block> <setting-common v-if="commonShow"></setting-common>
</Drawer> </Drawer>
</div> </div>
</template> </template>
<script> <script>
import {isChromium, isFirefox, isUtools, openUrl, setDisplayMode} from '../../helper' import {isChromium, isFirefox, isUtools, openUrl, setDisplayMode} from '../../helper'
import {LOCALE_LISTS, setCurrentLocale} from '../../i18n'
import setting from '../../tool/setting' import setting from '../../tool/setting'
import settingBlock from './setting' import common from "./common"
export default { export default {
components: { components: {
"setting-block": settingBlock "setting-common": common
}, },
data() { data() {
return { return {
settingShow: false, commonShow: false,
auto_save_copy: true, auto_save_copy: true,
auto_read_copy: true, auto_read_copy: true,
display_mode: "light", display_mode: "light",
...@@ -47,16 +52,17 @@ export default { ...@@ -47,16 +52,17 @@ export default {
is_chromium: isChromium, is_chromium: isChromium,
is_utools: isUtools, is_utools: isUtools,
is_firefox: isFirefox, is_firefox: isFirefox,
display_mode_list: [ display_mode_list: ["light","dark","auto"],
{n: "浅色", v: "light"}, locales: LOCALE_LISTS,
{n: "深色", v: "dark"}, locale: "",
{n: "自动", v: "auto"},
]
} }
}, },
watch: { watch: {
display_mode(value) { display_mode(value) {
setDisplayMode(value) setDisplayMode(value)
},
locale(value) {
setCurrentLocale(value)
} }
}, },
created() { created() {
...@@ -64,12 +70,14 @@ export default { ...@@ -64,12 +70,14 @@ export default {
this.auto_read_copy = setting.autoReadCopy() this.auto_read_copy = setting.autoReadCopy()
this.auto_read_copy_filter = setting.autoReadCopyFilter() this.auto_read_copy_filter = setting.autoReadCopyFilter()
this.display_mode = setting.displayMode() this.display_mode = setting.displayMode()
this.locale = setting.locale()
}, },
beforeDestroy() { beforeDestroy() {
setting.autoSaveCopy(this.auto_save_copy) setting.autoSaveCopy(this.auto_save_copy)
setting.autoReadCopy(this.auto_read_copy) setting.autoReadCopy(this.auto_read_copy)
setting.autoReadCopyFilter(this.auto_read_copy_filter) setting.autoReadCopyFilter(this.auto_read_copy_filter)
setting.displayMode(this.display_mode) setting.displayMode(this.display_mode)
setting.locale(this.locale)
}, },
methods: { methods: {
open(name) { open(name) {
...@@ -77,16 +85,16 @@ export default { ...@@ -77,16 +85,16 @@ export default {
case 'shortcuts': case 'shortcuts':
if (this.is_firefox) { if (this.is_firefox) {
return this.$Notice.success({ return this.$Notice.success({
title: '请手动设置快捷键', title: this.$t('main_keyboard_firefox_1'),
render: h => { render: h => {
return h('span', [ return h('span', [
'请打开附加组件管理器(about:addons),点击“管理扩展程序”右侧的设置按钮,选择“管理扩展快捷键”来修改这些快捷键。', this.$t('main_keyboard_firefox_2'),
h('a', { h('a', {
attrs: { attrs: {
href: 'https://jingyan.baidu.com/article/3ea51489f1d0a713e61bbaff.html', href: 'https://jingyan.baidu.com/article/3ea51489f1d0a713e61bbaff.html',
target: '_blank' target: '_blank'
} }
}, '操作方法'), }, this.$t('main_keyboard_firefox_3')),
]) ])
} }
}); });
...@@ -94,7 +102,7 @@ export default { ...@@ -94,7 +102,7 @@ export default {
openUrl('chrome://extensions/shortcuts') openUrl('chrome://extensions/shortcuts')
break break
case 'setting': case 'setting':
this.settingShow = true this.commonShow = true
break break
} }
} }
......
<template> <template>
<div> <div>
<CheckboxGroup v-model="tools" @on-change="toolUpdate" style="line-height: 30px;"> <Card :title="$t('main_common_tool')">
<Checkbox v-for="(t,k) in all" :key="k" :label="t.name">{{t.title}}</Checkbox> <draggable v-model="selected" group="tool">
</CheckboxGroup> <Button style="margin: 5px" v-for="name in selected" type="dashed" :key="name">{{$t('main_tool_'+name)}}</Button>
</draggable>
<Button size="small" slot="extra" type="primary" @click="reset">{{$t('main_ui_reset')}}</Button>
</Card>
<Card :title="$t('main_unselected_tool')" style="margin-top: 10px">
<draggable v-model="unselected" group="tool">
<Button style="margin: 5px" v-for="name in unselected" type="dashed" :key="name">{{$t('main_tool_'+name)}}</Button>
</draggable>
</Card>
</div> </div>
</template> </template>
<script> <script>
import config from "../../tool/config" import config from "../../tool/config"
import {DEFAULT_COMMON_TOOL} from "../../tool/config"
import draggable from "vuedraggable";
export default { export default {
components: {
draggable
},
data() { data() {
return { return {
style:"",
selected:[],
unselected:[],
tools: [], tools: [],
all: config.tool
} }
}, },
created() { created() {
this.tools = config.getToolByCategory('common').map(function (item) { this.selected = config.getToolByCategory('common').map(function (item) {
return item.name; return item.name;
}); });
this.unselected = config.tool.filter(({name})=>{
return !this.selected.includes(name)
}).map(function (item) {
return item.name;
})
}, },
methods: { watch:{
toolUpdate(tools) { selected(){
console.log(tools) config.setUserCommon(this.selected ? this.selected : []);
config.setUserCommon(tools); }
},
}, },
methods:{
reset(){
this.selected = DEFAULT_COMMON_TOOL
}
}
} }
</script> </script>
<template>
<Card>
<Tabs value="common">
<TabPane :label="$t('main_common_tool_setting')" name="common">
<setting-common></setting-common>
</TabPane>
</Tabs>
</Card>
</template>
<script>
import common from "./common"
export default {
components: {
"setting-common": common
}
}
</script>
<template>
<div class="tool-armConverter">
<Tabs v-model="current.operation">
<TabPane label="ARM to HEX" name="arm_to_hex"/>
<TabPane label="HEX to ARM" name="hex_to_arm"/>
<Alert style="padding: 5px;margin-bottom:0" slot="extra">
{{ $t('armConverter_info_source') }} <a href="https://armconverter.com/" target="_blank">https://armconverter.com/</a>
</Alert>
</Tabs>
<Row :gutter="10">
<Col span="10">
<div class="page-option-input-block" style="margin-bottom: 5px">
<Input v-model="current.offset" placeholder="0 - for branch and LDR put hex value here">
<span slot="prepend">Offset (hex) 0x</span>
</Input>
</div>
<input-block top="5px">
<heightResize :reduce="45" :append="['.page-option-input-block']">
<autoHeightTextarea v-if="isArmToHex" v-model="current.asm_input" :placeholder="inputPlaceholder"/>
<autoHeightTextarea v-else v-model="current.hex_input" :placeholder="inputPlaceholder"/>
</heightResize>
<template slot="extra">
<Button :loading="loading" type="primary" size="small" @click="convert()">{{ $t('armConverter_convert') }}</Button>
</template>
</input-block>
</Col>
<Col span="14">
<Card dis-hover class="page-option-output-block">
<p slot="title">{{ $t('armConverter_output') }}</p>
<div slot="extra">
<Checkbox :disabled="!isArmToHex" v-model="current.prefix_0x">0x</Checkbox>
<Checkbox :disabled="!isArmToHex" v-model="current.swap_endian">GDB/LLDB</Checkbox>
</div>
</Card>
<heightResize :reduce="45" :append="['.page-option-output-block']" @resize="resize">
<input-block :text="'ARM64'+endianPlaceholder" @on-default-right-bottom-click="()=>copy(outputArm64)">
<autoHeightTextarea :value="outputArm64" :height="outputHeight" :placeholder="'ARM64'+endianPlaceholder"/>
</input-block>
<input-block :text="'ARM'+endianPlaceholder" @on-default-right-bottom-click="()=>copy(outputArm)">
<autoHeightTextarea style="margin-top: 5px" :value="outputArm" :height="outputHeight" :placeholder="'ARM'+endianPlaceholder"/>
</input-block>
<input-block :text="'ARM Big Endian'" @on-default-right-bottom-click="()=>copy(outputArmBigEndian)" v-if="!isArmToHex">
<autoHeightTextarea style="margin-top: 5px" :value="outputArmBigEndian" :height="outputHeight" :placeholder="'ARM Big Endian'"/>
</input-block>
<input-block :text="'THUMB'+endianPlaceholder" @on-default-right-bottom-click="()=>copy(outputThumb)">
<autoHeightTextarea style="margin-top: 5px" :value="outputThumb" :height="outputHeight" :placeholder="'THUMB'+endianPlaceholder"/>
</input-block>
<input-block :text="'THUMB Big Endian'" @on-default-right-bottom-click="()=>copy(outputThumbBigEndian)" v-if="!isArmToHex">
<autoHeightTextarea style="margin-top: 5px" :value="outputThumbBigEndian" :height="outputHeight" :placeholder="'THUMB Big Endian'"/>
</input-block>
</heightResize>
</Col>
</Row>
</div>
</template>
<script>
import heightResize from "./components/heightResize";
import autoHeightTextarea from "./components/autoHeightTextarea";
import axios from "axios";
export default {
components: {
heightResize,
autoHeightTextarea
},
created() {
this.$initToolData()
},
computed: {
isArmToHex() {
return this.current.operation === 'arm_to_hex';
},
endianPlaceholder() {
return this.isArmToHex && this.current.swap_endian ? " Big Endian" : ""
},
inputPlaceholder() {
if (this.isArmToHex) {
return "Input Assembly code:\nNOP\nRET\nB #0x1018DE444\nMOV X0, #0x11FE00000000\nBEQ #0x10020C\nCBNZ R0, #0x682C4"
}
return "Input Hex code:\n40000494\nC0035FD6\nF0 B5 03 AF81b0"
},
outputArm64() {
return this.convertResult('arm64')
},
outputArm() {
return this.convertResult('arm')
},
outputThumb() {
return this.convertResult('thumb')
},
outputArmBigEndian() {
return this.convertResult('armbe')
},
outputThumbBigEndian() {
return this.convertResult('thumbbe')
},
outputHeight() {
return this.isArmToHex ? (this.pageOutputHeight - 10) / 3 : (this.pageOutputHeight - 20) / 5
},
response(){
return this.isArmToHex ? this.current.asm_response : this.current.hex_response
}
},
methods: {
copy(data) {
if (data) {
this.$clipboardCopy(data)
}
},
resize(height) {
this.pageOutputHeight = height;
},
convert() {
this.loading = true
try {
let data = {};
if (this.isArmToHex) {
if (!this.current.asm_input){
throw new Error("input error")
}
data = {
"asm": this.current.asm_input,
"offset": this.current.offset,
"arch": ["arm64", "arm", "thumb"]
};
this.current.asm_response = ""
} else {
if (!this.current.hex_input){
throw new Error("input error")
}
data = {
"hex": this.current.hex_input,
"offset": this.current.offset,
"arch": ["arm64", "arm", "armbe", "thumb", "thumbbe"]
};
this.current.hex_response = ""
}
this.request(data)
} catch (error) {
this.loading = false
return this.$Message.error(
this.$t('armConverter_error', [error.message]).toString()
)
}
},
request(data) {
axios({
url: 'https://www.baiy.org/chrome_tool/armconverter/',
method: 'post',
data: JSON.stringify(data),
headers: {'Content-Type': 'application/json'}
}).then(({data}) => {
if (data.code !== 0) {
return this.$Message.error(
this.$t('armConverter_error', [data.info]).toString()
)
}
if (this.isArmToHex){
this.current.asm_response = data.data["hex"]
}
else{
this.current.hex_response = data.data["asm"]
}
this.$saveToolData(this.current);
}).catch((error) => {
return this.$Message.error(
this.$t('armConverter_error', [error.message]).toString()
)
}).then( ()=> {
this.loading = false
});
},
convertResult(field) {
if (!this.response || !(field in this.response)) {
return "";
}
let text = this.response[field][1]
if (
!this.isArmToHex
|| (!this.current.prefix_0x && !this.current.swap_endian)
) {
return text;
}
const size = {
arm64: 4,
arm: 4,
armbe: 4,
thumb: 2,
thumbbe: 2
}
// prefix_0x && swap_endian
return text.split('\n').map((line) => {
return this.swap(line, size[field], this.current.prefix_0x ? "0x" : "")
}).join('\n');
},
swap(text, size, prefix) {
if (!text || text.startsWith('#')) {
// this is an error, not actual code
return text;
}
if (!this.current.swap_endian) {
return prefix + text;
}
const size_chars = size * 2;
let result = '';
for (let i = 0; i < text.length; i += size_chars) {
const chunk = text.slice(i, i + size_chars);
for (let j = chunk.length; j > 0; j -= 2) {
result += chunk.slice(j - 2, j);
}
}
return prefix + result;
}
},
data() {
return {
current: {
operation: "arm_to_hex",
asm_input: "",
hex_input: "",
offset: "",
asm_response: "",
hex_response: "",
prefix_0x: false,
swap_endian: false
},
loading:false,
pageOutputHeight: 100
}
},
}
</script>
<style>
.tool-armConverter .ivu-tabs-bar {
margin-bottom: 8px;
}
.tool-armConverter .ivu-card-head {
line-height: 31px;
height: 31px;
padding: 0 16px;
}
.tool-armConverter .ivu-card-head p {
line-height: 31px;
height: 31px;
font-weight: normal;
color: #515a6e;
}
.tool-armConverter .ivu-card-extra {
top: 3px;
}
.tool-armConverter .ivu-card-bordered {
border-bottom: none;
}
.tool-armConverter .ivu-card-body {
padding: 0;
}
.tool-armConverter .ivu-card {
margin-bottom: 5px;
}
</style>
<template> <template>
<div> <div>
<Row> <div id="barcode-setting">
<Row :gutter="10">
<Col span="12"> <Col span="12">
<Card> <Form :label-width="80">
<Form :label-width="100"> <FormItem :label="$t('barcode_content')">
<FormItem label="条码内容">
<Input v-model="current.text"> <Input v-model="current.text">
<Select v-model="current.format" slot="append" style="width: 100px"> <Select v-model="current.format" slot="append" style="width: 100px">
<Option v-for="type in barcodeFormat" :key="type" :value="type">{{ type }}</Option> <Option v-for="type in barcodeFormat" :key="type" :value="type">{{ type }}</Option>
</Select> </Select>
</Input> </Input>
</FormItem> </FormItem>
<FormItem label="条码宽" class="line-item">
<Row> <Row>
<Col span="22"> <Col span="12">
<Slider v-model="current.width" :min="0" :max="4"></Slider> <FormItem :label="$t('barcode_background')">
<ColorPicker recommend v-model="current.background"/>
</FormItem>
</Col> </Col>
<Col span="2"> <Col span="12">
<FormItem :label="$t('barcode_line_color')">
<ColorPicker recommend v-model="current.lineColor"/>
</FormItem>
</Col>
</Row>
<FormItem :label="$t('barcode_bar_width')">
<Row>
<Col span="21">
<Slider v-model="current.width" :min="1" :max="4"></Slider>
</Col>
<Col span="3">
<span style="float: right">{{ this.current.width }}</span> <span style="float: right">{{ this.current.width }}</span>
</Col> </Col>
</Row> </Row>
</FormItem> </FormItem>
<FormItem label="条码高" class="line-item"> <FormItem :label="$t('barcode_height')">
<Row> <Row>
<Col span="22"> <Col span="21">
<Slider v-model="current.height" :min="10" :max="150"></Slider> <Slider v-model="current.height" :min="10" :max="150"></Slider>
</Col> </Col>
<Col span="2"> <Col span="3">
<span style="float: right">{{ this.current.height }}</span> <span style="float: right">{{ this.current.height }}</span>
</Col> </Col>
</Row> </Row>
</FormItem> </FormItem>
<FormItem label="条码外边距" class="line-item"> <FormItem :label="$t('barcode_margin')">
<Row> <Row>
<Col span="22"> <Col span="21">
<Slider v-model="current.margin" :min="0" :max="25"></Slider> <Slider v-model="current.margin" :min="0" :max="25"></Slider>
</Col> </Col>
<Col span="2"> <Col span="3">
<span style="float: right">{{ this.current.margin }}</span> <span style="float: right">{{ this.current.margin }}</span>
</Col> </Col>
</Row> </Row>
</FormItem> </FormItem>
<FormItem label="背景" class="line-item"> </Form>
<Input type="text" id="backgroundInput" v-model="current.background.hex" </Col>
@on-focus="openBackgroundPicker($event)"></Input> <Col span="12">
<chrome-picker v-show="showBackgroundPicker" id="backgroundPicker" style="position: fixed;z-index: 1000" <Form :label-width="80">
v-model="current.background" <FormItem :label="$t('barcode_show_text')">
@input="updateBackground"/> <RadioGroup v-model="current.textPosition" type="button">
</FormItem> <Radio label="close">
<FormItem label="线条颜色" class="line-item"> <span>{{ $t('barcode_hide') }}</span>
<Input type="text" id="lineColorInput" v-model="current.lineColor.hex"
@on-focus="openLineColorPicker"></Input>
<chrome-picker v-show="showLineColoePicker" id="lineColorPicker" style="position: fixed;z-index: 1000"
v-model="current.lineColor"
@input="updateLineColor"/>
</FormItem>
<FormItem label="显示文本" class="line-item">
<RadioGroup v-model="current.showText" type="button">
<Radio label="true">
<span>显示</span>
</Radio> </Radio>
<Radio label="false"> <Radio label="top">
<span>隐藏</span> <span>{{ $t('barcode_top') }}</span>
</Radio>
<Radio label="bottom">
<span>{{ $t('barcode_bottom') }}</span>
</Radio> </Radio>
</RadioGroup> </RadioGroup>
</FormItem> </FormItem>
<div v-if="this.current.showText === 'true'"> <FormItem :label="$t('barcode_text_align')">
<FormItem label="字体位置" class="line-item">
<RadioGroup v-model="current.textAlign" type="button"> <RadioGroup v-model="current.textAlign" type="button">
<Radio label="left"> <Radio :disabled="!showText" label="left">
<span>居左</span> <span>{{ $t('barcode_left') }}</span>
</Radio> </Radio>
<Radio label="center"> <Radio :disabled="!showText" label="center">
<span>居中</span> <span>{{ $t('barcode_center') }}</span>
</Radio> </Radio>
<Radio label="right"> <Radio :disabled="!showText" label="right">
<span>居右</span> <span>{{ $t('barcode_right') }}</span>
</Radio> </Radio>
</RadioGroup> </RadioGroup>
</FormItem> </FormItem>
<FormItem label="字体" class="line-item"> <FormItem :label="$t('barcode_font')">
<Select v-model="current.font"> <Row :gutter="10">
<Col span="12">
<Select :disabled="!showText" v-model="current.font">
<Option v-for="font in fontFamily" :key="font" :value="font">{{ font }}</Option> <Option v-for="font in fontFamily" :key="font" :value="font">{{ font }}</Option>
</Select> </Select>
</FormItem> </Col>
<FormItem label="字体样式" class="line-item"> <Col span="12">
<CheckboxGroup v-model="current.fontOptions"> <CheckboxGroup v-model="current.fontOptions">
<Checkbox label="bold"> <Checkbox :disabled="!showText" label="bold">
<span>粗体</span> <span>{{ $t('barcode_bold') }}</span>
</Checkbox> </Checkbox>
<Checkbox label="italic"> <Checkbox :disabled="!showText" label="italic">
<span>斜体</span> <span>{{ $t('barcode_italic') }}</span>
</Checkbox> </Checkbox>
</CheckboxGroup> </CheckboxGroup>
</Col>
</Row>
</FormItem> </FormItem>
<FormItem label="字体大小" class="line-item"> <FormItem :label="$t('barcode_font_size')">
<Row> <Row>
<Col span="22"> <Col span="22">
<Slider v-model="current.fontSize" :min="8" :max="36"></Slider> <Slider :disabled="!showText" v-model="current.fontSize" :min="8"
:max="36"></Slider>
</Col> </Col>
<Col span="2"> <Col span="2">
<span style="float: right">{{ this.current.fontSize }}</span> <span style="float: right">{{ this.current.fontSize }}</span>
</Col> </Col>
</Row> </Row>
</FormItem> </FormItem>
<FormItem label="字体外边距" class="line-item"> <FormItem :label="$t('barcode_text_margin')">
<Row> <Row>
<Col span="22"> <Col span="22">
<Slider v-model="current.textMargin" :min="-15" :max="40"></Slider> <Slider :disabled="!showText" v-model="current.textMargin" :min="-15"
:max="40"></Slider>
</Col> </Col>
<Col span="2"> <Col span="2">
<span style="float: right">{{ this.current.textMargin }}</span> <span style="float: right">{{ this.current.textMargin }}</span>
</Col> </Col>
</Row> </Row>
</FormItem> </FormItem>
</div>
</Form> </Form>
</Card>
</Col>
<Col span="12">
<Card>
<div>
<canvas id="barcode"></canvas>
<p style="color: red">{{ validStr }}</p>
</div>
</Card>
</Col> </Col>
</Row> </Row>
</div> </div>
<heightResize @resize="resize" ignore :append="['#barcode-setting']">
<div :style="`height: ${outputHeight}px;line-height:${outputHeight}px;text-align: center;vertical-align: middle;`">
<canvas @click="saveImage" :style="`border: ${canvasBorder};vertical-align: middle;`" ref="barcode"
class="barcode" v-show="!validStr" style="cursor:pointer"></canvas>
<p style="color: red" v-show="validStr">{{ validStr }}</p>
</div>
</heightResize>
</div>
</template> </template>
<script> <script>
/** /**
...@@ -135,29 +143,30 @@ ...@@ -135,29 +143,30 @@
* @date 2021/10/30 * @date 2021/10/30
* 基于jsbarcode生成条形码,可以自定义条码各项属性 * 基于jsbarcode生成条形码,可以自定义条码各项属性
* 不支持中文 * 不支持中文
* 颜色选择器采用vue-color
*/ */
import JsBarcode from 'jsbarcode' import JsBarcode from 'jsbarcode'
import {Chrome} from 'vue-color' import heightResize from "./components/heightResize";
export default { export default {
components: {
heightResize
},
created() { created() {
this.current = Object.assign(this.current, this.$getToolData("content")) this.$initToolData('text')
}, },
components: { computed: {
'chrome-picker': Chrome, showText() {
return ['top', 'bottom'].includes(this.current.textPosition)
},
canvasBorder() {
if (this.current.background.toUpperCase() === "#FFFFFF") {
return "1px dashed #666"
}
return "1px dashed #fff";
}
}, },
mounted() { mounted() {
// 加载颜色选择器消失的事件
this.loadEvent()
// 生成默认的条形码
this.generate() this.generate()
}, },
beforeDestroy() {
// 移除挂载时添加的事件
document.removeEventListener('click', () => {
}, true)
},
watch: { watch: {
current: { current: {
handler() { handler() {
...@@ -166,112 +175,61 @@ export default { ...@@ -166,112 +175,61 @@ export default {
deep: true deep: true
} }
}, },
methods: { methods: {
/**
* 检查
* @param event
* @param id
* @returns {boolean}
*/
checkNodeContainsId(event, id) {
// 检查目标元素及目标元素上层是否存在指定id元素
let et = event.target
while (et && et.id !== undefined) {
// 检查当前元素上是否存在指定
if (et.id === id) {
return true
}
et = et.parentNode
}
},
loadEvent() {
let _this = this
document.addEventListener('click', (e) => {
// 如果点击的区域不是输入框或者是背景色选择器则将背景选择器隐藏
if (!_this.checkNodeContainsId(e, 'backgroundInput') && !_this.checkNodeContainsId(e, 'backgroundPicker')) {
_this.showBackgroundPicker = false
}
// 同理
if (!_this.checkNodeContainsId(e, 'lineColorInput') && !_this.checkNodeContainsId(e, 'lineColorPicker')) {
_this.showLineColoePicker = false
}
})
},
openBackgroundPicker() {
this.showBackgroundPicker = true
this.showLineColoePicker = false
},
updateBackground(val) {
this.current.background = val
},
openLineColorPicker() {
this.showLineColoePicker = true
this.showBackgroundPicker = false
},
updateLineColor(val) {
this.current.lineColor = val
},
closeColorPicker() {
this.showLineColoePicker = false
this.showBackgroundPicker = false
},
generate() { generate() {
let _this = this;
// 处理字体样式 // 处理字体样式
let fontOptions = this.current.fontOptions.join(" ") let fontOptions = this.current.fontOptions.join(" ")
JsBarcode("#barcode", this.current.text, { const barcodeContent = this.current.text ? this.current.text : "Example 1234"
format: this.current.format,//选择要使用的条形码类型 JsBarcode(this.$refs.barcode, barcodeContent, {
format: this.current.format,
width: this.current.width, width: this.current.width,
height: this.current.height, height: this.current.height,
margin: this.current.margin, margin: this.current.margin,
background: this.current.background.hex, background: this.current.background,
lineColor: this.current.lineColor.hex, lineColor: this.current.lineColor,
displayValue: this.current.showText,//是否在条形码下方显示文字 displayValue: this.showText,
textPosition: "bottom",//设置文本的垂直位置 textPosition: this.current.textPosition,
textAlign: this.current.textAlign, textAlign: this.current.textAlign,
font: this.current.font, font: this.current.font,
fontOptions: fontOptions, fontOptions: fontOptions,
fontSize: this.current.fontSize, fontSize: this.current.fontSize,
textMargin: this.current.textMargin, textMargin: this.current.textMargin,
valid: function (valid) { valid: (valid) => {
// 显示条码内容无效 this.validStr = !valid ? `"${barcodeContent}" ${this.$t('barcode_invalid_content').toString()}` : "";
if (!valid) { if (!this.validStr && this.current.text) {
_this.validStr = "无效的条码内容" this.$saveToolData(this.current)
} else {
_this.validStr = ""
} }
} }
}) })
}, },
saveImage() {
if (!this.validStr && this.current.text) {
this.$clipboardCopyImages(this.$refs.barcode.toDataURL("image/png"), true)
}
},
resize(height){
this.outputHeight = Math.max(250,height)
}
}, },
data() { data() {
return { return {
outputHeight:250,
current: { current: {
text: "Test 123456789", text: "",
format: "CODE128", format: "CODE128",
width: 2, width: 2,
height: 50, height: 50,
margin: 10, margin: 10,
background: { background: "#FFFFFF",
hex: '#FFFFFF', lineColor: "#000000",
},
lineColor: {
hex: '#000000',
},
showText: "true",
textAlign: "center", textAlign: "center",
textPosition: "bottom",
font: "monospace", font: "monospace",
fontOptions: [], fontOptions: [],
fontSize: 20, fontSize: 20,
textMargin: 0 textMargin: 0
}, },
validStr: '', validStr: '',
// 背景色选择器控制开关
showBackgroundPicker: false,
// 线条颜色选择器控制开关
showLineColoePicker: false,
// 条码格式 // 条码格式
barcodeFormat: [ barcodeFormat: [
"CODE128", "CODE128",
...@@ -297,8 +255,8 @@ export default { ...@@ -297,8 +255,8 @@ export default {
"Serif", "Serif",
"Fantasy", "Fantasy",
"Cursive" "Cursive"
] ],
barcodeBase64: "",
} }
}, },
} }
...@@ -306,7 +264,7 @@ export default { ...@@ -306,7 +264,7 @@ export default {
<style scoped> <style scoped>
/**iview原来的formitem太高了,在浏览器直接使用插件时会被撑开,因此需要压缩下高度**/ /**iview原来的formitem太高了,在浏览器直接使用插件时会被撑开,因此需要压缩下高度**/
.line-item { #barcode-setting .ivu-form-item {
margin-top: -20px; margin-bottom: 2px;
} }
</style> </style>
<template>
<heightResize @resize="resize">
<Row :gutter="10">
<Col span="8">
<input-block top="5px">
<autoHeightTextarea v-model="current.input" :height="inputHeight"
:placeholder="$t('binary_input')"/>
<Select slot="extra" v-model="current.length" style="width:100px">
<Option :value="8">{{ $t('binary_length', [8]) }}</Option>
<Option :value="16">{{ $t('binary_length', [16]) }}</Option>
<Option :value="32">{{ $t('binary_length', [32]) }}</Option>
</Select>
</input-block>
</Col>
<Col span="16">
<input-block top="5px" :text="$t('binary_true_form')"
@on-default-right-bottom-click="()=>copy(result('trueForm'))">
<autoHeightTextarea :value="result('trueForm')" :height="outputHeight"
:placeholder="$t('binary_true_form')" style="margin-bottom: 10px"/>
</input-block>
<input-block top="5px" :text="$t('binary_inverse')"
@on-default-right-bottom-click="()=>copy(result('inverse'))">
<autoHeightTextarea :value="result('inverse')" :height="outputHeight"
:placeholder="$t('binary_inverse')" style="margin-bottom: 10px"/>
</input-block>
<input-block top="5px" :text="$t('binary_complement')"
@on-default-right-bottom-click="()=>copy(result('complement'))">
<autoHeightTextarea :value="result('complement')" :height="outputHeight"
:placeholder="$t('binary_complement')"/>
</input-block>
</Col>
</Row>
</heightResize>
</template>
<script>
import caculate from "./library/binary"
import heightResize from "./components/heightResize";
import autoHeightTextarea from "./components/autoHeightTextarea";
export default {
components: {
heightResize,
autoHeightTextarea
},
created() {
this.$initToolData('input', (data) => {
return /^[\d\-+\n]+$/.test(data)
})
},
methods: {
copy(data) {
if (data) {
this.$clipboardCopy(data)
}
},
resize(height) {
this.inputHeight = height
this.outputHeight = Math.ceil((height - 20) / 3)
},
result(type) {
if (this.current.input.trim() === "") {
return ""
}
let output = []
for (let input of this.current.input.trim().split("\n")) {
try {
output.push(caculate(input, this.current.length, type))
} catch (e) {
output.push(this.$t('binary_error', [e.message]).toString())
}
}
this.$saveToolData(this.current)
return output.join("\n");
}
},
data() {
return {
current: {
input: "",
length: 8,
},
inputHeight: 100,
outputHeight: 100
}
},
}
</script>
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
</div> </div>
</template> </template>
<script> <script>
import {CATEGORY_CLICK_EVENT_NAME} from '../../../tool/event'
function getAbsoluteHeight(select) { function getAbsoluteHeight(select) {
let el = document.querySelector(select) let el = document.querySelector(select)
if (el === null) { if (el === null) {
...@@ -73,9 +73,11 @@ export default { ...@@ -73,9 +73,11 @@ export default {
}, },
destroyed() { destroyed() {
window.removeEventListener("resize", this.reportWindowSize); window.removeEventListener("resize", this.reportWindowSize);
window.removeEventListener(CATEGORY_CLICK_EVENT_NAME, this.reportWindowSize);
}, },
mounted() { mounted() {
window.addEventListener("resize", this.reportWindowSize); window.addEventListener("resize", this.reportWindowSize);
window.addEventListener(CATEGORY_CLICK_EVENT_NAME, this.reportWindowSize);
this.resize(); this.resize();
} }
}; };
......
...@@ -2,20 +2,26 @@ ...@@ -2,20 +2,26 @@
<div> <div>
<Row :gutter="16"> <Row :gutter="16">
<Col span="12"> <Col span="12">
<Input v-model="current.input" style="margin-bottom: 16px"> <Input v-model="current.input" style="margin-bottom: 16px" class="page-option-input">
<span slot="prepend">表达式</span> <span slot="prepend">{{ $t('crontab_expression') }}</span>
</Input> </Input>
<Input :value="output" :rows="14" type="textarea" placeholder="最近执行时间"></Input> <heightResize :append="['.page-option-input']">
<autoHeightTextarea :value="output" :placeholder="$t('crontab_execute_time')"/>
</heightResize>
</Col> </Col>
<Col span="12"> <Col span="12" class="page-option-reference">
<Tabs value="example"> <Tabs value="example">
<TabPane label="例子" name="example"> <TabPane :label="$t('crontab_example')" name="example">
<Table stripe size="small" height="300" :columns="example.columns" :data="example.data"></Table> <heightResize :reduce="52" @resize="resize">
<Table stripe size="small" :height="referenceHeight" border :columns="example.columns"
:data="example.data"></Table>
</heightResize>
</TabPane> </TabPane>
<TabPane label="格式" name="format" style="text-align: center"> <TabPane :label="$t('crontab_format')" name="format" style="text-align: center">
<img src="../../statics/crontab.png" style="height: 300px" alt=""> <img v-if="locale === 'zh_CN'" src="../../statics/crontab_cn.png" style="height: 300px" alt="">
<img v-else src="../../statics/crontab_en.png" style="height: 300px" alt="">
</TabPane> </TabPane>
<TabPane label="特殊字符" name="special"> <TabPane :label="$t('crontab_symbol')" name="special">
<Table stripe size="small" height="300" :columns="special.columns" :data="special.data"></Table> <Table stripe size="small" height="300" :columns="special.columns" :data="special.data"></Table>
</TabPane> </TabPane>
</Tabs> </Tabs>
...@@ -24,21 +30,31 @@ ...@@ -24,21 +30,31 @@
</div> </div>
</template> </template>
<script> <script>
import cronstrue from 'cronstrue/i18n'; import cronstrue from 'cronstrue/i18n';
import parser from 'cron-parser'; import parser from 'cron-parser';
import moment from "moment" import moment from "moment"
import {getCurrentLocale} from "../../i18n";
import heightResize from "./components/heightResize";
import autoHeightTextarea from "./components/autoHeightTextarea";
export default { export default {
components: {
heightResize,
autoHeightTextarea
},
computed: { computed: {
locale() {
return getCurrentLocale()
},
output() { output() {
if (!this.current.input) return ""; if (!this.current.input) return "";
let list = []; let list = [];
try { try {
list.push(cronstrue.toString(this.current.input, {locale: "zh_CN"})); list.push(this.conversion(this.current.input));
list.push("\n最近10次执行时间"); list.push(`\n${this.$t('crontab_execute_time_list')}`);
let interval = parser.parseExpression(this.current.input); let interval = parser.parseExpression(this.current.input);
for (let i = 1; i <= 10; i++) { for (let i = 1; i <= 10; i++) {
list.push(`第${i}次: ` + moment(interval.next().toString()).format("YYYY-MM-DD HH:mm:ss")) list.push(this.$t('crontab_no', [i, moment(interval.next().toString()).format("YYYY-MM-DD HH:mm:ss")]))
} }
this.$saveToolData(this.current); this.$saveToolData(this.current);
} catch (err) { } catch (err) {
...@@ -49,67 +65,88 @@ ...@@ -49,67 +65,88 @@
}, },
}, },
created() { created() {
this.current = Object.assign(this.current, this.$getToolData()) this.$initToolData('input', (data) => {
try {
cronstrue.toString(data)
} catch {
return false
}
return true
})
this.example.data = this.example.data.map((item) => {
return {
example: item,
text: this.conversion(item)
}
})
},
methods: {
conversion(input) {
return cronstrue.toString(input, {locale: this.locale, use24HourTimeFormat: true})
},
resize(height) {
this.referenceHeight = height
}
}, },
data() { data() {
return { return {
referenceHeight: 101,
current: { current: {
input: "2 */5 * * 2-5", input: "2 */5 * * 2-5"
operation: "check"
}, },
special: { special: {
columns: [ columns: [
{title: '特殊字符', key: 'name', width: 100}, {title: this.$t('crontab_symbol'), key: 'name', width: 100},
{title: '代表意义', key: 'text'}, {title: this.$t('crontab_description'), key: 'text'},
], ],
data: [ data: [
{ {
name: "*(星号)", name: "*",
text: "代表任何时刻都接受的意思。举例来说,范例一内那个日、月、周都是*,就代表着不论何月、何日的礼拜几的12:00都执行后续命令的意思。" text: this.$t('crontab_symbol_description_1')
}, },
{ {
name: ",(逗号)", name: ",",
text: "代表分隔时段的意思。举例来说,如果要执行的工作是3:00与6:00时,就会是:0 3,6 * * * command时间还是有五列,不过第二列是 3,6 ,代表3与6都适用" text: this.$t('crontab_symbol_description_2')
}, },
{ {
name: "-(减号)", name: "-",
text: "代表一段时间范围内,举例来说,8点到12点之间的每小时的20分都进行一项工作:20 8-12 * * * command仔细看到第二列变成8-12.代表 8,9,10,11,12 都适用的意思" text: this.$t('crontab_symbol_description_3')
}, },
{ {
name: "/n(斜线)", name: "/n",
text: "那个n代表数字,即是每隔n单位间隔的意思,例如每五分钟进行一次,则:*/5 * * * * command用*与/5来搭配,也可以写成0-59/5,意思相同" text: this.$t('crontab_symbol_description_4')
} }
] ]
}, },
example: { example: {
columns: [ columns: [
{title: '例子', key: 'example', width: 120}, {title: this.$t('crontab_example'), key: 'example', width: 120},
{title: '说明', key: 'text'}, {title: this.$t('crontab_description'), key: 'text'},
], ],
data: [ data: [
{example: "*/1 * * * *", text: "每1分钟执行"}, "*/1 * * * *",
{example: "* * * * *", text: "每1分钟执行"}, "* * * * *",
{example: "*/5 * * * *", text: "每5分钟执行"}, "*/5 * * * *",
{example: "0 * * * *", text: "每小时执行"}, "0 * * * *",
{example: "0 */1 * * *", text: "每小时执行"}, "0 */1 * * *",
{example: "0 7 * * *", text: "每天上午7点执行"}, "0 7 * * *",
{example: "10 7 * * *", text: "每天上午7点10分执行"}, "10 7 * * *",
{example: "0 0 * * *", text: "每天定时执行一次"}, "0 0 * * *",
{example: "0 0 * * 0", text: "每周定时执行一次"}, "0 0 * * 0",
{example: "0 0 1 * *", text: "每月定时执行一次"}, "0 0 1 * *",
{example: "0 0 1 1 *", text: "每年定时执行一次"}, "0 0 1 1 *",
{example: "5 * * * *", text: "指定每小时的第5分钟执行一次命令"}, "5 * * * *",
{example: "30 5 * * *", text: "指定每天的 5:30 执行命令"}, "30 5 * * *",
{example: "30 7 8 * *", text: "指定每月8号的7:30分执行命令"}, "30 7 8 * *",
{example: "30 5 8 6 *", text: "指定每年的6月8日5:30执行命令"}, "30 5 8 6 *",
{example: "30 6 * * 0", text: "指定每星期日的6:30执行命令"}, "30 6 * * 0",
{example: "30 3 10,20 * *", text: "每月10号及20号的3:30执行命令[注:“,”用来连接多个不连续的时段]"}, "30 3 10,20 * *",
{example: "25 8-11 * * *", text: "每天8-11点的第25分钟执行命令[注:“-”用来连接连续的时段"}, "25 8-11 * * *",
{example: "*/15 * * * *", text: "每15分钟执行一次命令 [即每个小时的第0 15 30 45 60分钟执行命令]"}, "*/15 * * * *",
{example: "30 6 */10 * *", text: "每个月中,每隔10天6:30执行一次命令[即每月的1、11、21、31日是的6:30执行一次命令。]"} "30 6 */10 * *"
] ]
} }
} }
} }
} }
</script> </script>
<template> <template>
<div> <div id="tool-hash">
<Input v-model="current.input" :rows="7" type="textarea" placeholder="内容"></Input> <Row :gutter="10">
<option-block> <Col span="8">
<FormItem> <input-block>
<ButtonGroup> <heightResize>
<Button type="primary" @click="handle(v)" v-for="v in type" :key="v">{{ v }}</Button> <autoHeightTextarea v-model="current.input" :placeholder="$t('hash_content')"/>
</ButtonGroup> </heightResize>
</FormItem> <Checkbox slot="extra" v-model="current.isUppercase">{{ $t('hash_uppercase') }}</Checkbox>
<FormItem> </input-block>
<Checkbox v-model="current.isUppercase">大写字母</Checkbox> </Col>
</FormItem> <Col span="16">
</option-block> <heightResize @resize="resize">
<Input v-model="current.output" :rows="7" type="textarea" placeholder="结果"></Input> <input-block :style="`margin-top: ${no >0 ? 5 : 0}px;`" :text="type" v-for="(type,no) in types" :key="type" @on-default-right-bottom-click="()=>copy(type)">
<autoHeightTextarea :value="result(type)" :height="outputHeight" :placeholder="type"/>
</input-block>
</heightResize>
</Col>
</Row>
</div> </div>
</template> </template>
<script> <script>
import crypto from "crypto-js" import crypto from "crypto-js"
import heightResize from "./components/heightResize";
import autoHeightTextarea from "./components/autoHeightTextarea";
const sm = require('sm-crypto');
export default { export default {
components: {
heightResize,
autoHeightTextarea
},
created() { created() {
this.current = Object.assign(this.current, this.$getToolData("input")) this.$initToolData('input')
},
computed: {
md5() {
let result = crypto.MD5(this.current.input).toString();
return this.current.isUppercase ? result.toUpperCase() : result;
},
sha1() {
let result = crypto.SHA1(this.current.input).toString();
return this.current.isUppercase ? result.toUpperCase() : result;
},
sha256() {
let result = crypto.SHA256(this.current.input).toString();
return this.current.isUppercase ? result.toUpperCase() : result;
}, },
methods: { sha512() {
handle(v) { let result = crypto.SHA512(this.current.input).toString();
if (this.current.input) { return this.current.isUppercase ? result.toUpperCase() : result;
switch (v) { },
case "md5": sm3() {
this.current.output = crypto.MD5(this.current.input).toString(); let result = sm.sm3(this.current.input);
break; return this.current.isUppercase ? result.toUpperCase() : result;
case "sha1": },
this.current.output = crypto.SHA1(this.current.input).toString(); },
break; watch: {
case "sha256": current: {
this.current.output = crypto.SHA256(this.current.input).toString(); handler() {
break; if (this.current.input){
case "sha512": this.$saveToolData(this.current);
this.current.output = crypto.SHA512(this.current.input).toString();
break;
case "sm3":
this.current.output = require('sm-crypto').sm3(this.current.input);
break;
default:
return;
} }
if (this.current.isUppercase) { },
this.current.output = this.current.output.toUpperCase() deep: true
} }
this.current.operation = v; },
this.$clipboardCopy(this.current.output); methods:{
this.$saveToolData(this.current); result(type){
if (!this.current.input) {
return "";
} }
return this[type]
},
copy(type){
if (this[type]){
this.$clipboardCopy(this[type])
}
},
resize(height){
this.outputHeight = (height - 20)/5
} }
}, },
data() { data() {
...@@ -57,10 +86,9 @@ export default { ...@@ -57,10 +86,9 @@ export default {
current: { current: {
input: "", input: "",
isUppercase: false, isUppercase: false,
output: "",
operation: ""
}, },
type: ['md5', 'sha1', 'sha256', 'sha512', "sm3"] types: ['md5', 'sha1', 'sha256', 'sha512', "sm3"],
outputHeight:100
} }
}, },
} }
......
/**
* @link https://github.com/leizelong/binary
*/
function toFixed(d = '', length = 32, symbol = 0) {
if (d.length < length) {
return symbol + '0'.repeat(length - 1 - d.length) + d;
}
return d;
}
class Binary {
constructor(length) {
this.length = length;
}
getBinary(d) {
return Math.abs(parseInt(d)).toString(2);
}
// 原码
trueForm(d) {
const two = this.getBinary(d);
if (d >= 0) {
return toFixed(two, this.length, 0);
}
return toFixed(two, this.length, 1);
}
// 反码
inverse(d) {
const trueForm = this.trueForm(d);
if (d >= 0) {
return trueForm;
}
let data = '';
// eslint-disable-next-line no-plusplus
for (let index = 0; index < this.length; index++) {
const item = trueForm[index];
if (index === 0) {
data += item;
} else {
data += Math.abs(+item - 1);
}
}
return data;
}
// 补码
complement(d) {
const trueForm = this.trueForm(d);
const inverse = this.inverse(d);
if (d >= 0) {
return trueForm;
}
const valid = inverse.slice(1);
const validTenComplete = parseInt(valid, 2) + 1;
return toFixed(
validTenComplete.toString(2),
this.length,
1
);
}
}
export default (input, length, type) => {
if (!["trueForm", "inverse", "complement"].includes(type)) {
throw new Error("type error")
}
if (![8, 16, 32].includes(length)) {
throw new Error("length error")
}
// 0 特殊处理
if (
input === "0"
|| input === "+0"
|| input === "-0"
) {
if (type === "trueForm") {
return input === "-0" ? ("1" + Array(length).join("0")).slice(0, length - 1) : Array(length).join("0")
}
if (type === "inverse") {
return input === "-0" ? Array(length).join("1") : Array(length).join("0")
}
if (type === "complement") {
return input === "-0" ? Array(length).join("0") : Array(length).join("0")
}
return "";
}
input = parseInt(input);
switch (length) {
case 8:
if (!(input >= -128 && input <= 127)) {
throw new Error('length:8 input:-128 ~ 127')
}
break;
case 16:
if (!(input >= -32768 && input <= 32767)) {
throw new Error('length:16 input:-32768 ~ 32767')
}
break;
case 32:
if (!(input >= -2147483648 && input <= 2147483647)) {
throw new Error('length:32 input:-2147483648 ~ 2147483647')
}
break;
default:
throw new Error('length error')
}
let handle = (new Binary(length))
switch (type) {
case "trueForm":
return handle.trueForm(input)
case "inverse":
return handle.inverse(input)
case "complement":
return handle.complement(input)
}
}
<template> <template>
<div> <div>
<Tabs v-model="current.operation"> <Tabs v-model="current.operation">
<TabPane label="二维码生成" name="generate"> <TabPane :label="$t('qrCode_generate_title')" name="generate">
<Row :gutter="16"> <Row :gutter="16">
<Col span="14"> <Col span="14">
<Input v-model="current.generateInput" :rows="14" type="textarea" placeholder="内容"></Input> <heightResize :reduce="52">
<option-block> <autoHeightTextarea v-model="current.generateInput" :placeholder="$t('qrCode_generate_input')" />
<FormItem> </heightResize>
<Button type="primary" @click="generate()">生成</Button>
</FormItem>
</option-block>
</Col> </Col>
<Col span="10"> <Col span="10">
<div style="text-align: center" v-html="current.generateOutput"></div> <heightResize :reduce="52">
<div class="tool-qrcode-block" v-if="generateOutput">
<img v-if="generateOutput.startsWith('data:')" @click="()=>$clipboardCopyImages(generateOutput)" style="width:70%;min-width:300px;cursor:pointer;" :src="generateOutput" />
<p v-else>{{ generateOutput }}</p>
</div>
</heightResize>
</Col> </Col>
</Row> </Row>
</TabPane> </TabPane>
<TabPane label="二维码解析" name="reader"> <TabPane :label="$t('qrCode_reader_title')" name="reader">
<Row :gutter="16"> <Row :gutter="16">
<Col span="14"> <Col span="14">
<Input v-model="current.readerInput" :rows="5" type="textarea" placeholder="请输入二维码图片地址或点击下方按钮上传图片"></Input> <input-block style="margin-bottom: 10px" bottom="0px" right="10px" class="tool-reader-input">
<option-block> <pasteClipboardFlie @on-paste-image="handleUpload">
<FormItem> <Input v-model="current.readerInput" :rows="5" type="textarea" :placeholder="$t('qrCode_reader_input')"></Input>
<Button type="primary" @click="reader()">解析</Button> </pasteClipboardFlie>
</FormItem> <Upload slot="extra" action="#" :before-upload="handleUpload">
<FormItem> <Button size="small" type="primary" icon="ios-cloud-upload-outline">{{ $t('qrCode_reader_upload') }}</Button>
<Upload action="#" :before-upload="handleUpload">
<Button icon="ios-cloud-upload-outline">上传图片</Button>
</Upload> </Upload>
</FormItem> </input-block>
</option-block> <heightResize :reduce="52" :append="['.tool-reader-input']">
<Input v-model="current.readerOutput" :rows="5" type="textarea" placeholder="解析结果"></Input> <autoHeightTextarea :value="readerOutput" :placeholder="$t('qrCode_reader_output')" />
</heightResize>
</Col>
<Col span="10" >
<heightResize :reduce="52">
<div class="tool-qrcode-block" v-html="readerInputImg"></div>
</heightResize>
</Col> </Col>
<Col span="10" style="text-align: center" v-html="readerInputImg"></Col>
</Row> </Row>
</TabPane> </TabPane>
</Tabs> </Tabs>
</div> </div>
</template> </template>
<script> <script>
import generator from 'qrcode' import generator from 'qrcode'
import qrcodeParser from 'qrcode-parser' import qrcodeParser from 'qrcode-parser'
import model from '../../tool/model' import model from '../../tool/model'
import Jimp from 'jimp';
import pasteClipboardFlie from './components/pasteClipboardFlie';
import heightResize from "./components/heightResize";
import autoHeightTextarea from "./components/autoHeightTextarea";
export default { export default {
components: {
pasteClipboardFlie,
heightResize,
autoHeightTextarea
},
computed: { computed: {
readerInputImg () { readerInputImg() {
if (this.current.readerInput) { if (this.current.readerInput) {
return `<img style="width:300px" src="${this.current.readerInput}" />` return `<img style="width:70%;min-width:300px;" src="${this.current.readerInput}" />`
} }
return '' return ''
}
},
watch: {
"current.generateInput"() {
this.generate()
}, },
"current.readerInput"() {
this.reader()
}
}, },
created () { created() {
let feature = model.getToolCurrentFeature('generate') let feature = model.getToolCurrentFeature('generate')
if(feature === 'generate'){ if (feature === 'generate') {
this.current = Object.assign(this.current, this.$getToolData('generateInput'))
this.current.operation = feature; this.current.operation = feature;
} this.$initToolData('generateInput')
else if(feature === 'reader'){ } else if (feature === 'reader') {
this.current = Object.assign(this.current, this.$getToolData('readerInput'))
this.current.operation = feature; this.current.operation = feature;
} this.$initToolData('readerInput')
else{ } else {
this.current = Object.assign(this.current, this.$getToolData()) this.$initToolData()
} }
}, },
methods: { methods: {
generate () { generate() {
if (!this.current.generateInput) return if (!this.current.generateInput) {
this.generateHandle(this.current.generateInput) this.generateOutput = "";
return;
}
generator.toDataURL(this.current.generateInput, (error, url) => {
if (error) {
this.generateOutput = this.$t("qrCode_generate_error", [error]);
return;
}
this.generateOutput = url
this.$saveToolData(this.current) this.$saveToolData(this.current)
})
}, },
reader () { reader() {
if (!this.current.readerInput) { if (!this.current.readerInput) {
this.readerOutput = "";
return return
} }
qrcodeParser(this.current.readerInput).then((c) => { this.getReaderImagePngBase64(this.current.readerInput).then((result) => {
this.current.readerOutput = c.data this.readerOutput = result
this.$saveToolData(this.current) this.$saveToolData(this.current)
this.$Message.success('解析成功') }).catch(e => {
}).catch(() => { this.readerOutput = this.$t('qrCode_reader_error', [e.message])
return this.$Message.error('图片解析错误')
}) })
}, },
generateHandle (str) { getReaderImagePngBase64(input) {
generator.toDataURL(str, (error, url) => { return new Promise((resolve, reject) => {
if (error) return this.$Message.error('二维码生成错误:' + error) const xhr = new XMLHttpRequest();
this.$clipboardCopyImages(url) xhr.open('GET', input);
this.current.generateOutput = `<img style="width:300px" src="${url}" />` xhr.responseType = 'blob';
xhr.onload = () => {
if (xhr.status >= 200 && xhr.status < 300) {
let blob = xhr.response;
const myReader = new FileReader();
myReader.readAsArrayBuffer(blob);
myReader.addEventListener('loadend', e => {
const buffer = e.target.result;
try {
Jimp.read(buffer, (err, image) => {
if (err) {
return reject(err);
}
image.getBase64Async("image/png").then((img) => {
return qrcodeParser(img)
}).then((c) => {
resolve(c.data)
}).catch((e) => {
reject(e);
})
});
} catch (e) {
reject(e);
}
});
} else {
reject(new Error(this.$t('qrCode_reader_parsing_failure').toString()));
}
};
xhr.onerror = () => reject(new Error(this.$t('qrCode_reader_parsing_failure').toString()));
xhr.send();
}) })
}, },
handleUpload (file) { handleUpload(file) {
if (this.current.operation !== "reader"){
return;
}
let r = new FileReader() let r = new FileReader()
r.readAsDataURL(file) r.readAsDataURL(file)
r.onloadend = () => { r.onloadend = () => {
this.current.readerInput = r.result this.current.readerInput = r.result
this.reader()
} }
return false return false
}
}, },
substr (str) { data() {
str = str.replace(/[\r\n]/g, '').trim()
const strLength = 100
return str.length > strLength ? str.substr(0, strLength) + '...' : str
},
},
data () {
return { return {
readerOutput: "",
generateOutput: "",
current: { current: {
generateInput: '', generateInput: '',
generateOutput: '',
readerInput: '', readerInput: '',
readerOutput: '',
operation: 'generate', operation: 'generate',
}, },
} }
}, },
} }
</script> </script>
<style>
.tool-qrcode-block {
height: 100%;
display: flex;
display: -webkit-flex;
align-items: center;
justify-content: center;
}
</style>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册