From 3a44267fdfa1848295b4e74826c128139bcabb12 Mon Sep 17 00:00:00 2001 From: Shiba <44804845+DeepDoge@users.noreply.github.com> Date: Fri, 1 Jul 2022 20:46:51 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A5=20Modified=20for=20Watch=20on=20Od?= =?UTF-8?q?ysee?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/contributors.yml | 23 ---- src/assets/icons/wol/icon128.png | Bin 4451 -> 22070 bytes src/assets/icons/wol/icon16.png | Bin 544 -> 1182 bytes src/assets/icons/wol/icon48.png | Bin 1982 -> 4076 bytes src/assets/styles/common.css | 4 +- src/modules/yt/urlResolve.ts | 8 +- src/pages/popup/main.tsx | 187 +++++------------------------ src/pages/popup/style.css | 4 + src/scripts/ytContent.tsx | 18 +-- src/settings/index.ts | 56 ++------- 10 files changed, 50 insertions(+), 250 deletions(-) delete mode 100644 .github/workflows/contributors.yml diff --git a/.github/workflows/contributors.yml b/.github/workflows/contributors.yml deleted file mode 100644 index 71666c9..0000000 --- a/.github/workflows/contributors.yml +++ /dev/null @@ -1,23 +0,0 @@ -name: Add contributors -on: - schedule: - - cron: '20 20 * * *' - push: - branches: - - master - -jobs: - add-contributors: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - uses: BobAnkh/add-contributors@master - with: - CONTRIBUTOR: '## Contributors' - COLUMN_PER_ROW: '6' - ACCESS_TOKEN: ${{secrets.GITHUB_TOKEN}} - IMG_WIDTH: '100' - FONT_SIZE: '14' - PATH: '/README.md' - COMMIT_MESSAGE: 'docs(README): update contributors' - AVATAR_SHAPE: 'round' diff --git a/src/assets/icons/wol/icon128.png b/src/assets/icons/wol/icon128.png index 525efe9461449d0987e60ccb6933da3dcf68eb77..b75239f6e417bf918a3ec346c5a58f72438c01e6 100644 GIT binary patch literal 22070 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 literal 4451 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 axUiE``vr4y-MPaPz!|iSd9A5u{C@zgU3cgJ diff --git a/src/assets/icons/wol/icon16.png b/src/assets/icons/wol/icon16.png index 48a46f61b7883828e375a29f79e4e1ddf575df5f..4b766455d9060cbb20f9a2eb84f6782e22d2c3f1 100644 GIT binary patch literal 1182 zcmYk5dr(wW7{D)7m|BVDb_)1}u4~ zK@b!MF@q=w1_mM&BMlFSL6L#63mlmWaR!h*u&iNJ3S)?9?LSqt-dcAs?wwmssTE7zB<&+@lcB z2-GJMQ>1|GGy3~WsDCoz8iTq;6JOP_+Ie>70Vt|M1yNXJDl3DQ1eQO96g@UY;27`e!a6p}g$42Ao0@N=O^;MvLVRToo{^2?rC__b3 zy8jlQ`2|&9&y0`Y(Q;fN0>_SG5+y1KL4|Vkh>Wanq}r~~*Sk0jWwkSUL`T+D;88+6 zCIF<$FJBG)4c?qJOkRoL|s7JdYe3F7oD-QUJ8&Vu72B1Z($ zJwT>A$U2P2i*cm@SMk}2+w8(LGjxr@bn-M&!5=`JNy{3KIN4k~i_C zgg7o_`kM6X3;NYrvQk0hx)Ax!WT_un5)ahgAk710cz|pl`f3?RVnm)B_jsNiYbA@E z$kUEgjg%-b-V984oYgN+b2On})euD=viG_M&Mh-gv6%*xrqkDl}+h)-DHEj>wg)3-b(vS z9@y;bea0g;{9jF{9t?S*=|IjNdL;o-<~obvn#%wys^J7Vh-**N%MFXC4xU}TN2i+t3zRp zOHVcrSeAMB3yx_Zzote7rWr3rIT9ejo zYI)&Ww_f=5%9>b-LLN0Fi3p9k)FcZJiEffbhRsioOx~~8+?&(1Pu*>8nwtJ=YJ76W zOSRN|eiW9qh^J~j!GKV#No1@+ z@4E(l#sOWQ>wnx$)tGStik`Ft8+qS<`$D*RSrd(Dtejxkg0(4FzXhuxWQ#(!B+Ta( z1DQH^(tB9j`baSPM7V!LlQ!klp6xih!k3cb*2*54a+~1wb4`DjI(PVx?2hJkx^_Y^ zr0MVeAHj&`LGJ|xw&VM&rZ5>-bPooEhMI)mGziBVM1N)v=t>NWh`V)$ UqF5gR01E&B07*qoM6N<$f*qy>R{#J2 diff --git a/src/assets/icons/wol/icon48.png b/src/assets/icons/wol/icon48.png index 1abb36417ab1e39c661dec644e30980ab5409975..adb2123dc82b4bc4dc764e8634de03ba9494bc30 100644 GIT binary patch literal 4076 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 void): Promise { - const { urlResolver: urlResolverSettingName, privateKey, publicKey } = await getExtensionSettingsAsync() + const { urlResolver: urlResolverSettingName } = await getExtensionSettingsAsync() const urlResolverSetting = ytUrlResolversSettings[urlResolverSettingName] async function requestChunk(params: Paramaters) { @@ -46,11 +45,6 @@ export async function resolveById(params: Paramaters, progressCallback?: (progre url.pathname = path.join(url.pathname, '/resolve') url.searchParams.set('video_ids', params.filter((item) => item.type === 'video').map((item) => item.id).join(',')) url.searchParams.set('channel_ids', params.filter((item) => item.type === 'channel').map((item) => item.id).join(',')) - if (urlResolverSetting.signRequest && publicKey && privateKey) - url.searchParams.set('keys', JSON.stringify({ - signature: await sign(url.searchParams.toString(), privateKey), - publicKey - })) const apiResponse = await fetch(url.toString(), { cache: 'no-store' }) if (apiResponse.ok) { diff --git a/src/pages/popup/main.tsx b/src/pages/popup/main.tsx index 41bc743..01dc12f 100644 --- a/src/pages/popup/main.tsx +++ b/src/pages/popup/main.tsx @@ -1,23 +1,14 @@ import { h, render } from 'preact' import { useState } from 'preact/hooks' import { createDialogManager, Dialogs } from '../../components/dialogs' -import { exportProfileKeysAsFile, friendlyPublicKey, generateProfileAndSetNickname, getProfile, purgeProfile, resetProfileSettings } from '../../modules/crypto' import { lbryUrlCache } from '../../modules/yt/urlCache' -import { getTargetPlatfromSettingsEntiries, getYtUrlResolversSettingsEntiries, setExtensionSetting, useExtensionSettings } from '../../settings' -import { openImportPopup } from '../import/main' +import { setExtensionSetting, targetPlatformSettings, useExtensionSettings } from '../../settings' - -/** Gets all the options for redirect destinations as selection options */ -const targetPlatforms = getTargetPlatfromSettingsEntiries() -const ytUrlResolverOptions = getYtUrlResolversSettingsEntiries() - -function WatchOnLbryPopup(params: { profile: Awaited> | null }) { - const { redirect, targetPlatform, urlResolver, privateKey, publicKey } = useExtensionSettings() +function WatchOnLbryPopup(params: {}) { + const { redirect } = useExtensionSettings() let [loading, updateLoading] = useState(() => false) - let [route, updateRoute] = useState(() => null) const dialogManager = createDialogManager() - const nickname = params.profile ? params.profile.nickname ?? 'No Nickname' : '...' async function loads(operation: Promise) { @@ -35,151 +26,38 @@ function WatchOnLbryPopup(params: { profile: Awaited { - publicKey - ? - :
- { - route === 'profile' - ? updateRoute('')} className="filled">⇐ Back - : updateRoute('profile')} href="#profile">Profile Settings - } -
+
+
+ + +
+
} { - route === 'profile' ? - publicKey ? -
-
- -
-
- -

Import and export your unique keypair.

- -
-
- -

Purge your profile data online and offline.

- -
-
- -

Generate a new keypair.

- -
-
- : -
-
- -

You can either import keypair for an existing profile or generate a new profile keypair.

- -
-
- : -
-
- - -
-
- - -
-
- - - loads(lbryUrlCache.clearAll().then(() => dialogManager.alert("Cleared Cache!")))} className={`button active`}> - Clear Resolver Cache +
+
+ +
-
- - - Subscription Converter + setExtensionSetting('redirect', false)} className={`button ${redirect ? '' : 'active'}`}> + Show a button -
-
+ +
+
+ loads(lbryUrlCache.clearAll().then(() => dialogManager.alert("Cleared Cache!")))} className={`button active`}> + Clear Resolver Cache + +
+
+ + + Subscription Converter + +
+
} {loading &&
Loading... @@ -188,8 +66,7 @@ function WatchOnLbryPopup(params: { profile: Awaited, document.getElementById('root')!) - getProfile().then((profile) => render(, document.getElementById('root')!)) + render(, document.getElementById('root')!) } renderPopup() diff --git a/src/pages/popup/style.css b/src/pages/popup/style.css index bb6f577..09cceb0 100644 --- a/src/pages/popup/style.css +++ b/src/pages/popup/style.css @@ -8,6 +8,10 @@ header { justify-items: center; } +#logo { + width: 5em; +} + main { display: grid; gap: 2em; diff --git a/src/scripts/ytContent.tsx b/src/scripts/ytContent.tsx index a986107..b4addad 100644 --- a/src/scripts/ytContent.tsx +++ b/src/scripts/ytContent.tsx @@ -143,23 +143,7 @@ async function requestResolveById(...params: Parameters): Re videoElement.pause() }) - if (platfrom === targetPlatformSettings.app) { - if (document.hidden) await new Promise((resolve) => document.addEventListener('visibilitychange', resolve, { once: true })) - - // On redirect with app, people might choose to cancel browser's dialog - // So we dont destroy the current window automatically for them - // And also we are keeping the same window for less distiraction - if (settings.redirect) { - location.replace(url.toString()) - } - else { - open(url.toString(), '_blank') - if (window.history.length === 1) window.close() - else window.history.back() - } - } - else - location.replace(url.toString()) + location.replace(url.toString()) } let removeVideoTimeUpdateListener: (() => void) | null = null diff --git a/src/settings/index.ts b/src/settings/index.ts index d2d8bc5..ac70dc4 100644 --- a/src/settings/index.ts +++ b/src/settings/index.ts @@ -5,16 +5,12 @@ export interface ExtensionSettings { redirect: boolean targetPlatform: TargetPlatformName urlResolver: YTUrlResolverName - publicKey: string | null, - privateKey: string | null } export const DEFAULT_SETTINGS: ExtensionSettings = { redirect: true, targetPlatform: 'odysee', - urlResolver: 'odyseeApi', - privateKey: null, - publicKey: null + urlResolver: 'odyseeApi' } export function getExtensionSettingsAsync(): Promise { @@ -74,19 +70,6 @@ export const getTargetPlatfromSettingsEntiries = () => { return Object.entries(targetPlatformSettings) as any as [Extract, TargetPlatform][] } export const targetPlatformSettings = { - 'madiator.com': targetPlatform({ - domainPrefix: 'https://madiator.com/', - displayName: 'Madiator.com', - theme: 'linear-gradient(130deg, #499375, #43889d)', - button: { - text: 'Watch on', - icon: chrome.runtime.getURL('assets/icons/lbry/madiator-logo.svg'), - style: { - button: { flexDirection: 'row-reverse' }, - icon: { transform: 'scale(1.2)' } - } - } - }), odysee: targetPlatform({ domainPrefix: 'https://odysee.com/', displayName: 'Odysee', @@ -95,16 +78,7 @@ export const targetPlatformSettings = { text: 'Watch on Odysee', icon: chrome.runtime.getURL('assets/icons/lbry/odysee-logo.svg') } - }), - app: targetPlatform({ - domainPrefix: 'lbry://', - displayName: 'LBRY App', - theme: 'linear-gradient(130deg, #499375, #43889d)', - button: { - text: 'Watch on LBRY', - icon: chrome.runtime.getURL('assets/icons/lbry/lbry-logo.svg') - } - }), + }) } @@ -125,19 +99,19 @@ export function getSourcePlatfromSettingsFromHostname(hostname: string) { return null } export const sourcePlatfromSettings = { - "yewtu.be": sourcePlatform({ - hostnames: ['yewtu.be', 'vid.puffyan.us', 'invidio.xamh.de', 'invidious.kavin.rocks'], - htmlQueries: { - mountButtonBefore: '#watch-on-youtube', - videoPlayer: '#player-container video' - } - }), "youtube.com": sourcePlatform({ hostnames: ['www.youtube.com'], htmlQueries: { mountButtonBefore: 'ytd-video-owner-renderer~#subscribe-button', videoPlayer: '#ytd-player video' } + }), + "yewtu.be": sourcePlatform({ + hostnames: ['yewtu.be', 'vid.puffyan.us', 'invidio.xamh.de', 'invidious.kavin.rocks'], + htmlQueries: { + mountButtonBefore: '#watch-on-youtube', + videoPlayer: '#player-container video' + } }) } @@ -154,15 +128,5 @@ export const ytUrlResolversSettings = { name: "Odysee", href: "https://api.odysee.com/yt", signRequest: false - }), - madiatorFinder: ytUrlResolver({ - name: "Madiator Finder", - href: "https://finder.madiator.com/api/v1", - signRequest: true - }), - /* madiatorFinderLocal: ytUrlResolver({ - name: "Madiator Finder Local", - href: "http://127.0.0.1:3001/api/v1", - signRequest: true - }) */ + }) } \ No newline at end of file
-
- -

{friendlyPublicKey(publicKey)}

- Score: {params.profile?.score ?? '...'} -
🔗Leaderboard - {urlResolver !== 'madiatorFinder' && You need to use Madiator Finder API for scoring to work} -
-
- { - route === 'profile' - ? updateRoute('')} className="filled">⇐ Back - : updateRoute('profile')} href="#profile">Profile Settings - } -
-