Gildas преди 2 години
родител
ревизия
faca34821e

Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
lib/single-file-extension-background.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
lib/single-file-extension-bootstrap.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
lib/single-file-extension-editor-helper.js


+ 13 - 4
lib/single-file-extension-editor.js

@@ -50,6 +50,7 @@
 		const MASK_CLASS = "single-file-mask";
 		const PAGE_MASK_CONTAINER_CLASS = "single-file-page-mask";
 		const HIGHLIGHT_CLASS = "single-file-highlight";
+		const HIGHLIGHTS_STYLESHEET_CLASS = "single-file-highlights-stylesheet";
 		const REMOVED_CONTENT_CLASS = "single-file-removed";
 		const HIGHLIGHT_HIDDEN_CLASS = "single-file-highlight-hidden";
 		const PAGE_MASK_ACTIVE_CLASS = "page-mask-active";
@@ -1246,7 +1247,7 @@ pre code {
 					document.querySelectorAll("[data-single-file-note-refs]").forEach(noteRefElement => noteRefElement.dataset.singleFileNoteRefs = noteRefElement.dataset.singleFileNoteRefs.replace(/,/g, " "));
 					deserializeShadowRoots(document);
 					document.querySelectorAll(NOTE_TAGNAME).forEach(containerElement => attachNoteListeners(containerElement, true));
-					document.documentElement.appendChild(getStyleElement(HIGHLIGHTS_WEB_STYLESHEET));
+					insertHighlightStylesheet(document);
 					maskPageElement = getMaskElement(PAGE_MASK_CLASS, PAGE_MASK_CONTAINER_CLASS);
 					maskNoteElement = getMaskElement(NOTE_MASK_CLASS);
 					document.documentElement.onmousedown = onMouseDown;
@@ -1288,7 +1289,7 @@ pre code {
 			await waitResourcesLoad();
 			reflowNotes();
 			document.querySelectorAll(NOTE_TAGNAME).forEach(containerElement => attachNoteListeners(containerElement, true));
-			document.documentElement.appendChild(getStyleElement(HIGHLIGHTS_WEB_STYLESHEET));
+			insertHighlightStylesheet(document);
 			maskPageElement = getMaskElement(PAGE_MASK_CLASS, PAGE_MASK_CONTAINER_CLASS);
 			maskNoteElement = getMaskElement(NOTE_MASK_CLASS);
 			document.documentElement.onmousedown = onMouseDown;
@@ -2028,7 +2029,7 @@ pre code {
 					element.setAttribute("href", href.substring(document.baseURI.length));
 				}
 			});
-			document.documentElement.appendChild(getStyleElement(HIGHLIGHTS_WEB_STYLESHEET));
+			insertHighlightStylesheet(document);
 			maskPageElement = getMaskElement(PAGE_MASK_CLASS, PAGE_MASK_CONTAINER_CLASS);
 			maskNoteElement = getMaskElement(NOTE_MASK_CLASS);
 			reflowNotes();
@@ -2051,6 +2052,14 @@ pre code {
 			}
 		}
 
+		function insertHighlightStylesheet(doc) {
+			if (!doc.querySelector("." + HIGHLIGHTS_STYLESHEET_CLASS)) {
+				const styleheetHighlights = getStyleElement(HIGHLIGHTS_WEB_STYLESHEET);
+				styleheetHighlights.classList.add(HIGHLIGHTS_STYLESHEET_CLASS);
+				doc.documentElement.appendChild(styleheetHighlights);
+			}
+		}
+
 		function getContent(compressHTML, updatedResources) {
 			unhighlightCutElement();
 			serializeShadowRoots(document);
@@ -2064,7 +2073,7 @@ pre code {
 				element.textContent = element.getAttribute(DISABLED_NOSCRIPT_ATTRIBUTE_NAME);
 				element.removeAttribute(DISABLED_NOSCRIPT_ATTRIBUTE_NAME);
 			});
-			doc.querySelectorAll("." + MASK_CLASS + ", " + singlefile.helper.INFOBAR_TAGNAME + ", ." + REMOVED_CONTENT_CLASS).forEach(maskElement => maskElement.remove());
+			doc.querySelectorAll("." + MASK_CLASS + ", " + singlefile.helper.INFOBAR_TAGNAME + ", ." + REMOVED_CONTENT_CLASS).forEach(element => element.remove());
 			if (includeInfobar) {
 				singlefile.helper.appendInfobar(doc, singlefile.helper.extractInfobarData(doc));
 			}

Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
lib/single-file-extension.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
lib/single-file.js


