Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
299 commits
Select commit Hold shift + click to select a range
20bd986
fix loading state when submitting port video
hanydd Dec 16, 2024
db9314d
Add vote and refresh button to port video
hanydd Dec 18, 2024
9bff05e
Fix port video section style
hanydd Dec 20, 2024
8dd230e
Bump Version 0.5.8
hanydd Dec 20, 2024
8a14d22
upgrade packages
hanydd Dec 24, 2024
7a6259c
Update README
hanydd Dec 24, 2024
5e42ee4
Add refresh button as a react component
hanydd Dec 25, 2024
600c159
Use imperative handle to expose update segments
hanydd Dec 25, 2024
5d5e148
Optimize danmaku matching for segment's skipping
xiaoxuan010 Dec 25, 2024
7d0f611
Merge pull request #111 from xiaoxuan010/optimize-danmaku-matching
hanydd Dec 25, 2024
9bde07e
Merge pull request #99 from hanydd/feature-advance-notice
hanydd Dec 25, 2024
7967ec8
reformat
hanydd Dec 25, 2024
07c9d84
Add style to the port video section in popup
hanydd Dec 25, 2024
0bc4d18
Bump Version 0.6.0
hanydd Dec 25, 2024
c2c0541
Update README
hanydd Dec 26, 2024
7504808
Optimize danmaku matching for segment's skipping
xiaoxuan010 Dec 26, 2024
1c70c89
Format HTML Source Files
xiaoxuan010 Dec 26, 2024
9a91b0d
Add danmakus utils test
xiaoxuan010 Dec 27, 2024
5ea3b4a
Merge pull request #113 from xiaoxuan010/optimize-danmaku-matching
hanydd Dec 27, 2024
5acc18a
修改電腦詞彙
NeKoOuO Dec 27, 2024
63104d9
Merge pull request #114 from NeKoOuO/patch-1
hanydd Dec 28, 2024
c13b7f4
add i18n
hanydd Dec 28, 2024
ccb1d49
Bump Version 0.6.1
hanydd Dec 28, 2024
e5556a8
fix port video section on non video page
hanydd Dec 28, 2024
65d4056
update thumbnail full video label render
hanydd Dec 28, 2024
54be660
format
hanydd Dec 28, 2024
180da24
Redo change render order
hanydd Dec 28, 2024
044932c
Bump Version 0.6.2
hanydd Dec 30, 2024
23af0a5
Feat: Dynamic Sponsor Block
etherfun Jan 2, 2025
8c6d390
fix thumbnail rendering
hanydd Jan 2, 2025
0874c3b
feat(Components): optimize player button tooltips
xiaoxuan010 Jan 4, 2025
56b1d5d
fix(Utils): fix VideoID URL parsing error
xiaoxuan010 Dec 31, 2024
cab71c0
Merge pull request #120 from xiaoxuan010/master
hanydd Jan 5, 2025
3f2fa8f
fix history popup
hanydd Jan 5, 2025
8adae02
add history page
hanydd Jan 5, 2025
de204bb
add fav popup thumbnail selector
hanydd Jan 5, 2025
19ee7c7
fix(WebInception): refine condition checks and error handling
xiaoxuan010 Jan 7, 2025
2abd89e
Add type for different selectors
hanydd Jan 13, 2025
e6e3119
custom label anchor
hanydd Jan 13, 2025
8efcadd
Remove log
hanydd Jan 13, 2025
11caae8
feat(Components): add keybind notice in tooltip
xiaoxuan010 Jan 14, 2025
beeb268
feat(Components): add keybind notice for buttons
xiaoxuan010 Jan 14, 2025
bab2fbd
video label on history pages
hanydd Jan 15, 2025
77c548e
add label to play list
hanydd Jan 15, 2025
cd4905e
handle multiple thumbnail label insertion
hanydd Jan 15, 2025
6f41f88
Fix duplicated labels
hanydd Jan 15, 2025
9f2523c
check thumbnails after video id change
hanydd Jan 15, 2025
d002d95
cache segment requests
hanydd Jan 16, 2025
e6ccfe6
Add wait for pageload
hanydd Jan 16, 2025
82db09b
Merge pull request #119 from etherfun/DynamicSponsorBlock
hanydd Jan 16, 2025
10c2a96
Merge pull request #121 from xiaoxuan010/minor-improvements
hanydd Jan 16, 2025
9db4114
change label to class
hanydd Jan 16, 2025
a041514
fix when there are no segments
hanydd Jan 16, 2025
936fd15
only request data when clicking the thumbnail
hanydd Jan 17, 2025
5640df6
Bump Version 0.7.0
hanydd Jan 17, 2025
b5730e4
hide portvideo segment in popup when optioned out
hanydd Jan 20, 2025
36f247e
feat(Utils): local convert between bvid and avid
xiaoxuan010 Jan 22, 2025
fe42434
Merge pull request #124 from xiaoxuan010/feat-local-abv-convert
hanydd Jan 22, 2025
2705540
remove verbose logs
hanydd Jan 25, 2025
8a50c42
Merge SB v5.11.5
ajayyy Sep 12, 2024
deefbb8
Update zh-TW
NeKoOuO Jan 25, 2025
84d122f
Merge pull request #125 from NeKoOuO/patch-1
hanydd Jan 26, 2025
329fea9
try to fix skip button inserted before time
hanydd Jan 26, 2025
0e6455a
Bump Version 0.7.1
hanydd Jan 26, 2025
0328d5d
try to solve memory leak on live page
hanydd Jan 27, 2025
1c25ccd
Bump Version 0.7.2
hanydd Jan 27, 2025
e431d8b
setting segment is before node rendering
hanydd Feb 4, 2025
0767efa
feat: 阻止全屏时使用`Enter`跳过赞助片段时播放器默认聚焦到弹幕输入框的行为
icinggslits Feb 11, 2025
b9b8c1b
Bump Version 0.7.3
hanydd Feb 14, 2025
1b37be9
Merge pull request #130 from icinggslits/feature/block_focus_in_full_…
hanydd Feb 25, 2025
0648032
upgrade dependency
hanydd Mar 18, 2025
4a02022
Bump Version 0.7.4
hanydd Mar 18, 2025
daf8427
new video id format
hanydd Mar 18, 2025
c3765aa
fix circular dependency
hanydd Mar 18, 2025
42317ef
port video api
hanydd Mar 18, 2025
79d12ce
segment api and port video api
hanydd Mar 18, 2025
ebedc15
fix category pill segment not getting reset
hanydd Mar 18, 2025
c32ef3b
fix lint
hanydd Mar 18, 2025
4462dfb
Change messages.json description
etherfun Mar 19, 2025
8e421b6
Update dynamic sponsor regex pattern
etherfun Mar 19, 2025
18f7c45
Feat: Add debug mode for dynamic sponsor blocker and bug fix
etherfun Mar 20, 2025
a599280
support bilibili Gate
etherfun Mar 22, 2025
dbb4e3f
support bewlybewly
etherfun Mar 22, 2025
7353254
feat: 修复一处文字表达
uarix Mar 23, 2025
4d40350
Merge pull request #138 from uarix/master
hanydd Mar 24, 2025
72a1cf0
Merge pull request #135 from etherfun/Dynamic-Sponsor-Block
hanydd Mar 24, 2025
7053792
Merge pull request #137 from etherfun/support
hanydd Mar 26, 2025
3347fb4
Merge remote-tracking branch 'origin/master' into dev-cid
hanydd Mar 26, 2025
4fe7b7e
cache persistence
hanydd Mar 26, 2025
f7ef910
get cid from window list
hanydd Mar 27, 2025
ff83782
fix typo
hanydd Mar 27, 2025
01d171c
less verbose
hanydd Mar 27, 2025
5e45d1c
fix list page
hanydd Mar 27, 2025
ded73e4
cache debounce
hanydd Mar 27, 2025
a9908f8
more robust
hanydd Mar 27, 2025
33f44f4
fix typo
hanydd Mar 29, 2025
a91fda1
fix video id might be null
hanydd Mar 29, 2025
a989db2
Merge pull request #63 from hanydd/dev-cid
hanydd Mar 29, 2025
29d51c4
Bump Version 0.8.0
hanydd Mar 29, 2025
14ea221
reformat
hanydd Mar 30, 2025
7438ed7
detect cid change on a single page video
hanydd Mar 30, 2025
ef412b0
fix(test): fix test case for bvid2avid
xiaoxuan010 Jan 23, 2025
df993c4
feat(Tooltip): add fade out and mouse enter event
xiaoxuan010 Mar 30, 2025
ecef1b4
feat(CategoryPill): add vote request in Tooltip
xiaoxuan010 Mar 31, 2025
18ce93a
Update zh-TW
david082321 Apr 1, 2025
8e3ea88
Merge pull request #142 from david082321/patch-4
hanydd Apr 2, 2025
20d09aa
Merge branch 'master' into dev
hanydd Apr 2, 2025
d47b0c1
fix(Tooltip): optimize PersistedTooltip methods
xiaoxuan010 Apr 2, 2025
bc89e9e
Merge pull request #141 from xiaoxuan010/dev
hanydd Apr 9, 2025
e19cfc7
move server temporarily
hanydd May 1, 2025
d7c078f
Bump Version 0.8.1
hanydd May 1, 2025
9d7ee78
Feat: comment sponsor block
etherfun May 3, 2025
bed3691
Merge branch 'master' into CommentSponsorBlock
etherfun May 3, 2025
de6c007
fix : shadowRootStyle function name
etherfun May 4, 2025
5c1e659
update readme
hanydd May 8, 2025
8cacf67
Merge pull request #154 from etherfun/CommentSponsorBlock
hanydd May 11, 2025
59c91b2
Fix: regex parameters not being passed
etherfun May 12, 2025
0e058fc
feat: enhance match text display
etherfun May 12, 2025
3cebe38
move back server endpoint
hanydd May 16, 2025
ecada53
Bump Version 0.8.2
hanydd May 16, 2025
d69be14
Fix: typo and enhance regex pattern for sponsor block
etherfun May 16, 2025
fdff364
Fix: comment sponsor block condition
etherfun May 16, 2025
25e3c56
Fix: use SVG
etherfun May 17, 2025
76738e1
Fix: DynamicSponsorOption setting is invalid
etherfun May 17, 2025
0d7c04d
lint
hanydd May 17, 2025
9f941a6
fix port video cannot get UUID
hanydd May 17, 2025
ff67b61
fix update port segments
hanydd May 18, 2025
6e4e45e
Merge branch 'master' into regex
hanydd May 22, 2025
669a865
Merge pull request #161 from etherfun/regex
hanydd May 22, 2025
9683d84
Bump Version 0.8.3
hanydd May 22, 2025
33a7983
Fix: page change the CommentListener not loaded
etherfun May 23, 2025
ff734f2
Merge pull request #165 from etherfun/commentlistener
hanydd May 23, 2025
19ed70e
Bump Version 0.8.4
hanydd May 30, 2025
f3b4fcc
Feat: if unskip switch to manual skip
etherfun Jun 1, 2025
7a0157c
upgrade dependency
hanydd Jun 3, 2025
6844254
disable on live page
hanydd Jun 3, 2025
47a7f56
Feat: All comment check
etherfun Jun 4, 2025
7a2ef79
Merge pull request #170 from etherfun/SponsorComment
hanydd Jun 15, 2025
84adf04
Merge pull request #171 from etherfun/upcoming
hanydd Jun 15, 2025
5d8972c
Bump Version 0.8.5
hanydd Jun 18, 2025
cdd585e
Feat: Comment Sponsor Reply Block And Add CommentListener Condition
etherfun Jun 26, 2025
ac8c607
Merge pull request #176 from etherfun/SponsorCommentBlock
hanydd Jul 12, 2025
6ebd4ae
upgrade dependencies
hanydd Jul 19, 2025
d467d15
exclude live pages
hanydd Jul 19, 2025
ead45d0
Bump Version 0.9.0
hanydd Jul 19, 2025
65c7000
update wiki links
hanydd Jul 21, 2025
1c883a0
add wiki links in popup
hanydd Jul 21, 2025
40f28dd
update help page
hanydd Jul 21, 2025
e484b80
Bump Version 0.9.1
hanydd Jul 25, 2025
c3cf176
feat(setting): add confirmation dialog for selector
etherfun Jul 27, 2025
bd68008
feat(ui): Hide full video sponsor label on pages
etherfun Jul 27, 2025
55931aa
reword
hanydd Jul 28, 2025
5fcf0d6
update wording
hanydd Jul 28, 2025
8806ac8
Bump Version 0.9.2
hanydd Jul 28, 2025
5e02239
chore(i18n): sync word name
etherfun Jul 28, 2025
ac9cd00
remove link
hanydd Jul 28, 2025
4c36cc1
update readme
hanydd Jul 28, 2025
d35ec48
fix: correct duplicate HideFullVideoLabels.BlurRevealOnHover and lint…
etherfun Jul 28, 2025
715a50f
update wording
hanydd Jul 28, 2025
086cade
update traditional cn locale
hanydd Jul 31, 2025
aab53ae
Merge pull request #186 from etherfun/HideFullVideo
hanydd Aug 2, 2025
ea87fe9
update wording
hanydd Aug 5, 2025
73f1084
format
hanydd Aug 5, 2025
6d1be84
reorder options
hanydd Aug 5, 2025
8b145a7
Bump Version 0.9.3
hanydd Aug 5, 2025
4bf5649
format
hanydd Aug 5, 2025
d746b4f
update readme
hanydd Aug 5, 2025
1919226
update readme
hanydd Aug 5, 2025
ea45748
do not request data from bilibili
hanydd Aug 6, 2025
c698183
fix readme
hanydd Aug 6, 2025
0aefc86
Bump Version 0.9.4
hanydd Aug 6, 2025
3a5c2e3
update wording
hanydd Aug 7, 2025
affaf6f
disclaimer
hanydd Aug 7, 2025
4ddf801
Bump Version 0.9.5
hanydd Aug 7, 2025
93e403f
unsupported char
hanydd Aug 8, 2025
ca2e35b
update readme
hanydd Aug 8, 2025
05f2a45
cache
hanydd Aug 8, 2025
592146c
exclude live pages from all content scripts
WorldlineChanger Aug 11, 2025
113c5c1
cleanup and reorder
hanydd Aug 11, 2025
94c854b
Merge pull request #197 from WorldlineChanger/master
hanydd Aug 11, 2025
97c13a6
four char hash prefix
hanydd Aug 16, 2025
36611f7
upgrade dependency
hanydd Aug 16, 2025
50fefe7
upgrade dependency
hanydd Aug 16, 2025
231fe4a
four char hash prefix
hanydd Aug 16, 2025
8f6910d
segment cache
hanydd Aug 17, 2025
b5a43d8
common request function
hanydd Aug 17, 2025
b4eb9d7
separate request functions
hanydd Aug 17, 2025
4d23a07
handle response
hanydd Aug 17, 2025
a2d44ba
Bump Version 0.9.6
hanydd Aug 19, 2025
bbd72d8
reduce cache size
hanydd Aug 23, 2025
b738b56
better segment cache
hanydd Aug 23, 2025
d491be4
size based cache
hanydd Aug 23, 2025
95d7c38
Bump Version 0.9.7
hanydd Aug 23, 2025
4845427
persist queue
hanydd Aug 24, 2025
948528e
load queue
hanydd Aug 24, 2025
168ea75
remove unused permission
hanydd Aug 25, 2025
995d8dc
Bump Version 0.9.8
hanydd Aug 25, 2025
5abba72
reduce gc and persist frequency
hanydd Aug 31, 2025
efc4233
remove document cache storage
hanydd Aug 31, 2025
cc8fcdb
Bump Verson 0.9.9
hanydd Sep 6, 2025
5b57783
fix typo
hanydd Sep 6, 2025
20b3550
add options to view cache stats
hanydd Sep 7, 2025
173938d
fix typo
hanydd Sep 7, 2025
221096c
config cache toggle
hanydd Sep 7, 2025
c923dda
move cache config on page
hanydd Sep 7, 2025
9331a8f
cache stats
hanydd Sep 9, 2025
9c26d20
Bump Version 0.10.0
hanydd Sep 9, 2025
c7c9e72
invalidate key on read
hanydd Sep 11, 2025
15a34f0
better cache size calculation
hanydd Sep 12, 2025
b16bc0d
calculate entry size
hanydd Sep 12, 2025
f91994e
use max age
hanydd Sep 13, 2025
e4b3e2c
count as hit
hanydd Sep 13, 2025
c5f9d4b
Fix: Incorrect element selection for “mainPageRecommendation”
etherfun Oct 23, 2025
b9ef88c
Fix: Blur mask not intercepting mouse events
etherfun Oct 23, 2025
56be726
cache control
hanydd Oct 27, 2025
e3f8993
Merge pull request #212 from etherfun/Mask-fix
hanydd Oct 29, 2025
fcb03a0
Bump Version 0.10.2
hanydd Oct 29, 2025
ffdf554
add padding category
hanydd Nov 2, 2025
4c776ba
Bump Version 0.11.0
hanydd Nov 2, 2025
1d1dc2f
whitelist manage component
hanydd Nov 2, 2025
b6a81a2
always show whitelist table
hanydd Nov 2, 2025
1edc4b6
UI change
hanydd Nov 2, 2025
511a3c8
Bump Version 0.11.1
hanydd Nov 5, 2025
1b310fd
Remove unnecessary headers
hanydd Nov 8, 2025
eea2991
Optimization: Improved dynamic sponsor regular expressions and added …
etherfun Nov 8, 2025
19cd7f1
Bump Version 0.11.2
hanydd Nov 8, 2025
51fe4f4
Merge pull request #218 from etherfun/regex
hanydd Nov 9, 2025
5c9217c
Fix: Update text selectors for opus type dynamics
etherfun Nov 27, 2025
9c71c52
optimization: Code optimization
etherfun Nov 27, 2025
717f716
feat: Add keyword count blocking threshold
etherfun Nov 27, 2025
3377e78
Bump Version 0.11.3
hanydd Nov 28, 2025
6740e75
feat: 统一设置界面表格中下拉菜单宽度
kt286 Dec 31, 2025
561636d
update depencencies
hanydd Feb 20, 2026
4e476ed
fx width
hanydd Feb 20, 2026
246ad61
feat(skip): 添加快进到片段中间时仍跳过的开关
AHackerX Feb 7, 2026
20adf90
refactor(content): 逐帧跳转改用同步获取帧率
AHackerX Feb 8, 2026
10dbccf
feat: add macOS Safari extension build pipeline
jackeyzzz12138 Feb 19, 2026
4705580
Feat: Support festival page
etherfun Feb 20, 2026
01cf2b4
Feat: Add festival page pagetype
etherfun Feb 20, 2026
301b156
add safari cicd
hanydd Feb 20, 2026
a19fb2d
format
hanydd Feb 20, 2026
b5939b4
Bump Version 0.11.4
hanydd Feb 20, 2026
7439ab6
fix(deps): resolve 4 high severity minimatch ReDoS vulnerabilities
Mar 3, 2026
219adce
Fix(VideoID): Add av regex
etherfun Feb 22, 2026
e87e0a6
Fest(page): Support bangumi page
etherfun Feb 22, 2026
f1e279c
Optimize: Improve festival page detection
etherfun Feb 24, 2026
99dfd02
Feat(VideoID): get video id from player manifest
etherfun Feb 24, 2026
463532f
Fix(popup&previewbar): festival and bangumi page init error
etherfun Feb 26, 2026
05cc04c
upgrade dependency & bump node version to 20
hanydd Mar 4, 2026
371e2b1
Bump Version 0.11.5
hanydd Mar 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
name: 问题反馈
about: 提交您在使用插件中遇到的 Bug 或错误
title: "[BUG] "
labels: bug
assignees: ''

