From e686c828fa4c252ab870a045c9856e5c10830a92 Mon Sep 17 00:00:00 2001 From: Hakadao Date: Sat, 6 May 2023 19:01:32 +0800 Subject: [PATCH] refactor: reorganize files and adjust variable names --- src/background/apis/index.ts | 21 ----------- src/background/index.ts | 6 ++-- .../{apis => messageListeners}/anime.ts | 2 +- .../{apis => messageListeners}/auth.ts | 2 +- .../favorite.ts} | 2 +- .../{apis => messageListeners}/history.ts | 2 +- src/background/messageListeners/index.ts | 23 ++++++++++++ .../moments.ts => messageListeners/moment.ts} | 2 +- .../notification.ts} | 2 +- .../{apis => messageListeners}/search.ts | 2 +- .../{apis => messageListeners}/user.ts | 2 +- .../videos.ts => messageListeners/video.ts} | 30 +--------------- src/background/messageListeners/watchLater.ts | 36 +++++++++++++++++++ 13 files changed, 71 insertions(+), 61 deletions(-) delete mode 100644 src/background/apis/index.ts rename src/background/{apis => messageListeners}/anime.ts (98%) rename src/background/{apis => messageListeners}/auth.ts (95%) rename src/background/{apis/favorites.ts => messageListeners/favorite.ts} (96%) rename src/background/{apis => messageListeners}/history.ts (98%) create mode 100644 src/background/messageListeners/index.ts rename src/background/{apis/moments.ts => messageListeners/moment.ts} (97%) rename src/background/{apis/notifications.ts => messageListeners/notification.ts} (94%) rename src/background/{apis => messageListeners}/search.ts (91%) rename src/background/{apis => messageListeners}/user.ts (94%) rename src/background/{apis/videos.ts => messageListeners/video.ts} (78%) create mode 100644 src/background/messageListeners/watchLater.ts diff --git a/src/background/apis/index.ts b/src/background/apis/index.ts deleted file mode 100644 index 2b3fb064..00000000 --- a/src/background/apis/index.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { setupAnimeAPIs } from './anime' -import { setupAuthAPIs } from './auth' -import { setupVideosAPIs } from './videos' -import { setupUserAPIs } from './user' -import { setupSearchAPIs } from './search' -import { setupNotificationsAPIs } from './notifications' -import { setupMomentsAPIs } from './moments' -import { setupHistoryAPIs } from './history' -import { setupFavoritesAPIs } from './favorites' - -export const setupAllAPIs = () => { - setupAuthAPIs() - setupVideosAPIs() - setupUserAPIs() - setupSearchAPIs() - setupNotificationsAPIs() - setupMomentsAPIs() - setupHistoryAPIs() - setupFavoritesAPIs() - setupAnimeAPIs() -} diff --git a/src/background/index.ts b/src/background/index.ts index e75ac988..34ef7780 100644 --- a/src/background/index.ts +++ b/src/background/index.ts @@ -2,7 +2,7 @@ import type { Tabs } from 'webextension-polyfill' import browser from 'webextension-polyfill' // import { onMessage, sendMessage } from 'webext-bridge' import { resetCss } from './resetWebsiteStyle' -import { setupAllAPIs } from './apis' +import { setupAllMsgLstnrs } from './messageListeners' browser.runtime.onInstalled.addListener((): void => { // eslint-disable-next-line no-console @@ -128,5 +128,5 @@ browser.tabs.onUpdated.addListener((tabId: number, changInfo: Tabs.OnUpdatedChan } }) -// Setup APIs -setupAllAPIs() +// Setup all message listeners +setupAllMsgLstnrs() diff --git a/src/background/apis/anime.ts b/src/background/messageListeners/anime.ts similarity index 98% rename from src/background/apis/anime.ts rename to src/background/messageListeners/anime.ts index 8e2c3c0f..a2388c8f 100644 --- a/src/background/apis/anime.ts +++ b/src/background/messageListeners/anime.ts @@ -1,7 +1,7 @@ import browser from 'webextension-polyfill' // import { getUserID } from '~/utils' -export const setupAnimeAPIs = () => { +export const setupAnimeMsgLstnr = () => { browser.runtime.onConnect.addListener(() => { browser.runtime.onMessage.addListener((message) => { // get popular anime list diff --git a/src/background/apis/auth.ts b/src/background/messageListeners/auth.ts similarity index 95% rename from src/background/apis/auth.ts rename to src/background/messageListeners/auth.ts index 5f11291e..4b223b50 100644 --- a/src/background/apis/auth.ts +++ b/src/background/messageListeners/auth.ts @@ -1,6 +1,6 @@ import browser from 'webextension-polyfill' -export const setupAuthAPIs = () => { +export const setupAuthMsgLstnr = () => { browser.runtime.onConnect.addListener(() => { browser.runtime.onMessage.addListener((message, sender, sendResponse) => { if (message.contentScriptQuery === 'getAccessKey') { diff --git a/src/background/apis/favorites.ts b/src/background/messageListeners/favorite.ts similarity index 96% rename from src/background/apis/favorites.ts rename to src/background/messageListeners/favorite.ts index 6a8bbb90..151df1b9 100644 --- a/src/background/apis/favorites.ts +++ b/src/background/messageListeners/favorite.ts @@ -1,6 +1,6 @@ import browser from 'webextension-polyfill' -export const setupFavoritesAPIs = () => { +export const setupFavoriteMsgLstnr = () => { browser.runtime.onConnect.addListener(() => { browser.runtime.onMessage.addListener((message) => { // https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/fav/info.md#%E8%8E%B7%E5%8F%96%E6%8C%87%E5%AE%9A%E7%94%A8%E6%88%B7%E5%88%9B%E5%BB%BA%E7%9A%84%E6%89%80%E6%9C%89%E6%94%B6%E8%97%8F%E5%A4%B9%E4%BF%A1%E6%81%AF diff --git a/src/background/apis/history.ts b/src/background/messageListeners/history.ts similarity index 98% rename from src/background/apis/history.ts rename to src/background/messageListeners/history.ts index e9afb345..8ff3f983 100644 --- a/src/background/apis/history.ts +++ b/src/background/messageListeners/history.ts @@ -1,6 +1,6 @@ import browser from 'webextension-polyfill' -export const setupHistoryAPIs = () => { +export const setupHistoryMsgLstnr = () => { browser.runtime.onConnect.addListener(() => { browser.runtime.onMessage.addListener((message) => { // https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/history&toview/history.md#%E8%8E%B7%E5%8F%96%E5%8E%86%E5%8F%B2%E8%AE%B0%E5%BD%95%E5%88%97%E8%A1%A8_web%E7%AB%AF diff --git a/src/background/messageListeners/index.ts b/src/background/messageListeners/index.ts new file mode 100644 index 00000000..a6679ad2 --- /dev/null +++ b/src/background/messageListeners/index.ts @@ -0,0 +1,23 @@ +import { setupAnimeMsgLstnr } from './anime' +import { setupAuthMsgLstnr } from './auth' +import { setupVideoMsgLstnr } from './video' +import { setupUserMsgLstnr } from './user' +import { setupSearchMsgLstnr } from './search' +import { setupNotificationMsgLstnr } from './notification' +import { setupMomentMsgLstnr } from './moment' +import { setupHistoryMsgLstnr } from './history' +import { setupFavoriteMsgLstnr } from './favorite' +import { setupWatchLaterMsgLstnr } from './watchLater' + +export const setupAllMsgLstnrs = () => { + setupAuthMsgLstnr() + setupVideoMsgLstnr() + setupUserMsgLstnr() + setupSearchMsgLstnr() + setupNotificationMsgLstnr() + setupMomentMsgLstnr() + setupHistoryMsgLstnr() + setupFavoriteMsgLstnr() + setupAnimeMsgLstnr() + setupWatchLaterMsgLstnr() +} diff --git a/src/background/apis/moments.ts b/src/background/messageListeners/moment.ts similarity index 97% rename from src/background/apis/moments.ts rename to src/background/messageListeners/moment.ts index 35ba7aef..cfd5dfef 100644 --- a/src/background/apis/moments.ts +++ b/src/background/messageListeners/moment.ts @@ -1,6 +1,6 @@ import browser from 'webextension-polyfill' -export const setupMomentsAPIs = () => { +export const setupMomentMsgLstnr = () => { browser.runtime.onConnect.addListener(() => { browser.runtime.onMessage.addListener((message) => { if (message.contentScriptQuery === 'getNewMomentsCount') { diff --git a/src/background/apis/notifications.ts b/src/background/messageListeners/notification.ts similarity index 94% rename from src/background/apis/notifications.ts rename to src/background/messageListeners/notification.ts index 5fb2c75c..dccdcbdc 100644 --- a/src/background/apis/notifications.ts +++ b/src/background/messageListeners/notification.ts @@ -1,6 +1,6 @@ import browser from 'webextension-polyfill' -export const setupNotificationsAPIs = () => { +export const setupNotificationMsgLstnr = () => { browser.runtime.onConnect.addListener(() => { browser.runtime.onMessage.addListener((message) => { if (message.contentScriptQuery === 'getUnreadMsg') { diff --git a/src/background/apis/search.ts b/src/background/messageListeners/search.ts similarity index 91% rename from src/background/apis/search.ts rename to src/background/messageListeners/search.ts index 2c0c61e6..6c42df38 100644 --- a/src/background/apis/search.ts +++ b/src/background/messageListeners/search.ts @@ -1,6 +1,6 @@ import browser from 'webextension-polyfill' -export const setupSearchAPIs = () => { +export const setupSearchMsgLstnr = () => { browser.runtime.onConnect.addListener(() => { browser.runtime.onMessage.addListener((message) => { if (message.contentScriptQuery === 'getSearchSuggestion') { diff --git a/src/background/apis/user.ts b/src/background/messageListeners/user.ts similarity index 94% rename from src/background/apis/user.ts rename to src/background/messageListeners/user.ts index a79b2bba..bc1932ce 100644 --- a/src/background/apis/user.ts +++ b/src/background/messageListeners/user.ts @@ -1,6 +1,6 @@ import browser from 'webextension-polyfill' -export const setupUserAPIs = () => { +export const setupUserMsgLstnr = () => { browser.runtime.onConnect.addListener(() => { browser.runtime.onMessage.addListener((message) => { if (message.contentScriptQuery === 'getUserInfo') { diff --git a/src/background/apis/videos.ts b/src/background/messageListeners/video.ts similarity index 78% rename from src/background/apis/videos.ts rename to src/background/messageListeners/video.ts index 0a0d40d7..0db22600 100644 --- a/src/background/apis/videos.ts +++ b/src/background/messageListeners/video.ts @@ -1,6 +1,6 @@ import browser from 'webextension-polyfill' -export const setupVideosAPIs = () => { +export const setupVideoMsgLstnr = () => { browser.runtime.onConnect.addListener(() => { browser.runtime.onMessage.addListener((message) => { // #region APP端api,遺棄 @@ -88,34 +88,6 @@ export const setupVideosAPIs = () => { .then(data => data) .catch(error => console.error(error)) } - // https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/docs/history&toview/toview.md#%E8%A7%86%E9%A2%91%E6%B7%BB%E5%8A%A0%E7%A8%8D%E5%90%8E%E5%86%8D%E7%9C%8B - else if (message.contentScriptQuery === 'saveToWatchLater') { - const url = 'https://api.bilibili.com/x/v2/history/toview/add' - return fetch(url, { - method: 'POST', - body: new URLSearchParams({ - csrf: message.csrf, - aid: message.aid, - }), - }) - .then(response => response.json()) - .then(data => data) - .catch(error => console.error(error)) - } - // https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/docs/history&toview/toview.md#%E5%88%A0%E9%99%A4%E7%A8%8D%E5%90%8E%E5%86%8D%E7%9C%8B%E8%A7%86%E9%A2%91 - else if (message.contentScriptQuery === 'removeFromWatchLater') { - const url = 'https://api.bilibili.com/x/v2/history/toview/del' - return fetch(url, { - method: 'POST', - body: new URLSearchParams({ - csrf: message.csrf, - aid: message.aid, - }), - }) - .then(response => response.json()) - .then(data => data) - .catch(error => console.error(error)) - } }) }) } diff --git a/src/background/messageListeners/watchLater.ts b/src/background/messageListeners/watchLater.ts new file mode 100644 index 00000000..959d66c3 --- /dev/null +++ b/src/background/messageListeners/watchLater.ts @@ -0,0 +1,36 @@ +import browser from 'webextension-polyfill' + +export const setupWatchLaterMsgLstnr = () => { + browser.runtime.onConnect.addListener(() => { + browser.runtime.onMessage.addListener((message) => { + // https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/docs/history&toview/toview.md#%E8%A7%86%E9%A2%91%E6%B7%BB%E5%8A%A0%E7%A8%8D%E5%90%8E%E5%86%8D%E7%9C%8B + if (message.contentScriptQuery === 'saveToWatchLater') { + const url = 'https://api.bilibili.com/x/v2/history/toview/add' + return fetch(url, { + method: 'POST', + body: new URLSearchParams({ + csrf: message.csrf, + aid: message.aid, + }), + }) + .then(response => response.json()) + .then(data => data) + .catch(error => console.error(error)) + } + // https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/docs/history&toview/toview.md#%E5%88%A0%E9%99%A4%E7%A8%8D%E5%90%8E%E5%86%8D%E7%9C%8B%E8%A7%86%E9%A2%91 + else if (message.contentScriptQuery === 'removeFromWatchLater') { + const url = 'https://api.bilibili.com/x/v2/history/toview/del' + return fetch(url, { + method: 'POST', + body: new URLSearchParams({ + csrf: message.csrf, + aid: message.aid, + }), + }) + .then(response => response.json()) + .then(data => data) + .catch(error => console.error(error)) + } + }) + }) +}