+ 104 - 98
package-lock.json

@@ -9,8 +9,8 @@
 			"version": "1.1.40",
 			"license": "AGPL-3.0-or-later",
 			"dependencies": {
-				"single-file-cli": "1.1.49",
-				"single-file-core": "1.3.18"
+				"single-file-cli": "1.1.50",
+				"single-file-core": "1.3.21"
 			},
 			"bin": {
 				"single-file": "cli/single-file"
@@ -106,9 +106,9 @@
 			"dev": true
 		},
 		"node_modules/@jridgewell/trace-mapping": {
-			"version": "0.3.21",
-			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.21.tgz",
-			"integrity": "sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==",
+			"version": "0.3.22",
+			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz",
+			"integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==",
 			"dev": true,
 			"dependencies": {
 				"@jridgewell/resolve-uri": "^3.1.0",
@@ -116,9 +116,9 @@
 			}
 		},
 		"node_modules/@puppeteer/browsers": {
-			"version": "1.8.0",
-			"resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.8.0.tgz",
-			"integrity": "sha512-TkRHIV6k2D8OlUe8RtG+5jgOF/H98Myx0M6AOafC8DdNVOFiBSFa5cpRDtpm8LXOa9sVwe0+e6Q3FC56X/DZfg==",
+			"version": "2.0.0",
+			"resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.0.0.tgz",
+			"integrity": "sha512-3PS82/5+tnpEaUWonjAFFvlf35QHF15xqyGd34GBa5oP5EPVfFXRsbSxIGYf1M+vZlqBZ3oxT1kRg9OYhtt8ng==",
 			"dependencies": {
 				"debug": "4.3.4",
 				"extract-zip": "2.0.1",
@@ -132,7 +132,7 @@
 				"browsers": "lib/cjs/main-cli.js"
 			},
 			"engines": {
-				"node": ">=16.3.0"
+				"node": ">=18"
 			}
 		},
 		"node_modules/@rollup/plugin-node-resolve": {
@@ -194,9 +194,9 @@
 			"dev": true
 		},
 		"node_modules/@types/node": {
-			"version": "20.11.5",
-			"resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz",
-			"integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==",
+			"version": "20.11.17",
+			"resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.17.tgz",
+			"integrity": "sha512-QmgQZGWu1Yw9TDyAP9ZzpFJKynYNeOvwMJmaxABfieQoVoiVOS6MN1WSpqpRcbeA5+RW82kraAVxCCJg+780Qw==",
 			"devOptional": true,
 			"dependencies": {
 				"undici-types": "~5.26.4"
@@ -277,15 +277,21 @@
 			"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
 		},
 		"node_modules/b4a": {
-			"version": "1.6.4",
-			"resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz",
-			"integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw=="
+			"version": "1.6.6",
+			"resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz",
+			"integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg=="
 		},
 		"node_modules/balanced-match": {
 			"version": "1.0.2",
 			"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
 			"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
 		},
+		"node_modules/bare-events": {
+			"version": "2.2.0",
+			"resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.2.0.tgz",
+			"integrity": "sha512-Yyyqff4PIFfSuthCZqLlPISTWHmnQxoPuAvkmgzsJEmG3CesdIv6Xweayl0JkCZJSB2yYIdJyEz97tpxNhgjbg==",
+			"optional": true
+		},
 		"node_modules/base64-js": {
 			"version": "1.5.1",
 			"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
@@ -386,12 +392,12 @@
 			}
 		},
 		"node_modules/chromium-bidi": {
-			"version": "0.4.33",
-			"resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.33.tgz",
-			"integrity": "sha512-IxoFM5WGQOIAd95qrSXzJUv4eXIrh+RvU3rwwqIiwYuvfE7U/Llj4fejbsJnjJMUYCuGtVQsY2gv7oGl4aTNSQ==",
+			"version": "0.5.8",
+			"resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.5.8.tgz",
+			"integrity": "sha512-blqh+1cEQbHBKmok3rVJkBlBxt9beKBgOsxbFgs7UJcoVbbeZ+K7+6liAsjgpc8l1Xd55cQUy14fXZdGSb4zIw==",
 			"dependencies": {
 				"mitt": "3.0.1",
-				"urlpattern-polyfill": "9.0.0"
+				"urlpattern-polyfill": "10.0.0"
 			},
 			"peerDependencies": {
 				"devtools-protocol": "*"
@@ -461,14 +467,14 @@
 			}
 		},
 		"node_modules/cssstyle": {
-			"version": "3.0.0",
-			"resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-3.0.0.tgz",
-			"integrity": "sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg==",
+			"version": "4.0.1",
+			"resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.0.1.tgz",
+			"integrity": "sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==",
 			"dependencies": {
 				"rrweb-cssom": "^0.6.0"
 			},
 			"engines": {
-				"node": ">=14"
+				"node": ">=18"
 			}
 		},
 		"node_modules/data-uri-to-buffer": {
@@ -543,9 +549,9 @@
 			}
 		},
 		"node_modules/devtools-protocol": {
-			"version": "0.0.1203626",
-			"resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1203626.tgz",
-			"integrity": "sha512-nEzHZteIUZfGCZtTiS1fRpC8UZmsfD1SiyPvaUNvS13dvKf666OAm8YTi0+Ca3n1nLEyu49Cy4+dPWpaHFJk9g=="
+			"version": "0.0.1232444",
+			"resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1232444.tgz",
+			"integrity": "sha512-pM27vqEfxSxRkTMnF+XCmxSEb6duO5R+t8A9DEEJgy4Wz2RVanje2mmj99B6A3zv2r/qGfYlOvYznUhuokizmg=="
 		},
 		"node_modules/emoji-regex": {
 			"version": "8.0.0",
@@ -572,9 +578,9 @@
 			}
 		},
 		"node_modules/escalade": {
-			"version": "3.1.1",
-			"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
-			"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+			"version": "3.1.2",
+			"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz",
+			"integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==",
 			"engines": {
 				"node": ">=6"
 			}
@@ -806,9 +812,9 @@
 			}
 		},
 		"node_modules/hasown": {
-			"version": "2.0.0",
-			"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
-			"integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==",
+			"version": "2.0.1",
+			"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz",
+			"integrity": "sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==",
 			"dev": true,
 			"dependencies": {
 				"function-bind": "^1.1.2"
@@ -906,6 +912,18 @@
 			"resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz",
 			"integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg=="
 		},
+		"node_modules/ip-address": {
+			"version": "9.0.5",
+			"resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz",
+			"integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==",
+			"dependencies": {
+				"jsbn": "1.1.0",
+				"sprintf-js": "^1.1.3"
+			},
+			"engines": {
+				"node": ">= 12"
+			}
+		},
 		"node_modules/is-builtin-module": {
 			"version": "3.2.1",
 			"resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz",
@@ -998,12 +1016,17 @@
 			"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
 			"dev": true
 		},
+		"node_modules/jsbn": {
+			"version": "1.1.0",
+			"resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz",
+			"integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A=="
+		},
 		"node_modules/jsdom": {
-			"version": "23.0.0",
-			"resolved": "https://registry.npmjs.org/jsdom/-/jsdom-23.0.0.tgz",
-			"integrity": "sha512-cbL/UCtohJguhFC7c2/hgW6BeZCNvP7URQGnx9tSJRYKCdnfbfWOrtuLTMfiB2VxKsx5wPHVsh/J0aBy9lIIhQ==",
+			"version": "24.0.0",
+			"resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.0.0.tgz",
+			"integrity": "sha512-UDS2NayCvmXSXVP6mpTj+73JnNQadZlr9N68189xib2tx5Mls7swlTNao26IoHv46BZJFvXygyRtyXd1feAk1A==",
 			"dependencies": {
-				"cssstyle": "^3.0.0",
+				"cssstyle": "^4.0.1",
 				"data-urls": "^5.0.0",
 				"decimal.js": "^10.4.3",
 				"form-data": "^4.0.0",
@@ -1022,14 +1045,14 @@
 				"whatwg-encoding": "^3.1.1",
 				"whatwg-mimetype": "^4.0.0",
 				"whatwg-url": "^14.0.0",
-				"ws": "^8.14.2",
+				"ws": "^8.16.0",
 				"xml-name-validator": "^5.0.0"
 			},
 			"engines": {
 				"node": ">=18"
 			},
 			"peerDependencies": {
-				"canvas": "^3.0.0"
+				"canvas": "^2.11.2"
 			},
 			"peerDependenciesMeta": {
 				"canvas": {
@@ -1319,39 +1342,19 @@
 			}
 		},
 		"node_modules/puppeteer-core": {
-			"version": "21.5.2",
-			"resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.5.2.tgz",
-			"integrity": "sha512-v4T0cWnujSKs+iEfmb8ccd7u4/x8oblEyKqplqKnJ582Kw8PewYAWvkH4qUWhitN3O2q9RF7dzkvjyK5HbzjLA==",
+			"version": "22.0.0",
+			"resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-22.0.0.tgz",
+			"integrity": "sha512-S3s91rLde0A86PWVeNY82h+P0fdS7CTiNWAicCVH/bIspRP4nS2PnO5j+VTFqCah0ZJizGzpVPAmxVYbLxTc9w==",
 			"dependencies": {
-				"@puppeteer/browsers": "1.8.0",
-				"chromium-bidi": "0.4.33",
+				"@puppeteer/browsers": "2.0.0",
+				"chromium-bidi": "0.5.8",
 				"cross-fetch": "4.0.0",
 				"debug": "4.3.4",
-				"devtools-protocol": "0.0.1203626",
-				"ws": "8.14.2"
+				"devtools-protocol": "0.0.1232444",
+				"ws": "8.16.0"
 			},
 			"engines": {
-				"node": ">=16.13.2"
-			}
-		},
-		"node_modules/puppeteer-core/node_modules/ws": {
-			"version": "8.14.2",
-			"resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz",
-			"integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==",
-			"engines": {
-				"node": ">=10.0.0"
-			},
-			"peerDependencies": {
-				"bufferutil": "^4.0.1",
-				"utf-8-validate": ">=5.0.2"
-			},
-			"peerDependenciesMeta": {
-				"bufferutil": {
-					"optional": true
-				},
-				"utf-8-validate": {
-					"optional": true
-				}
+				"node": ">=18"
 			}
 		},
 		"node_modules/querystringify": {
@@ -1509,9 +1512,9 @@
 			}
 		},
 		"node_modules/selenium-webdriver": {
-			"version": "4.15.0",
-			"resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.15.0.tgz",
-			"integrity": "sha512-BNG1bq+KWiBGHcJ/wULi0eKY0yaDqFIbEmtbsYJmfaEghdCkXBsx1akgOorhNwjBipOr0uwpvNXqT6/nzl+zjg==",
+			"version": "4.17.0",
+			"resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.17.0.tgz",
+			"integrity": "sha512-e2E+2XBlGepzwgFbyQfSwo9Cbj6G5fFfs9MzAS00nC99EewmcS2rwn2MwtgfP7I5p1e7DYv4HQJXtWedsu6DvA==",
 			"dependencies": {
 				"jszip": "^3.10.1",
 				"tmp": "^0.2.1",
@@ -1536,16 +1539,16 @@
 			"integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA=="
 		},
 		"node_modules/single-file-cli": {
-			"version": "1.1.49",
-			"resolved": "https://registry.npmjs.org/single-file-cli/-/single-file-cli-1.1.49.tgz",
-			"integrity": "sha512-aSiLxb46HhZnjz4LvnOxKOwte3a009+Q5u3n7IP7LRXPcN1hYeypd0GsrFZ6UaHglOcdjaLlFnDj8BGPlFMOOQ==",
+			"version": "1.1.50",
+			"resolved": "https://registry.npmjs.org/single-file-cli/-/single-file-cli-1.1.50.tgz",
+			"integrity": "sha512-mpcX0Agz13quTMV3wsg5bEwGS34uI4+cdv1cSKmU6fcyL/z59Fz5360rdygVXmlReH9Zf+mrAQuW9z61WLB7IA==",
 			"dependencies": {
 				"file-url": "3.0.0",
 				"iconv-lite": "0.6.3",
-				"jsdom": "23.0.0",
-				"puppeteer-core": "21.5.2",
-				"selenium-webdriver": "4.15.0",
-				"single-file-core": "1.3.18",
+				"jsdom": "24.0.0",
+				"puppeteer-core": "22.0.0",
+				"selenium-webdriver": "4.17.0",
+				"single-file-core": "1.3.21",
 				"strong-data-uri": "1.0.6",
 				"yargs": "17.7.2"
 			},
@@ -1554,9 +1557,9 @@
 			}
 		},
 		"node_modules/single-file-core": {
-			"version": "1.3.18",
-			"resolved": "https://registry.npmjs.org/single-file-core/-/single-file-core-1.3.18.tgz",
-			"integrity": "sha512-kG1GWDF41cTB/tMPZpgoGbX9bXMWXIWap1tRTGnVjid5W9YWj6iIGGg4RHm9Pcw3ki11jb6S7BI2JgzQBfrwaQ=="
+			"version": "1.3.21",
+			"resolved": "https://registry.npmjs.org/single-file-core/-/single-file-core-1.3.21.tgz",
+			"integrity": "sha512-miYD64EdyPbGks16zc9aI968XSYu3ww4nApSufqn6w0GMzr3AESO6CTwXvTmPGQIOIbUxgWk9fceSbTyzI87Mw=="
 		},
 		"node_modules/smart-buffer": {
 			"version": "4.2.0",
@@ -1568,15 +1571,15 @@
 			}
 		},
 		"node_modules/socks": {
-			"version": "2.7.1",
-			"resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz",
-			"integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==",
+			"version": "2.7.3",
+			"resolved": "https://registry.npmjs.org/socks/-/socks-2.7.3.tgz",
+			"integrity": "sha512-vfuYK48HXCTFD03G/1/zkIls3Ebr2YNa4qU9gHDZdblHLiqhJrJGkY3+0Nx0JpN9qBhJbVObc1CNciT1bIZJxw==",
 			"dependencies": {
-				"ip": "^2.0.0",
+				"ip-address": "^9.0.5",
 				"smart-buffer": "^4.2.0"
 			},
 			"engines": {
-				"node": ">= 10.13.0",
+				"node": ">= 10.0.0",
 				"npm": ">= 3.0.0"
 			}
 		},
