Skip to content

Commit 700abf2

Browse files
Add generic option type
1 parent 3cf8591 commit 700abf2

File tree

2 files changed

+100
-56
lines changed

2 files changed

+100
-56
lines changed

example/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,6 @@
3030
"style-loader": "^3.3.1",
3131
"terser-webpack-plugin": "^5.3.3",
3232
"webpack": "^5.76.0",
33-
"webpack-cli": "^5.0.1"
33+
"webpack-cli": "^4.9.2"
3434
}
3535
}

example/yarn.lock

+99-55
Original file line numberDiff line numberDiff line change
@@ -1393,20 +1393,22 @@
13931393
"@webassemblyjs/ast" "1.11.1"
13941394
"@xtuc/long" "4.2.2"
13951395

1396-
"@webpack-cli/configtest@^2.0.1":
1397-
version "2.0.1"
1398-
resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-2.0.1.tgz#a69720f6c9bad6aef54a8fa6ba9c3533e7ef4c7f"
1399-
integrity sha512-njsdJXJSiS2iNbQVS0eT8A/KPnmyH4pv1APj2K0d1wrZcBLw+yppxOy4CGqa0OxDJkzfL/XELDhD8rocnIwB5A==
1396+
"@webpack-cli/configtest@^1.1.1":
1397+
version "1.1.1"
1398+
resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-1.1.1.tgz#9f53b1b7946a6efc2a749095a4f450e2932e8356"
1399+
integrity sha512-1FBc1f9G4P/AxMqIgfZgeOTuRnwZMten8E7zap5zgpPInnCrP8D4Q81+4CWIch8i/Nf7nXjP0v6CjjbHOrXhKg==
14001400

1401-
"@webpack-cli/info@^2.0.1":
1402-
version "2.0.1"
1403-
resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-2.0.1.tgz#eed745799c910d20081e06e5177c2b2569f166c0"
1404-
integrity sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==
1401+
"@webpack-cli/info@^1.4.1":
1402+
version "1.4.1"
1403+
resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-1.4.1.tgz#2360ea1710cbbb97ff156a3f0f24556e0fc1ebea"
1404+
integrity sha512-PKVGmazEq3oAo46Q63tpMr4HipI3OPfP7LiNOEJg963RMgT0rqheag28NCML0o3GIzA3DmxP1ZIAv9oTX1CUIA==
1405+
dependencies:
1406+
envinfo "^7.7.3"
14051407

1406-
"@webpack-cli/serve@^2.0.1":
1407-
version "2.0.1"
1408-
resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-2.0.1.tgz#34bdc31727a1889198855913db2f270ace6d7bf8"
1409-
integrity sha512-0G7tNyS+yW8TdgHwZKlDWYXFA6OJQnoLCQvYKkQP0Q2X205PSQ6RNUj0M+1OB/9gRQaUZ/ccYfaxd0nhaWKfjw==
1408+
"@webpack-cli/serve@^1.6.1":
1409+
version "1.6.1"
1410+
resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-1.6.1.tgz#0de2875ac31b46b6c5bb1ae0a7d7f0ba5678dffe"
1411+
integrity sha512-gNGTiTrjEVQ0OcVnzsRSqTxaBSr+dmTfm+qJsCDluky8uhdLWep7Gcr62QsAKHTMxjCS/8nEITsmFAhfIx+QSw==
14101412

14111413
"@xtuc/ieee754@^1.2.0":
14121414
version "1.2.0"
@@ -1585,10 +1587,10 @@ commander@^2.20.0:
15851587
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
15861588
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
15871589

1588-
commander@^9.4.1:
1589-
version "9.5.0"
1590-
resolved "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30"
1591-
integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==
1590+
commander@^7.0.0:
1591+
version "7.2.0"
1592+
resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7"
1593+
integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==
15921594

15931595
commondir@^1.0.1:
15941596
version "1.0.1"
@@ -1756,6 +1758,21 @@ events@^3.2.0:
17561758
resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
17571759
integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
17581760