---

## 问题描述
简要描述您遇到的 Bug 或错误:

## 复现步骤
请提供详细的复现步骤:

1. 打开网址:
2.
3.

## 预期表现
描述您期望的正确表现:

## 实际表现
描述目前实际出现的错误或不符合预期的行为:

## 屏幕截图或录像
如果可能,请附上相关截图或视频,以便更好地说明问题:

## 运行环境
- 操作系统(OS):
- 浏览器:
- 浏览器版本:
- 插件版本:

## 其他信息
补充任何相关信息或日志:
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: 新功能建议
about: 提交您对插件的新功能或改进的建议
title: "[Feature] "
labels: "新功能 Feature"
assignees: ''

---

## 功能描述
简要描述您希望添加的新功能或改进:

## 使用场景
请描述此功能的使用场景或带来的价值:

## 您的建议
如果可以,请提供您对功能实现的详细建议或方案:

## 其他信息
补充任何相关的上下文信息或参考资料:
13 changes: 12 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
submodules: recursive
- uses: actions/setup-node@v4
with:
node-version: '18'
node-version: '20'
- run: npm ci
- name: Copy configuration
run: cp config.json.example config.json
Expand Down Expand Up @@ -46,3 +46,14 @@ jobs:
- uses: montudor/action-zip@0852c26906e00f8a315c704958823928d8018b28
with:
args: zip -qq -r ./builds/FirefoxExtension.zip ./dist

