mirror of
https://github.com/yt-dlp/ejs.git
synced 2026-06-26 00:01:54 +00:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cd4e87f52e |
@@ -123,7 +123,7 @@ function createSolver(
|
|||||||
): ESTree.ArrowFunctionExpression {
|
): ESTree.ArrowFunctionExpression {
|
||||||
return generateArrowFunction(`
|
return generateArrowFunction(`
|
||||||
({sig, n}) => {
|
({sig, n}) => {
|
||||||
const url = (${generate(expression)})("https://youtube.com/watch?v=yt-dlp-wins", "s", sig);
|
const url = (${generate(expression)})("https://youtube.com/watch?v=yt-dlp-wins", "s", sig ? encodeURIComponent(sig) : undefined);
|
||||||
url.set("n", n);
|
url.set("n", n);
|
||||||
const proto = Object.getPrototypeOf(url);
|
const proto = Object.getPrototypeOf(url);
|
||||||
const keys = Object.keys(proto).concat(Object.getOwnPropertyNames(proto));
|
const keys = Object.keys(proto).concat(Object.getOwnPropertyNames(proto));
|
||||||
|
|||||||
@@ -166,6 +166,7 @@ function multiTry(
|
|||||||
return generateArrowFunction(`
|
return generateArrowFunction(`
|
||||||
(_input) => {
|
(_input) => {
|
||||||
const _results = new Set();
|
const _results = new Set();
|
||||||
|
const errors = [];
|
||||||
for (const _generator of ${generate({
|
for (const _generator of ${generate({
|
||||||
type: "ArrayExpression",
|
type: "ArrayExpression",
|
||||||
elements: generators,
|
elements: generators,
|
||||||
@@ -173,10 +174,11 @@ function multiTry(
|
|||||||
try {
|
try {
|
||||||
_results.add(_generator(_input));
|
_results.add(_generator(_input));
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
errors.push(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!_results.size) {
|
if (!_results.size) {
|
||||||
throw "no solutions";
|
throw \`no solutions: \${errors.join(", ")}\`;
|
||||||
}
|
}
|
||||||
if (_results.size !== 1) {
|
if (_results.size !== 1) {
|
||||||
throw \`invalid solutions: \${[..._results].map(x => JSON.stringify(x)).join(", ")}\`;
|
throw \`invalid solutions: \${[..._results].map(x => JSON.stringify(x)).join(", ")}\`;
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ export const tests: {
|
|||||||
n: [
|
n: [
|
||||||
{ input: "IlLiA21ny7gqA2m4p37", expected: "9nRTxrbM1f0yHg" },
|
{ input: "IlLiA21ny7gqA2m4p37", expected: "9nRTxrbM1f0yHg" },
|
||||||
{ input: "eabGFpsUKuWHXGh6FR4", expected: "izmYqDEY6kl7Sg" },
|
{ input: "eabGFpsUKuWHXGh6FR4", expected: "izmYqDEY6kl7Sg" },
|
||||||
|
{ input: "eabGF/ps%UK=uWHXGh6FR4", expected: "LACmqlhaBpiPlgE-a" },
|
||||||
],
|
],
|
||||||
sig: [
|
sig: [
|
||||||
{
|
{
|
||||||
@@ -49,6 +50,12 @@ export const tests: {
|
|||||||
expected:
|
expected:
|
||||||
"NJAJEij0EwRgIhAI0KExTgjfPk-MPM9MAdzyyPRt=BM8-XO5tm5hzMCSVpAiEAv7eP3CURqZNSPow8BXXAoazVoXgeMP7gH9BdylHCwgw=gwzl",
|
"NJAJEij0EwRgIhAI0KExTgjfPk-MPM9MAdzyyPRt=BM8-XO5tm5hzMCSVpAiEAv7eP3CURqZNSPow8BXXAoazVoXgeMP7gH9BdylHCwgw=gwzl",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
input:
|
||||||
|
"\x00\x01\x02%\x03\x04\x05\x06\x07\x08\x09\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x40\x41\x42\x43\x44\x45\x46\x47\x48\x49",
|
||||||
|
expected:
|
||||||
|
"\x00\x01\x02%\x03\x04\x05\x06\x07\x08\x09\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x40\x41\x42\x49\x44\x45\x46\x47\x48\x43",
|
||||||
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user