diff --git a/pom.xml b/pom.xml index 55f1b11..1e0b46d 100644 --- a/pom.xml +++ b/pom.xml @@ -4,12 +4,12 @@ 4.0.0 tn.mnlr vripper - 3.5.4 + 3.6.0 pom org.springframework.boot spring-boot-starter-parent - 2.4.5 + 3.5.6 diff --git a/vripper-electron/package.json b/vripper-electron/package.json index 184f9d2..d504d45 100644 --- a/vripper-electron/package.json +++ b/vripper-electron/package.json @@ -1,10 +1,10 @@ { "name": "vripper-electron", - "version": "3.5.4", + "version": "3.6.0", "description": "A ripper for vipergirls.to built using web technolgies", "main": "main.js", - "author": "death-claw <53543762+death-claw@users.noreply.github.com>", - "homepage": "https://github.com/death-claw/vripper-project", + "author": "dev-claw", + "homepage": "https://github.com/dev-claw/vripper-project", "license": "ISC", "build": { "appId": "tn.mnlr.vripper", diff --git a/vripper-electron/pom.xml b/vripper-electron/pom.xml index d812877..685aaee 100644 --- a/vripper-electron/pom.xml +++ b/vripper-electron/pom.xml @@ -6,10 +6,11 @@ tn.mnlr vripper - 3.5.4 + 3.6.0 vripper-electron vripper-electron + pom diff --git a/vripper-electron/yarn.lock b/vripper-electron/yarn.lock index ae5b1b6..20d145a 100644 --- a/vripper-electron/yarn.lock +++ b/vripper-electron/yarn.lock @@ -4,7 +4,7 @@ "7zip-bin@~5.0.3": version "5.0.3" - resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.0.3.tgz" + resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.0.3.tgz#bc5b5532ecafd923a61f2fb097e3b108c0106a3f" integrity sha512-GLyWIFBbGvpKPGo55JyRZAo4lVbnBiD52cKlw/0Vt+wnmKvWJkpZvsjVoaIolyBXDeAQKSicRtqFNPem9w0WYA== "@develar/schema-utils@~2.6.5": @@ -16,9 +16,9 @@ ajv-keywords "^3.4.1" "@electron/get@^1.0.1": - version "1.12.4" - resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.12.4.tgz" - integrity sha512-6nr9DbJPUR9Xujw6zD3y+rS95TyItEVM0NVjt1EehY2vUWfIgPiIPVHxCvaTS0xr2B+DRxovYVKbuOWqC35kjg== + version "1.14.1" + resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.14.1.tgz#16ba75f02dffb74c23965e72d617adc721d27f40" + integrity sha512-BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw== dependencies: debug "^4.1.1" env-paths "^2.2.0" @@ -28,52 +28,59 @@ semver "^6.2.0" sumchecker "^3.0.1" optionalDependencies: - global-agent "^2.0.2" + global-agent "^3.0.0" global-tunnel-ng "^2.7.1" "@sindresorhus/is@^0.14.0": version "0.14.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== "@szmarczak/http-timer@^1.1.2": version "1.1.2" - resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz" + resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== dependencies: defer-to-connect "^1.0.1" "@types/debug@^4.1.5": - version "4.1.5" - resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.5.tgz" - integrity sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ== + version "4.1.12" + resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" + integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ== + dependencies: + "@types/ms" "*" "@types/fs-extra@^9.0.1": - version "9.0.8" - resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.8.tgz" - integrity sha512-bnlTVTwq03Na7DpWxFJ1dvnORob+Otb8xHyUqUWhqvz/Ksg8+JXPlR52oeMSZ37YEOa5PyccbgUNutiQdi13TA== + version "9.0.13" + resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.13.tgz#7594fbae04fe7f1918ce8b3d213f74ff44ac1f45" + integrity sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA== dependencies: "@types/node" "*" +"@types/ms@*": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@types/ms/-/ms-2.1.0.tgz#052aa67a48eccc4309d7f0191b7e41434b90bb78" + integrity sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA== + "@types/node@*": version "14.14.34" resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.34.tgz" integrity sha512-dBPaxocOK6UVyvhbnpFIj2W+S+1cBTkHQbFQfeeJhoKFbzYcVUGHvddeWPSucKATb3F0+pgDq0i6ghEaZjsugA== "@types/node@^12.0.12": - version "12.20.5" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.5.tgz" - integrity sha512-5Oy7tYZnu3a4pnJ//d4yVvOImExl4Vtwf0D40iKUlU+XlUsyV9iyFWyCFlwy489b72FMAik/EFwRkNLjjOdSPg== + version "12.20.55" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" + integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== "@types/yargs-parser@*": - version "20.2.0" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.0.tgz" - integrity sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA== + version "21.0.3" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" + integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== "@types/yargs@^15.0.5": - version "15.0.13" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.13.tgz" - integrity sha512-kQ5JNTrbDv3Rp5X2n/iUu37IJBDU2gsZ5R/g1/KHOOEc5IKfUFjXT6DENPGduh08I/pamwtEq4oul7gUqKTQDQ== + version "15.0.19" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.19.tgz#328fb89e46109ecbdb70c295d96ff2f46dfd01b9" + integrity sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA== dependencies: "@types/yargs-parser" "*" @@ -93,28 +100,21 @@ ajv@^6.12.0: uri-js "^4.2.2" ansi-align@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz" - integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" + integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== dependencies: - string-width "^3.0.0" - -ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz" - integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + string-width "^4.1.0" ansi-regex@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz" integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" @@ -125,12 +125,12 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: app-builder-bin@3.5.10: version "3.5.10" - resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.10.tgz" + resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.10.tgz#4a7f9999fccc0c435b6284ae1366bc76a17c4a7d" integrity sha512-Jd+GW68lR0NeetgZDo47PdWBEPdnD+p0jEa7XaxjRC8u6Oo/wgJsfKUkORRgr2NpkD19IFKN50P6JYy04XHFLQ== app-builder-lib@22.9.1: version "22.9.1" - resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.9.1.tgz" + resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.9.1.tgz#ccb8f1a02b628514a5dfab9401fa2a976689415c" integrity sha512-KfXim/fiNwFW2SKffsjEMdAU7RbbEXn62x5YyXle1b4j9X/wEHW9iwox8De6y0hJdR+/kCC/49lI+VgNwLhV7A== dependencies: "7zip-bin" "~5.0.3" @@ -158,7 +158,7 @@ app-builder-lib@22.9.1: argparse@^1.0.7: version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" @@ -173,10 +173,10 @@ async-exit-hook@^2.0.1: resolved "https://registry.yarnpkg.com/async-exit-hook/-/async-exit-hook-2.0.1.tgz" integrity sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw== -async@0.9.x: - version "0.9.2" - resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz" - integrity sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0= +async@^3.2.6: + version "3.2.6" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.6.tgz#1b0728e14929d51b85b449b7f06e27c1145e38ce" + integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA== at-least-node@^1.0.0: version "1.0.0" @@ -197,14 +197,14 @@ balanced-match@^1.0.0: bluebird-lst@^1.0.9: version "1.0.9" - resolved "https://registry.yarnpkg.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz" + resolved "https://registry.yarnpkg.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz#a64a0e4365658b9ab5fe875eb9dfb694189bb41c" integrity sha512-7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw== dependencies: bluebird "^3.5.5" bluebird@^3.5.5: version "3.7.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== boolbase@~1.0.0: @@ -219,7 +219,7 @@ boolean@^3.0.1: boxen@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/boxen/-/boxen-4.2.0.tgz" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-4.2.0.tgz#e411b62357d6d6d36587c8ac3d5d974daa070e64" integrity sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ== dependencies: ansi-align "^3.0.0" @@ -239,6 +239,13 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +brace-expansion@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7" + integrity sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ== + dependencies: + balanced-match "^1.0.0" + buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz" @@ -251,7 +258,7 @@ buffer-from@^1.0.0: builder-util-runtime@8.7.2: version "8.7.2" - resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.2.tgz" + resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.2.tgz#d93afc71428a12789b437e13850e1fa7da956d72" integrity sha512-xBqv+8bg6cfnzAQK1k3OGpfaHg+QkPgIgpEkXNhouZ0WiUkyZCftuRc2LYzQrLucFywpa14Xbc6+hTbpq83yRA== dependencies: debug "^4.1.1" @@ -259,7 +266,7 @@ builder-util-runtime@8.7.2: builder-util@22.9.1: version "22.9.1" - resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-22.9.1.tgz" + resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-22.9.1.tgz#b7087a5cde477f90d718ca5d7fafb6ae261b16af" integrity sha512-5hN/XOaYu4ZQUS6F+5CXE6jTo+NAnVqAxDuKGSaHWb9bejfv/rluChTLoY3/nJh7RFjkoyVjvFJv7zQDB1QmHw== dependencies: "7zip-bin" "~5.0.3" @@ -279,7 +286,7 @@ builder-util@22.9.1: cacheable-request@^6.0.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz" + resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== dependencies: clone-response "^1.0.2" @@ -292,21 +299,12 @@ cacheable-request@^6.0.0: camelcase@^5.3.1: version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - chalk@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== dependencies: ansi-styles "^4.1.0" @@ -339,17 +337,17 @@ chromium-pickle-js@^0.2.0: ci-info@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== cli-boxes@^2.2.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== cli-truncate@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== dependencies: slice-ansi "^3.0.0" @@ -357,7 +355,7 @@ cli-truncate@^2.0.0: cliui@^7.0.2: version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: string-width "^4.2.0" @@ -371,13 +369,6 @@ clone-response@^1.0.2: dependencies: mimic-response "^1.0.0" -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - color-convert@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz" @@ -385,11 +376,6 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz" @@ -402,7 +388,7 @@ concat-map@0.0.1: concat-stream@^1.6.2: version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== dependencies: buffer-from "^1.0.0" @@ -411,16 +397,16 @@ concat-stream@^1.6.2: typedarray "^0.0.6" config-chain@^1.1.11: - version "1.1.12" - resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.12.tgz" - integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== + version "1.1.13" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" + integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== dependencies: ini "^1.3.4" proto-list "~1.2.1" configstore@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== dependencies: dot-prop "^5.2.0" @@ -435,19 +421,14 @@ copy-dir@1.3.0: resolved "https://registry.yarnpkg.com/copy-dir/-/copy-dir-1.3.0.tgz" integrity sha512-Q4+qBFnN4bwGwvtXXzbp4P/4iNk0MaiGAzvQ8OiMtlLjkIKjmNN689uVzShSM0908q7GoFHXIPx4zi75ocoaHw== -core-js@^3.6.5: - version "3.9.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.9.1.tgz" - integrity sha512-gSjRvzkxQc1zjM/5paAmL4idJBFzuJoo+jDjF1tStYFMV2ERfD02HhahhCGXUyHxQRG4yFKVSdO6g62eoRMcDg== - core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== crypto-random-string@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== css-select@~1.2.0: @@ -467,33 +448,40 @@ css-what@2.1: debug@^2.6.9: version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@^4.1.0, debug@^4.1.1, debug@^4.3.0: +debug@^4.1.0, debug@^4.1.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz" integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== dependencies: ms "2.1.2" +debug@^4.3.0: + version "4.4.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" + integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== + dependencies: + ms "^2.1.3" + decompress-response@^3.3.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz" - integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" + integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA== dependencies: mimic-response "^1.0.0" deep-extend@^0.6.0: version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== defer-to-connect@^1.0.1: version "1.1.3" - resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz" + resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== define-properties@^1.1.3: @@ -510,7 +498,7 @@ detect-node@^2.0.4: dmg-builder@22.9.1: version "22.9.1" - resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.9.1.tgz" + resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.9.1.tgz#64647224f37ee47fc9bd01947c21cc010a30511f" integrity sha512-jc+DAirqmQrNT6KbDHdfEp8D1kD0DBTnsLhwUR3MX+hMBun5bT134LQzpdK0GKvd22GqF8L1Cz/NOgaVjscAXQ== dependencies: app-builder-lib "22.9.1" @@ -571,36 +559,36 @@ domutils@^1.5.1: dot-prop@^5.2.0: version "5.3.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== dependencies: is-obj "^2.0.0" dotenv-expand@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== dotenv@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz" - integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== + version "8.6.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" + integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== duplexer3@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= + version "0.1.5" + resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.5.tgz#0b5e4d7bad5de8901ea4440624c8e1d20099217e" + integrity sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA== ejs@^3.1.5: - version "3.1.6" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.6.tgz" - integrity sha512-9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw== + version "3.1.10" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.10.tgz#69ab8358b14e896f80cc39e62087b88500c3ac3b" + integrity sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA== dependencies: - jake "^10.6.1" + jake "^10.8.5" electron-builder@22.9.1: version "22.9.1" - resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.9.1.tgz" + resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.9.1.tgz#a2962db6f2757bc01d02489f38fafe0809f68f60" integrity sha512-GXPt8l5Mxwm1QKYopUM6/Tdh9W3695G6Ax+IFyj5pQ51G4SD5L1uq4/RkPSsOgs3rP7jNSV6g6OfDzdtVufPdA== dependencies: "@types/yargs" "^15.0.5" @@ -620,7 +608,7 @@ electron-builder@22.9.1: electron-context-menu@2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/electron-context-menu/-/electron-context-menu-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/electron-context-menu/-/electron-context-menu-2.1.0.tgz#6066e2ee599d818f5ec6fd19404bee82065e5649" integrity sha512-xnJS4C24W/h6rw2fbRYMiHCHWzbJeuhPTLJR88lJ+jSnO8VKY0oOolE2AeL/zTTiUYrOXF+3POcfpSoaF0d8Pw== dependencies: cli-truncate "^2.0.0" @@ -628,9 +616,9 @@ electron-context-menu@2.1.0: electron-is-dev "^1.0.1" electron-dl@^3.0.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/electron-dl/-/electron-dl-3.2.1.tgz" - integrity sha512-k5DFjocJlXbrjshO1zeWe/Gz7HkGwCgnehHPemiyzN2B/LfLlnbIX7sCj5F+huTwZ2l+nQehTI4IR37xvCn6FQ== + version "3.5.2" + resolved "https://registry.yarnpkg.com/electron-dl/-/electron-dl-3.5.2.tgz#9e83d624473ec90682928b19ae9221a0e0b83a39" + integrity sha512-i104cl+u8yJ0lhpRAtUWfeGuWuL1PL6TBiw2gLf0MMIBjfgE485Ags2mcySx4uWU9P9uj/vsD3jd7X+w1lzZxw== dependencies: ext-name "^5.0.0" pupa "^2.0.1" @@ -638,12 +626,12 @@ electron-dl@^3.0.0: electron-is-dev@^1.0.1: version "1.2.0" - resolved "https://registry.yarnpkg.com/electron-is-dev/-/electron-is-dev-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/electron-is-dev/-/electron-is-dev-1.2.0.tgz#2e5cea0a1b3ccf1c86f577cee77363ef55deb05e" integrity sha512-R1oD5gMBPS7PVU8gJwH6CtT0e6VSoD0+SzSnYpNm+dBkcijgA+K7VAMHDfnRq/lkKPZArpzplTW6jfiMYosdzw== electron-publish@22.9.1: version "22.9.1" - resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.9.1.tgz" + resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.9.1.tgz#7cc76ac4cc53efd29ee31c1e5facb9724329068e" integrity sha512-ducLjRJLEeU87FaTCWaUyDjCoLXHkawkltP2zqS/n2PyGke54ZIql0tBuUheht4EpR8AhFbVJ11spSn1gy8r6w== dependencies: "@types/fs-extra" "^9.0.1" @@ -665,18 +653,13 @@ electron-window-state@^5.0.3: electron@11.1.1: version "11.1.1" - resolved "https://registry.yarnpkg.com/electron/-/electron-11.1.1.tgz" + resolved "https://registry.yarnpkg.com/electron/-/electron-11.1.1.tgz#188f036f8282798398dca9513e9bb3b10213e3aa" integrity sha512-tlbex3xosJgfileN6BAQRotevPRXB/wQIq48QeQ08tUJJrXwE72c8smsM/hbHx5eDgnbfJ2G3a60PmRjHU2NhA== dependencies: "@electron/get" "^1.0.1" "@types/node" "^12.0.12" extract-zip "^1.0.3" -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz" @@ -684,8 +667,8 @@ emoji-regex@^8.0.0: encodeurl@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== end-of-stream@^1.1.0: version "1.4.4" @@ -721,14 +704,9 @@ escalade@^3.1.1: escape-goat@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675" integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - escape-string-regexp@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" @@ -736,7 +714,7 @@ escape-string-regexp@^4.0.0: esprima@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== ext-list@^2.0.0: @@ -756,7 +734,7 @@ ext-name@^5.0.0: extract-zip@^1.0.3: version "1.7.0" - resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.7.0.tgz" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.7.0.tgz#556cc3ae9df7f452c493a0cfb51cc30277940927" integrity sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA== dependencies: concat-stream "^1.6.2" @@ -781,18 +759,27 @@ fd-slicer@~1.1.0: dependencies: pend "~1.2.0" -filelist@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.2.tgz" - integrity sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ== +filelist@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" + integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== dependencies: - minimatch "^3.0.4" + minimatch "^5.0.1" follow-redirects@^1.10.0: version "1.13.3" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.3.tgz" integrity sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA== +fs-extra@^10.0.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz" @@ -817,10 +804,10 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== get-caller-file@^2.0.5: version "2.0.5" @@ -829,12 +816,12 @@ get-caller-file@^2.0.5: get-port@5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== get-stream@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== dependencies: pump "^3.0.0" @@ -858,13 +845,12 @@ glob@^7.1.3: once "^1.3.0" path-is-absolute "^1.0.0" -global-agent@^2.0.2: - version "2.1.12" - resolved "https://registry.yarnpkg.com/global-agent/-/global-agent-2.1.12.tgz" - integrity sha512-caAljRMS/qcDo69X9BfkgrihGUgGx44Fb4QQToNQjsiWh+YlQ66uqYVAdA8Olqit+5Ng0nkz09je3ZzANMZcjg== +global-agent@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/global-agent/-/global-agent-3.0.0.tgz#ae7cd31bd3583b93c5a16437a1afe27cc33a1ab6" + integrity sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q== dependencies: boolean "^3.0.1" - core-js "^3.6.5" es6-error "^4.1.1" matcher "^3.0.0" roarr "^2.15.3" @@ -873,14 +859,14 @@ global-agent@^2.0.2: global-dirs@^2.0.1: version "2.1.0" - resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-2.1.0.tgz#e9046a49c806ff04d6c1825e196c8f0091e8df4d" integrity sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ== dependencies: ini "1.3.7" global-tunnel-ng@^2.7.1: version "2.7.1" - resolved "https://registry.yarnpkg.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz" + resolved "https://registry.yarnpkg.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz#d03b5102dfde3a69914f5ee7d86761ca35d57d8f" integrity sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg== dependencies: encodeurl "^1.0.2" @@ -897,7 +883,7 @@ globalthis@^1.0.1: got@^9.6.0: version "9.6.0" - resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz" + resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== dependencies: "@sindresorhus/is" "^0.14.0" @@ -912,16 +898,16 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0: +graceful-fs@^4.1.2: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.6" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz" integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ== -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - has-flag@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz" @@ -929,24 +915,24 @@ has-flag@^4.0.0: has-yarn@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== -has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== +hasown@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== dependencies: - function-bind "^1.1.1" + function-bind "^1.1.2" hosted-git-info@^2.1.4: version "2.8.9" - resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== hosted-git-info@^3.0.5: version "3.0.8" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.8.tgz" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.8.tgz#6e35d4cc87af2c5f816e4cb9ce350ba87a3f370d" integrity sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw== dependencies: lru-cache "^6.0.0" @@ -977,8 +963,8 @@ iconv-lite@^0.6.2: import-lazy@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz" - integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= + resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" + integrity sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A== imurmurhash@^0.1.4: version "0.1.4" @@ -1000,32 +986,27 @@ inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: ini@1.3.7: version "1.3.7" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.7.tgz" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.7.tgz#a09363e1911972ea16d7a8851005d84cf09a9a84" integrity sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ== ini@^1.3.4, ini@~1.3.0: version "1.3.8" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== is-ci@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== dependencies: ci-info "^2.0.0" -is-core-module@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz" - integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ== +is-core-module@^2.16.0: + version "2.16.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" + integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== dependencies: - has "^1.0.3" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + hasown "^2.0.2" is-fullwidth-code-point@^3.0.0: version "3.0.0" @@ -1034,7 +1015,7 @@ is-fullwidth-code-point@^3.0.0: is-installed-globally@^0.3.1: version "0.3.2" - resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.3.2.tgz" + resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.3.2.tgz#fd3efa79ee670d1187233182d5b0a1dd00313141" integrity sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g== dependencies: global-dirs "^2.0.1" @@ -1042,17 +1023,17 @@ is-installed-globally@^0.3.1: is-npm@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-4.0.0.tgz#c90dd8380696df87a7a6d823c20d0b12bbe3c84d" integrity sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig== is-obj@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== is-path-inside@^3.0.1: version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== is-plain-obj@^1.0.0: @@ -1062,37 +1043,36 @@ is-plain-obj@^1.0.0: is-typedarray@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== is-yarn-global@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz" + resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== isarray@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isbinaryfile@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.6.tgz" - integrity sha512-ORrEy+SNVqUhrCaal4hA4fBzhggQQ+BaLntyPOdoEiwlKZW9BZiJXjg3RMiruE4tPEI3pyVPpySHQF/dKWperg== + version "4.0.10" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz#0c5b5e30c2557a2f06febd37b7322946aaee42b3" + integrity sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw== -jake@^10.6.1: - version "10.8.2" - resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.2.tgz" - integrity sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A== +jake@^10.8.5: + version "10.9.4" + resolved "https://registry.yarnpkg.com/jake/-/jake-10.9.4.tgz#d626da108c63d5cfb00ab5c25fadc7e0084af8e6" + integrity sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA== dependencies: - async "0.9.x" - chalk "^2.4.2" - filelist "^1.0.1" - minimatch "^3.0.4" + async "^3.2.6" + filelist "^1.0.4" + picocolors "^1.1.1" js-yaml@^3.13.1, js-yaml@^3.14.0: version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" @@ -1100,8 +1080,8 @@ js-yaml@^3.13.1, js-yaml@^3.14.0: json-buffer@3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz" - integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" + integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ== json-schema-traverse@^0.4.1: version "0.4.1" @@ -1114,11 +1094,9 @@ json-stringify-safe@^5.0.1: integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= json5@^2.1.2: - version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz" - integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== - dependencies: - minimist "^1.2.5" + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^4.0.0: version "4.0.0" @@ -1138,22 +1116,22 @@ jsonfile@^6.0.1: keyv@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== dependencies: json-buffer "3.0.0" latest-version@^5.0.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face" integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== dependencies: package-json "^6.3.0" lazy-val@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-val/-/lazy-val-1.0.4.tgz" - integrity sha512-u93kb2fPbIrfzBuLjZE+w+fJbUUMhNDXxNmMfaqNgpfQf1CO5ZSe2LfsnBqVAk7i/2NF48OSoRj+Xe2VT+lE8Q== + version "1.0.5" + resolved "https://registry.yarnpkg.com/lazy-val/-/lazy-val-1.0.5.tgz#6cf3b9f5bc31cee7ee3e369c0832b7583dcd923d" + integrity sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q== lodash@^4.15.0, lodash@^4.17.10: version "4.17.21" @@ -1162,7 +1140,7 @@ lodash@^4.15.0, lodash@^4.17.10: lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== lowercase-keys@^2.0.0: @@ -1179,7 +1157,7 @@ lru-cache@^6.0.0: make-dir@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== dependencies: semver "^6.0.0" @@ -1197,13 +1175,13 @@ mime-db@^1.28.0: integrity sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ== mime@^2.4.6: - version "2.5.2" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz" - integrity sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg== + version "2.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" + integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== mimic-response@^1.0.0, mimic-response@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== minimatch@^3.0.4: @@ -1213,36 +1191,60 @@ minimatch@^3.0.4: dependencies: brace-expansion "^1.1.7" -minimist@^1.2.0, minimist@^1.2.5: +minimatch@^5.0.1: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +minimist@^1.2.0, minimist@^1.2.6: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +minimist@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== -mkdirp@^0.5.1, mkdirp@^0.5.4: +mkdirp@^0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== dependencies: minimist "^1.2.5" +mkdirp@^0.5.4: + version "0.5.6" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== + dependencies: + minimist "^1.2.6" + modify-filename@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/modify-filename/-/modify-filename-1.1.0.tgz" - integrity sha1-mi3sg4Bvuy2XXyK+7IWcoms5OqE= + resolved "https://registry.yarnpkg.com/modify-filename/-/modify-filename-1.1.0.tgz#9a2dec83806fbb2d975f22beec859ca26b393aa1" + integrity sha512-EickqnKq3kVVaZisYuCxhtKbZjInCuwgwZWyAmRIp1NTMhri7r3380/uqwrUHfaDiPzLVTuoNy4whX66bxPVog== ms@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== ms@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +ms@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + normalize-package-data@^2.5.0: version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== dependencies: hosted-git-info "^2.1.4" @@ -1251,13 +1253,13 @@ normalize-package-data@^2.5.0: validate-npm-package-license "^3.0.1" normalize-url@^4.1.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz" - integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ== + version "4.5.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" + integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== npm-conf@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.3.tgz" + resolved "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.3.tgz#256cc47bd0e218c259c4e9550bf413bc2192aff9" integrity sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw== dependencies: config-chain "^1.1.11" @@ -1284,12 +1286,12 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: p-cancelable@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== package-json@^6.3.0: version "6.5.0" - resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz" + resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ== dependencies: got "^9.6.0" @@ -1306,7 +1308,7 @@ parse5@^3.0.1: path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0: @@ -1314,29 +1316,34 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-parse@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== pend@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz" integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= +picocolors@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + pify@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg== prepend-http@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz" - integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" + integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== process-nextick-args@~2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== progress@^2.0.3: @@ -1346,8 +1353,8 @@ progress@^2.0.3: proto-list@~1.2.1: version "1.2.4" - resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz" - integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA== pump@^3.0.0: version "3.0.0" @@ -1364,14 +1371,14 @@ punycode@^2.1.0: pupa@^2.0.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/pupa/-/pupa-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/pupa/-/pupa-2.1.1.tgz#f5e8fd4afc2c5d97828faa523549ed8744a20d62" integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A== dependencies: escape-goat "^2.0.0" -rc@^1.2.8: +rc@1.2.8, rc@^1.2.8: version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== dependencies: deep-extend "^0.6.0" @@ -1381,7 +1388,7 @@ rc@^1.2.8: read-config-file@6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.0.0.tgz#224b5dca6a5bdc1fb19e63f89f342680efdb9299" integrity sha512-PHjROSdpceKUmqS06wqwP92VrM46PZSTubmNIMJ5DrMwg1OgenSTSEHIkCa6TiOJ+y/J0xnG1fFwG3M+Oi1aNA== dependencies: dotenv "^8.2.0" @@ -1391,9 +1398,9 @@ read-config-file@6.0.0: lazy-val "^1.0.4" readable-stream@^2.2.2: - version "2.3.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz" - integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -1413,15 +1420,15 @@ readable-stream@^3.1.1: util-deprecate "^1.0.1" registry-auth-token@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.1.tgz" - integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw== + version "4.2.2" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.2.tgz#f02d49c3668884612ca031419491a13539e21fac" + integrity sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg== dependencies: - rc "^1.2.8" + rc "1.2.8" registry-url@^5.0.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== dependencies: rc "^1.2.8" @@ -1432,23 +1439,24 @@ require-directory@^2.1.1: integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= resolve@^1.10.0: - version "1.20.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz" - integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + version "1.22.10" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" + integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== dependencies: - is-core-module "^2.2.0" - path-parse "^1.0.6" + is-core-module "^2.16.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" responselike@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz" - integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= + resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" + integrity sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ== dependencies: lowercase-keys "^1.0.0" rimraf@3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== dependencies: glob "^7.1.3" @@ -1467,7 +1475,7 @@ roarr@^2.15.3: safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== safe-buffer@~5.2.0: @@ -1499,17 +1507,22 @@ semver-compare@^1.0.0: semver-diff@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b" integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== dependencies: semver "^6.3.0" "semver@2 || 3 || 4 || 5": - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@^6.0.0, semver@^6.2.0, semver@^6.3.0: +semver@^6.0.0, semver@^6.3.0: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +semver@^6.2.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -1570,30 +1583,30 @@ source-map@^0.6.0: integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== + version "3.2.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" + integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== dependencies: spdx-expression-parse "^3.0.0" spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + version "2.5.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz#5d607d27fc806f66d7b64a766650fa890f04ed66" + integrity sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w== spdx-expression-parse@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.7" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz" - integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ== + version "3.0.22" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.22.tgz#abf5a08a6f5d7279559b669f47f0a43e8f3464ef" + integrity sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ== sprintf-js@^1.1.2: version "1.1.2" @@ -1602,24 +1615,24 @@ sprintf-js@^1.1.2: sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== stat-mode@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/stat-mode/-/stat-mode-1.0.0.tgz" integrity sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg== -string-width@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== +string-width@^4.0.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" -string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0: +string-width@^4.1.0, string-width@^4.2.0: version "4.2.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz" integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== @@ -1637,18 +1650,11 @@ string_decoder@^1.1.1: string_decoder@~1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== dependencies: safe-buffer "~5.1.0" -strip-ansi@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz" - integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== - dependencies: - ansi-regex "^4.1.0" - strip-ansi@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz" @@ -1656,10 +1662,18 @@ strip-ansi@^6.0.0: dependencies: ansi-regex "^5.0.0" +strip-ansi@^6.0.1: + name strip-ansi-cjs + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-json-comments@~2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== sumchecker@^3.0.1: version "3.0.1" @@ -1668,13 +1682,6 @@ sumchecker@^3.0.1: dependencies: debug "^4.1.0" -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz" @@ -1682,22 +1689,27 @@ supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + temp-file@^3.3.7: - version "3.3.7" - resolved "https://registry.yarnpkg.com/temp-file/-/temp-file-3.3.7.tgz" - integrity sha512-9tBJKt7GZAQt/Rg0QzVWA8Am8c1EFl+CAv04/aBVqlx5oyfQ508sFIABshQ0xbZu6mBrFLWIUXO/bbLYghW70g== + version "3.4.0" + resolved "https://registry.yarnpkg.com/temp-file/-/temp-file-3.4.0.tgz#766ea28911c683996c248ef1a20eea04d51652c7" + integrity sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg== dependencies: async-exit-hook "^2.0.1" - fs-extra "^8.1.0" + fs-extra "^10.0.0" term-size@^2.1.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz" + resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== to-readable-stream@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== truncate-utf8-bytes@^1.0.0: @@ -1709,7 +1721,7 @@ truncate-utf8-bytes@^1.0.0: tunnel@^0.0.6: version "0.0.6" - resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz" + resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== type-fest@^0.13.1: @@ -1719,24 +1731,24 @@ type-fest@^0.13.1: type-fest@^0.8.1: version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== typedarray-to-buffer@^3.1.5: version "3.1.5" - resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz" + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== dependencies: is-typedarray "^1.0.0" typedarray@^0.0.6: version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== unique-string@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== dependencies: crypto-random-string "^2.0.0" @@ -1753,7 +1765,7 @@ universalify@^2.0.0: unused-filename@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/unused-filename/-/unused-filename-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/unused-filename/-/unused-filename-2.1.0.tgz#33719c4e8d9644f32d2dec1bc8525c6aaeb4ba51" integrity sha512-BMiNwJbuWmqCpAM1FqxCTD7lXF97AvfQC8Kr/DIeA6VtvhJaMDupZ82+inbjl5yVP44PcxOuCSxye1QMS0wZyg== dependencies: modify-filename "^1.1.0" @@ -1761,7 +1773,7 @@ unused-filename@^2.1.0: update-notifier@^4.1.1: version "4.1.3" - resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-4.1.3.tgz" + resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-4.1.3.tgz#be86ee13e8ce48fb50043ff72057b5bd598e1ea3" integrity sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A== dependencies: boxen "^4.2.0" @@ -1787,8 +1799,8 @@ uri-js@^4.2.2: url-parse-lax@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz" - integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= + resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" + integrity sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ== dependencies: prepend-http "^2.0.0" @@ -1804,12 +1816,12 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: v8-compile-cache@2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ== validate-npm-package-license@^3.0.1: version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== dependencies: spdx-correct "^3.0.0" @@ -1817,7 +1829,7 @@ validate-npm-package-license@^3.0.1: widest-line@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== dependencies: string-width "^4.0.0" @@ -1838,7 +1850,7 @@ wrappy@1: write-file-atomic@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== dependencies: imurmurhash "^0.1.4" @@ -1848,7 +1860,7 @@ write-file-atomic@^3.0.0: xdg-basedir@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== y18n@^5.0.5: @@ -1862,13 +1874,13 @@ yallist@^4.0.0: integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yargs-parser@^20.2.2: - version "20.2.7" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz" - integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs@^16.0.3: version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: cliui "^7.0.2" diff --git a/vripper-server/pom.xml b/vripper-server/pom.xml index 4a9b711..4690291 100644 --- a/vripper-server/pom.xml +++ b/vripper-server/pom.xml @@ -5,7 +5,7 @@ tn.mnlr vripper - 3.5.4 + 3.6.0 vripper-server vripper-server @@ -55,6 +55,7 @@ org.apache.httpcomponents httpclient + 4.5.14 net.sourceforge.htmlcleaner @@ -79,14 +80,29 @@ vripper-ui ${project.version} runtime + pom ${buildClassifier} + + org.apache.maven.plugins + maven-compiler-plugin + 3.14.0 + + + + org.projectlombok + lombok + + + + maven-jar-plugin + 3.4.2 ${buildClassifier} @@ -112,6 +128,11 @@ + + org.apache.maven.plugins + maven-install-plugin + 2.5.2 + diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/download/DownloadJob.java b/vripper-server/src/main/java/tn/mnlr/vripper/download/DownloadJob.java index d08e1ba..aa16b6f 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/download/DownloadJob.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/download/DownloadJob.java @@ -1,5 +1,15 @@ package tn.mnlr.vripper.download; +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.StandardCopyOption; +import java.util.*; +import javax.imageio.ImageIO; +import javax.imageio.ImageReader; +import javax.imageio.stream.ImageInputStream; import lombok.Getter; import lombok.extern.slf4j.Slf4j; import net.jodah.failsafe.function.CheckedRunnable; @@ -19,17 +29,6 @@ import tn.mnlr.vripper.jpa.domain.enums.Status; import tn.mnlr.vripper.services.*; import tn.mnlr.vripper.services.domain.Settings; -import javax.imageio.ImageIO; -import javax.imageio.ImageReader; -import javax.imageio.stream.ImageInputStream; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.nio.file.Files; -import java.nio.file.StandardCopyOption; -import java.util.*; - @Slf4j public class DownloadJob implements CheckedRunnable { @@ -98,7 +97,7 @@ public class DownloadJob implements CheckedRunnable { log.debug( String.format( "Getting image url and name from %s using %s", image.getUrl(), image.getHost())); - HostService.NameUrl nameAndUrl = image.getHost().getNameAndUrl(image.getUrl(), context); + HostService.NameUrl nameAndUrl = image.getHost().getNameAndUrl(image, context); log.debug(String.format("Resolved name for %s: %s", image.getUrl(), nameAndUrl.getName())); log.debug( String.format("Resolved image url for %s: %s", image.getUrl(), nameAndUrl.getUrl())); diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/download/DownloadService.java b/vripper-server/src/main/java/tn/mnlr/vripper/download/DownloadService.java index 4af11f7..5915a3e 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/download/DownloadService.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/download/DownloadService.java @@ -1,5 +1,12 @@ package tn.mnlr.vripper.download; +import jakarta.annotation.PostConstruct; +import java.util.*; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.stream.Collectors; import lombok.NonNull; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -13,14 +20,6 @@ import tn.mnlr.vripper.services.MetadataService; import tn.mnlr.vripper.services.SettingsService; import tn.mnlr.vripper.services.domain.Settings; -import javax.annotation.PostConstruct; -import java.util.*; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicInteger; -import java.util.stream.Collectors; - @Service @Slf4j public class DownloadService { diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/event/EventBus.java b/vripper-server/src/main/java/tn/mnlr/vripper/event/EventBus.java index 0f1634d..3dea7c3 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/event/EventBus.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/event/EventBus.java @@ -1,11 +1,10 @@ package tn.mnlr.vripper.event; +import jakarta.annotation.PreDestroy; import org.springframework.stereotype.Service; import reactor.core.publisher.Flux; import reactor.core.publisher.Sinks; -import javax.annotation.PreDestroy; - @Service public class EventBus { diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/AcidimgHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/AcidimgHost.java index a8bf628..ccac2be 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/AcidimgHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/AcidimgHost.java @@ -1,5 +1,7 @@ package tn.mnlr.vripper.host; +import java.util.ArrayList; +import java.util.List; import lombok.extern.slf4j.Slf4j; import org.apache.http.NameValuePair; import org.apache.http.client.HttpClient; @@ -15,14 +17,12 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.ConnectionService; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.HtmlProcessorService; import tn.mnlr.vripper.services.XpathService; -import java.util.ArrayList; -import java.util.List; - @Service @Slf4j public class AcidimgHost extends Host { @@ -59,24 +59,26 @@ public class AcidimgHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - Document doc = hostService.getResponse(url, context).getDocument(); + Document doc = hostService.getResponse(image.getUrl(), context).getDocument(); Node contDiv; try { - log.debug(String.format("Looking for xpath expression %s in %s", CONTINUE_BUTTON_XPATH, url)); + log.debug( + String.format( + "Looking for xpath expression %s in %s", CONTINUE_BUTTON_XPATH, image.getUrl())); contDiv = xpathService.getAsNode(doc, CONTINUE_BUTTON_XPATH); } catch (XpathException e) { throw new HostException(e); } if (contDiv != null) { - log.debug(String.format("Click button found for %s", url)); + log.debug(String.format("Click button found for %s", image.getUrl())); HttpClient client = cm.getClient().build(); - HttpPost httpPost = cm.buildHttpPost(url, context); - httpPost.addHeader("Referer", url); + HttpPost httpPost = cm.buildHttpPost(image.getUrl(), context); + httpPost.addHeader("Referer", image.getUrl()); List params = new ArrayList<>(); params.add(new BasicNameValuePair("imgContinue", "Continue to your image")); try { @@ -98,7 +100,7 @@ public class AcidimgHost extends Host { Node imgNode; try { - log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, url)); + log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, image.getUrl())); imgNode = xpathService.getAsNode(doc, IMG_XPATH); } catch (XpathException e) { throw new HostException(e); @@ -109,7 +111,7 @@ public class AcidimgHost extends Host { } try { - log.debug(String.format("Resolving name and image url for %s", url)); + log.debug(String.format("Resolving name and image url for %s", image.getUrl())); String imgTitle = imgNode.getAttributes().getNamedItem("alt").getTextContent().trim(); String imgUrl = imgNode.getAttributes().getNamedItem("src").getTextContent().trim(); diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/DPicMeHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/DPicMeHost.java index 40e03b2..1fe4ce6 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/DPicMeHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/DPicMeHost.java @@ -1,5 +1,7 @@ package tn.mnlr.vripper.host; +import java.util.Optional; +import java.util.UUID; import lombok.extern.slf4j.Slf4j; import org.apache.http.client.protocol.HttpClientContext; import org.springframework.beans.factory.annotation.Autowired; @@ -8,12 +10,10 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; -import java.util.Optional; -import java.util.UUID; - @Service @Slf4j public class DPicMeHost extends Host { @@ -41,27 +41,28 @@ public class DPicMeHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { HostService.Response response = - hostService.getResponse(url.replace("http://", "https://"), context); + hostService.getResponse(image.getUrl().replace("http://", "https://"), context); Document doc = response.getDocument(); Node imgNode; try { - log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, url)); + log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, image.getUrl())); imgNode = xpathService.getAsNode(doc, IMG_XPATH); } catch (XpathException e) { throw new HostException(e); } if (imgNode == null) { - throw new HostException(String.format("Xpath '%s' cannot be found in '%s'", IMG_XPATH, url)); + throw new HostException( + String.format("Xpath '%s' cannot be found in '%s'", IMG_XPATH, image.getUrl())); } try { - log.debug(String.format("Resolving name and image url for %s", url)); + log.debug(String.format("Resolving name and image url for %s", image.getUrl())); String imgTitle = Optional.ofNullable(imgNode.getAttributes().getNamedItem("alt")) .map(e -> e.getTextContent().trim()) diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/Host.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/Host.java index d7d3c38..d9f73c7 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/Host.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/Host.java @@ -1,13 +1,13 @@ package tn.mnlr.vripper.host; +import java.util.Objects; import lombok.extern.slf4j.Slf4j; import org.apache.http.client.protocol.HttpClientContext; import org.springframework.stereotype.Service; import tn.mnlr.vripper.exception.HostException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; -import java.util.Objects; - @Service @Slf4j public abstract class Host { @@ -21,7 +21,7 @@ public abstract class Host { } public abstract HostService.NameUrl getNameAndUrl( - final String url, final HttpClientContext context) throws HostException; + final Image image, final HttpClientContext context) throws HostException; @Override public boolean equals(Object o) { diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageBamHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageBamHost.java index 04741eb..5257410 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageBamHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageBamHost.java @@ -1,19 +1,21 @@ package tn.mnlr.vripper.host; +import java.util.Optional; +import java.util.UUID; import lombok.extern.slf4j.Slf4j; import org.apache.http.client.protocol.HttpClientContext; +import org.apache.http.impl.client.BasicCookieStore; +import org.apache.http.impl.cookie.BasicClientCookie; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; -import java.util.Optional; -import java.util.UUID; - @Service @Slf4j public class ImageBamHost extends Host { @@ -42,17 +44,22 @@ public class ImageBamHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { + context.setCookieStore(new BasicCookieStore()); + BasicClientCookie cookie = new BasicClientCookie("nsfw_inter", "1"); + cookie.setDomain("www.imagebam.com"); + context.getCookieStore().addCookie(cookie); - HostService.Response response = hostService.getResponse(url, context); + HostService.Response response = hostService.getResponse(image.getUrl(), context); Document doc = response.getDocument(); try { - log.debug(String.format("Looking for xpath expression %s in %s", CONTINUE_XPATH, url)); + log.debug( + String.format("Looking for xpath expression %s in %s", CONTINUE_XPATH, image.getUrl())); if (xpathService.getAsNode(doc, CONTINUE_XPATH) != null) { // Button detected. No need to actually click it, just make the call again. - response = hostService.getResponse(url, context); + response = hostService.getResponse(image.getUrl(), context); doc = response.getDocument(); } } catch (XpathException e) { @@ -61,18 +68,19 @@ public class ImageBamHost extends Host { Node imgNode; try { - log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, url)); + log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, image.getUrl())); imgNode = xpathService.getAsNode(doc, IMG_XPATH); } catch (XpathException e) { throw new HostException(e); } if (imgNode == null) { - throw new HostException(String.format("Xpath '%s' cannot be found in '%s'", IMG_XPATH, url)); + throw new HostException( + String.format("Xpath '%s' cannot be found in '%s'", IMG_XPATH, image.getUrl())); } try { - log.debug(String.format("Resolving name and image url for %s", url)); + log.debug(String.format("Resolving name and image url for %s", image.getUrl())); String imgTitle = Optional.ofNullable(imgNode.getAttributes().getNamedItem("alt")) .map(e -> e.getTextContent().trim()) diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageTwistHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageTwistHost.java index ad8fb73..6ab8e2f 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageTwistHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageTwistHost.java @@ -1,5 +1,6 @@ package tn.mnlr.vripper.host; +import java.util.Optional; import lombok.extern.slf4j.Slf4j; import org.apache.http.client.protocol.HttpClientContext; import org.springframework.beans.factory.annotation.Autowired; @@ -8,11 +9,10 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; -import java.util.Optional; - @Service @Slf4j public class ImageTwistHost extends Host { @@ -40,21 +40,21 @@ public class ImageTwistHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - Document doc = hostService.getResponse(url, context).getDocument(); + Document doc = hostService.getResponse(image.getUrl(), context).getDocument(); Node imgNode; try { - log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, url)); + log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, image.getUrl())); imgNode = xpathService.getAsNode(doc, IMG_XPATH); } catch (XpathException e) { throw new HostException(e); } try { - log.debug(String.format("Resolving name and image url for %s", url)); + log.debug(String.format("Resolving name and image url for %s", image.getUrl())); String imgTitle = Optional.ofNullable(imgNode.getAttributes().getNamedItem("alt")) .map(Node::getTextContent) diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageVenueHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageVenueHost.java index 9b6a833..bcafc3f 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageVenueHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageVenueHost.java @@ -8,6 +8,7 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; @@ -39,10 +40,10 @@ public class ImageVenueHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String _url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - String url = _url.replace("http://", "https://"); + String url = image.getUrl().replace("http://", "https://"); HostService.Response resp = hostService.getResponse(url, context); Document doc = resp.getDocument(); diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageZillaHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageZillaHost.java index fe16657..c939ca3 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageZillaHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImageZillaHost.java @@ -8,6 +8,7 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; @@ -39,16 +40,16 @@ public class ImageZillaHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - Document doc = hostService.getResponse(url, context).getDocument(); + Document doc = hostService.getResponse(image.getUrl(), context).getDocument(); String title; try { - log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, url)); + log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, image.getUrl())); Node titleNode = xpathService.getAsNode(doc, IMG_XPATH).getAttributes().getNamedItem("title"); - log.debug(String.format("Resolving name for %s", url)); + log.debug(String.format("Resolving name for %s", image.getUrl())); if (titleNode != null) { title = titleNode.getTextContent().trim(); } else { @@ -59,11 +60,11 @@ public class ImageZillaHost extends Host { } if (title == null || title.isEmpty()) { - title = hostService.getDefaultImageName(url); + title = hostService.getDefaultImageName(image.getUrl()); } try { - return new HostService.NameUrl(title, url.replace("show", "images")); + return new HostService.NameUrl(title, image.getUrl().replace("show", "images")); } catch (Exception e) { throw new HostException("Unexpected error occurred", e); } diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImgSpiceHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImgSpiceHost.java index 205bb99..0290074 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImgSpiceHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImgSpiceHost.java @@ -8,6 +8,7 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; @@ -38,10 +39,10 @@ public class ImgSpiceHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String _url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - String url = _url.replace("http://", "https://"); + String url = image.getUrl().replace("http://", "https://"); HostService.Response resp = hostService.getResponse(url, context); Document doc = resp.getDocument(); diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImgboxHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImgboxHost.java index 593facf..ae6bd30 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImgboxHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImgboxHost.java @@ -8,6 +8,7 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; @@ -38,21 +39,21 @@ public class ImgboxHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - Document doc = hostService.getResponse(url, context).getDocument(); + Document doc = hostService.getResponse(image.getUrl(), context).getDocument(); Node imgNode; try { - log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, url)); + log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, image.getUrl())); imgNode = xpathService.getAsNode(doc, IMG_XPATH); } catch (XpathException e) { throw new HostException(e); } try { - log.debug(String.format("Resolving name and image url for %s", url)); + log.debug(String.format("Resolving name and image url for %s", image.getUrl())); String imgTitle = imgNode.getAttributes().getNamedItem("title").getTextContent().trim(); String imgUrl = imgNode.getAttributes().getNamedItem("src").getTextContent().trim(); diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImxHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImxHost.java index b416702..4a960db 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/ImxHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/ImxHost.java @@ -1,54 +1,17 @@ package tn.mnlr.vripper.host; import lombok.extern.slf4j.Slf4j; -import org.apache.http.NameValuePair; -import org.apache.http.client.HttpClient; -import org.apache.http.client.entity.UrlEncodedFormEntity; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpPost; import org.apache.http.client.protocol.HttpClientContext; -import org.apache.http.message.BasicNameValuePair; -import org.apache.http.util.EntityUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.w3c.dom.Document; -import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; -import tn.mnlr.vripper.exception.HtmlProcessorException; -import tn.mnlr.vripper.exception.XpathException; -import tn.mnlr.vripper.services.ConnectionService; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; -import tn.mnlr.vripper.services.HtmlProcessorService; -import tn.mnlr.vripper.services.XpathService; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; @Service @Slf4j public class ImxHost extends Host { private static final String host = "imx.to"; - private static final String CONTINUE_BUTTON_XPATH = "//*[@name='imgContinue']"; - private static final String IMG_XPATH = "//img[@class='centred']"; - - private final HostService hostService; - private final XpathService xpathService; - private final ConnectionService cm; - private final HtmlProcessorService htmlProcessorService; - - @Autowired - public ImxHost( - HostService hostService, - XpathService xpathService, - ConnectionService cm, - HtmlProcessorService htmlProcessorService) { - this.hostService = hostService; - this.xpathService = xpathService; - this.cm = cm; - this.htmlProcessorService = htmlProcessorService; - } @Override public String getHost() { @@ -61,69 +24,17 @@ public class ImxHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String _url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - String url = _url.replace("http://", "https://"); - HostService.Response resp = hostService.getResponse(url, context); - Document doc = resp.getDocument(); - - Node contDiv; - String value = null; - try { - log.debug(String.format("Looking for xpath expression %s in %s", CONTINUE_BUTTON_XPATH, url)); - contDiv = xpathService.getAsNode(doc, CONTINUE_BUTTON_XPATH); - if (contDiv == null) { - throw new HostException(CONTINUE_BUTTON_XPATH + " cannot be found"); - } - Node node = contDiv.getAttributes().getNamedItem("value"); - if (node != null) { - value = node.getTextContent(); - } - } catch (XpathException e) { - throw new HostException(e); - } - - if (value == null) { - throw new HostException("Failed to obtain value attribute from continue input"); - } - log.debug(String.format("Click button found for %s", url)); - HttpClient client = cm.getClient().build(); - HttpPost httpPost = cm.buildHttpPost(url, context); - List params = new ArrayList<>(); - params.add(new BasicNameValuePair("imgContinue", value)); - try { - httpPost.setEntity(new UrlEncodedFormEntity(params)); - } catch (Exception e) { - throw new HostException(e); - } - log.debug(String.format("Requesting %s", httpPost)); - try (CloseableHttpResponse response = - (CloseableHttpResponse) client.execute(httpPost, context)) { - log.debug(String.format("Cleaning response for %s", httpPost)); - doc = htmlProcessorService.clean(EntityUtils.toString(response.getEntity())); - EntityUtils.consumeQuietly(response.getEntity()); - } catch (IOException | HtmlProcessorException e) { - throw new HostException(e); - } - - Node imgNode; - try { - log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, url)); - imgNode = xpathService.getAsNode(doc, IMG_XPATH); - } catch (XpathException e) { - throw new HostException(e); - } - - try { - log.debug(String.format("Resolving name and image url for %s", url)); - String imgTitle = imgNode.getAttributes().getNamedItem("alt").getTextContent().trim(); - String imgUrl = imgNode.getAttributes().getNamedItem("src").getTextContent().trim(); - - return new HostService.NameUrl( - imgTitle.isEmpty() ? imgUrl.substring(imgUrl.lastIndexOf('/') + 1) : imgTitle, imgUrl); - } catch (Exception e) { - throw new HostException("Unexpected error occurred", e); - } + log.debug(String.format("Resolving name and image url for %s", image.getUrl())); + String imgTitle = String.format("IMG_%04d", image.getIndex() + 1); + String imgUrl = + image + .getThumbUrl() + .replace("http:", "https:") + .replace("upload/small/", "u/i/") + .replace("u/t/", "u/i/"); + return new HostService.NameUrl(imgTitle, imgUrl); } } diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/PimpandhostHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/PimpandhostHost.java index cc79b46..40d1360 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/PimpandhostHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/PimpandhostHost.java @@ -8,6 +8,7 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; @@ -39,12 +40,12 @@ public class PimpandhostHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String _url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { String url; try { - url = hostService.appendUri(_url.replace("http://", "https://"), "size=original"); + url = hostService.appendUri(image.getUrl().replace("http://", "https://"), "size=original"); } catch (Exception e) { throw new HostException(e); } diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/PixRouteHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/PixRouteHost.java index 767a634..66e3ddb 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/PixRouteHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/PixRouteHost.java @@ -8,6 +8,7 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; @@ -38,10 +39,10 @@ public class PixRouteHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String _url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - String url = _url.replace("http://", "https://"); + String url = image.getUrl().replace("http://", "https://"); Document doc = hostService.getResponse(url, context).getDocument(); Node imgNode; diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/PixhostHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/PixhostHost.java index c61cad8..5e8d747 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/PixhostHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/PixhostHost.java @@ -8,6 +8,7 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; @@ -39,21 +40,21 @@ public class PixhostHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - Document doc = hostService.getResponse(url, context).getDocument(); + Document doc = hostService.getResponse(image.getUrl(), context).getDocument(); Node imgNode; try { - log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, url)); + log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, image.getUrl())); imgNode = xpathService.getAsNode(doc, IMG_XPATH); } catch (XpathException e) { throw new HostException(e); } try { - log.debug(String.format("Resolving name and image url for %s", url)); + log.debug(String.format("Resolving name and image url for %s", image.getUrl())); String imgTitle = imgNode.getAttributes().getNamedItem("alt").getTextContent().trim(); String imgUrl = imgNode.getAttributes().getNamedItem("src").getTextContent().trim(); diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/PixxxelsHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/PixxxelsHost.java index b0d899a..9e8fc99 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/PixxxelsHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/PixxxelsHost.java @@ -8,6 +8,7 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; @@ -39,10 +40,10 @@ public class PixxxelsHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String _url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - String url = _url.replace("http://", "https://"); + String url = image.getUrl().replace("http://", "https://"); HostService.Response resp = hostService.getResponse(url, context); Document doc = resp.getDocument(); diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/PostImgHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/PostImgHost.java index 6456bbf..fa79895 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/PostImgHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/PostImgHost.java @@ -1,5 +1,6 @@ package tn.mnlr.vripper.host; +import java.util.Optional; import lombok.extern.slf4j.Slf4j; import org.apache.http.client.protocol.HttpClientContext; import org.springframework.beans.factory.annotation.Autowired; @@ -8,11 +9,10 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; -import java.util.Optional; - @Service @Slf4j public class PostImgHost extends Host { @@ -41,10 +41,10 @@ public class PostImgHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String _url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - String url = _url.replace("http://", "https://"); + String url = image.getUrl().replace("http://", "https://"); Document doc = hostService.getResponse(url, context).getDocument(); Node urlNode, titleNode; diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/TurboImageHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/TurboImageHost.java index 027a7cb..35ff091 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/TurboImageHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/TurboImageHost.java @@ -8,6 +8,7 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; @@ -39,16 +40,17 @@ public class TurboImageHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - Document doc = hostService.getResponse(url, context).getDocument(); + Document doc = hostService.getResponse(image.getUrl(), context).getDocument(); String title; try { - log.debug(String.format("Looking for xpath expression %s in %s", TITLE_XPATH, url)); + log.debug( + String.format("Looking for xpath expression %s in %s", TITLE_XPATH, image.getUrl())); Node titleNode = xpathService.getAsNode(doc, TITLE_XPATH); - log.debug(String.format("Resolving name for %s", url)); + log.debug(String.format("Resolving name for %s", image.getUrl())); if (titleNode != null) { title = titleNode.getTextContent().trim(); } else { @@ -59,7 +61,7 @@ public class TurboImageHost extends Host { } if (title == null || title.isEmpty()) { - title = hostService.getDefaultImageName(url); + title = hostService.getDefaultImageName(image.getUrl()); } try { diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/host/ViprImHost.java b/vripper-server/src/main/java/tn/mnlr/vripper/host/ViprImHost.java index 6aa9e2d..910cf85 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/host/ViprImHost.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/host/ViprImHost.java @@ -1,5 +1,6 @@ package tn.mnlr.vripper.host; +import java.util.Optional; import lombok.extern.slf4j.Slf4j; import org.apache.http.client.protocol.HttpClientContext; import org.springframework.beans.factory.annotation.Autowired; @@ -8,11 +9,10 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import tn.mnlr.vripper.exception.HostException; import tn.mnlr.vripper.exception.XpathException; +import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.services.HostService; import tn.mnlr.vripper.services.XpathService; -import java.util.Optional; - @Service @Slf4j public class ViprImHost extends Host { @@ -40,21 +40,21 @@ public class ViprImHost extends Host { } @Override - public HostService.NameUrl getNameAndUrl(final String url, final HttpClientContext context) + public HostService.NameUrl getNameAndUrl(final Image image, final HttpClientContext context) throws HostException { - Document doc = hostService.getResponse(url, context).getDocument(); + Document doc = hostService.getResponse(image.getUrl(), context).getDocument(); Node imgNode; try { - log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, url)); + log.debug(String.format("Looking for xpath expression %s in %s", IMG_XPATH, image.getUrl())); imgNode = xpathService.getAsNode(doc, IMG_XPATH); } catch (XpathException e) { throw new HostException(e); } try { - log.debug(String.format("Resolving name and image url for %s", url)); + log.debug(String.format("Resolving name and image url for %s", image.getUrl())); String imgTitle = Optional.ofNullable(imgNode.getAttributes().getNamedItem("alt")) .map(Node::getTextContent) diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/jpa/Management.java b/vripper-server/src/main/java/tn/mnlr/vripper/jpa/Management.java index dbe10a4..f5c4a4b 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/jpa/Management.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/jpa/Management.java @@ -1,15 +1,7 @@ package tn.mnlr.vripper.jpa; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.jdbc.core.JdbcTemplate; -import org.springframework.scheduling.annotation.EnableScheduling; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; -import tn.mnlr.vripper.download.DownloadService; -import tn.mnlr.vripper.services.ThreadPoolService; - -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; import java.io.File; import java.time.LocalDate; import java.time.LocalDateTime; @@ -17,6 +9,13 @@ import java.time.format.DateTimeFormatter; import java.util.Optional; import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; +import tn.mnlr.vripper.download.DownloadService; +import tn.mnlr.vripper.services.ThreadPoolService; @Component @EnableScheduling diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/jpa/domain/Image.java b/vripper-server/src/main/java/tn/mnlr/vripper/jpa/domain/Image.java index 07a0b6a..dd328e8 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/jpa/domain/Image.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/jpa/domain/Image.java @@ -1,6 +1,7 @@ package tn.mnlr.vripper.jpa.domain; import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; @@ -8,8 +9,6 @@ import lombok.ToString; import tn.mnlr.vripper.host.Host; import tn.mnlr.vripper.jpa.domain.enums.Status; -import java.util.Objects; - @Getter @Setter @ToString @@ -22,6 +21,8 @@ public class Image { private String url; + private String thumbUrl; + private int index; private long current = 0; @@ -34,9 +35,10 @@ public class Image { @JsonIgnore private Long postIdRef; - public Image(String postId, String url, Host host, int index) { + public Image(String postId, String url, String thumbUrl, Host host, int index) { this.postId = postId; this.url = url; + this.thumbUrl = thumbUrl; this.host = host; this.index = index; status = Status.STOPPED; diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/jpa/repositories/impl/ImageRepository.java b/vripper-server/src/main/java/tn/mnlr/vripper/jpa/repositories/impl/ImageRepository.java index d88f9b0..881cadc 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/jpa/repositories/impl/ImageRepository.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/jpa/repositories/impl/ImageRepository.java @@ -1,5 +1,9 @@ package tn.mnlr.vripper.jpa.repositories.impl; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.List; +import java.util.Optional; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowMapper; @@ -12,11 +16,6 @@ import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.jpa.domain.enums.Status; import tn.mnlr.vripper.jpa.repositories.IImageRepository; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.util.List; -import java.util.Optional; - @Service public class ImageRepository implements IImageRepository { @@ -37,7 +36,7 @@ public class ImageRepository implements IImageRepository { public Image save(Image image) { long id = nextId(); jdbcTemplate.update( - "INSERT INTO IMAGE (ID, CURRENT, HOST, INDEX, POST_ID, STATUS, TOTAL, URL, POST_ID_REF) VALUES (?,?,?,?,?,?,?,?,?)", + "INSERT INTO IMAGE (ID, CURRENT, HOST, INDEX, POST_ID, STATUS, TOTAL, URL, THUMB_URL, POST_ID_REF) VALUES (?,?,?,?,?,?,?,?,?,?)", id, image.getCurrent(), image.getHost().getHost(), @@ -46,6 +45,7 @@ public class ImageRepository implements IImageRepository { image.getStatus().name(), image.getTotal(), image.getUrl(), + image.getThumbUrl(), image.getPostIdRef()); image.setId(id); eventBus.publishEvent(Event.wrap(Event.Kind.IMAGE_UPDATE, id)); @@ -145,6 +145,7 @@ class ImageRowMapper implements RowMapper { .findAny() .orElse(null)); image.setUrl(rs.getString("URL")); + image.setThumbUrl(rs.getString("THUMB_URL")); image.setIndex(rs.getInt("INDEX")); image.setCurrent(rs.getLong("CURRENT")); image.setTotal(rs.getLong("TOTAL")); diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/services/ConnectionService.java b/vripper-server/src/main/java/tn/mnlr/vripper/services/ConnectionService.java index c4f9952..cf7d303 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/services/ConnectionService.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/services/ConnectionService.java @@ -1,5 +1,10 @@ package tn.mnlr.vripper.services; +import jakarta.annotation.PreDestroy; +import java.net.URI; +import java.time.temporal.ChronoUnit; +import java.util.List; +import java.util.concurrent.TimeUnit; import lombok.Getter; import lombok.extern.slf4j.Slf4j; import net.jodah.failsafe.RetryPolicy; @@ -22,12 +27,6 @@ import tn.mnlr.vripper.event.Event; import tn.mnlr.vripper.event.EventBus; import tn.mnlr.vripper.services.domain.Settings; -import javax.annotation.PreDestroy; -import java.net.URI; -import java.time.temporal.ChronoUnit; -import java.util.List; -import java.util.concurrent.TimeUnit; - @Service @EnableScheduling @Slf4j diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/services/DataService.java b/vripper-server/src/main/java/tn/mnlr/vripper/services/DataService.java index df39806..f967a43 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/services/DataService.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/services/DataService.java @@ -1,5 +1,7 @@ package tn.mnlr.vripper.services; +import java.util.*; +import java.util.stream.Collectors; import lombok.NonNull; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -13,10 +15,6 @@ import tn.mnlr.vripper.jpa.repositories.IPostRepository; import tn.mnlr.vripper.jpa.repositories.IQueuedRepository; import tn.mnlr.vripper.jpa.repositories.impl.LogEventRepository; -import javax.annotation.PostConstruct; -import java.util.*; -import java.util.stream.Collectors; - @Service @Transactional @Slf4j diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/services/PostService.java b/vripper-server/src/main/java/tn/mnlr/vripper/services/PostService.java index 66abf46..d3d49f0 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/services/PostService.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/services/PostService.java @@ -2,6 +2,10 @@ package tn.mnlr.vripper.services; import com.github.benmanes.caffeine.cache.Caffeine; import com.github.benmanes.caffeine.cache.LoadingCache; +import jakarta.annotation.PreDestroy; +import java.util.List; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.TimeUnit; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -14,11 +18,6 @@ import tn.mnlr.vripper.services.domain.MultiPostScanResult; import tn.mnlr.vripper.tasks.AddPostRunnable; import tn.mnlr.vripper.tasks.AddQueuedRunnable; -import javax.annotation.PreDestroy; -import java.util.List; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.TimeUnit; - @Service @Slf4j public class PostService { diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/services/SettingsService.java b/vripper-server/src/main/java/tn/mnlr/vripper/services/SettingsService.java index 25a3c7e..84fc947 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/services/SettingsService.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/services/SettingsService.java @@ -1,9 +1,24 @@ package tn.mnlr.vripper.services; +import static java.nio.file.StandardOpenOption.*; + import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import java.io.FileWriter; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.InvalidPathException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; @@ -18,22 +33,6 @@ import tn.mnlr.vripper.event.EventBus; import tn.mnlr.vripper.exception.ValidationException; import tn.mnlr.vripper.services.domain.Settings; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.nio.file.Files; -import java.nio.file.InvalidPathException; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -import static java.nio.file.StandardOpenOption.*; - @Service @Setter @Slf4j diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/services/VGAuthService.java b/vripper-server/src/main/java/tn/mnlr/vripper/services/VGAuthService.java index b6ddc67..7edb961 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/services/VGAuthService.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/services/VGAuthService.java @@ -1,5 +1,9 @@ package tn.mnlr.vripper.services; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import java.util.ArrayList; +import java.util.List; import lombok.Getter; import lombok.extern.slf4j.Slf4j; import org.apache.http.NameValuePair; @@ -21,11 +25,6 @@ import tn.mnlr.vripper.exception.VripperException; import tn.mnlr.vripper.jpa.domain.Post; import tn.mnlr.vripper.tasks.LeaveThanksRunnable; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; -import java.util.ArrayList; -import java.util.List; - @Service @Slf4j public class VGAuthService { diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/services/domain/PostScanHandler.java b/vripper-server/src/main/java/tn/mnlr/vripper/services/domain/PostScanHandler.java index c8d48b6..98bc5cd 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/services/domain/PostScanHandler.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/services/domain/PostScanHandler.java @@ -1,5 +1,10 @@ package tn.mnlr.vripper.services.domain; +import java.util.Collection; +import java.util.HashSet; +import java.util.Optional; +import java.util.Set; +import java.util.stream.Collectors; import lombok.extern.slf4j.Slf4j; import org.xml.sax.Attributes; import org.xml.sax.helpers.DefaultHandler; @@ -9,12 +14,6 @@ import tn.mnlr.vripper.jpa.domain.Image; import tn.mnlr.vripper.jpa.domain.Post; import tn.mnlr.vripper.services.SettingsService; -import java.util.Collection; -import java.util.HashSet; -import java.util.Optional; -import java.util.Set; -import java.util.stream.Collectors; - @Slf4j class PostScanHandler extends DefaultHandler { @@ -72,10 +71,9 @@ class PostScanHandler extends DefaultHandler { break; case "image": index++; + String thumbUrl = attributes.getValue("thumb_url").trim(); if (previews.size() < 4) { - Optional.ofNullable(attributes.getValue("thumb_url")) - .map(String::trim) - .ifPresent(previews::add); + previews.add(thumbUrl); } String mainUrl = @@ -91,7 +89,7 @@ class PostScanHandler extends DefaultHandler { String.format( "Found supported host %s for %s", foundHost.getClass().getSimpleName(), mainUrl)); - images.add(new Image(postId, mainUrl, foundHost, index)); + images.add(new Image(postId, mainUrl, thumbUrl, foundHost, index)); } else { log.warn(String.format("unsupported host for %s, skipping", mainUrl)); } diff --git a/vripper-server/src/main/java/tn/mnlr/vripper/web/wsendpoints/DataBroadcast.java b/vripper-server/src/main/java/tn/mnlr/vripper/web/wsendpoints/DataBroadcast.java index fd157ee..82f6385 100644 --- a/vripper-server/src/main/java/tn/mnlr/vripper/web/wsendpoints/DataBroadcast.java +++ b/vripper-server/src/main/java/tn/mnlr/vripper/web/wsendpoints/DataBroadcast.java @@ -1,5 +1,13 @@ package tn.mnlr.vripper.web.wsendpoints; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import java.time.Duration; +import java.time.temporal.ChronoUnit; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.stream.Collectors; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.messaging.simp.SimpMessagingTemplate; @@ -12,15 +20,6 @@ import tn.mnlr.vripper.services.DataService; import tn.mnlr.vripper.services.domain.DownloadSpeed; import tn.mnlr.vripper.services.domain.GlobalState; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; -import java.time.Duration; -import java.time.temporal.ChronoUnit; -import java.util.List; -import java.util.Map; -import java.util.Optional; -import java.util.stream.Collectors; - @Service @Slf4j public class DataBroadcast { diff --git a/vripper-server/src/main/resources/db/changelog/db.changelog-master.xml b/vripper-server/src/main/resources/db/changelog/db.changelog-master.xml index fcb349d..8ec846d 100644 --- a/vripper-server/src/main/resources/db/changelog/db.changelog-master.xml +++ b/vripper-server/src/main/resources/db/changelog/db.changelog-master.xml @@ -175,4 +175,11 @@ + + + + + + + diff --git a/vripper-ui/package.json b/vripper-ui/package.json index 8625817..18f9e2f 100644 --- a/vripper-ui/package.json +++ b/vripper-ui/package.json @@ -1,6 +1,6 @@ { "name": "vripper-ui", - "version": "3.5.4", + "version": "3.6.0", "scripts": { "ng": "ng", "start": "ng serve", diff --git a/vripper-ui/pom.xml b/vripper-ui/pom.xml index f6aa4cb..688db5a 100644 --- a/vripper-ui/pom.xml +++ b/vripper-ui/pom.xml @@ -5,14 +5,16 @@ tn.mnlr vripper - 3.5.4 + 3.6.0 vripper-ui vripper-ui + pom maven-jar-plugin + 3.4.2 ${buildClassifier} diff --git a/vripper-ui/src/app/about/about-component.html b/vripper-ui/src/app/about/about-component.html index eb930ea..37921cc 100644 --- a/vripper-ui/src/app/about/about-component.html +++ b/vripper-ui/src/app/about/about-component.html @@ -11,14 +11,7 @@
- Due to the lack of cross platform Ripper for vipergirls.to and the official one being no longer maintained, - this application was created as a personal project of mine to fulfill the old one's tasks.
- Soon after, people were interested in it and i released it to the public.
- This project is built to be a robust and clean replacement of the old one, using modern technologies to - conveniently download photo galleries from the forum.
- I aim to provide you with a software that is easy to use have a nice and intuitive design and interface.
- The project is currently maintained by me 'theghooost', a member of the vipergirls.to forum, feel free to PM - if you need anything.
+ Developed by dev-claw and VRipper working group
@@ -31,11 +24,11 @@ You can contribute to the project by testing new releases, raising bug reports or coding.
The project is open source and is hosted in github.com.
-

Github:

https://github.com/death-claw/vripper-project +

Github:

https://github.com/dev-claw/vripper-project

Issues:

https://github.com/death-claw/vripper-project/issues + (click)="goTo('https://github.com/dev-claw/vripper-project/issues')" class="about-link" + href="javascript:void(0)">https://github.com/dev-claw/vripper-project/issues

PM:

https://vipergirls.to/members/244439-theghooost
@@ -50,12 +43,17 @@ If you feel generous and want to support me, you can toss me some coins, and I would be very grateful 🙏
- You can send me donations through paypal to the following email address + You can send me donations through the following methods
- -
+
+
-

dev.vripper@gmail.com

+
+
+

0xDdac82B16dC5E3D742fc915ffF583D8548A301cA

+
+
+

bc1qcqudnkrndwyadsjwrxww42svkf8trnzx3c8vlr

diff --git a/vripper-ui/src/app/about/about-component.scss b/vripper-ui/src/app/about/about-component.scss index cd6b607..f707011 100644 --- a/vripper-ui/src/app/about/about-component.scss +++ b/vripper-ui/src/app/about/about-component.scss @@ -3,11 +3,11 @@ background-image: url('../../assets/v.svg'); } -.paypal-image { - width: 64px; - height: 64px; +.buymeacoffee-image { + width: 170px; + height: 37px; background-size: cover; - background-image: url('../../assets/paypal.svg'); + background-image: url('../../assets/buymeacoffee-logo.png'); } .section { diff --git a/vripper-ui/src/assets/buymeacoffee-logo.png b/vripper-ui/src/assets/buymeacoffee-logo.png new file mode 100644 index 0000000..d28f442 Binary files /dev/null and b/vripper-ui/src/assets/buymeacoffee-logo.png differ diff --git a/vripper-ui/src/environments/environment.prod.ts b/vripper-ui/src/environments/environment.prod.ts index 9150e9e..324ea05 100644 --- a/vripper-ui/src/environments/environment.prod.ts +++ b/vripper-ui/src/environments/environment.prod.ts @@ -2,5 +2,5 @@ export const environment = { production: true, localhost: `${window.location.protocol}//${window.location.host}`, ws: `${window.location.protocol === 'http:' ? 'ws:' : 'wss:'}//${window.location.host}`, - version: '3.5.4' + version: '3.6.0' }; diff --git a/vripper-ui/src/environments/environment.ts b/vripper-ui/src/environments/environment.ts index 3a2199e..dd8ebd0 100644 --- a/vripper-ui/src/environments/environment.ts +++ b/vripper-ui/src/environments/environment.ts @@ -6,7 +6,7 @@ export const environment = { production: false, localhost: 'http://localhost:8080', ws: 'ws://localhost:8080', - version: '3.5.4' + version: '3.6.0' }; /*