diff --git a/.github/sponsor-banner.svg b/.github/sponsor-banner.svg
deleted file mode 100644
index 3ef81070..00000000
--- a/.github/sponsor-banner.svg
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/README.md b/README.md
index a13246e8..0814fb33 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,26 @@
-Useful tools for developer and people working in IT. [Have a look !](https://it-tools.tech).
+
+Useful tools for developer and people working in IT. Try it!
+
+
+
+## Sponsors
+
+
+
+ IT-Tools is proudly sponsored by:
+
+
+
+
+
+
+### [Warp, built for coding with multiple AI agents.](https://go.warp.dev/it-tools)
+[Available for MacOS, Linux, & Windows](https://go.warp.dev/it-tools)
+
+
## Functionalities and roadmap
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 82f0a87c..c347783b 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -2600,8 +2600,8 @@ packages:
base64-js@1.5.1:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
- baseline-browser-mapping@2.8.7:
- resolution: {integrity: sha512-bxxN2M3a4d1CRoQC//IqsR5XrLh0IJ8TCv2x6Y9N0nckNz/rTjZB3//GGscZziZOxmjP55rzxg/ze7usFI9FqQ==}
+ baseline-browser-mapping@2.8.19:
+ resolution: {integrity: sha512-zoKGUdu6vb2jd3YOq0nnhEDQVbPcHhco3UImJrv5dSkvxTc2pl2WjOPsjZXDwPDSl5eghIMuY3R6J9NDKF3KcQ==}
hasBin: true
bcryptjs@2.4.3:
@@ -2641,8 +2641,8 @@ packages:
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
- browserslist@4.26.2:
- resolution: {integrity: sha512-ECFzp6uFOSB+dcZ5BK/IBaGWssbSYBHvuMeMt3MMFyhI0Z8SqGgEkBLARgpRH3hutIgPVsALcMwbDrJqPxQ65A==}
+ browserslist@4.26.3:
+ resolution: {integrity: sha512-lAUU+02RFBuCKQPj/P6NgjlbCnLBMp4UtgTx7vNHd3XSIJF87s9a5rA3aH2yw3GS9DqZAUbOtZdCCiZeVRqt0w==}
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
@@ -2705,8 +2705,8 @@ packages:
caniuse-lite@1.0.30001559:
resolution: {integrity: sha512-cPiMKZgqgkg5LY3/ntGeLFUpi6tzddBNS58A4tnTgQw1zON7u2sZMU7SzOeVH4tj20++9ggL+V6FDOFMTaFFYA==}
- caniuse-lite@1.0.30001745:
- resolution: {integrity: sha512-ywt6i8FzvdgrrrGbr1jZVObnVv6adj+0if2/omv9cmR2oiZs30zL4DIyaptKcbOrBdOIc74QTMoJvSE2QHh5UQ==}
+ caniuse-lite@1.0.30001751:
+ resolution: {integrity: sha512-A0QJhug0Ly64Ii3eIqHu5X51ebln3k4yTUkY1j8drqpWHVreg/VLijN48cZ1bYPiqOQuqpkIKnzr/Ul8V+p6Cw==}
capital-case@1.0.4:
resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==}
@@ -2856,8 +2856,8 @@ packages:
copy-anything@2.0.6:
resolution: {integrity: sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==}
- core-js-compat@3.45.1:
- resolution: {integrity: sha512-tqTt5T4PzsMIZ430XGviK4vzYSoeNJ6CXODi6c/voxOT6IZqBht5/EKaSNnYiEjjRYxjVz7DQIsOsY0XNi8PIA==}
+ core-js-compat@3.46.0:
+ resolution: {integrity: sha512-p9hObIIEENxSV8xIu+V68JjSeARg6UVMG5mR+JEUguG3sI6MsiS1njz2jHmyJDvA+8jX/sytkBHup6kxhM9law==}
country-code-lookup@0.1.0:
resolution: {integrity: sha512-IOI66HEG+8bXfWPy+sTzuN7161vmDZOHg1wgIPFf3WfD73FeLajnn6C+fnxOIa9RL1WRBDMXQQWW/FOaOYaQ3w==}
@@ -3128,8 +3128,8 @@ packages:
electron-to-chromium@1.4.572:
resolution: {integrity: sha512-RlFobl4D3ieetbnR+2EpxdzFl9h0RAJkPK3pfiwMug2nhBin2ZCsGIAJWdpNniLz43sgXam/CgipOmvTA+rUiA==}
- electron-to-chromium@1.5.224:
- resolution: {integrity: sha512-kWAoUu/bwzvnhpdZSIc6KUyvkI1rbRXMT0Eq8pKReyOyaPZcctMli+EgvcN1PAvwVc7Tdo4Fxi2PsLNDU05mdg==}
+ electron-to-chromium@1.5.237:
+ resolution: {integrity: sha512-icUt1NvfhGLar5lSWH3tHNzablaA5js3HVHacQimfP8ViEBOQv+L7DKEuHdbTZ0SKCO1ogTJTIL1Gwk9S6Qvcg==}
email-normalizer@1.0.0:
resolution: {integrity: sha512-wZYuuMtL4kUOmg/TPtCrf9hAZjbFq+FcjWA85Z5nr2lGllRnWJPxCJw3gy4Cx+adMoyVw4VJfGGvt/OHgIW+qg==}
@@ -3553,6 +3553,10 @@ packages:
resolution: {integrity: sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA==}
engines: {node: '>=10'}
+ generator-function@2.0.1:
+ resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==}
+ engines: {node: '>= 0.4'}
+
gensync@1.0.0-beta.2:
resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
engines: {node: '>=6.9.0'}
@@ -3587,8 +3591,8 @@ packages:
resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==}
engines: {node: '>= 0.4'}
- get-tsconfig@4.10.1:
- resolution: {integrity: sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==}
+ get-tsconfig@4.12.0:
+ resolution: {integrity: sha512-LScr2aNr2FbjAjZh2C6X6BxRx1/x+aTDExct/xyq2XKbYOiG5c0aK7pMsSuyc0brz3ibr/lbQiHD9jzt4lccJw==}
glob-parent@5.1.2:
resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
@@ -3898,8 +3902,8 @@ packages:
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
engines: {node: '>=8'}
- is-generator-function@1.1.0:
- resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==}
+ is-generator-function@1.1.2:
+ resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==}
engines: {node: '>= 0.4'}
is-glob@4.0.3:
@@ -4441,8 +4445,8 @@ packages:
node-releases@2.0.13:
resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==}
- node-releases@2.0.21:
- resolution: {integrity: sha512-5b0pgg78U3hwXkCM8Z9b2FJdPZlr9Psr9V2gQPESdGHqbntyFJKFW4r5TeWGFzafGY3hzs1JC62VEQMbl1JFkw==}
+ node-releases@2.0.26:
+ resolution: {integrity: sha512-S2M9YimhSjBSvYnlr5/+umAnPHE++ODwt5e2Ij6FoX45HA/s4vHdkDx1eax2pAPeAOqu4s9b7ppahsyEFdVqQA==}
nopt@6.0.0:
resolution: {integrity: sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==}
@@ -4905,8 +4909,8 @@ packages:
resolve-pkg-maps@1.0.0:
resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
- resolve@1.22.10:
- resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==}
+ resolve@1.22.11:
+ resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==}
engines: {node: '>= 0.4'}
hasBin: true
@@ -5014,8 +5018,8 @@ packages:
engines: {node: '>=10'}
hasBin: true
- semver@7.7.2:
- resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==}
+ semver@7.7.3:
+ resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==}
engines: {node: '>=10'}
hasBin: true
@@ -6252,7 +6256,7 @@ snapshots:
dependencies:
'@babel/compat-data': 7.28.4
'@babel/helper-validator-option': 7.27.1
- browserslist: 4.26.2
+ browserslist: 4.26.3
lru-cache: 5.1.1
semver: 6.3.1
@@ -6296,7 +6300,7 @@ snapshots:
'@babel/helper-plugin-utils': 7.27.1
debug: 4.4.3
lodash.debounce: 4.0.8
- resolve: 1.22.10
+ resolve: 1.22.11
transitivePeerDependencies:
- supports-color
@@ -7016,7 +7020,7 @@ snapshots:
babel-plugin-polyfill-corejs2: 0.4.14(@babel/core@7.28.4)
babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.4)
babel-plugin-polyfill-regenerator: 0.6.5(@babel/core@7.28.4)
- core-js-compat: 3.45.1
+ core-js-compat: 3.46.0
semver: 6.3.1
transitivePeerDependencies:
- supports-color
@@ -7606,7 +7610,7 @@ snapshots:
'@types/resolve': 1.20.2
deepmerge: 4.3.1
is-module: 1.0.0
- resolve: 1.22.10
+ resolve: 1.22.11
optionalDependencies:
rollup: 2.79.2
@@ -8036,7 +8040,7 @@ snapshots:
debug: 4.4.3
globby: 11.1.0
is-glob: 4.0.3
- semver: 7.7.2
+ semver: 7.7.3
tsutils: 3.21.0(typescript@5.2.2)
optionalDependencies:
typescript: 5.2.2
@@ -8081,7 +8085,7 @@ snapshots:
'@typescript-eslint/typescript-estree': 5.60.0(typescript@5.2.2)
eslint: 8.47.0
eslint-scope: 5.1.1
- semver: 7.7.2
+ semver: 7.7.3
transitivePeerDependencies:
- supports-color
- typescript
@@ -8740,7 +8744,7 @@ snapshots:
dependencies:
'@babel/core': 7.28.4
'@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.4)
- core-js-compat: 3.45.1
+ core-js-compat: 3.46.0
transitivePeerDependencies:
- supports-color
@@ -8755,7 +8759,7 @@ snapshots:
base64-js@1.5.1: {}
- baseline-browser-mapping@2.8.7: {}
+ baseline-browser-mapping@2.8.19: {}
bcryptjs@2.4.3: {}
@@ -8800,13 +8804,13 @@ snapshots:
node-releases: 2.0.13
update-browserslist-db: 1.0.13(browserslist@4.22.1)
- browserslist@4.26.2:
+ browserslist@4.26.3:
dependencies:
- baseline-browser-mapping: 2.8.7
- caniuse-lite: 1.0.30001745
- electron-to-chromium: 1.5.224
- node-releases: 2.0.21
- update-browserslist-db: 1.1.3(browserslist@4.26.2)
+ baseline-browser-mapping: 2.8.19
+ caniuse-lite: 1.0.30001751
+ electron-to-chromium: 1.5.237
+ node-releases: 2.0.26
+ update-browserslist-db: 1.1.3(browserslist@4.26.3)
buffer-from@1.1.2: {}
@@ -8865,7 +8869,7 @@ snapshots:
caniuse-lite@1.0.30001559: {}
- caniuse-lite@1.0.30001745: {}
+ caniuse-lite@1.0.30001751: {}
capital-case@1.0.4:
dependencies:
@@ -9057,9 +9061,9 @@ snapshots:
dependencies:
is-what: 3.14.1
- core-js-compat@3.45.1:
+ core-js-compat@3.46.0:
dependencies:
- browserslist: 4.26.2
+ browserslist: 4.26.3
country-code-lookup@0.1.0: {}
@@ -9299,7 +9303,7 @@ snapshots:
electron-to-chromium@1.4.572: {}
- electron-to-chromium@1.5.224: {}
+ electron-to-chromium@1.5.237: {}
email-normalizer@1.0.0:
dependencies:
@@ -9485,7 +9489,7 @@ snapshots:
dependencies:
debug: 3.2.7
is-core-module: 2.16.1
- resolve: 1.22.10
+ resolve: 1.22.11
transitivePeerDependencies:
- supports-color
@@ -9530,11 +9534,11 @@ snapshots:
eslint: 8.47.0
eslint-import-resolver-node: 0.3.9
eslint-module-utils: 2.12.1(@typescript-eslint/parser@6.4.1(eslint@8.47.0)(typescript@5.2.2))(eslint-import-resolver-node@0.3.9)(eslint@8.47.0)
- get-tsconfig: 4.10.1
+ get-tsconfig: 4.12.0
is-glob: 4.0.3
minimatch: 3.1.2
- resolve: 1.22.10
- semver: 7.7.2
+ resolve: 1.22.11
+ semver: 7.7.3
transitivePeerDependencies:
- '@typescript-eslint/parser'
- eslint-import-resolver-typescript
@@ -9884,6 +9888,8 @@ snapshots:
fuse.js@6.6.2: {}
+ generator-function@2.0.1: {}
+
gensync@1.0.0-beta.2: {}
get-caller-file@2.0.5: {}
@@ -9920,7 +9926,7 @@ snapshots:
es-errors: 1.3.0
get-intrinsic: 1.3.0
- get-tsconfig@4.10.1:
+ get-tsconfig@4.12.0:
dependencies:
resolve-pkg-maps: 1.0.0
@@ -10255,9 +10261,10 @@ snapshots:
is-fullwidth-code-point@3.0.0: {}
- is-generator-function@1.1.0:
+ is-generator-function@1.1.2:
dependencies:
call-bound: 1.0.4
+ generator-function: 2.0.1
get-proto: 1.0.1
has-tostringtag: 1.0.2
safe-regex-test: 1.1.0
@@ -10810,7 +10817,7 @@ snapshots:
node-releases@2.0.13: {}
- node-releases@2.0.21: {}
+ node-releases@2.0.26: {}
nopt@6.0.0:
dependencies:
@@ -10819,7 +10826,7 @@ snapshots:
normalize-package-data@2.5.0:
dependencies:
hosted-git-info: 2.8.9
- resolve: 1.22.10
+ resolve: 1.22.11
semver: 5.7.2
validate-npm-package-license: 3.0.4
@@ -11331,7 +11338,7 @@ snapshots:
resolve-pkg-maps@1.0.0: {}
- resolve@1.22.10:
+ resolve@1.22.11:
dependencies:
is-core-module: 2.16.1
path-parse: 1.0.7
@@ -11432,7 +11439,7 @@ snapshots:
dependencies:
lru-cache: 6.0.0
- semver@7.7.2: {}
+ semver@7.7.3: {}
sentence-case@2.1.1:
dependencies:
@@ -11803,7 +11810,7 @@ snapshots:
tsx@4.19.2:
dependencies:
esbuild: 0.23.1
- get-tsconfig: 4.10.1
+ get-tsconfig: 4.12.0
optionalDependencies:
fsevents: 2.3.3
@@ -12055,9 +12062,9 @@ snapshots:
escalade: 3.1.1
picocolors: 1.0.0
- update-browserslist-db@1.1.3(browserslist@4.26.2):
+ update-browserslist-db@1.1.3(browserslist@4.26.3):
dependencies:
- browserslist: 4.26.2
+ browserslist: 4.26.3
escalade: 3.2.0
picocolors: 1.1.1
@@ -12334,7 +12341,7 @@ snapshots:
is-async-function: 2.1.1
is-date-object: 1.1.0
is-finalizationregistry: 1.1.1
- is-generator-function: 1.1.0
+ is-generator-function: 1.1.2
is-regex: 1.2.1
is-weakref: 1.1.1
isarray: 2.0.5