Skip to content

Commit

Permalink
Merge pull request #892 from ilyhalight/dev
Browse files Browse the repository at this point in the history
Update 1.7.1
  • Loading branch information
ilyhalight authored Nov 4, 2024
2 parents 9d26232 + 126fdcc commit 856b56d
Show file tree
Hide file tree
Showing 109 changed files with 8,398 additions and 12,901 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
node-version: ${{ matrix.node-version }}
- name: Install 🔧
shell: bash
run: npm install --legacy-peer-deps
run: npm install
- name: Build 🔧
run: npm run build
- name: Upload Artifact 🚀
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
tests/utils.test.js

dist/test-ui.user.js
dist/*.txt

Expand Down
7 changes: 6 additions & 1 deletion .webpack/config.shared.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ const __dirname = path.resolve(path.dirname(__filename));

export default {
resolve: {
extensions: [".js"],
extensions: [".js", ".ts"],
},
performance: {
hints: "error",
Expand All @@ -25,6 +25,11 @@ export default {
// use: ["style-loader", "css-loader", "sass-loader"],
use: ["lightning-loader"],
},
{
test: /\.ts$/,
use: "ts-loader",
exclude: /node_modules/,
},
],
},
};
3 changes: 3 additions & 0 deletions .webpack/webpack.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import {
sitesProxiTok,
sitesPeertube,
sitesPoketube,
sitesCoursehunterLike,
} from "vot.js/alternativeUrls";
import configShared from "./config.shared.js";

Expand Down Expand Up @@ -78,6 +79,7 @@ export default (env) => {
sitesProxiTok,
sitesPeertube,
sitesPoketube,
sitesCoursehunterLike,
]
.map((sites) =>
sites.map((site) => {
Expand Down Expand Up @@ -144,6 +146,7 @@ export default (env) => {
}),
new webpack.DefinePlugin({
DEBUG_MODE: dev,
// DEBUG_MODE: true,
IS_BETA_VERSION: isBeta,
AVAILABLE_LOCALES: JSON.stringify(availableLocales),
...(() => {
Expand Down
48 changes: 48 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
## voice-over-translation contributing guide

### Updating vot.js package

Casual:

1. Install new version of vot.js with

```bash
npm install [email protected]
```

If patches broken after casual:

1. Remove "postinstall" script from package.json
2. Remove vot.js package with

```bash
npm uninstall vot.js
```

3. Install new version of vot.js with

```bash
npm install vot.js
```

4. Restore "postinstall" script in package.json
5. Run patch-package

```bash
npx patch-package
```

6. If it ended with an error run

```bash
npx patch-package --partial
```

7. Fix errors from patch-package-errors.log
8. Run patch-package update

```bash
npx patch-package vot.js
```

9. Repeat 5-7 steps before success applying patches
51 changes: 1 addition & 50 deletions README-EN.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,54 +44,7 @@ The voice-over translation of the video is now available not only in YandexBrows

## List of supported sites:

You can see all the restrictions related to site support in [wiki](https://github.com/ilyhalight/voice-over-translation/wiki/%5BEN%5D-Supported-sites).

- **[YouTube](https://www.youtube.com)**
- **[Twitch](https://www.twitch.tv)**
- **[VK](https://vk.com)**
- **[OK](https://ok.ru/)**
- **[Twitter](https://twitter.com/)**
- **[9GAG](https://9gag.com/gag/)**
- **[Rutube](https://rutube.ru/)**
- **[Bilibili](https://bilibili.com/)**
- **[Video Mail.ru](https://my.mail.ru/video)**
- **[Vimeo](https://vimeo.com/)**
- **[XVideos](https://xvideos.com/)**
- **[PornHub](https://rt.pornhub.com/)**
- **[Bitchute](https://www.bitchute.com/)**
- **[Coursera](https://www.coursera.org/)**
- **[[⚠️] Udemy](https://www.udemy.com/)**
- **[Facebook\*](https://facebook.com/)**
- **[TikTok](https://tiktok.com/)**
- **[Rumble](https://rumble.com/)**
- **[EPorner](https://www.eporner.com/)**
- **[Peertube](https://tube.shanti.cafe/)**
- **[Dailymotion](https://www.dailymotion.com/)**
- **[Trovo](https://trovo.live/)**
- **[Yandex Disk](https://disk.yandex.ru/)**
- **[Google Drive](https://drive.google.com/)**
- **[Banned Video](https://banned.video/)**
- **[Weverse](https://weverse.io/)**
- **[Egghead](https://egghead.io)**
- **[Youku](https://youku.com)**
- **[Archive.org](https://archive.org)**
- **[Newgrounds](https://newgrounds.com)**
- **[ProxiTok](https://proxitok.pabloferreiro.es/)**
- **[Invidious](https://yewtu.be)**
- **[Piped](https://piped.video)**
- **[Kodik (player)](https://kodik.cc)**
- **[Patreon](https://patreon.com)**
- **[Reddit](https://reddit.com)**
- **[Kick](https://kick.com)**
- **[Apple Developer](https://developer.apple.com)**
- **[EpicGames Developers](https://dev.epicgames.com)**
- **[9AnimeTV](https://9animetv.to/)**
- **[Sap learning](https://learning.sap.com/)**
- **[Watchporn.to](https://watchporn.to/)**
- **[Linkedin learning](https://www.linkedin.com/)**
- **Any direct web links to `.mp4` or `.webm`**

⚠️ - Requires additional actions, more in **[Wiki](https://github.com/ilyhalight/voice-over-translation/wiki/%5BEN%5D-Supported-sites)**
You can see the full list of supported websites and all restrictions related to their support in **[wiki](https://github.com/ilyhalight/voice-over-translation/wiki/%5BEN%5D-Supported-sites)**

### Our domains:

Expand Down Expand Up @@ -263,5 +216,3 @@ To activate the script in Tampermonkey (MV3), you must [enable "Developer Mode"]
| ⠀[Install guide](https://github.com/ilyhalight/voice-over-translation/wiki/%5BEN%5D-FAQ#how-to-use-the-extension-with-user-js-and-css) | Any | User Javascript and CSS |

![example btn](https://github.com/ilyhalight/voice-over-translation/blob/master/img/example_en.png "btn")

\*: Banned on the territory of the Russian Federation
51 changes: 1 addition & 50 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,54 +45,7 @@

## Список поддерживаемых сайтов:

Все ограничения, связанные с поддержкой сайтов вы можете увидеть в [вики](https://github.com/ilyhalight/voice-over-translation/wiki/%5BRU%5D-Supported-sites).

- **[YouTube](https://www.youtube.com)**
- **[Twitch](https://www.twitch.tv)**
- **[VK](https://vk.com)**
- **[OK](https://ok.ru/)**
- **[Twitter](https://twitter.com/)**
- **[9GAG](https://9gag.com/gag/)**
- **[Rutube](https://rutube.ru/)**
- **[Bilibili](https://bilibili.com/)**
- **[Видео Mail.ru](https://my.mail.ru/video)**
- **[Vimeo](https://vimeo.com/)**
- **[XVideos](https://xvideos.com/)**
- **[PornHub](https://rt.pornhub.com/)**
- **[Bitchute](https://www.bitchute.com/)**
- **[Coursera](https://www.coursera.org/)**
- **[[⚠️] Udemy](https://www.udemy.com/)**
- **[Facebook\*](https://facebook.com/)**
- **[TikTok](https://tiktok.com/)**
- **[Rumble](https://rumble.com/)**
- **[EPorner](https://www.eporner.com/)**
- **[Peertube](https://tube.shanti.cafe/)**
- **[Dailymotion](https://www.dailymotion.com/)**
- **[Trovo](https://trovo.live/)**
- **[Yandex Disk](https://disk.yandex.ru/)**
- **[Google Drive](https://drive.google.com/)**
- **[Banned Video](https://banned.video/)**
- **[Weverse](https://weverse.io/)**
- **[Egghead](https://egghead.io)**
- **[Youku](https://youku.com)**
- **[Archive.org](https://archive.org)**
- **[Newgrounds](https://newgrounds.com)**
- **[ProxiTok](https://proxitok.pabloferreiro.es/)**
- **[Invidious](https://yewtu.be)**
- **[Piped](https://piped.video)**
- **[Kodik (player)](https://kodik.cc)**
- **[Patreon](https://patreon.com)**
- **[Reddit](https://reddit.com)**
- **[Kick](https://kick.com)**
- **[Apple Developer](https://developer.apple.com)**
- **[EpicGames Developers](https://dev.epicgames.com)**
- **[9AnimeTV](https://9animetv.to/)**
- **[Sap learning](https://learning.sap.com/)**
- **[Watchporn.to](https://watchporn.to/)**
- **[Linkedin learning](https://www.linkedin.com/)**
- **Любые прямые веб-ссылки на `.mp4` или `.webm`**

⚠️ - Требует дополнительных действий, подробнее в **[Wiki](https://github.com/ilyhalight/voice-over-translation/wiki/%5BRU%5D-Supported-sites)**
Полный список поддерживаемых веб-сайтов и все ограничения, связанные с их поддержкой, вы можете увидеть в **[вики](https://github.com/ilyhalight/voice-over-translation/wiki/%5BRU%5D-Supported-sites)**

### Наши домены:

Expand Down Expand Up @@ -266,5 +219,3 @@ bun l10n
| ⠀[Гайд по установке](https://github.com/ilyhalight/voice-over-translation/wiki/%5BRU%5D-FAQ#%D0%BA%D0%B0%D0%BA-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D1%8C-%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D0%B5-%D1%81-user-js-and-css) | Любой | User Javascript and CSS |

![example btn](https://github.com/ilyhalight/voice-over-translation/blob/master/img/example.png "btn")

\*: Запрещена на территории РФ
Binary file modified bun.lockb
Binary file not shown.
59 changes: 57 additions & 2 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,68 @@
<!-- Добавить двухстороннюю синхронизацию слайдера громкости в меню со слайдером громкости плееров для Twitch, OK (работает, если плеер не замучен) -->
<!-- #600 aniboom (referer + useragent, mpd), sibnet (referer) "*://video.sibnet.ru/*", -->
<!-- Фикс vk mobile -->
<!-- добавить чанковую загрузку аудио файла в новом плеере -->
<!-- Вынести HLS в отдельный плеер (?) -->

# 1.7.1 [WIP]
# 1.7.1

- Добавлена поддержка Coursetrain (coursetrain.net) (#706)
- Добавлена поддержка Ricktube (ricktube.ru)
- Добавлена поддержка Bilibili Bangumi (#852)
- Добавлена поддержка Incestflix (#705)
- Добавлена поддержка субтитров от сайта для Vimeo
- Включен обход Media CSP для player.vimeo.com
- Добавлена поддержка просмотра видео в плеере Яндекс Диска без перехода по публичной ссылка (Вы все еще должны открыть публичный доступ к файлу (Не к папке!!!)) (#837)
- Исправлено долгое ожидание перевода для новых запросов на перевод для YouTube (статус = 6) ([1#issuecomment-2433274910](https://github.com/ilyhalight/voice-over-translation/issues/1#issuecomment-2433274910), [868#issuecomment-2436080833](https://github.com/ilyhalight/voice-over-translation/issues/868#issuecomment-2436080833))
- Исправлена работа встраиваемого плеера Vimeo (player.vimeo.com), если видео залито в приватный доступ и доступно только через встраивание (#543, #828)
- Переработан новый аудиоплеер, который полностью работает на AudioContext

По умолчанию данный плеер используется, только, чтобы обходить Media CSP на некоторыъ сайтах. Если вам нужен какой-либо из ниже перечисленных фиксов, то вам нужно будет снять галочку "Использовать только для обхода Media CSP"

- Исправлена работа медиаклавиш, если включен новый плеер (#192, #841)
- Исправлена работа PiP при активном переводе для браузера Arc (#357)
- Опция "Обходить Media CSP" заменена на "Использовать только для обхода Media CSP" (речь про новый плеер), а так же, теперь, данная опция зависит от состояния опции "Использовать новый аудио плеер"

- Исправлена ошибка из-за которой озвучка иногда могла не стартовать со старым плеером (#840)
- Теперь, при преобразование секунд в минуты будет учитываться доля секунд, вычисляемая по формуле secs/60, и если доля секунд больше N%, то результат будет округляться до следующей минуты. Благодаря этому, будет меньше ситуаций, когда сервер вернул, что необходимо подождать, например 110 секунд, а расширение пишет, что осталось около 1 минуты
- Исправлено добавление обводки для слайдеров на некоторых сайтах
- Исправлено некорректное отображение чекбоксов на некоторых сайтах
- Переработана логика работы с аудио плеерами

# 1.7.1 Beta 4

- Исправлена ошибка из-за которой при смене видео кнопка могла перестать работать со старым плеером ([875#discussioncomment-11085577](https://github.com/ilyhalight/voice-over-translation/discussions/875#discussioncomment-11085577))

# 1.7.1 Beta 3

- Обновлена логика запросов к VOT Worker для поддержки новых запросов из 1.7.1-beta2
- Обновлена логика нового плеера. Теперь, он не использует Tone.js и работает лучше, чем раньше

# 1.7.1 Beta 2

- Добавлена поддержка Coursetrain (coursetrain.net) (#706)
- Добавлена поддержка Ricktube (ricktube.ru)
- Добавлена поддержка Bilibili Bangumi (#852)
- Добавлена поддержка Incestflix (#705)
- Частично исправлено добавление питча при увеличение/уменьшение скорости с новым плеером (#849, #853, #840)
- Исправлена логика работы расширенного увеличения громкости с новым плеером
- (БЕЗ ОБНОВЛЕНИЯ VOT WORKER) Исправлено долгое ожидание перевода для новых запросов на перевод для YouTube (статус = 6) ([1#issuecomment-2433274910](https://github.com/ilyhalight/voice-over-translation/issues/1#issuecomment-2433274910), [868#issuecomment-2436080833](https://github.com/ilyhalight/voice-over-translation/issues/868#issuecomment-2436080833))
- Опция "Восстановление мультимедийных клавиш" заменена на "Использовать новый аудио плеер"
- Опция "Обходить Media CSP" заменена на "Использовать только для обхода Media CSP" (речь про новый плеер), а так же, теперь, зависит от состояния опции "Использовать новый аудио плеер"
- Исправлено добавление обводки для слайдеров на некоторых сайтах
- Исправлено некорректное отображение чекбоксов на некоторых сайтах
- Переработана логика работы с аудио плеерами
- Часть кода переписана на TypeScript

# 1.7.1 Beta 1

- Включен обход Media CSP для player.vimeo.com
- Добавлена поддержка субтитров от сайта для Vimeo
- Исправлено неверное название при отключение чекбокса усилителя громкости аудио
- Исправлено неверное название переменной для отключения чекбокса усилителя громкости аудио, что могло приводить к ошибке
- Исправлена работа встраиваемого плеера Vimeo (player.vimeo.com), если видео залито в приватный доступ и доступно только через встраивание (#543, #828)
- Исправлена работа медиаклавиш, если в браузере есть поддержка AudioContext (#192, #357, #841)

В меню расширения добавлен чекбокс "Restoring multimedia keys". По умолчанию чекбокс включен, если браузер поддерживает AudioContext. С включением чекбокса "Restoring multimedia keys", изменение значения чекбокса "Bypassing Media CSP" становится недоступным т.к. эти два чекбокса выполняют один и тот же функционал, но "Bypassing Media CSP" действует для ограниченного числа веб-сайтов, а "Restoring multimedia keys" для всех веб-сайтов с которыми работает расширение. Если после этого перехода не возникнет серьезных проблем, то чекбокс "Bypassing Media CSP" будет полностью удален.

# 1.7.0

Expand Down
58 changes: 31 additions & 27 deletions dist/vot-min.user.js

Large diffs are not rendered by default.

6,575 changes: 4,196 additions & 2,379 deletions dist/vot.user.js

Large diffs are not rendered by default.

13 changes: 1 addition & 12 deletions eslint.config.js
Original file line number Diff line number Diff line change
@@ -1,32 +1,20 @@
import js from "@eslint/js";
import globals from "globals";
import oxlint from "eslint-plugin-oxlint";
import sonarjs from "eslint-plugin-sonarjs";
// import github from "eslint-plugin-github";

export default [
{
ignores: ["dist/*"],
},
js.configs.recommended,
sonarjs.configs.recommended,
{
// plugins: {
// github: github,
// },
rules: {
"no-control-regex": 0,
"no-async-promise-executor": 0,
"sonarjs/max-switch-cases": 0,
"sonarjs/prefer-for-of": 0,
"sonarjs/new-cap": 0,
"sonarjs/todo-tag": "warn",
"sonarjs/no-commented-code": 0,
"sonarjs/no-nested-assignment": 0,
"sonarjs/cognitive-complexity": "warn",
"sonarjs/slow-regex": 0,
// sonarjs/sonar-no-fallthrough crashed in 2.0.1
"sonarjs/sonar-no-fallthrough": 0,
// return after update github eslint plugin to full support eslint 9
// "github/no-innerText": "error",
// "github/no-inner-html": "error",
Expand All @@ -45,6 +33,7 @@ export default [
protobuf: "readonly",
Hls: "readonly",
anime: "readonly",
Tone: "readonly",
// WEBPACK ENVIRONMENT
DEBUG_MODE: "readonly",
AVAILABLE_LOCALES: "readonly",
Expand Down
Loading

0 comments on commit 856b56d

Please sign in to comment.