Commit graph

22 commits

Author SHA1 Message Date
Shiba
4ab8fdce5e Updated Watch On LBRY button 2021-12-19 11:46:33 +00:00
Shiba
ba5beca60a Changed button mount point for yewtube 2021-12-19 01:58:45 +03:00
Shiba
47d27b0671 Added yewtu.be support. And name changes
- Added settings for source platform
- Renamed platform as target platform
2021-12-19 01:56:40 +03:00
Shiba
ac911e6816 Madiator icon added 2021-12-11 22:39:04 +00:00
Shiba
6cc149a5c6 parsing yt time from url fixed 2021-12-11 20:05:30 +00:00
Shiba
5c61db3ea0 types added, names changed, rewrote most of ytContent.ts
- Added more types, so when there is an error it's more visible.
- Default setting was using `lbry.tv` which doesn't exists anymore, so i made it odysee.
- Changed `redirect` value name in the `LbrySettings` to `platform` which makes more sense to this version.
- Changed `url` in UpdateContext to `pathname`. Using `url` for the full URL.
- Rewrote most of the `ytContent.tsx` so the timestamp feature doesnt look like a patch.
2021-12-11 19:28:24 +00:00
Shiba
8c4f3e60e0
Update ytContent.tsx
Turns out YouTube doesn't destroy the `HTMLVideoElement` once its created, so no need to check if its destroyed
2021-12-11 04:23:36 +03:00
Shiba
c7a839573a
Update ytContent.tsx 2021-12-11 03:38:45 +03:00
kodxana
972f5e7415
Update ytContent.tsx 2021-08-28 22:00:01 +02:00
kodxana
014ad21fd6
Update tabOnUpdated.ts 2021-08-28 21:59:18 +02:00
Kevin Raoofi
94af57b809 Fix CORS errors in content script
Move fetch requests to background page. Include a dirty cache so that
same requests don't get made over and over again as settings change.
2021-04-20 23:22:19 -04:00
Kevin Raoofi
410a87710b Fix redirect
The odysee button change came with passing around the secondary part of
the URL instead of the whole thing. Unfortunately, this change requires
functions to be a little smarter and resolve with the domain lookup.

This was missed for redirects.
2021-01-21 17:01:35 -05:00
Kevin Raoofi
c5c8f40ddf Add WoL logos
* Adds the new Watch on LBRY logos
* Use logo relative to repo for README

They were added into a new folder to make a distinction between
external and Watch on LBRY icons.

 adasd
2020-12-29 12:17:32 -05:00
Kevin Raoofi
76830c907e Odysee logo support
This change includes a settings object which describes how the button
should be displayed keyed by the redirect setting.
2020-12-29 09:54:28 -05:00
Kevin Raoofi
08842c4ba8 Added SVG icon to button 2020-10-28 05:21:49 -04:00
Kevin Raoofi
2e58a04333 Update button on redirect change 2020-10-28 05:21:49 -04:00
Kevin Raoofi
7954c29482 Watch-on-Lbry button
* Created a content script for YouTube that injects a styled button
* Automatically pause the video when redirecting to the app

The button location is rather finicky as certain polymer components
seem to move around, causing random DOM elements to appear all over the
place if it's not a "singleton" component.

squash
2020-10-28 05:21:49 -04:00
Kevin Raoofi
deac83e656 Bug fixes
Subscription converter didn't handle error responses very well.
Also, the chunk size was lowered to 300 as this seems to make requests
failing.

Additionally, fix bug where redirect was trying to go to the app and a frontend at the same time, only to confuse lbry.tv
2020-10-13 06:45:51 -04:00
Kevin Raoofi
9f8e521fa6 URL parsing for app redirects
URL parsing logic is basically a straight port of how lbryio/lbry-sdk
parses lbry URLs. While there's a lot more going on, it should be
easier to follow what they're doing this way.

Also, added some light unit tests for the URL parsing using jest.
Which, of course, needed a babel config.

With this, tabOnUpdated was able to be rewritten more elegantly to
handle redirects as it delegates a lot of the work to utilities now.
2020-10-13 05:39:47 -04:00
Kevin Raoofi
da5cc12a7b ytService and rewrite of YTtoLBRY
YTtoLBRY:

* Use DOMParser for reading OPML
  * OPML parsing was quite brittle as it relied on string parsing
* Removed dead script inclusion in the HTML page
* Removed global state variables
* Use fetch to clean up the query logic
* Promisified file, API calls, and settings querying to simplify logic

Many of the utilities involving APIs were isolated to a common module.
Particularly, ytService contains all methods for extracting IDs,
querying for the lbry URLs, parsing OPML, and more.

This functionally is heavily used in YTtoLBRY and lightly used by
tabsOnUpdated.
2020-10-13 05:17:44 -04:00
Kevin Raoofi
48f88da6aa Common settings module
* settings module as single source of truth and provides utilities,
  defaults, constants, and typing
* runtimeOnStartup and storageOnChanged were merged into storageSetup
* storageSetup reworked to use settings for seamless additions
* tabOnUpdated and YTtoLBRY updated to use settings for URL prefixes
2020-10-13 05:17:44 -04:00
Kevin Raoofi
0cc8f4effe npm style project setup
* All files were moved to the `src` directory, unchanged
* Parcel handles module resolution as well as transpilation via babel
* package.json, package-lock.json, and .gitignore were added
* Utilize crossplatform tools for build
2020-10-06 14:58:52 -04:00