# Create Safari artifacts
- name: Create Safari artifacts
run: npm run build:safari
- uses: actions/upload-artifact@v4
with:
name: SafariExtension
path: dist
- uses: montudor/action-zip@0852c26906e00f8a315c704958823928d8018b28
with:
args: zip -qq -r ./builds/SafariExtension.zip ./dist
16 changes: 15 additions & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
submodules: recursive
- uses: actions/setup-node@v4
with:
node-version: '18'
node-version: '20'
- name: Copy configuration
run: cp config.json.example config.json

Expand Down Expand Up @@ -81,3 +81,17 @@ jobs:
name: EdgeExtension.zip
path: ./builds/EdgeExtension.zip
repo-token: ${{ secrets.GITHUB_TOKEN }}

# Create Safari artifacts
- name: Clear dist for Safari
run: rm -rf ./dist
- name: Create Safari artifacts
run: npm run build:safari
- name: Zip Artifacts
run: cd ./dist ; zip -r ../builds/SafariExtension.zip *
- name: Upload SafariExtension to release
uses: Shopify/upload-to-release@v2.0.0
with:
name: SafariExtension.zip
path: ./builds/SafariExtension.zip
repo-token: ${{ secrets.GITHUB_TOKEN }}
2 changes: 1 addition & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
submodules: recursive
- uses: actions/setup-node@v4
with:
node-version: '18'
node-version: '20'
- run: npm ci
- run: sudo apt-get install chromium-chromedriver

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/update-oss-attribution.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
submodules: recursive
- uses: actions/setup-node@v4
with:
node-version: '18'
node-version: '20'
- name: Install and generate attribution
run: |
npm ci
Expand Down
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,9 @@ node_modules
web-ext-artifacts
.vscode/
dist/
safari/
tmp/
.DS_Store
ci/invidious_instances.json
ci/piped_instances.json
test-results
test-results
7 changes: 4 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
如果您向B站空降助手贡献代码,代表您同意您的贡献也以GPL-3.0协议开源
如果您向小电视空降助手贡献代码,代表您同意您的贡献也以GPL-3.0协议开源

