mirror of
https://github.com/bytedream/stream-bypass.git
synced 2025-06-27 10:30:31 +02:00
Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
927a4e3ae3 | |||
5926177920 | |||
9a29316641 | |||
c300125f64 | |||
59f2ffec57 | |||
6dff691c25 | |||
c4085f9ac8 | |||
422702b16f | |||
c3dad3681c | |||
6eb3259ec5 | |||
68e445a738 |
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"useTabs": true,
|
|
||||||
"singleQuote": true,
|
|
||||||
"trailingComma": "none",
|
|
||||||
"printWidth": 100,
|
|
||||||
"plugins": ["prettier-plugin-svelte"],
|
|
||||||
"overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }]
|
|
||||||
}
|
|
17
.prettierrc.cjs
Normal file
17
.prettierrc.cjs
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
// @ts-check
|
||||||
|
|
||||||
|
/** @type {import("prettier").Config} */
|
||||||
|
module.exports = {
|
||||||
|
useTabs: true,
|
||||||
|
singleQuote: true,
|
||||||
|
trailingComma: 'none',
|
||||||
|
printWidth: 100,
|
||||||
|
plugins: ['prettier-plugin-svelte', '@ianvs/prettier-plugin-sort-imports'],
|
||||||
|
/* prettier-plugin-svelte */
|
||||||
|
overrides: [{ files: '*.svelte', options: { parser: 'svelte' } }],
|
||||||
|
/* @ianvs/prettier-plugin-sort-imports */
|
||||||
|
importOrder: ['^~/(.*)$', '^./(.*)$', ''],
|
||||||
|
importOrderParserPlugins: ['typescript'],
|
||||||
|
importOrderTypeScriptVersion: '5.0.0',
|
||||||
|
importOrderCaseSensitive: false
|
||||||
|
};
|
@ -85,6 +85,8 @@ The best way to install the extension are the official browser extension stores:
|
|||||||
| [doodstream.com](doodstream.com) / [dood.pm](https://dood.pm) | ✔ | ⚠ (redirect probably required) |
|
| [doodstream.com](doodstream.com) / [dood.pm](https://dood.pm) | ✔ | ⚠ (redirect probably required) |
|
||||||
| [filemoon.to](https://filemoon.to) | ✔ | ✔ |
|
| [filemoon.to](https://filemoon.to) | ✔ | ✔ |
|
||||||
| [goodstream.uno](https://goodstream.uno) | ✔ | ✔ |
|
| [goodstream.uno](https://goodstream.uno) | ✔ | ✔ |
|
||||||
|
| [kwik.cx](https://kwik.cx) | ✔ | ✔ |
|
||||||
|
| [loadx.ws](https://loadx.ws) | ✔ | ❌ (background request always required) |
|
||||||
| [luluvdo.com](https://luluvdo.com) | ✔ | ❌ (background request always required) |
|
| [luluvdo.com](https://luluvdo.com) | ✔ | ❌ (background request always required) |
|
||||||
| [mixdrop.co](https://mixdrop.co) | ✔ ️ | ✔ |
|
| [mixdrop.co](https://mixdrop.co) | ✔ ️ | ✔ |
|
||||||
| [mp4upload.com](https://mp4upload.com) | ✔ | ✔ |
|
| [mp4upload.com](https://mp4upload.com) | ✔ | ✔ |
|
||||||
@ -98,7 +100,6 @@ The best way to install the extension are the official browser extension stores:
|
|||||||
| [vidoza.net](https://vidoza.net) | ✔ | ✔ |
|
| [vidoza.net](https://vidoza.net) | ✔ | ✔ |
|
||||||
| [voe.sx](https://voe.sx) | ✔ | ❌ (redirect always required) |
|
| [voe.sx](https://voe.sx) | ✔ | ❌ (redirect always required) |
|
||||||
| [vupload.com](https://vupload.com) | ✔ | ✔ |
|
| [vupload.com](https://vupload.com) | ✔ | ✔ |
|
||||||
| [kwik.cx](https://kwik.cx) | ✔ | ✔ |
|
|
||||||
|
|
||||||
- ✔️: Everything ok.
|
- ✔️: Everything ok.
|
||||||
- ⚠: Works with limitations.
|
- ⚠: Works with limitations.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import prettier from 'eslint-config-prettier';
|
|
||||||
import js from '@eslint/js';
|
import js from '@eslint/js';
|
||||||
|
import prettier from 'eslint-config-prettier';
|
||||||
import svelte from 'eslint-plugin-svelte';
|
import svelte from 'eslint-plugin-svelte';
|
||||||
import ts from 'typescript-eslint';
|
import ts from 'typescript-eslint';
|
||||||
|
|
||||||
|
431
package-lock.json
generated
431
package-lock.json
generated
@ -1,33 +1,34 @@
|
|||||||
{
|
{
|
||||||
"name": "stream-bypass",
|
"name": "stream-bypass",
|
||||||
"version": "3.1.2",
|
"version": "3.1.5",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "stream-bypass",
|
"name": "stream-bypass",
|
||||||
"version": "3.1.2",
|
"version": "3.1.5",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@ianvs/prettier-plugin-sort-imports": "^4.4.1",
|
||||||
"@samrum/vite-plugin-web-extension": "^5.1.1",
|
"@samrum/vite-plugin-web-extension": "^5.1.1",
|
||||||
"@sveltejs/vite-plugin-svelte": "^5.0.3",
|
"@sveltejs/vite-plugin-svelte": "^5.0.3",
|
||||||
"@tsconfig/svelte": "^5.0.4",
|
"@tsconfig/svelte": "^5.0.4",
|
||||||
"@types/chrome": "^0.0.313",
|
"@types/chrome": "^0.0.315",
|
||||||
"@types/firefox-webext-browser": "^120.0.4",
|
"@types/firefox-webext-browser": "^120.0.4",
|
||||||
"eslint": "^9.23.0",
|
"eslint": "^9.24.0",
|
||||||
"eslint-config-prettier": "^10.1.1",
|
"eslint-config-prettier": "^10.1.2",
|
||||||
"eslint-plugin-svelte": "^3.5.0",
|
"eslint-plugin-svelte": "^3.5.1",
|
||||||
"hls.js": "^1.6.0",
|
"hls.js": "^1.6.2",
|
||||||
"prettier": "^3.5.3",
|
"prettier": "^3.5.3",
|
||||||
"prettier-plugin-svelte": "^3.3.3",
|
"prettier-plugin-svelte": "^3.3.3",
|
||||||
"sass": "^1.86.2",
|
"sass": "^1.86.3",
|
||||||
"svelte": "^5.25.6",
|
"svelte": "^5.27.0",
|
||||||
"svelte-check": "^4.1.5",
|
"svelte-check": "^4.1.6",
|
||||||
"svelte-preprocess": "^6.0.3",
|
"svelte-preprocess": "^6.0.3",
|
||||||
"tslib": "^2.8.1",
|
"tslib": "^2.8.1",
|
||||||
"typescript": "^5.8.2",
|
"typescript": "^5.8.3",
|
||||||
"typescript-eslint": "^8.29.0",
|
"typescript-eslint": "^8.30.1",
|
||||||
"vite": "^6.2.5",
|
"vite": "^6.3.0",
|
||||||
"web-ext": "^8.5.0"
|
"web-ext": "^8.5.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -60,6 +61,33 @@
|
|||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@babel/generator": {
|
||||||
|
"version": "7.27.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz",
|
||||||
|
"integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/parser": "^7.27.0",
|
||||||
|
"@babel/types": "^7.27.0",
|
||||||
|
"@jridgewell/gen-mapping": "^0.3.5",
|
||||||
|
"@jridgewell/trace-mapping": "^0.3.25",
|
||||||
|
"jsesc": "^3.0.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@babel/helper-string-parser": {
|
||||||
|
"version": "7.25.9",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
|
||||||
|
"integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@babel/helper-validator-identifier": {
|
"node_modules/@babel/helper-validator-identifier": {
|
||||||
"version": "7.25.9",
|
"version": "7.25.9",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
|
||||||
@ -70,6 +98,22 @@
|
|||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@babel/parser": {
|
||||||
|
"version": "7.27.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz",
|
||||||
|
"integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/types": "^7.27.0"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"parser": "bin/babel-parser.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@babel/runtime": {
|
"node_modules/@babel/runtime": {
|
||||||
"version": "7.26.10",
|
"version": "7.26.10",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.10.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.10.tgz",
|
||||||
@ -83,6 +127,64 @@
|
|||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@babel/template": {
|
||||||
|
"version": "7.27.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz",
|
||||||
|
"integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/code-frame": "^7.26.2",
|
||||||
|
"@babel/parser": "^7.27.0",
|
||||||
|
"@babel/types": "^7.27.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@babel/traverse": {
|
||||||
|
"version": "7.27.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz",
|
||||||
|
"integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/code-frame": "^7.26.2",
|
||||||
|
"@babel/generator": "^7.27.0",
|
||||||
|
"@babel/parser": "^7.27.0",
|
||||||
|
"@babel/template": "^7.27.0",
|
||||||
|
"@babel/types": "^7.27.0",
|
||||||
|
"debug": "^4.3.1",
|
||||||
|
"globals": "^11.1.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@babel/traverse/node_modules/globals": {
|
||||||
|
"version": "11.12.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
|
||||||
|
"integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@babel/types": {
|
||||||
|
"version": "7.27.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz",
|
||||||
|
"integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/helper-string-parser": "^7.25.9",
|
||||||
|
"@babel/helper-validator-identifier": "^7.25.9"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@devicefarmer/adbkit": {
|
"node_modules/@devicefarmer/adbkit": {
|
||||||
"version": "3.3.8",
|
"version": "3.3.8",
|
||||||
"resolved": "https://registry.npmjs.org/@devicefarmer/adbkit/-/adbkit-3.3.8.tgz",
|
"resolved": "https://registry.npmjs.org/@devicefarmer/adbkit/-/adbkit-3.3.8.tgz",
|
||||||
@ -611,9 +713,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@eslint/config-array": {
|
"node_modules/@eslint/config-array": {
|
||||||
"version": "0.19.2",
|
"version": "0.20.0",
|
||||||
"resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.2.tgz",
|
"resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz",
|
||||||
"integrity": "sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==",
|
"integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@ -673,9 +775,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@eslint/js": {
|
"node_modules/@eslint/js": {
|
||||||
"version": "9.23.0",
|
"version": "9.24.0",
|
||||||
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.23.0.tgz",
|
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.24.0.tgz",
|
||||||
"integrity": "sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==",
|
"integrity": "sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
@ -817,6 +919,29 @@
|
|||||||
"url": "https://github.com/sponsors/nzakas"
|
"url": "https://github.com/sponsors/nzakas"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@ianvs/prettier-plugin-sort-imports": {
|
||||||
|
"version": "4.4.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@ianvs/prettier-plugin-sort-imports/-/prettier-plugin-sort-imports-4.4.1.tgz",
|
||||||
|
"integrity": "sha512-F0/Hrcfpy8WuxlQyAWJTEren/uxKhYonOGY4OyWmwRdeTvkh9mMSCxowZLjNkhwi/2ipqCgtXwwOk7tW0mWXkA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/generator": "^7.26.2",
|
||||||
|
"@babel/parser": "^7.26.2",
|
||||||
|
"@babel/traverse": "^7.25.9",
|
||||||
|
"@babel/types": "^7.26.0",
|
||||||
|
"semver": "^7.5.2"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@vue/compiler-sfc": "2.7.x || 3.x",
|
||||||
|
"prettier": "2 || 3"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@vue/compiler-sfc": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@jridgewell/gen-mapping": {
|
"node_modules/@jridgewell/gen-mapping": {
|
||||||
"version": "0.3.8",
|
"version": "0.3.8",
|
||||||
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz",
|
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz",
|
||||||
@ -2117,9 +2242,9 @@
|
|||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/@types/chrome": {
|
"node_modules/@types/chrome": {
|
||||||
"version": "0.0.313",
|
"version": "0.0.315",
|
||||||
"resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.0.313.tgz",
|
"resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.0.315.tgz",
|
||||||
"integrity": "sha512-9R5T7gTaYZhkxlu+Ho4wk9FL+y/werWQY2yjGWSqCuiTsqS7nL/BE5UMTP6rU7J+oIG2FRKqrEycHhJATeltVA==",
|
"integrity": "sha512-Oy1dYWkr6BCmgwBtOngLByCHstQ3whltZg7/7lubgIZEYvKobDneqplgc6LKERNRBwckFviV4UU5AZZNUFrJ4A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@ -2210,17 +2335,17 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/eslint-plugin": {
|
"node_modules/@typescript-eslint/eslint-plugin": {
|
||||||
"version": "8.29.0",
|
"version": "8.30.1",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.29.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.30.1.tgz",
|
||||||
"integrity": "sha512-PAIpk/U7NIS6H7TEtN45SPGLQaHNgB7wSjsQV/8+KYokAb2T/gloOA/Bee2yd4/yKVhPKe5LlaUGhAZk5zmSaQ==",
|
"integrity": "sha512-v+VWphxMjn+1t48/jO4t950D6KR8JaJuNXzi33Ve6P8sEmPr5k6CEXjdGwT6+LodVnEa91EQCtwjWNUCPweo+Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@eslint-community/regexpp": "^4.10.0",
|
"@eslint-community/regexpp": "^4.10.0",
|
||||||
"@typescript-eslint/scope-manager": "8.29.0",
|
"@typescript-eslint/scope-manager": "8.30.1",
|
||||||
"@typescript-eslint/type-utils": "8.29.0",
|
"@typescript-eslint/type-utils": "8.30.1",
|
||||||
"@typescript-eslint/utils": "8.29.0",
|
"@typescript-eslint/utils": "8.30.1",
|
||||||
"@typescript-eslint/visitor-keys": "8.29.0",
|
"@typescript-eslint/visitor-keys": "8.30.1",
|
||||||
"graphemer": "^1.4.0",
|
"graphemer": "^1.4.0",
|
||||||
"ignore": "^5.3.1",
|
"ignore": "^5.3.1",
|
||||||
"natural-compare": "^1.4.0",
|
"natural-compare": "^1.4.0",
|
||||||
@ -2240,16 +2365,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/parser": {
|
"node_modules/@typescript-eslint/parser": {
|
||||||
"version": "8.29.0",
|
"version": "8.30.1",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.29.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.30.1.tgz",
|
||||||
"integrity": "sha512-8C0+jlNJOwQso2GapCVWWfW/rzaq7Lbme+vGUFKE31djwNncIpgXD7Cd4weEsDdkoZDjH0lwwr3QDQFuyrMg9g==",
|
"integrity": "sha512-H+vqmWwT5xoNrXqWs/fesmssOW70gxFlgcMlYcBaWNPIEWDgLa4W9nkSPmhuOgLnXq9QYgkZ31fhDyLhleCsAg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/scope-manager": "8.29.0",
|
"@typescript-eslint/scope-manager": "8.30.1",
|
||||||
"@typescript-eslint/types": "8.29.0",
|
"@typescript-eslint/types": "8.30.1",
|
||||||
"@typescript-eslint/typescript-estree": "8.29.0",
|
"@typescript-eslint/typescript-estree": "8.30.1",
|
||||||
"@typescript-eslint/visitor-keys": "8.29.0",
|
"@typescript-eslint/visitor-keys": "8.30.1",
|
||||||
"debug": "^4.3.4"
|
"debug": "^4.3.4"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
@ -2265,14 +2390,14 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/scope-manager": {
|
"node_modules/@typescript-eslint/scope-manager": {
|
||||||
"version": "8.29.0",
|
"version": "8.30.1",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.29.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.30.1.tgz",
|
||||||
"integrity": "sha512-aO1PVsq7Gm+tcghabUpzEnVSFMCU4/nYIgC2GOatJcllvWfnhrgW0ZEbnTxm36QsikmCN1K/6ZgM7fok2I7xNw==",
|
"integrity": "sha512-+C0B6ChFXZkuaNDl73FJxRYT0G7ufVPOSQkqkpM/U198wUwUFOtgo1k/QzFh1KjpBitaK7R1tgjVz6o9HmsRPg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/types": "8.29.0",
|
"@typescript-eslint/types": "8.30.1",
|
||||||
"@typescript-eslint/visitor-keys": "8.29.0"
|
"@typescript-eslint/visitor-keys": "8.30.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
||||||
@ -2283,14 +2408,14 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/type-utils": {
|
"node_modules/@typescript-eslint/type-utils": {
|
||||||
"version": "8.29.0",
|
"version": "8.30.1",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.29.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.30.1.tgz",
|
||||||
"integrity": "sha512-ahaWQ42JAOx+NKEf5++WC/ua17q5l+j1GFrbbpVKzFL/tKVc0aYY8rVSYUpUvt2hUP1YBr7mwXzx+E/DfUWI9Q==",
|
"integrity": "sha512-64uBF76bfQiJyHgZISC7vcNz3adqQKIccVoKubyQcOnNcdJBvYOILV1v22Qhsw3tw3VQu5ll8ND6hycgAR5fEA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/typescript-estree": "8.29.0",
|
"@typescript-eslint/typescript-estree": "8.30.1",
|
||||||
"@typescript-eslint/utils": "8.29.0",
|
"@typescript-eslint/utils": "8.30.1",
|
||||||
"debug": "^4.3.4",
|
"debug": "^4.3.4",
|
||||||
"ts-api-utils": "^2.0.1"
|
"ts-api-utils": "^2.0.1"
|
||||||
},
|
},
|
||||||
@ -2307,9 +2432,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/types": {
|
"node_modules/@typescript-eslint/types": {
|
||||||
"version": "8.29.0",
|
"version": "8.30.1",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.29.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.30.1.tgz",
|
||||||
"integrity": "sha512-wcJL/+cOXV+RE3gjCyl/V2G877+2faqvlgtso/ZRbTCnZazh0gXhe+7gbAnfubzN2bNsBtZjDvlh7ero8uIbzg==",
|
"integrity": "sha512-81KawPfkuulyWo5QdyG/LOKbspyyiW+p4vpn4bYO7DM/hZImlVnFwrpCTnmNMOt8CvLRr5ojI9nU1Ekpw4RcEw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
@ -2321,14 +2446,14 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/typescript-estree": {
|
"node_modules/@typescript-eslint/typescript-estree": {
|
||||||
"version": "8.29.0",
|
"version": "8.30.1",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.29.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.30.1.tgz",
|
||||||
"integrity": "sha512-yOfen3jE9ISZR/hHpU/bmNvTtBW1NjRbkSFdZOksL1N+ybPEE7UVGMwqvS6CP022Rp00Sb0tdiIkhSCe6NI8ow==",
|
"integrity": "sha512-kQQnxymiUy9tTb1F2uep9W6aBiYODgq5EMSk6Nxh4Z+BDUoYUSa029ISs5zTzKBFnexQEh71KqwjKnRz58lusQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/types": "8.29.0",
|
"@typescript-eslint/types": "8.30.1",
|
||||||
"@typescript-eslint/visitor-keys": "8.29.0",
|
"@typescript-eslint/visitor-keys": "8.30.1",
|
||||||
"debug": "^4.3.4",
|
"debug": "^4.3.4",
|
||||||
"fast-glob": "^3.3.2",
|
"fast-glob": "^3.3.2",
|
||||||
"is-glob": "^4.0.3",
|
"is-glob": "^4.0.3",
|
||||||
@ -2374,16 +2499,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/utils": {
|
"node_modules/@typescript-eslint/utils": {
|
||||||
"version": "8.29.0",
|
"version": "8.30.1",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.29.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.30.1.tgz",
|
||||||
"integrity": "sha512-gX/A0Mz9Bskm8avSWFcK0gP7cZpbY4AIo6B0hWYFCaIsz750oaiWR4Jr2CI+PQhfW1CpcQr9OlfPS+kMFegjXA==",
|
"integrity": "sha512-T/8q4R9En2tcEsWPQgB5BQ0XJVOtfARcUvOa8yJP3fh9M/mXraLxZrkCfGb6ChrO/V3W+Xbd04RacUEqk1CFEQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@eslint-community/eslint-utils": "^4.4.0",
|
"@eslint-community/eslint-utils": "^4.4.0",
|
||||||
"@typescript-eslint/scope-manager": "8.29.0",
|
"@typescript-eslint/scope-manager": "8.30.1",
|
||||||
"@typescript-eslint/types": "8.29.0",
|
"@typescript-eslint/types": "8.30.1",
|
||||||
"@typescript-eslint/typescript-estree": "8.29.0"
|
"@typescript-eslint/typescript-estree": "8.30.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
||||||
@ -2398,13 +2523,13 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/visitor-keys": {
|
"node_modules/@typescript-eslint/visitor-keys": {
|
||||||
"version": "8.29.0",
|
"version": "8.30.1",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.29.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.30.1.tgz",
|
||||||
"integrity": "sha512-Sne/pVz8ryR03NFK21VpN88dZ2FdQXOlq3VIklbrTYEt8yXtRFr9tvUhqvCeKjqYk5FSim37sHbooT6vzBTZcg==",
|
"integrity": "sha512-aEhgas7aJ6vZnNFC7K4/vMGDGyOiqWcYZPpIWrTKuTAlsvDNKy2GFDqh9smL+iq069ZvR0YzEeq0B8NJlLzjFA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/types": "8.29.0",
|
"@typescript-eslint/types": "8.30.1",
|
||||||
"eslint-visitor-keys": "^4.2.0"
|
"eslint-visitor-keys": "^4.2.0"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
@ -4026,19 +4151,19 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/eslint": {
|
"node_modules/eslint": {
|
||||||
"version": "9.23.0",
|
"version": "9.24.0",
|
||||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.23.0.tgz",
|
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.24.0.tgz",
|
||||||
"integrity": "sha512-jV7AbNoFPAY1EkFYpLq5bslU9NLNO8xnEeQXwErNibVryjk67wHVmddTBilc5srIttJDBrB0eMHKZBFbSIABCw==",
|
"integrity": "sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@eslint-community/eslint-utils": "^4.2.0",
|
"@eslint-community/eslint-utils": "^4.2.0",
|
||||||
"@eslint-community/regexpp": "^4.12.1",
|
"@eslint-community/regexpp": "^4.12.1",
|
||||||
"@eslint/config-array": "^0.19.2",
|
"@eslint/config-array": "^0.20.0",
|
||||||
"@eslint/config-helpers": "^0.2.0",
|
"@eslint/config-helpers": "^0.2.0",
|
||||||
"@eslint/core": "^0.12.0",
|
"@eslint/core": "^0.12.0",
|
||||||
"@eslint/eslintrc": "^3.3.1",
|
"@eslint/eslintrc": "^3.3.1",
|
||||||
"@eslint/js": "9.23.0",
|
"@eslint/js": "9.24.0",
|
||||||
"@eslint/plugin-kit": "^0.2.7",
|
"@eslint/plugin-kit": "^0.2.7",
|
||||||
"@humanfs/node": "^0.16.6",
|
"@humanfs/node": "^0.16.6",
|
||||||
"@humanwhocodes/module-importer": "^1.0.1",
|
"@humanwhocodes/module-importer": "^1.0.1",
|
||||||
@ -4086,26 +4211,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/eslint-compat-utils": {
|
|
||||||
"version": "0.6.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/eslint-compat-utils/-/eslint-compat-utils-0.6.4.tgz",
|
|
||||||
"integrity": "sha512-/u+GQt8NMfXO8w17QendT4gvO5acfxQsAKirAt0LVxDnr2N8YLCVbregaNc/Yhp7NM128DwCaRvr8PLDfeNkQw==",
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
|
||||||
"semver": "^7.5.4"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=12"
|
|
||||||
},
|
|
||||||
"peerDependencies": {
|
|
||||||
"eslint": ">=6.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/eslint-config-prettier": {
|
"node_modules/eslint-config-prettier": {
|
||||||
"version": "10.1.1",
|
"version": "10.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.2.tgz",
|
||||||
"integrity": "sha512-4EQQr6wXwS+ZJSzaR5ZCrYgLxqvUjdXctaEtBqHcbkW944B1NQyO4qpdHQbXBONfwxXdkAY81HH4+LUfrg+zPw==",
|
"integrity": "sha512-Epgp/EofAUeEpIdZkW60MHKvPyru1ruQJxPL+WIycnaPApuseK0Zpkrh/FwL9oIpQvIhJwV7ptOy0DWUjTlCiA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"bin": {
|
"bin": {
|
||||||
@ -4126,15 +4235,14 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/eslint-plugin-svelte": {
|
"node_modules/eslint-plugin-svelte": {
|
||||||
"version": "3.5.0",
|
"version": "3.5.1",
|
||||||
"resolved": "https://registry.npmjs.org/eslint-plugin-svelte/-/eslint-plugin-svelte-3.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-plugin-svelte/-/eslint-plugin-svelte-3.5.1.tgz",
|
||||||
"integrity": "sha512-986WKRAFoS5KN/jc0Z06akYxfNs+obca486sf9Y+0VbjRUfqJZYX/HSQR/js3xd3enrFqDLg8MToWgDOvCQUqQ==",
|
"integrity": "sha512-Qn1slddZHfqYiDO6IN8/iN3YL+VuHlgYjm30FT+hh0Jf/TX0jeZMTJXQMajFm5f6f6hURi+XO8P+NPYD+T4jkg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@eslint-community/eslint-utils": "^4.4.1",
|
"@eslint-community/eslint-utils": "^4.4.1",
|
||||||
"@jridgewell/sourcemap-codec": "^1.5.0",
|
"@jridgewell/sourcemap-codec": "^1.5.0",
|
||||||
"eslint-compat-utils": "^0.6.4",
|
|
||||||
"esutils": "^2.0.3",
|
"esutils": "^2.0.3",
|
||||||
"known-css-properties": "^0.35.0",
|
"known-css-properties": "^0.35.0",
|
||||||
"postcss": "^8.4.49",
|
"postcss": "^8.4.49",
|
||||||
@ -4782,9 +4890,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/hls.js": {
|
"node_modules/hls.js": {
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.6.2.tgz",
|
||||||
"integrity": "sha512-AlW8ymcDKZuKtzXCUmEy4nOcHRkebnShH6t6hC2+QJQP0WXlTUSSO9Kp22uSEYdCgpwkXEJsfOhqxrgO2tDctQ==",
|
"integrity": "sha512-rx+pETSCJEDThm/JCm8CuadcAC410cVjb1XVXFNDKFuylaayHk1+tFxhkjvnMDAfqsJHxZXDAJ3Uc2d5xQyWlQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "Apache-2.0"
|
"license": "Apache-2.0"
|
||||||
},
|
},
|
||||||
@ -5215,6 +5323,19 @@
|
|||||||
"js-yaml": "bin/js-yaml.js"
|
"js-yaml": "bin/js-yaml.js"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/jsesc": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"bin": {
|
||||||
|
"jsesc": "bin/jsesc"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/json-buffer": {
|
"node_modules/json-buffer": {
|
||||||
"version": "3.0.1",
|
"version": "3.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
|
||||||
@ -6659,9 +6780,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/sass": {
|
"node_modules/sass": {
|
||||||
"version": "1.86.2",
|
"version": "1.86.3",
|
||||||
"resolved": "https://registry.npmjs.org/sass/-/sass-1.86.2.tgz",
|
"resolved": "https://registry.npmjs.org/sass/-/sass-1.86.3.tgz",
|
||||||
"integrity": "sha512-Rpfn0zAIDqvnSb2DihJTDFjbhqLHu91Wqac9rxontWk7R+2txcPjuujMqu1eeoezh5kAblVCS5EdFdyr0Jmu+w==",
|
"integrity": "sha512-iGtg8kus4GrsGLRDLRBRHY9dNVA78ZaS7xr01cWnS7PEMQyFtTqBiyCrfpTYTZXRWM94akzckYjh8oADfFNTzw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@ -6982,9 +7103,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/svelte": {
|
"node_modules/svelte": {
|
||||||
"version": "5.25.6",
|
"version": "5.27.0",
|
||||||
"resolved": "https://registry.npmjs.org/svelte/-/svelte-5.25.6.tgz",
|
"resolved": "https://registry.npmjs.org/svelte/-/svelte-5.27.0.tgz",
|
||||||
"integrity": "sha512-RGkaeAXDuJdvhA1fdSM5GgD++vYfJYijZL0uN6kM2s/TRJ663jktBhZlF0qjzAJGR/34PtaeT3G8MKJY1EKeqg==",
|
"integrity": "sha512-Uai13Ydt1ZE+bUHme6b9U38PCYVNCqBRoBMkUKbFbKiD7kHWjdUUrklYAQZJxyKK81qII4mrBwe/YmvEMSlC9w==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@ -7008,9 +7129,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/svelte-check": {
|
"node_modules/svelte-check": {
|
||||||
"version": "4.1.5",
|
"version": "4.1.6",
|
||||||
"resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-4.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-4.1.6.tgz",
|
||||||
"integrity": "sha512-Gb0T2IqBNe1tLB9EB1Qh+LOe+JB8wt2/rNBDGvkxQVvk8vNeAoG+vZgFB/3P5+zC7RWlyBlzm9dVjZFph/maIg==",
|
"integrity": "sha512-P7w/6tdSfk3zEVvfsgrp3h3DFC75jCdZjTQvgGJtjPORs1n7/v2VMPIoty3PWv7jnfEm3x0G/p9wH4pecTb0Wg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@ -7170,6 +7291,51 @@
|
|||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
|
"node_modules/tinyglobby": {
|
||||||
|
"version": "0.2.12",
|
||||||
|
"resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz",
|
||||||
|
"integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"fdir": "^6.4.3",
|
||||||
|
"picomatch": "^4.0.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/SuperchupuDev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/tinyglobby/node_modules/fdir": {
|
||||||
|
"version": "6.4.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz",
|
||||||
|
"integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"peerDependencies": {
|
||||||
|
"picomatch": "^3 || ^4"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"picomatch": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/tinyglobby/node_modules/picomatch": {
|
||||||
|
"version": "4.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
|
||||||
|
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/jonschlinkert"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/titleize": {
|
"node_modules/titleize": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz",
|
||||||
@ -7260,9 +7426,9 @@
|
|||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/typescript": {
|
"node_modules/typescript": {
|
||||||
"version": "5.8.2",
|
"version": "5.8.3",
|
||||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz",
|
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz",
|
||||||
"integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==",
|
"integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"bin": {
|
"bin": {
|
||||||
@ -7274,15 +7440,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/typescript-eslint": {
|
"node_modules/typescript-eslint": {
|
||||||
"version": "8.29.0",
|
"version": "8.30.1",
|
||||||
"resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.29.0.tgz",
|
"resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.30.1.tgz",
|
||||||
"integrity": "sha512-ep9rVd9B4kQsZ7ZnWCVxUE/xDLUUUsRzE0poAeNu+4CkFErLfuvPt/qtm2EpnSyfvsR0S6QzDFSrPCFBwf64fg==",
|
"integrity": "sha512-D7lC0kcehVH7Mb26MRQi64LMyRJsj3dToJxM1+JVTl53DQSV5/7oUGWQLcKl1C1KnoVHxMMU2FNQMffr7F3Row==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/eslint-plugin": "8.29.0",
|
"@typescript-eslint/eslint-plugin": "8.30.1",
|
||||||
"@typescript-eslint/parser": "8.29.0",
|
"@typescript-eslint/parser": "8.30.1",
|
||||||
"@typescript-eslint/utils": "8.29.0"
|
"@typescript-eslint/utils": "8.30.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
||||||
@ -7400,15 +7566,18 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/vite": {
|
"node_modules/vite": {
|
||||||
"version": "6.2.5",
|
"version": "6.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/vite/-/vite-6.2.5.tgz",
|
"resolved": "https://registry.npmjs.org/vite/-/vite-6.3.0.tgz",
|
||||||
"integrity": "sha512-j023J/hCAa4pRIUH6J9HemwYfjB5llR2Ps0CWeikOtdR8+pAURAk0DoJC5/mm9kd+UgdnIy7d6HE4EAvlYhPhA==",
|
"integrity": "sha512-9aC0n4pr6hIbvi1YOpFjwQ+QOTGssvbJKoeYkuHHGWwlXfdxQlI8L2qNMo9awEEcCPSiS+5mJZk5jH1PAqoDeQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"esbuild": "^0.25.0",
|
"esbuild": "^0.25.0",
|
||||||
|
"fdir": "^6.4.3",
|
||||||
|
"picomatch": "^4.0.2",
|
||||||
"postcss": "^8.5.3",
|
"postcss": "^8.5.3",
|
||||||
"rollup": "^4.30.1"
|
"rollup": "^4.34.9",
|
||||||
|
"tinyglobby": "^0.2.12"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"vite": "bin/vite.js"
|
"vite": "bin/vite.js"
|
||||||
@ -7471,6 +7640,34 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/vite/node_modules/fdir": {
|
||||||
|
"version": "6.4.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz",
|
||||||
|
"integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"peerDependencies": {
|
||||||
|
"picomatch": "^3 || ^4"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"picomatch": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/vite/node_modules/picomatch": {
|
||||||
|
"version": "4.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
|
||||||
|
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/jonschlinkert"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/vitefu": {
|
"node_modules/vitefu": {
|
||||||
"version": "1.0.4",
|
"version": "1.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/vitefu/-/vitefu-1.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/vitefu/-/vitefu-1.0.4.tgz",
|
||||||
|
29
package.json
29
package.json
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "stream-bypass",
|
"name": "stream-bypass",
|
||||||
"version": "3.1.3",
|
"version": "3.1.5",
|
||||||
"displayName": "Stream Bypass",
|
"displayName": "Stream Bypass",
|
||||||
"author": "bytedream",
|
"author": "bytedream",
|
||||||
"description": "Multi-browser addon for multiple streaming providers which redirects directly to the source video",
|
"description": "Multi-browser addon for multiple streaming providers which redirects directly to the source video",
|
||||||
@ -11,8 +11,8 @@
|
|||||||
"serve:firefox": "web-ext run --start-url \"about:debugging#/runtime/this-firefox\" --source-dir ./dist/",
|
"serve:firefox": "web-ext run --start-url \"about:debugging#/runtime/this-firefox\" --source-dir ./dist/",
|
||||||
"serve:chrome": "web-ext run -t chromium --start-url \"https://example.com\" --source-dir ./dist/",
|
"serve:chrome": "web-ext run -t chromium --start-url \"https://example.com\" --source-dir ./dist/",
|
||||||
"check": "svelte-check --tsconfig ./tsconfig.json",
|
"check": "svelte-check --tsconfig ./tsconfig.json",
|
||||||
"lint": "prettier --check --plugin prettier-plugin-svelte . && eslint .",
|
"lint": "prettier --check . && eslint .",
|
||||||
"format": "prettier --write --plugin prettier-plugin-svelte .",
|
"format": "prettier --write .",
|
||||||
"release:firefox": "MANIFEST_VERSION=2 vite build --outDir release/firefox",
|
"release:firefox": "MANIFEST_VERSION=2 vite build --outDir release/firefox",
|
||||||
"release:chrome": "MANIFEST_VERSION=3 vite build --outDir release/chrome"
|
"release:chrome": "MANIFEST_VERSION=3 vite build --outDir release/chrome"
|
||||||
},
|
},
|
||||||
@ -25,25 +25,26 @@
|
|||||||
"url": "https://github.com/bytedream/stream-bypass/issues"
|
"url": "https://github.com/bytedream/stream-bypass/issues"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@ianvs/prettier-plugin-sort-imports": "^4.4.1",
|
||||||
"@samrum/vite-plugin-web-extension": "^5.1.1",
|
"@samrum/vite-plugin-web-extension": "^5.1.1",
|
||||||
"@sveltejs/vite-plugin-svelte": "^5.0.3",
|
"@sveltejs/vite-plugin-svelte": "^5.0.3",
|
||||||
"@tsconfig/svelte": "^5.0.4",
|
"@tsconfig/svelte": "^5.0.4",
|
||||||
"@types/chrome": "^0.0.313",
|
"@types/chrome": "^0.0.315",
|
||||||
"@types/firefox-webext-browser": "^120.0.4",
|
"@types/firefox-webext-browser": "^120.0.4",
|
||||||
"eslint": "^9.23.0",
|
"eslint": "^9.24.0",
|
||||||
"eslint-config-prettier": "^10.1.1",
|
"eslint-config-prettier": "^10.1.2",
|
||||||
"eslint-plugin-svelte": "^3.5.0",
|
"eslint-plugin-svelte": "^3.5.1",
|
||||||
"hls.js": "^1.6.0",
|
"hls.js": "^1.6.2",
|
||||||
"prettier": "^3.5.3",
|
"prettier": "^3.5.3",
|
||||||
"prettier-plugin-svelte": "^3.3.3",
|
"prettier-plugin-svelte": "^3.3.3",
|
||||||
"sass": "^1.86.2",
|
"sass": "^1.86.3",
|
||||||
"svelte": "^5.25.6",
|
"svelte": "^5.27.0",
|
||||||
"svelte-check": "^4.1.5",
|
"svelte-check": "^4.1.6",
|
||||||
"svelte-preprocess": "^6.0.3",
|
"svelte-preprocess": "^6.0.3",
|
||||||
"tslib": "^2.8.1",
|
"tslib": "^2.8.1",
|
||||||
"typescript": "^5.8.2",
|
"typescript": "^5.8.3",
|
||||||
"typescript-eslint": "^8.29.0",
|
"typescript-eslint": "^8.30.1",
|
||||||
"vite": "^6.2.5",
|
"vite": "^6.3.0",
|
||||||
"web-ext": "^8.5.0"
|
"web-ext": "^8.5.0"
|
||||||
},
|
},
|
||||||
"type": "module"
|
"type": "module"
|
||||||
|
@ -1,8 +1,7 @@
|
|||||||
import './shared';
|
import './shared';
|
||||||
|
|
||||||
import type { Match } from '~/lib/match';
|
import { getMatch, type Match } from '~/lib/match';
|
||||||
import { Redirect, UrlReferer } from '~/lib/settings';
|
import { Redirect, UrlReferer } from '~/lib/settings';
|
||||||
import { getMatch } from '~/lib/match';
|
|
||||||
|
|
||||||
chrome.webRequest.onBeforeSendHeaders.addListener(
|
chrome.webRequest.onBeforeSendHeaders.addListener(
|
||||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { getMatch, type Match, MatchMediaType } from '~/lib/match';
|
import { getMatch, MatchMediaType, type Match } from '~/lib/match';
|
||||||
import { Other, Redirect } from '~/lib/settings';
|
import { Other, Redirect } from '~/lib/settings';
|
||||||
|
|
||||||
async function main() {
|
async function main() {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { play } from '~/entries/player/player';
|
|
||||||
import { onMount } from 'svelte';
|
import { onMount } from 'svelte';
|
||||||
|
import { play } from '~/entries/player/player';
|
||||||
|
|
||||||
let errorMessage: string | null = $state(null);
|
let errorMessage: string | null = $state(null);
|
||||||
|
|
||||||
|
@ -6,8 +6,8 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<script type="module">
|
<script type="module">
|
||||||
import Player from '~/entries/player/Player.svelte';
|
|
||||||
import { mount } from 'svelte';
|
import { mount } from 'svelte';
|
||||||
|
import Player from '~/entries/player/Player.svelte';
|
||||||
|
|
||||||
mount(Player, {
|
mount(Player, {
|
||||||
target: document.body
|
target: document.body
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { matches, MatchMediaType } from '~/lib/match';
|
|
||||||
import Hls from 'hls.js';
|
import Hls from 'hls.js';
|
||||||
|
import { matches, MatchMediaType } from '~/lib/match';
|
||||||
import { UrlReferer } from '~/lib/settings';
|
import { UrlReferer } from '~/lib/settings';
|
||||||
|
|
||||||
async function playNative(url: string, domain: string, videoElem: HTMLVideoElement) {
|
async function playNative(url: string, domain: string, videoElem: HTMLVideoElement) {
|
||||||
@ -31,7 +31,7 @@ export async function play(videoElem: HTMLVideoElement) {
|
|||||||
const id = urlQuery.get('id') as string;
|
const id = urlQuery.get('id') as string;
|
||||||
const url = decodeURIComponent(urlQuery.get('url') as string);
|
const url = decodeURIComponent(urlQuery.get('url') as string);
|
||||||
const domain = urlQuery.get('domain') as string;
|
const domain = urlQuery.get('domain') as string;
|
||||||
const urlType = urlQuery.get('urlType') as MatchMediaType;
|
const type = urlQuery.get('type') as MatchMediaType;
|
||||||
|
|
||||||
const match = matches[id];
|
const match = matches[id];
|
||||||
if (match === undefined) {
|
if (match === undefined) {
|
||||||
@ -39,9 +39,9 @@ export async function play(videoElem: HTMLVideoElement) {
|
|||||||
}
|
}
|
||||||
document.title = `Stream Bypass (${domain})`;
|
document.title = `Stream Bypass (${domain})`;
|
||||||
|
|
||||||
if (urlType === MatchMediaType.Hls) {
|
if (type === MatchMediaType.Hls) {
|
||||||
await playHls(url, domain, videoElem);
|
await playHls(url, domain, videoElem);
|
||||||
} else if (urlType === MatchMediaType.Native) {
|
} else if (type === MatchMediaType.Native) {
|
||||||
await playNative(url, domain, videoElem);
|
await playNative(url, domain, videoElem);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { type Match, matches } from '~/lib/match';
|
import { matches, type Match } from '~/lib/match';
|
||||||
import { Hosters, Other } from '~/lib/settings';
|
import { Hosters, Other } from '~/lib/settings';
|
||||||
import Toggle from './toggle.svelte';
|
import Toggle from './toggle.svelte';
|
||||||
|
|
||||||
|
@ -7,8 +7,8 @@
|
|||||||
</head>
|
</head>
|
||||||
<body style="overflow-y: scroll">
|
<body style="overflow-y: scroll">
|
||||||
<script type="module">
|
<script type="module">
|
||||||
import Popup from '~/entries/popup/Popup.svelte';
|
|
||||||
import { mount } from 'svelte';
|
import { mount } from 'svelte';
|
||||||
|
import Popup from '~/entries/popup/Popup.svelte';
|
||||||
|
|
||||||
mount(Popup, {
|
mount(Popup, {
|
||||||
target: document.body
|
target: document.body
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { unpack } from './util/userspace';
|
|
||||||
import { Hosters, Redirect, TmpHost } from './settings';
|
import { Hosters, Redirect, TmpHost } from './settings';
|
||||||
import { lastPathSegment } from './util/extract';
|
import { lastPathSegment } from './util/extract';
|
||||||
|
import { unpack } from './util/userspace';
|
||||||
|
|
||||||
export interface Match {
|
export interface Match {
|
||||||
name: string;
|
name: string;
|
||||||
@ -15,6 +15,9 @@ export interface Match {
|
|||||||
): Promise<
|
): Promise<
|
||||||
string | { [MatchMediaType.Hls]: string } | { [MatchMediaType.Native]: string } | null
|
string | { [MatchMediaType.Hls]: string } | { [MatchMediaType.Native]: string } | null
|
||||||
>;
|
>;
|
||||||
|
|
||||||
|
// allow other properties that may be implemented by the objects that use this interface declaration
|
||||||
|
[other: string]: any;
|
||||||
}
|
}
|
||||||
|
|
||||||
export enum MatchMediaType {
|
export enum MatchMediaType {
|
||||||
@ -48,7 +51,7 @@ export const Doodstream: Match = {
|
|||||||
replace: true,
|
replace: true,
|
||||||
regex: [/(\/pass_md5\/.*?)'.*(\?token=.*?expiry=)/s],
|
regex: [/(\/pass_md5\/.*?)'.*(\?token=.*?expiry=)/s],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
const response = await fetch(`https://${window.location.host}${match[1]}`, {
|
const response = await fetch(`https://${window.location.host}${match[1]}`, {
|
||||||
headers: {
|
headers: {
|
||||||
Range: 'bytes=0-'
|
Range: 'bytes=0-'
|
||||||
@ -67,7 +70,7 @@ export const DropLoad: Match = {
|
|||||||
domains: ['dropload.ui'],
|
domains: ['dropload.ui'],
|
||||||
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
const unpacked = await unpack(match[0]);
|
const unpacked = await unpack(match[0]);
|
||||||
return unpacked.match(/(?<=file:").*(?=")/)![0];
|
return unpacked.match(/(?<=file:").*(?=")/)![0];
|
||||||
}
|
}
|
||||||
@ -80,7 +83,7 @@ export const Filemoon: Match = {
|
|||||||
regex: [/(?<=<iframe\s*src=")\S*(?=")/s, /eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
regex: [/(?<=<iframe\s*src=")\S*(?=")/s, /eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
||||||
replace: true,
|
replace: true,
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
if (window.location.host.startsWith('filemoon')) {
|
if (window.location.host.startsWith('filemoon')) {
|
||||||
await TmpHost.set(new URL(match[0]).host, Filemoon);
|
await TmpHost.set(new URL(match[0]).host, Filemoon);
|
||||||
return null;
|
return null;
|
||||||
@ -99,7 +102,7 @@ export const GoodStream: Match = {
|
|||||||
domains: ['goodstream.uno'],
|
domains: ['goodstream.uno'],
|
||||||
regex: [/(?<=file:\s+").*(?=")/g],
|
regex: [/(?<=file:\s+").*(?=")/g],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
return match[0];
|
return match[0];
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -110,7 +113,7 @@ export const Kwik: Match = {
|
|||||||
domains: ['kwik.cx'],
|
domains: ['kwik.cx'],
|
||||||
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
const unpacked = await unpack(match[0]);
|
const unpacked = await unpack(match[0]);
|
||||||
return unpacked.match(/(?<=source=').*(?=')/)![0];
|
return unpacked.match(/(?<=source=').*(?=')/)![0];
|
||||||
}
|
}
|
||||||
@ -181,7 +184,7 @@ export const Mixdrop: Match = {
|
|||||||
domains: ['mixdrop.co', 'mixdrop.to', 'mixdrop.ch', 'mixdrop.bz', 'mixdrop.gl'],
|
domains: ['mixdrop.co', 'mixdrop.to', 'mixdrop.ch', 'mixdrop.bz', 'mixdrop.gl'],
|
||||||
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
const unpacked = await unpack(match[0]);
|
const unpacked = await unpack(match[0]);
|
||||||
const url = unpacked.match(/(?<=MDCore.wurl=").*(?=")/)![0];
|
const url = unpacked.match(/(?<=MDCore.wurl=").*(?=")/)![0];
|
||||||
return `https:${url}`;
|
return `https:${url}`;
|
||||||
@ -195,7 +198,7 @@ export const Mp4Upload: Match = {
|
|||||||
replace: true,
|
replace: true,
|
||||||
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
const unpacked = await unpack(match[0]);
|
const unpacked = await unpack(match[0]);
|
||||||
return unpacked.match(/(?<=player.src\(").*(?=")/)![0];
|
return unpacked.match(/(?<=player.src\(").*(?=")/)![0];
|
||||||
}
|
}
|
||||||
@ -225,7 +228,7 @@ export const StreamA2z: Match = {
|
|||||||
domains: ['streama2z.com', 'streama2z.xyz'],
|
domains: ['streama2z.com', 'streama2z.xyz'],
|
||||||
regex: [/https?:\/\/\S*m3u8.+(?=['"])/gm],
|
regex: [/https?:\/\/\S*m3u8.+(?=['"])/gm],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
if (StreamA2z.domains.indexOf(window.location.hostname) !== -1) {
|
if (StreamA2z.domains.indexOf(window.location.hostname) !== -1) {
|
||||||
await Redirect.set(StreamA2z);
|
await Redirect.set(StreamA2z);
|
||||||
return null;
|
return null;
|
||||||
@ -240,7 +243,7 @@ export const Streamtape: Match = {
|
|||||||
domains: ['streamtape.com', 'streamtape.net', 'shavetape.cash'],
|
domains: ['streamtape.com', 'streamtape.net', 'shavetape.cash'],
|
||||||
regex: [/id=.*(?=')/gm],
|
regex: [/id=.*(?=')/gm],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
let i = 0;
|
let i = 0;
|
||||||
while (i < match.length) {
|
while (i < match.length) {
|
||||||
if (match[++i - 1] == match[i]) {
|
if (match[++i - 1] == match[i]) {
|
||||||
@ -259,7 +262,7 @@ export const Streamzz: Match = {
|
|||||||
domains: ['streamzz.to', 'streamz.ws'],
|
domains: ['streamzz.to', 'streamz.ws'],
|
||||||
regex: [/(?<=\|)\w{2,}/gm],
|
regex: [/(?<=\|)\w{2,}/gm],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
return `https://get.${location.hostname.split('.')[0]}.tw/getlink-${
|
return `https://get.${location.hostname.split('.')[0]}.tw/getlink-${
|
||||||
match.sort((a, b) => b.length - a.length)[0]
|
match.sort((a, b) => b.length - a.length)[0]
|
||||||
}.dll`;
|
}.dll`;
|
||||||
@ -272,7 +275,7 @@ export const SuperVideo: Match = {
|
|||||||
domains: ['supervideo.tv'],
|
domains: ['supervideo.tv'],
|
||||||
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
const unpacked = await unpack(match[0]);
|
const unpacked = await unpack(match[0]);
|
||||||
return unpacked.match(/(?<=file:").*(?=")/)![0];
|
return unpacked.match(/(?<=file:").*(?=")/)![0];
|
||||||
}
|
}
|
||||||
@ -284,7 +287,7 @@ export const Upstream: Match = {
|
|||||||
domains: ['upstream.to'],
|
domains: ['upstream.to'],
|
||||||
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
regex: [/eval\(function\(p,a,c,k,e,d\).*?(?=<\/script>)/gms],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
const unpacked = await unpack(match[0]);
|
const unpacked = await unpack(match[0]);
|
||||||
return unpacked.match(/(?<=file:").*(?=")/)![0];
|
return unpacked.match(/(?<=file:").*(?=")/)![0];
|
||||||
}
|
}
|
||||||
@ -297,7 +300,7 @@ export const Vidmoly: Match = {
|
|||||||
regex: [/(?<=file:").+\.m3u8/gm],
|
regex: [/(?<=file:").+\.m3u8/gm],
|
||||||
replace: true,
|
replace: true,
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
return match[0];
|
return match[0];
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -309,7 +312,7 @@ export const Vidoza: Match = {
|
|||||||
regex: [/(?<=src:\s?").+?(?=")/gm],
|
regex: [/(?<=src:\s?").+?(?=")/gm],
|
||||||
replace: true,
|
replace: true,
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
return match[0];
|
return match[0];
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -322,17 +325,60 @@ export const Voe: Match = {
|
|||||||
// voe.sx
|
// voe.sx
|
||||||
/(?<=window\.location\.href\s=\s')\S*(?=')/gm,
|
/(?<=window\.location\.href\s=\s')\S*(?=')/gm,
|
||||||
// whatever site voe.sx redirects to
|
// whatever site voe.sx redirects to
|
||||||
/(?<='hls':\s*')\S*(?=')/gm
|
/(?<=")\S+(@\$|\^\^|~@|%\?|\*~|!!|#&)(?=")/gm
|
||||||
],
|
],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
if (window.location.host === 'voe.sx') {
|
if (window.location.host === 'voe.sx') {
|
||||||
const redirectUrl = new URL(match[0]);
|
const redirectUrl = new URL(match[0]);
|
||||||
await TmpHost.set(redirectUrl.host, Voe);
|
await TmpHost.set(redirectUrl.host, Voe);
|
||||||
return null;
|
return null;
|
||||||
} else {
|
} else {
|
||||||
return atob(match[0]);
|
let deobfuscated = match[0];
|
||||||
|
deobfuscated = this.rot13(deobfuscated);
|
||||||
|
deobfuscated = this.removeSpecialSequences(deobfuscated);
|
||||||
|
deobfuscated = atob(deobfuscated);
|
||||||
|
deobfuscated = this.shiftString(deobfuscated);
|
||||||
|
deobfuscated = deobfuscated.split('').reverse().join('');
|
||||||
|
deobfuscated = atob(deobfuscated);
|
||||||
|
|
||||||
|
const payload = JSON.parse(deobfuscated);
|
||||||
|
|
||||||
|
return payload['source'];
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
rot13: function (encrypted: string) {
|
||||||
|
let decrypted = '';
|
||||||
|
for (let i = 0; i < encrypted.length; i++) {
|
||||||
|
let char = encrypted.charCodeAt(i);
|
||||||
|
if (char >= 65 && char <= 90) {
|
||||||
|
char = ((char - 65 + 13) % 26) + 65;
|
||||||
|
} else if (char >= 97 && char <= 122) {
|
||||||
|
char = ((char - 97 + 13) % 26) + 97;
|
||||||
|
}
|
||||||
|
decrypted += String.fromCharCode(char);
|
||||||
|
}
|
||||||
|
return decrypted;
|
||||||
|
},
|
||||||
|
removeSpecialSequences: function (input: string) {
|
||||||
|
return input
|
||||||
|
.replaceAll(/@\$/g, '')
|
||||||
|
.replaceAll(/\^\^/g, '')
|
||||||
|
.replaceAll(/~@/g, '')
|
||||||
|
.replaceAll(/%\?/g, '')
|
||||||
|
.replaceAll(/\*~/g, '')
|
||||||
|
.replaceAll(/!!/g, '')
|
||||||
|
.replaceAll(/#&/g, '');
|
||||||
|
},
|
||||||
|
shiftString: function (input: string) {
|
||||||
|
let shifted = '';
|
||||||
|
for (let i = 0; i < input.length; i++) {
|
||||||
|
const char = input.charCodeAt(i);
|
||||||
|
const shiftedChar = char - 3;
|
||||||
|
shifted += String.fromCharCode(shiftedChar);
|
||||||
|
}
|
||||||
|
return shifted;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -342,7 +388,7 @@ export const Vupload: Match = {
|
|||||||
domains: ['vupload.com'],
|
domains: ['vupload.com'],
|
||||||
regex: [/(?<=src:\s?").+?(?=")/gm],
|
regex: [/(?<=src:\s?").+?(?=")/gm],
|
||||||
|
|
||||||
match: async (match: RegExpMatchArray) => {
|
match: async function (match: RegExpMatchArray) {
|
||||||
return match[0];
|
return match[0];
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import type { Match } from './match';
|
import { matches, type Match } from './match';
|
||||||
import { matches } from './match';
|
|
||||||
|
|
||||||
export const Hosters = {
|
export const Hosters = {
|
||||||
getDisabled: async () => {
|
getDisabled: async () => {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
"extends": "@tsconfig/svelte/tsconfig.json",
|
"extends": "@tsconfig/svelte/tsconfig.json",
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"allowSyntheticDefaultImports": true,
|
"allowSyntheticDefaultImports": true,
|
||||||
"target": "es2019",
|
"target": "es2021",
|
||||||
"module": "esnext",
|
"module": "esnext",
|
||||||
"useDefineForClassFields": true,
|
"useDefineForClassFields": true,
|
||||||
"resolveJsonModule": true,
|
"resolveJsonModule": true,
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { defineConfig, loadEnv, type PluginOption } from 'vite';
|
|
||||||
import { svelte } from '@sveltejs/vite-plugin-svelte';
|
|
||||||
import webExtension from '@samrum/vite-plugin-web-extension';
|
|
||||||
import { getManifest } from './src/manifest';
|
|
||||||
import { matches } from './src/lib/match';
|
|
||||||
import { fileURLToPath } from 'url';
|
import { fileURLToPath } from 'url';
|
||||||
|
import webExtension from '@samrum/vite-plugin-web-extension';
|
||||||
|
import { svelte } from '@sveltejs/vite-plugin-svelte';
|
||||||
|
import { defineConfig, loadEnv, type PluginOption } from 'vite';
|
||||||
|
import { matches } from './src/lib/match';
|
||||||
|
import { getManifest } from './src/manifest';
|
||||||
|
|
||||||
// https://vitejs.dev/config/
|
// https://vitejs.dev/config/
|
||||||
export default defineConfig(({ mode }) => {
|
export default defineConfig(({ mode }) => {
|
||||||
|
Reference in New Issue
Block a user