1761+
execa@^5.0.0:
1762+
version "5.1.1"
1763+
resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd"
1764+
integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==
1765+
dependencies:
1766+
cross-spawn "^7.0.3"
1767+
get-stream "^6.0.0"
1768+
human-signals "^2.1.0"
1769+
is-stream "^2.0.0"
1770+
merge-stream "^2.0.0"
1771+
npm-run-path "^4.0.1"
1772+
onetime "^5.1.2"
1773+
signal-exit "^3.0.3"
1774+
strip-final-newline "^2.0.0"
1775+
17591776
fast-deep-equal@^3.1.1:
17601777
version "3.1.3"
17611778
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
@@ -1807,6 +1824,11 @@ get-intrinsic@^1.0.2:
18071824
has "^1.0.3"
18081825
has-symbols "^1.0.1"
18091826

1827+
get-stream@^6.0.0:
1828+
version "6.0.1"
1829+
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
1830+
integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
1831+
18101832
glob-to-regexp@^0.4.1:
18111833
version "0.4.1"
18121834
resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
@@ -1844,6 +1866,11 @@ has@^1.0.3:
18441866
dependencies:
18451867
function-bind "^1.1.1"
18461868

1869+
human-signals@^2.1.0:
1870+
version "2.1.0"
1871+
resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
1872+
integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
1873+
18471874
icss-utils@^5.0.0, icss-utils@^5.1.0:
18481875
version "5.1.0"
18491876
resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae"
@@ -1857,10 +1884,10 @@ import-local@^3.0.2:
18571884
pkg-dir "^4.2.0"
18581885
resolve-cwd "^3.0.0"
18591886

1860-
interpret@^3.1.1:
1861-
version "3.1.1"
1862-
resolved "https://registry.yarnpkg.com/interpret/-/interpret-3.1.1.tgz#5be0ceed67ca79c6c4bc5cf0d7ee843dcea110c4"
1863-
integrity sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==
1887+
interpret@^2.2.0:
1888+
version "2.2.0"
1889+
resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9"
1890+
integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==
18641891

18651892
invariant@^2.2.4:
18661893
version "2.2.4"
@@ -1876,20 +1903,18 @@ is-core-module@^2.8.1:
18761903
dependencies:
18771904
has "^1.0.3"
18781905

1879-
is-core-module@^2.9.0:
1880-
version "2.11.0"
1881-
resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144"
1882-
integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==
1883-
dependencies:
1884-
has "^1.0.3"
1885-
18861906
is-plain-object@^2.0.4:
18871907
version "2.0.4"
18881908
resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
18891909
integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
18901910
dependencies:
18911911
isobject "^3.0.1"
18921912

1913+
is-stream@^2.0.0:
1914+
version "2.0.1"
1915+
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
1916+
integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
1917+
18931918
isexe@^2.0.0:
18941919
version "2.0.0"
18951920
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
@@ -2018,6 +2043,11 @@ mime-types@^2.1.27:
20182043
dependencies:
20192044
mime-db "1.52.0"
20202045

2046+
mimic-fn@^2.1.0:
2047+
version "2.1.0"
2048+
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
2049+
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
2050+
20212051
20222052
version "2.1.2"
20232053
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
@@ -2038,6 +2068,13 @@ node-releases@^2.0.3:
20382068
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.5.tgz#280ed5bc3eba0d96ce44897d8aee478bfb3d9666"
20392069
integrity sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==
20402070

2071+
npm-run-path@^4.0.1:
2072+
version "4.0.1"
2073+
resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
2074+
integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
2075+
dependencies:
2076+
path-key "^3.0.0"
2077+
20412078
object-assign@^4.1.1:
20422079
version "4.1.1"
20432080
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
@@ -2058,6 +2095,13 @@ object.assign@^4.1.0:
20582095
has-symbols "^1.0.1"
20592096
object-keys "^1.1.1"
20602097

2098+
onetime@^5.1.2:
2099+
version "5.1.2"
2100+
resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
2101+
integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
2102+
dependencies:
2103+
mimic-fn "^2.1.0"
2104+
20612105
p-limit@^2.2.0:
20622106
version "2.3.0"
20632107
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
@@ -2082,7 +2126,7 @@ path-exists@^4.0.0:
20822126
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
20832127
integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
20842128

2085-
path-key@^3.1.0:
2129+
path-key@^3.0.0, path-key@^3.1.0:
20862130
version "3.1.1"
20872131
resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
20882132
integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
@@ -2249,12 +2293,12 @@ react-waypoint@^10.1.0:
22492293
prop-types "^15.0.0"
22502294
react-is "^17.0.1"
22512295