# 构建项目

Expand Down Expand Up @@ -26,13 +26,14 @@

1. 在项目目录下执行 `npm run build:dev` (Chrome) 或 `npm run build:dev:firefox` (Firefox),打包开发版插件。

也可以执行 `npm run build` 或者 `npm run build:firefox` 打包发行版插件,
也可以执行 `npm run build`、`npm run build:firefox` 或 `npm run build:safari` 打包发行版插件。
如果要生成 macOS Safari 可直接用的 Xcode 工程,执行 `npm run build:safari:macos`。

1. 打包好的程序会输出在 `dist/` 文件夹下,你可以直接把生成的文件直接[加载到Chrome浏览器中](https://developer.chrome.com/docs/extensions/mv3/getstarted/#manifest)或者[压缩后加载到火狐浏览器中](https://developer.mozilla.org/docs/Tools/about:debugging#loading_a_temporary_extension)。
Safari 的 `npm run build:safari:macos` 会在项目根目录生成 `safari/` Xcode 工程。

## 开发和测试

执行 `npm run dev` (Chrome) 或者 `npm run dev:firefox` (火狐),npm 会打开一个安装好测试版插件的浏览器窗口,并且支持代码修改热加载。这里使用了[`web-ext run`](https://extensionworkshop.com/documentation/develop/web-ext-command-reference/#commands)。

插件有可能在初次打开的时候不正常加载。如果你发现有问题,可以打开浏览器的插件管理,并手动重新加载插件。

4 changes: 2 additions & 2 deletions PrivacyPolicy.html
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ <h3>Definitions</h3>
</li>
<li>
<p><strong>Company</strong> (referred to as either &quot;the Company&quot;, &quot;We&quot;, &quot;Us&quot; or
&quot;Our&quot; in this Agreement) refers to B站空降助手.</p>
&quot;Our&quot; in this Agreement) refers to 小电视空降助手.</p>
</li>
<li>
<p><strong>Cookies</strong> are small files that are placed on Your computer, mobile device or any other device
Expand Down Expand Up @@ -55,7 +55,7 @@ <h3>Definitions</h3>
Service or from the Service infrastructure itself (for example, the duration of a page visit).</p>
</li>
<li>
<p><strong>Website</strong> refers to B站空降助手, accessible from <a href="http://47.103.74.95:9876"
<p><strong>Website</strong> refers to 小电视空降助手, accessible from <a href="http://47.103.74.95:9876"
rel="external nofollow noopener" target="_blank">http://47.103.74.95:9876</a></p>
</li>
<li>
Expand Down
69 changes: 45 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,79 +5,100 @@
<sub>Logo by <a href="https://github.com/munadikieh">@munadikieh</a>. Modified by Yaodong</sub>
</p>

<h1 align="center">B站空降助手</h1>
<h1 align="center">小电视空降助手</h1>

<div align="center">

[![LICENSE](https://img.shields.io/github/license/hanydd/BilibiliSponsorBlock)](LICENSE)
[![CI Status](https://img.shields.io/github/actions/workflow/status/hanydd/BilibiliSponsorBlock/ci.yml)](https://github.com/hanydd/BilibiliSponsorBlock/actions/workflows/ci.yml)

[![用户数量](https://img.shields.io/badge/dynamic/json?url=http%3A%2F%2F47.103.74.95%2Fapi%2FgetTotalStats&query=activeUsers&suffix=人&label=用户&color=green&cacheSeconds=3600)](https://www.bsbsb.top/stats/)
[![片段数量](https://img.shields.io/badge/dynamic/json?url=http%3A%2F%2F47.103.74.95%2Fapi%2FgetTotalStats&query=totalSubmissions&label=共提交了&suffix=个片段&color=red&cacheSeconds=3600)](https://www.bsbsb.top/stats/)
[![节省时间](https://img.shields.io/badge/dynamic/json?url=http%3A%2F%2F47.103.74.95%2Fapi%2FgetTotalStats&query=minutesSaved&suffix=%E5%88%86%E9%92%9F&label=%E5%85%B1%E8%8A%82%E7%9C%81&color=orange&cacheSeconds=3600)](https://www.bsbsb.top/stats/)
[![用户数量](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fbsbsb.top%2Fapi%2FgetTotalStats&query=activeUsers&suffix=人&label=用户&color=green&cacheSeconds=3600)](https://www.bsbsb.top/stats/)
[![片段数量](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fbsbsb.top%2Fapi%2FgetTotalStats&query=totalSubmissions&label=共提交了&suffix=个片段&color=red&cacheSeconds=3600)](https://www.bsbsb.top/stats/)
[![节省时间](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fbsbsb.top%2Fapi%2FgetTotalStats&query=minutesSaved&suffix=%E5%88%86%E9%92%9F&label=%E5%85%B1%E8%8A%82%E7%9C%81&color=orange&cacheSeconds=3600)](https://www.bsbsb.top/stats/)


| Chrome | Edge | FireFox | 从文件安装 | 讨论群 |
|----------|----------|----------|----------|----------|
| [![Chrome Web Store](https://img.shields.io/chrome-web-store/v/eaoelafamejbnggahofapllmfhlhajdd?label=Chrome插件商店)](https://chrome.google.com/webstore/detail/eaoelafamejbnggahofapllmfhlhajdd) | [![Edge Web Store](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fmicrosoftedge.microsoft.com%2Faddons%2Fgetproductdetailsbycrxid%2Fkhkeolgobhdoloioehjgfpobjnmagfha&query=version&prefix=v&label=Edge插件商店&color=green)](https://microsoftedge.microsoft.com/addons/detail/khkeolgobhdoloioehjgfpobjnmagfha) | [![Firefox](https://img.shields.io/amo/v/bilisponsorblock?label=Mozilla插件商店)](https://addons.mozilla.org/zh-TW/firefox/addon/bilisponsorblock/) | [![GitHub Release](https://img.shields.io/github/v/release/hanydd/BilibiliSponsorBlock)](https://github.com/hanydd/BilibiliSponsorBlock/releases/latest/) | [![Group](https://img.shields.io/badge/Telegram-2CA5E0?style=flat-squeare&logo=telegram&logoColor=white)](https://t.me/bsbsb_top) [![QQ](https://img.shields.io/badge/371384235-EB1923?logo=tencent-qq&logoColor=white)](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=Zp6HSzPkZy0xIU75Ljtc80CxY8PoyZ4Z&authKey=WlINewkGvx8rQhpBxYVj%2B9xMKgqAaVixxfgRgBgSXMdwmmst7BeWk7XflpvZrhOb&noverify=0&group_code=371384235) |
| Chrome | FireFox | 讨论群 |
|---------|----------|----------|
| [![Chrome Web Store](https://img.shields.io/chrome-web-store/v/eaoelafamejbnggahofapllmfhlhajdd?label=Chrome插件商店)](https://chrome.google.com/webstore/detail/eaoelafamejbnggahofapllmfhlhajdd) | [![Firefox](https://img.shields.io/amo/v/bilisponsorblock?label=Mozilla插件商店)](https://addons.mozilla.org/addon/bilisponsorblock/) | [![Group](https://img.shields.io/badge/Telegram-2CA5E0?style=flat-squeare&logo=telegram&logoColor=white)](https://t.me/bsbsb_top) |


</div>


受够了 B 站视频中无处不在的赞助广告了吗?受够了看了一半才发现的软广视频了吗?B 站空降助手是一款帮你精准空降到广告之后的浏览器插件。插件自动获取并跳过广告片段,让你的视频体验毫无中断!
受够了视频中无处不在的赞助广告了吗?受够了看了一半才发现的软广视频了吗?小电视空降助手是一款帮你精准空降到广告之后的浏览器插件。插件自动获取并跳过广告片段,让你的视频体验毫无中断!

除了广告之外,插件还支持跳过其他类别的片段,例如开场结尾的动画、一键三连提示,或者直接空降到视频封面的位置。插件中所有的标注片段都来自网友标注,您也可以提交自己的片段来为空降指挥部添砖加瓦。

想知道大佬们提交了多少片段?在[排行榜](https://www.bsbsb.top/stats/)看看吧。

目前本项目由我个人在业余时间维护,如果你想支持我,欢迎查看[赞助](https://www.bsbsb.top/donate/)。

本插件移植自油管插件[SponsorBlock](https://github.com/ajayyy/SponsorBlock),保留了大部分的 UI 和使用方法,加入一些了 B 站特色的功能
本插件移植自插件[SponsorBlock](https://github.com/ajayyy/SponsorBlock),保留了大部分的 UI 和使用方法,加入一些了小电视特色的功能

# 安装

- 目前上架了[Chrome 应用商店](https://chromewebstore.google.com/detail/eaoelafamejbnggahofapllmfhlhajdd),[Edge 应用商店](https://microsoftedge.microsoft.com/addons/detail/khkeolgobhdoloioehjgfpobjnmagfha), [火狐应用商店](https://addons.mozilla.org/en-US/firefox/addon/bilisponsorblock/)。如果你知道更多流行的浏览器插件商店,欢迎留言~
- 目前上架了[Chrome 应用商店](https://chromewebstore.google.com/detail/eaoelafamejbnggahofapllmfhlhajdd),[火狐应用商店](https://addons.mozilla.org/en-US/firefox/addon/bilisponsorblock/)。如果你知道更多流行的浏览器插件商店,欢迎留言~

- 如果您使用的是基于Chromium内核的浏览器,例如Chrome、Edge、360,可以从[Github Release](https://github.com/hanydd/BilibiliSponsorBlock/releases/latest)获取crx安装文件。
1. 点击下载`Chrome`,修改文件后缀为`.crx`,最终的文件名应为`Chrome.crx`。
1. 打开浏览器插件管理页面,启用启用“开发者模式”,将`Chrome.crx`文件拖入页面,完成安装。

- 或者可以从 [Github Release](https://github.com/hanydd/BilibiliSponsorBlock/releases/latest) 页面获取未打包的插件。
- 如果你无法打开上面的商店,可以尝试从从 [Github Release](https://github.com/hanydd/BilibiliSponsorBlock/releases/latest) 页面获取未打包的插件。

1. 根据您浏览器的类型下载适合的版本,Chrome、Edge、360 和基于 Chromium 的国产浏览器下载 `ChromiumExtension.zip`;火狐浏览器下载`FirefoxExtension.zip`。并解压缩。

1. 打开浏览器的插件管理页面,启用“开发者模式”,点击`加载已解压的拓展程序`,选择刚刚下载解压的插件文件夹,就可以完成安装。

## macOS Safari 安装(源码构建)

Safari 版本通过 Safari Web Extension 打包。项目已提供一键脚本:

```bash
# 先准备配置文件和依赖
cp config.json.example config.json
npm ci

# 构建 Safari 扩展并生成 macOS Xcode 工程
npm run build:safari:macos
```

默认会在项目根目录生成 `safari/` Xcode 工程。然后:

1. 使用 Xcode 打开 `safari/` 工程并编译运行。
1. 打开 Safari -> 设置 -> 扩展,启用对应扩展。

可选环境变量(用于自定义工程信息):

```bash
BSB_SAFARI_APP_NAME="小电视空降助手" \
BSB_SAFARI_BUNDLE_ID="top.bsbsb.safari" \
BSB_SAFARI_PROJECT_DIR="safari" \
npm run build:safari:macos
```

# 功能

## 使用说明

如果你使用过 YouTube 的原插件,你会发现在核心功能和交互上,本插件基本没有做出大的改动。可以先参照原插件的使用方法尝试使用。
如果你使用过原插件,你会发现在核心功能和交互上,本插件基本没有做出大的改动。可以先参照原插件的使用方法尝试使用。

可以先在这个[示例视频](https://www.bilibili.com/video/BV1bY4y1v7Mb/)上试一试精准空降的快乐!

视频使用说明正在计划制作中。

## 相比[原插件](https://github.com/ajayyy/SponsorBlock)变化

- 放弃了多语言支持,只支持简体和繁体中文。
- 放弃了多语言支持,只支持简体和繁体中文。

- 放弃了移动端H5网页支持。
- 放弃了移动端H5网页支持。

- 放弃了第三方镜像站支持。如果有使用人数多的镜像站,欢迎讨论添加支持。
- 放弃了第三方镜像站支持。如果有使用人数多的镜像站,欢迎讨论添加支持。

- 加入了绑定搬运视频的功能。绑定的油管视频可以自动从 SponsorBlock 数据库中获取片段信息。
- 加入了绑定搬运视频的功能。绑定的视频可以自动从 SponsorBlock 数据库中获取片段信息。

- 更新 UI。
- 更新 UI。

## 功能更新计划

参考 [Github Project](https://github.com/users/hanydd/projects/2/)

# 服务端

服务端代码:https://github.com/hanydd/BilibiliSponsorBlockServer
# 服务端及数据

为了方便大家二次开发,所有片段的数据现在开放下载:https://bsbsb.top/database.zip

Expand Down
30 changes: 16 additions & 14 deletions config.json.example
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"serverAddress": "https://www.bsbsb.top",
"testingServerAddress": "http://127.0.0.1:9876",
"serverAddressComment": "This specifies the default SponsorBlock server to connect to",
"categoryList": ["sponsor", "selfpromo", "exclusive_access", "interaction", "poi_highlight", "intro", "outro", "preview", "filler", "music_offtopic"],
"categoryList": ["sponsor", "selfpromo", "exclusive_access", "interaction", "poi_highlight", "intro", "outro", "preview", "padding", "filler", "music_offtopic"],
"categorySupport": {
"sponsor": ["skip", "mute", "full"],
"selfpromo": ["skip", "mute", "full"],
Expand All @@ -13,20 +13,22 @@
"preview": ["skip", "mute"],
"filler": ["skip", "mute"],
"music_offtopic": ["skip"],
"poi_highlight": ["poi"]
"poi_highlight": ["poi"],
"padding": ["skip"]
},
"wikiLinks": {
"sponsor": "https://wiki.sponsor.ajay.app/w/Sponsor",
"selfpromo": "https://wiki.sponsor.ajay.app/w/Unpaid/Self_Promotion",
"exclusive_access": "https://wiki.sponsor.ajay.app/w/Exclusive_Access",
"interaction": "https://wiki.sponsor.ajay.app/w/Interaction_Reminder_(Subscribe)",
"intro": "https://wiki.sponsor.ajay.app/w/Intermission/Intro_Animation",
"outro": "https://wiki.sponsor.ajay.app/w/Endcards/Credits",
"preview": "https://wiki.sponsor.ajay.app/w/Preview/Recap",
"filler": "https://wiki.sponsor.ajay.app/w/Filler_Tangent",
"music_offtopic": "https://wiki.sponsor.ajay.app/w/Music:_Non-Music_Section",
"poi_highlight": "https://wiki.sponsor.ajay.app/w/Highlight",
"guidelines": "https://wiki.sponsor.ajay.app/w/Guidelines",
"mute": "https://wiki.sponsor.ajay.app/w/Mute_Segment"
"sponsor": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Sponsor",
"selfpromo": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Unpaid%20Self%20Promotion",
"exclusive_access": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Full%20Video%20Labels#%E6%9F%94%E6%80%A7%E6%8E%A8%E5%B9%BF%E5%93%81%E7%89%8C%E5%90%88%E4%BD%9C",
"interaction": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Interaction%20Reminder%20(Subscribe)",
"intro": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Intermission%20Intro%20Animation",
"outro": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Endcards%20Credits%20(Outro)",
"preview": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Preview%20Recap%20Hook",
"filler": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Tangents%20Jokes",
"music_offtopic": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Music%20Non-Music%20Section",
"poi_highlight": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/HighLight",
"guidelines": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Submitting%20tips",
"mute": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Mute%20Segment",
"padding": "https://github.com/hanydd/BilibiliSponsorBlock/wiki/Sponsor"
}
}
11 changes: 8 additions & 3 deletions manifest/chrome-manifest-extra.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
"scripting"
],
"optional_permissions": [
"declarativeContent",
"webNavigation"
],
"host_permissions": [
Expand All @@ -22,7 +21,10 @@
"matches": [
"https://*.bilibili.com/*"
],
"all_frames": false,
"exclude_matches": [
"https://live.bilibili.com/*"
],
"all_frames": true,
"js": [
"./js/content.js"
],
Expand All @@ -37,7 +39,10 @@
"matches": [
"https://*.bilibili.com/*"
],
"all_frames": false,
"exclude_matches": [
"https://live.bilibili.com/*"
],
"all_frames": true,
"js": [
"./js/document.js"
]
Expand Down
5 changes: 4 additions & 1 deletion manifest/firefox-manifest-extra.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,10 @@
"matches": [
"https://*.bilibili.com/*"
],
"all_frames": false,
"exclude_matches": [
"https://live.bilibili.com/*"
],
"all_frames": true,
"js": [
"./js/content.js"
],
Expand Down
Loading