@@ -1593,11 +1596,6 @@
 				"node": ">= 14"
 			}
 		},
-		"node_modules/socks/node_modules/ip": {
-			"version": "2.0.0",
-			"resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz",
-			"integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ=="
-		},
 		"node_modules/source-map": {
 			"version": "0.6.1",
 			"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@@ -1617,13 +1615,21 @@
 				"source-map": "^0.6.0"
 			}
 		},
+		"node_modules/sprintf-js": {
+			"version": "1.1.3",
+			"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
+			"integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA=="
+		},
 		"node_modules/streamx": {
-			"version": "2.15.6",
-			"resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.6.tgz",
-			"integrity": "sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==",
+			"version": "2.15.8",
+			"resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.8.tgz",
+			"integrity": "sha512-6pwMeMY/SuISiRsuS8TeIrAzyFbG5gGPHFQsYjUr/pbBadaL1PCWmzKw+CHZSwainfvcF6Si6cVLq4XTEwswFQ==",
 			"dependencies": {
 				"fast-fifo": "^1.1.0",
 				"queue-tick": "^1.0.1"
+			},
+			"optionalDependencies": {
+				"bare-events": "^2.2.0"
 			}
 		},
 		"node_modules/string_decoder": {
@@ -1714,9 +1720,9 @@
 			}
 		},
 		"node_modules/tar-stream": {
-			"version": "3.1.6",
-			"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz",
-			"integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==",
+			"version": "3.1.7",
+			"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz",
+			"integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==",
 			"dependencies": {
 				"b4a": "^1.6.4",
 				"fast-fifo": "^1.2.0",
@@ -1836,9 +1842,9 @@
 			}
 		},
 		"node_modules/urlpattern-polyfill": {
-			"version": "9.0.0",
-			"resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-9.0.0.tgz",
-			"integrity": "sha512-WHN8KDQblxd32odxeIgo83rdVDE2bvdkb86it7bMhYZwWKJz0+O0RK/eZiHYnM+zgt/U7hAHOlCQGfjjvSkw2g=="
+			"version": "10.0.0",
+			"resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz",
+			"integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg=="
 		},
 		"node_modules/util-deprecate": {
 			"version": "1.0.2",

+ 2 - 2
package.json

@@ -12,8 +12,8 @@
 		"single-file": "./cli/single-file"
 	},
 	"dependencies": {
-		"single-file-core": "1.3.18",
-		"single-file-cli": "1.1.49"
+		"single-file-core": "1.3.21",
+		"single-file-cli": "1.1.50"
 	},
 	"devDependencies": {
 		"@rollup/plugin-node-resolve": "15.0.1",

Някои файлове не бяха показани, защото твърде много файлове са промени