2252-
rechoir@^0.8.0:
2253-
version "0.8.0"
2254-
resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.8.0.tgz#49f866e0d32146142da3ad8f0eff352b3215ff22"
2255-
integrity sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==
2296+
rechoir@^0.7.0:
2297+
version "0.7.1"
2298+
resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686"
2299+
integrity sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==
22562300
dependencies:
2257-
resolve "^1.20.0"
2301+
resolve "^1.9.0"
22582302

22592303
regenerate-unicode-properties@^10.0.1:
22602304
version "10.0.1"
@@ -2316,7 +2360,7 @@ resolve-from@^5.0.0:
23162360
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
23172361
integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
23182362

2319-
resolve@^1.14.2:
2363+
resolve@^1.14.2, resolve@^1.9.0:
23202364
version "1.22.0"
23212365
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198"
23222366
integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==
@@ -2325,15 +2369,6 @@ resolve@^1.14.2:
23252369
path-parse "^1.0.7"
23262370
supports-preserve-symlinks-flag "^1.0.0"
23272371

2328-
resolve@^1.20.0:
2329-
version "1.22.1"
2330-
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177"
2331-
integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==
2332-
dependencies:
2333-
is-core-module "^2.9.0"
2334-
path-parse "^1.0.7"
2335-
supports-preserve-symlinks-flag "^1.0.0"
2336-
23372372
safe-buffer@^5.1.0:
23382373
version "5.2.1"
23392374
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
@@ -2413,6 +2448,11 @@ shebang-regex@^3.0.0:
24132448
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
24142449
integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
24152450

2451+
signal-exit@^3.0.3:
2452+
version "3.0.7"
2453+
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
2454+
integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
2455+
24162456
source-map-js@^1.0.2:
24172457
version "1.0.2"
24182458
resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
@@ -2436,6 +2476,11 @@ source-map@^0.6.0:
24362476
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
24372477
integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
24382478

2479+
strip-final-newline@^2.0.0:
2480+
version "2.0.0"
2481+
resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
2482+
integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
2483+
24392484
style-loader@^3.3.1:
24402485
version "3.3.1"
24412486
resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-3.3.1.tgz#057dfa6b3d4d7c7064462830f9113ed417d38575"
@@ -2551,23 +2596,22 @@ watchpack@^2.4.0:
25512596
glob-to-regexp "^0.4.1"
25522597
graceful-fs "^4.1.2"
25532598

2554-
webpack-cli@^5.0.1:
2555-
version "5.0.1"
2556-
resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-5.0.1.tgz#95fc0495ac4065e9423a722dec9175560b6f2d9a"
2557-
integrity sha512-S3KVAyfwUqr0Mo/ur3NzIp6jnerNpo7GUO6so51mxLi1spqsA17YcMXy0WOIJtBSnj748lthxC6XLbNKh/ZC+A==
2599+
webpack-cli@^4.9.2:
2600+
version "4.9.2"
2601+
resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.9.2.tgz#77c1adaea020c3f9e2db8aad8ea78d235c83659d"
2602+
integrity sha512-m3/AACnBBzK/kMTcxWHcZFPrw/eQuY4Df1TxvIWfWM2x7mRqBQCqKEd96oCUa9jkapLBaFfRce33eGDb4Pr7YQ==
25582603
dependencies:
25592604
"@discoveryjs/json-ext" "^0.5.0"
2560-
"@webpack-cli/configtest" "^2.0.1"
2561-
"@webpack-cli/info" "^2.0.1"
2562-
"@webpack-cli/serve" "^2.0.1"
2605+
"@webpack-cli/configtest" "^1.1.1"
2606+
"@webpack-cli/info" "^1.4.1"
2607+
"@webpack-cli/serve" "^1.6.1"
25632608
colorette "^2.0.14"
2564-
commander "^9.4.1"
2565-
cross-spawn "^7.0.3"
2566-
envinfo "^7.7.3"
2609+
commander "^7.0.0"
2610+
execa "^5.0.0"
25672611
fastest-levenshtein "^1.0.12"
25682612
import-local "^3.0.2"
2569-
interpret "^3.1.1"
2570-
rechoir "^0.8.0"
2613+
interpret "^2.2.0"
2614+
rechoir "^0.7.0"
25712615
webpack-merge "^5.7.3"
25722616

25732617
webpack-merge@^5.7.3:

0 commit comments

Comments
 (0)