Commit graph

5330 commits

Author SHA1 Message Date
infinite-persistence
e8c4fb3b7d
Livestream: fix items incorrectly appearing in HyperChat List mode. 2021-08-25 14:27:02 +08:00
infinite-persistence
3f765e2d90
Don't show "Moderator Tools" title if there's nothing underneath 2021-08-25 14:25:40 +08:00
infinite-persistence
277d78868d
Re-arrange prop types to show "element params" first (no functional change)
Make it obvious which props are "element params" and which props are from "redux".
2021-08-25 14:25:39 +08:00
saltrafael
b256a4396b
Thumbnail upload fixes (#6860)
more improvements, fix url, do the same for cover

remember url, error if invalid

unneeded addition

Fix delayed message

Lint

Allow empty values (placeholder and Gerbil)

Fix filepath crash

Fix button
2021-08-24 20:28:23 -04:00
mayeaux
ef5701bb38
Merge pull request #6917 from lbryio/squashed-and-merged
Wallet redesign
2021-08-24 18:46:47 +02:00
Franco Montenegro
a03d4ca20e
Allow to cancel hyperchat if message is empty. (#6942) 2021-08-24 10:57:29 -04:00
infinite-persistence
6d71e53f44
Use solid heart for "subscribed" (#6947)
## Objective
Make it easier to know the subscription state in a glance, without actually having to reading the text, especially for certain languages.
2021-08-24 10:57:01 -04:00
infinite-persistence
74986a8b3a
Comments: simplify blocked replies display
Previously, we decide when to display "Show More" based on the current fetched reply count vs. total replies in Commentron. It was already troublesome as `comment.List` and `comment.replies` give different values (one includes blocked content, while another does not).

Now, we are further filtering the list with Commentron blocklists (personal, admin, moderator), so it is not feasible to run the logic based on reply count.

## Solution
- Keep track of number of remaining pages instead and use that to determine when to display "Show More".
  - While it doesn't solve the "Show N replies" mismatch (YT has this problem too), it prevents the button from lingering.
- In the event that all replies are blocked, just show an empty space (same as YT). I didn't like the previous version that cluttered the space with "comment(s) blocked".
2021-08-24 16:55:36 +08:00
infinite-persistence
e899a5de65
Comments: include Commentron blocklists when filtering.
## Issue
When you block Channel-X, Channel-X's comments will still be visible on someone else's content. This feels odd.

## Change
In addition to the blacklist, filter-list and muted-list, we now include the Commentron blocklists (personal, admin, moderator) when filtering out comments.

## Specifics
`makeSelectCommentsForUri`, `makeSelectTopLevelCommentsForUri` and `makeSelectRepliesForParentId` all perform the same filtering code. Factor that out to `makeSelectFilteredComments` and add the Commentron lists into the mix.

## Downsides
This probably adds to the already-high CPU usage in rendering comments.
2021-08-24 16:55:35 +08:00
infinite-persistence
03cda16847
Patch: Filter out playlists from main channel listing (#6931)
The search wunderbar was lost due to the additional type added
2021-08-24 09:48:00 +08:00
infinite-persistence
d8c2a8f5bf
Filter out playlists from main channel listing (#6931)
so that playlists only appear in the Playlists Tab.

## Ticket
6911 pass claim_type = stream,repost on channel page claim searches
2021-08-23 16:24:39 -04:00
Anthony
edfb5011d7
last couple touchups 2021-08-23 20:34:54 +02:00
Anthony
a14963892f
finish button links 2021-08-23 19:52:56 +02:00
Anthony
a515088e0b
remove inline styles 2021-08-23 18:30:12 +02:00
infinite-persistence
6f9784a43f "Scroll to recent" button improvements 2021-08-23 08:57:15 -07:00
zeppi
4e3b07ede5 disable aniview 2021-08-23 11:55:30 -04:00
infinite-persistence
2e3d9cb609
Update 'SyncToggle' to the new Settings style. 2021-08-23 23:45:32 +08:00
infinite-persistence
3057f70c1c
Move 'update password' into a subpage 2021-08-23 23:45:31 +08:00
infinite-persistence
b43ecd8466
Switch from dual-pane to multirow
per feedback
2021-08-23 23:45:31 +08:00
infinite-persistence
741e8f96cb
"Back": change from "link" behavior to "up" behavior
The previous version treats each navigation as a link, ala Chrome Settings. I liked it because I can enter a settings section directly via URL, and can always back-track each section.

Anyway, changed it to the typical "up" behavior, traversing back the hierarchy of settings pages.
2021-08-23 23:45:30 +08:00
infinite-persistence
049a952765
Change "Manage" from solid button to simple text.
I think this looks cleaner.

I've also tried just having a right solid chevron, but it doesn't look nice with other widgets like checkboxes.
2021-08-23 23:45:29 +08:00
infinite-persistence
6b82aae735
Change "Update password" to a secondary button
Per feedback.
2021-08-23 23:45:28 +08:00
infinite-persistence
9505182576
Use positive "Publish preview" text, per feedback
It was phrased negatively as the feedback back then was the string should match whatever is on the actual dialog (which was "Skip preview and confirmation"). But now it looks odd when we have an additional title string. We think titles should be positively phrased, hence the change.
2021-08-23 23:45:28 +08:00
infinite-persistence
6d5c32ba2e
Help string style cleanup for consistency.
Changed from constants to object. This allows us to skip prettier's auto line-breaking with just one comment (instead of for each constant), plus I like object style to group things together in general.
2021-08-23 23:45:27 +08:00
infinite-persistence
e1223d0d02
Convert setting sub-pages to new style
"Creator Settings", "Blocked and Muted", "Manage notifications", "Stripe"
2021-08-23 23:45:26 +08:00
infinite-persistence
1671deb0b2
Page: the 'settingsPage' option now automatically adds the sidebar. 2021-08-23 23:45:25 +08:00
infinite-persistence
6e152a4137
Re-render on language change
Room for improvement: refactor into `<SettingsCard>` so we don't have to repeat this everywhere.
2021-08-23 23:45:24 +08:00
infinite-persistence
9a17878661
Change style for card title
I think it looks better to not place the title within the card's border when there are multiple cards in a page, like in the case of the new Settings Layout. Otherwise, it's hard to differentiate between title and settings-row.

The proper method is to style Card itself, but this is a quick fix for the Settings Page PR. Will come back to it later.
2021-08-23 23:45:23 +08:00
infinite-persistence
b3b4e54975
Settings Page Side Navigation
All <Setting*> components will have an ID that corresponds to the sidebar link. When clicked, we scroll to the position of the card by searching for the element with the ID. It behaves simiar to # anchor navigation.

I like this model mainly because in Mobile, users don't need to keep opening the drawer to navigate -- they just need to scroll. This allows us to use the same design for Mobile and App.
2021-08-23 23:45:23 +08:00
infinite-persistence
d3fde729f5
Handle noDaemon case for App 2021-08-23 23:45:22 +08:00
infinite-persistence
aba9198844
Handle unauthenticated case, i.e. only allow basic settings.
Placed settings that we allow for unauthenticated users under <SettingUnauthenticated>. While it is redundant, it's easier to handle the grouping, and more readable overall.
2021-08-23 23:45:21 +08:00
infinite-persistence
98f7dcd000
Delete "Settings Advanced" page
All items have been ported over
2021-08-23 23:45:20 +08:00
infinite-persistence
0c0448abef
[System] grab "Share usage and diagnostic data" 2021-08-23 23:45:19 +08:00
infinite-persistence
379a3fb6b0
[System] grab "Download Directory" 2021-08-23 23:45:18 +08:00
infinite-persistence
690f48b7e1
[System] grab "Wallet Security". [Appearance] grab "Show wallet balance in header"
I think it makes more sense to show "Show wallet balance in header" under [Appearance], especially for Web.
2021-08-23 23:45:18 +08:00
infinite-persistence
96ac5a8997
[System] grab "ffmpeg" 2021-08-23 23:45:17 +08:00
infinite-persistence
c55179998b
[System] grab "Experimental settings" 2021-08-23 23:45:16 +08:00
infinite-persistence
2cda3d0a62
[Content] grab "Skip publish preview" 2021-08-23 23:45:15 +08:00
infinite-persistence
f7caeba787
[Content] grab "Purchase and tip confirmations" 2021-08-23 23:45:14 +08:00
infinite-persistence
502ab6f6a9
[System] grab Network & Data Settings 2021-08-23 23:45:13 +08:00
infinite-persistence
52472f3cfb
[Content] grab Notifications, Block/Muted, Creator Settings 2021-08-23 23:45:12 +08:00
infinite-persistence
233477a2fa
[Account] grab stripe-related settings 2021-08-23 23:45:11 +08:00
infinite-persistence
86711057b8
[Content] refactor and grab Max Purchase Price 2021-08-23 23:45:10 +08:00
infinite-persistence
859ccf5ea9
[Content] grab original "Content Settings" 2021-08-23 23:45:10 +08:00
infinite-persistence
c539e4e10d
Move combobox to right | Move "Search only in language" into separate row 2021-08-23 23:45:09 +08:00
infinite-persistence
99c7b28712
[Appearance] grab 24h clock setting 2021-08-23 23:45:08 +08:00
infinite-persistence
4e0434d586
[Appearance] factor out ThemeSelector and use it here 2021-08-23 23:45:07 +08:00
infinite-persistence
70f795ac8b
[Appearance] Move homepages to top + i18n
per feedback
2021-08-23 23:45:06 +08:00
infinite-persistence
17871e78c8
[Appearance] grab language and homepage
Also applied new Settings Page styling.
2021-08-23 23:45:06 +08:00
infinite-persistence
e53181f2f3
[System] grab Clear Cache, Startup and Closing Behavior 2021-08-23 23:45:05 +08:00
infinite-persistence
04b510d88b
[Account] grab SyncToggle and AccountPassword
Also made visual changes for the new Settings Page.

## SyncToggle:
It will no longer be under a dedicated Card, so the "Sync" title is not there to give context for the case of "no verified email".

Changed it such that the checkbox is always visible (it's label is self-explanatory) but disable when email is not set. The "Add Email" button will then appear below, so everything now makes sense in context.
2021-08-23 23:45:04 +08:00
infinite-persistence
3b080012ac
Styles for new Settings Page 2021-08-23 23:45:04 +08:00
infinite-persistence
7da1d8cdf7
Add icon to "Show/Hide Reply" 2021-08-23 15:19:23 +08:00
zeppi
8010b2680a default support to boost 2021-08-22 16:38:14 -04:00
Anthony
d17a333fc6
pull export and refresh buttons to the right 2021-08-20 20:48:28 +02:00
zeppi
1785009fa1 patch column cards 2021-08-20 13:36:16 -04:00
Anthony
68697baaf4
refactor to only change based on the delta 2021-08-20 19:31:38 +02:00
Anthony
9722270403
preparing for refactor 2021-08-20 17:39:33 +02:00
Anthony
82a39e6562
cleanups for PR 2021-08-20 17:06:04 +02:00
infinite-persistence
ffe22e1c50
i18n 2021-08-20 09:21:26 +08:00
Anthony
bcb1197dfb
fixes for flow and linter 2021-08-19 23:20:01 +02:00
Thomas Zarebczan
f8c568e301
Fix random crash
Fixes https://github.com/lbryio/lbry-desktop/issues/6918
2021-08-19 16:46:34 -04:00
Thomas Zarebczan
51576a827d
Update view.jsx 2021-08-19 16:32:03 -04:00
Anthony
6ae732b77b
pr fixes 2021-08-19 22:23:20 +02:00
Anthony
15b076fd20
fix merge conflicts 2021-08-19 22:18:54 +02:00
Thomas Zarebczan
6fe1923ef5
fix lint 2021-08-19 16:17:15 -04:00
Thomas Zarebczan
b9bd164b10
format follower count 2021-08-19 16:09:31 -04:00
jessopb
5208be07ab
List page fixes (#6905)
* remove help card from lists page

* filtering to playlists page

* refactor

* clear playlists filter on escape

* rename

* no show playlist limit for now
2021-08-19 13:30:02 -04:00
jessopb
9ec8f56051
watchman send dsk for desktop (#6916) 2021-08-19 13:18:21 -04:00
Franco Montenegro
57ac473b00
Reset file input on publishing when accessing since it can be restored to previous value. (#6855) 2021-08-19 12:50:58 -04:00
Franco Montenegro
618b9a4d3e
Add channel subscriptions count below author. (#6867)
* Add channel subscriptions count below author.

* Replace subscribers with followers

* Make sure subCount gets called only once in FileTitleSection.
2021-08-19 11:25:45 -04:00
infinite-persistence
882c9ca022 Fix double linked-comment if it was also pinned
## Issue
If the linked-comment is also a pinned comment, it was displayed twice.

## Fix
When separating out pinned comments, I forgot that `comment.ByID` was another place where we fetch comments.
2021-08-19 02:22:33 -07:00
jessopb
fb03d3a7f9
Fix video dispose (#6904)
* fix video dispose bug

* remove commented
2021-08-18 19:30:07 -04:00
saltrafael
d7329840ef
Improve clickability of notification links (#6711) 2021-08-18 17:40:36 -04:00
Franco Montenegro
bd92110d1f
Automatically claim initial rewards (new_user & email_verified) when … (#6807)
* Automatically claim initial rewards (new_user & email_verified) when accessing creating channel, edit channel and upload

* Do not try to get initial rewards if already claimed.
2021-08-18 12:34:24 -04:00
jessopb
9bbe8b1c63
watchman device type is web for browsers (#6901)
* watchman device type is web for browsers

* no watchman on desktop
2021-08-18 11:42:56 -04:00
jessopb
5d889bef27
update watchman device types (#6900) 2021-08-18 11:05:03 -04:00
jessopb
7f35f87893
aniview only web - v0.1 (#6898) 2021-08-18 11:00:51 -04:00
infinite-persistence
58773ede91
Reload when auth token mismatch is detected (#6897)
## Tickets
- 5504 Signing out of account causes page to break in other tabs
- 6829 merged accounts - force log out / fail sync when x-auth-token and cookie auth token are different

## Steps to replicate
1. Login to odysee with account-A.
2. Open another tab, and split both tabs on the screen.
3. Logout from the 1st tab. Do not activate (focus) the 2nd tab.
4. On the 1st tab, login with account-B.
5. Activate (focus) the 2nd tab. The wallet would have been merged, and we are still logged in as account-A.

## Approach
Reload when the LBRY API token no longer matches the auth token.
2021-08-18 10:49:09 -04:00
infinite-persistence
afe4fee3f3 Fallback image for <FileThumbnail>
## Ticket
5457 Create file thumbnail fallback image for odysee

## Approach
Since `background-image` does not invoke an `onerror` event, create a test Image instance to have the `onerror` capability. This technique is used by majority of plugins. No additional fetch is seen with this technique.
2021-08-17 19:46:54 -07:00
jessopb
bd973289b6
Chore desktop cleanup (#6896)
* some desktop cleanup

* stripe environment

* wallet tabs

* fix

* old copy

* copy

* getClaimTypeText

* appstrings
2021-08-17 18:34:16 -04:00
infinite-persistence
4688b4bf58
Livestream: stop pinned comments from appearing as latest (#6888)
## Ticket
6879: Previously pinned livestream comments show as latest

## Issue
`comment.List` will always display the pinned comment first, hence the problem when the chat is refreshed.

## Approach
Completely split pinned comments from top-level comments in the Reducer, and the let the GUI (e.g. regular comments, livestream comments) decide how they want to display it.

For the case of livestream, there is no need to repeat the pinned comments in the regular chat area, since there is a dedicated area on top.
2021-08-17 12:09:55 -04:00
jessopb
5f55603fb2
send recsys powered-by (#6875)
* send recsys powered-by

* update lighthouse call in useLighthouse

* rename select selectors

* update channel search too
2021-08-17 10:03:25 -04:00
saltrafael
6e6fd61e90
#6557 CommentCreate: hold off "create channel" redirect until channel_list is fetched. 2021-08-17 10:48:03 +08:00
infinite-persistence
e1fc5fd6e3
Fix livestream autoscroll
## Ticket
6886 Livestream auto-scroll problems

## Issue
- `performedInitialScroll` was problematic as it won't allow auto-scroll even when user scrolled back to the bottom.
- The dependence on `commentElement` seems to assume a certain comment height? Not sure.

## Approach
- Add a scroll listener and stash the last scroll position.
- When a message is received, check if it's at the bottom. If yes, maintain that position after the new comment is added. If not, leave as is.
- When submitting a comment, always reset to the bottom.
2021-08-17 09:44:38 +08:00
infinite-persistence
4a8c08c8bf
Fix scroll position not restored when doing Back on Desktop (#6842)
## Ticket
6743: Desktop: "Back" in Following Page no longer restores scroll position

## Issue
This was a side-effect of "6609 claimListDiscover: don't re-render until query is done". That PR did not handle the case of navigating backwards, which typically would just need to display past results. It ended up always starting with a blank list on mount, so the scroll position could not be restored correctly.

I don't know why it still worked on Web/Chrome -- maybe the latest browser knows how to move to desired scroll position when the height is available.

## Change
If navigating backwards, initialize the final URI list with the previous result. It is almost always correct, and if not, will be corrected in the effects. This saves us one re-render when navigating backwards too.
2021-08-16 16:45:04 -04:00
infinite-persistence
1421a39518
Comment badge to reflect mod and admin status.
## Issue
6467 Add status indicators for messages from creator, delegated moderator, global moderator

## Changes
- Added the required icons.
- Added tooltip.

## Notes
- Left out "creator" since we are already highlighting the creator's name.
- Note that currently the status is only available via websocket deltas. `comment.List` does not provide the data.
- When `comment.List` includes the info, regular comments will automatically include these badges.
2021-08-16 10:08:56 +08:00
infinite-persistence
f81b0f5913
Lint, autoformat -- no functional change.
Doing this now so that an upcoming PR that uses this file won't include these bunch of annoying auto-formatter changes in the diff.
2021-08-16 06:48:37 +08:00
Thomas Zarebczan
a75ce9818c
Fix account verification check + copy on tip page (#6884)
bug fix + copy
2021-08-13 20:40:24 -04:00
Franco Montenegro
3f162eb285 Do not count auto follow channels for UserChannelFollowIntro. 2021-08-13 17:07:01 -04:00
Anthony
1d23afc531 various small bug fixes 2021-08-13 14:23:31 -04:00
mayeaux
8ff3b753ad
Move transactions from Settings to Wallet (#6871)
* remove unused conditional

get stuff ready for merge

bugfix and cleanup

requested changes

fixing flow errors

fix last flow error and touchups

fiat and lbc tabs coming along

support setting currency as the default tab via query param

add wallet fiat balance

fixing naming

add fiat transactions

using es6 to populate data

should be fine but keeps crashing

transaction listing working

add no transactions thing

about to add a third tab

add third tab

add card last 4 to transaction history

some renaming

show payments successfully

show filler for subscriptions

display if no transactions or subs

working but in the wrong component

approaching something thats working

showing total tipped amount

about to add last couple features

cleanup

More touchups

adding last features

calculate the total amount of unique creators tipped

couple touchups

remove transaction listings from settings

add view transactions buttons

small optimization

add subscriptions section

fix lot of linting errors and make command more userful

* some copy changes

* about to add last couple changes

* update still require verification

* fix button spacing

* hide subscriptions sections and fix links

* cleanups before merging

* more cleanup

* cleanup with last four fix

* changing tab functionality

* bugfix and fix presentation of cards

* fix transactions bug

* change order and remove logs

* remove unused code in account

* more linter fixes

* update account balance presentation

* fix flow errors
2021-08-13 13:59:43 -04:00
saltrafael
d36371fd88 Fix alignment off 2021-08-13 11:30:52 -04:00
infinite-persistence
afe3f913ae Add 'ENABLE_WIP_FEATURES' for live page.
Got tired of hijacking code. Didn't want to alter my account either.
2021-08-12 21:52:58 -07:00
eniamza
7cf9cba3d6
Fix: Paid embed warning was showing lbry.tv (#6819)
* Fix: Paid embed warning was showing lbry.tv

* Added: Change for PR #6819

* Revert: Changelog for conflicts

* Fix: Use site title instead
2021-08-12 23:06:04 -04:00
infinite-persistence
7817c57689
When setting MinTip, ensure MinSuper=0 | Debounce numerical settings.
(1) The GUI currently behaves such that if MinTip is set, MinSuper will be ineffective. However, Commentron actually checks MinSuper first. Just zero out MinSuper for now to enforce our desired behavior.

(2) Add debouncing to numerical settings. Refresh everything during onBlur to always reflect what's in server (e.g. in case there was an error).
2021-08-12 14:51:43 +08:00
infinite-persistence
926de0959e
Disable MinSuper if MinTip is set. 2021-08-12 14:51:42 +08:00
infinite-persistence
0ebb9420ef
CommentCreate: handle minimum tips and hyperchat
To avoid calling `setting.Get` excessively, we'll fetch the latest settings one last time before sending a tip. We'll also fetch in several areas, like when a comment action fails (most likely creator just enforced a minimum).

This will be easier when websocket send an update.
2021-08-12 14:51:42 +08:00
infinite-persistence
474da87c11
Commentron: min tip API now uses float again 2021-08-12 14:51:41 +08:00
infinite-persistence
e9a2f44899
Commentron: incorporate 'setting.Get' into 'doFetchCreatorSettings'
## General
- `setting.List`: returns full creator settings. Requires signature (i.e. you own the channel)
- `setting.Get`: returns a public subset of the creator settings. No signature required, and it is mainly used by the GUI to determine the constraints of a channel (e.g. comments enabled? min tip requirements? etc.). Does not include private settings like "blocked words list".

`doFetchCreatorSettings` will handle both of these. Clients that uses the stashed results (`settingsByChannelId`) just needs to be aware the result might not contain everything, depending on whether you own the channel or not.

## Misc Related Changes
- Finally fix the reducer for COMMENT_FETCH_SETTINGS_COMPLETED to not purge the data on each call.
- Change `doFetchCreatorSettings` to operate on a single channel instead of multiple. We ended up not using the multple mode anyway, so it was wasteful code trying to batch the promises.
- `commentsDisabledChannelIds` is no longer needed. Previously, this was created just to differentiate between Creator (full) and Channel (subset) settings. It's cleaner to just use one object, so eliminated this.
- Remove unused 'commentingEnabled'.

## Aside
- There are now 2 ways to know if a channel has disabled comments: (1) from `comment.list` and `setting.Get|List`. Both of them updates `settingsByChannelId`, so it'll still be a single place for the GUI to check against.
2021-08-12 14:51:41 +08:00
infinite-persistence
658e9bd1db
Enable min_tip setting 2021-08-12 14:51:40 +08:00
infinite-persistence
ff9ca662f2
Option to change commments-server (desktop)
## Issue
> 5459 Add setting for changing your comment server. Visible on desktop (and possibly defaulting to Odysee URL), hidden on odysee.

## Comments
Not sure how this would actually work properly without the user recompiling the app to handle server differences. For example, even when we use our own server but switch between v1 and v2, some code changes are need to handle the differences. At that point, it seems easier for the user to just change the .env file? Anyway...

## Changes
- Added Desktop-only options to define custom server. [Settings > Advanced Settings > "Comment server" section].
2021-08-12 14:01:22 +08:00
infinite-persistence
4731786a3f
Livestream: implement Pinned Comments 2021-08-12 10:39:21 +08:00
Franco Montenegro
c2b51127ac Reuse BidHelpText for reposts 2021-08-11 18:50:40 -07:00
jessopb
cd4c1efd70
Stripe integration fix (#6850)
* fix frontend bug

* show superchats in order properly

* scroll properly when switching tabs

* calculate fiat tips properly

* sum up lbc amounts

* refactor code a bit remove why isnt this working bit

* bugfix cant tip fiat if no lbc balance

* add toast when someone does a tip for a comment

* add error toast for card page

* show error on account connection page

* automatically truncate to two decimals

* close to working perfectly

* show decimals value better

* increase size of input value

* one bug left but almost working perfectly

* reverse so newest transactions come first

* fixing bug caused by floating point precision

* eslint fixes

* remove unused conditional

* get stuff ready for merge

* bugfix and cleanup

* requested changes

* fixing flow errors

* fix last flow error and touchups

* fix i18n and remove logs

Co-authored-by: Anthony <contact@anthonymayfield.com>
2021-08-11 16:58:55 -04:00
saltrafael
445566c915 Fix delete option broken / missing 2021-08-11 10:07:43 -04:00
Franco Montenegro
cc3600631e Disable cancel button when submitting a comment. 2021-08-11 10:05:37 -04:00
mayeaux
0cc0e213a5
Anthony watchman integration (#6799)
* raw ingredients done adding functionality

* essentially working just need a cleanup

* almost working with a couple bugs

* almost working but a bug or two

* seems to be working well

* seems to be working well but needs a cleanup

* couple of bug fixes

* basically working now cleaning up

* seems to be working pretty well

* cleanup unnecessary changes

* eslint fixes

* bugfix seek event

* bugfix and andrey fix and better docs

* getting ready to add last piece of functionality

* handle seek events properly

* add dynamic duration to calculate interval properly

* fix lint errors

* last couple changes

* only run watchman with analytics on and on prod

* flow fixes

Co-authored-by: zeppi <jessopb@gmail.com>
2021-08-10 16:42:50 -04:00
zeppi
892a6deeaf reenable prerolls 2021-08-10 16:30:58 -04:00
zeppi
68bc4e3b90 Revert "disable google imasdk"
This reverts commit 283bbb52fa.
2021-08-10 16:30:58 -04:00
zeppi
dcac5ebcc9 fix collection preview links 2021-08-10 10:52:46 -04:00
infinite-persistence
fd66e6b9b1
Refactor Commentron error msg handling
## Issue
6832: Pass through commenting error if it fails current error list

## Changes
- Refactor the error-msg-replacing code to make it easier to add new ones in the future.
- Made the new error message localizable (i.e. extract the variable value, pass to `__()`)
- Fallback to Commentron original message for those unhandled ones (usually fresh messages from Commentron).
2021-08-10 10:26:58 +08:00
infinite-persistence
19091f249a
Fix 'Favorites' string issue
Renamed variables for clarity while at it.

"Item added to %name%" is probably redundant due to toast passing through <i18nMessage>, causing a double translation.

Anyway, added all the resolved string for now to avoid them popping up in app-string during development.
2021-08-10 00:48:37 +08:00
btzr-io
c85e448499
fix redirection and normalization of claim urls 2021-08-07 19:23:14 +08:00
Thomas Zarebczan
6db75f8a66 rss tests
Various fixes and improvements to work with Apple Podcasts

f

f

image support
2021-08-06 17:05:36 -04:00
saltrafael
7921c0971e Improve style 2021-08-06 15:07:10 -04:00
saltrafael
c55978f9d6 Allow to delete downloaded content from popup 2021-08-06 15:07:10 -04:00
saltrafael
4f0c6030e1 Add back file download link 2021-08-06 15:07:10 -04:00
Baltazar Gomez
155309deee fix line breaking links: #6805 2021-08-06 14:55:17 -04:00
Franco Montenegro
6b071bab21 Fix amountNeededForTakeover message for bids. 2021-08-06 14:16:38 -04:00
zeppi
5b4d8065e6 fix dislike crash when no claim 2021-08-06 14:10:05 -04:00
zeppi
4bcd5942af oops 2021-08-06 12:27:37 -04:00
zeppi
2a19f9f63c lrytv sunset nag 2021-08-06 12:27:37 -04:00
Baltazar Gomez
76201e5955 fix text overflow past 3 dot menu: #6602 2021-08-06 09:45:04 -04:00
eniamza
c146bfcd2d
Fix: Added \ and = to Reserved symbols warning 2021-08-05 11:09:30 -04:00
saltrafael
60f4cca007 Fix no expand button bug 2021-08-04 09:33:42 -04:00
zeppi
fe35ea3764 stream type string or array 2021-08-03 14:49:59 -04:00
zeppi
67bcc1b1ec build 2021-08-03 14:49:59 -04:00
zeppi
ff5ca7398c naming 2021-08-03 13:38:17 -04:00
zeppi
e3e5c50a13 style logo in embed 2021-08-03 13:38:17 -04:00
saltrafael
426042feab Fix icon color 2021-08-03 13:23:31 -04:00
saltrafael
a6ad758c71 Show on content page if a file is part of a playlist already 2021-08-03 13:23:31 -04:00
zeppi
413b19a7e9 sync edited playlists 2021-08-03 11:47:54 -04:00
zeppi
2d66b8666d styling 2021-08-03 11:05:32 -04:00
saltrafael
f01fb7dd22 Mobile view: Make comments expandable 2021-08-03 11:05:32 -04:00
infinite-persistence
1d6101ddd2 Report recsys info when 'share_data_usage' is enabled.
Previous:
~~Although it was collecting info for all platforms, the data is only sent for Odysee.~~ Correction: it became enabled for all platform after `master` became Odysee.

New:
Only send out the telemetry for `IS_WEB` or if there's user consent.
2021-08-03 09:34:36 -04:00
infinite-persistence
34368760de Fill in remaining Recsys fields
## Issue
6366 Recsys Evaluation Telemetry

The recommended list from lighthouse is obtained from `makeSelectRecommendedContentForUri`. This list is further tweaked by the GUI (e.g. move autoplay next item to top, remove blocked content, etc.). Recsys wants the final recommendation list and the clicked index (in exact order), so we need pass these info to the videojs recsys plugin somehow. Also, Recsys wants a recommendation list ID as well as the parent (referrer) ID, we so need to track the clicks and navigation.

## General Approach
- It seems easiest to just spew back the final (displayed) list and all the required info to Redux, and the recsys plugin (or anyone else in the future) can grab it.
- Try to touch few files as possible. The dirty work should all reside in `<RecommendedContent>` only.

## Changes
- `ClaimPreview`: add optional parameters to store an ID of the container that it is in (for this case, it is `ClaimList`) as well as the index within the container.
  - When clicked, we store the container ID in the navigation history `state` object.
    - For general cases, anyone can check this state from  `history.location.state` to know which container referred/navigated to the current page. For the recsys use case, we can use this as the `parentUUID`.
- `ClaimList`: just relay `onClick` and set IDs.
- `RecommendedContent`: now handles the uuid generation (for both parent and child) and stores the data in Redux.
2021-08-03 09:34:36 -04:00
infinite-persistence
f8796e2950
i18n 2021-08-03 14:44:57 +08:00
infinite-persistence
74659f40a1
Restore "Use better icon for "Copy Link"" -- lost in a merge.
b164a5d1 accidentally nulled the changed.

While at it, moved the "Copy RSS" button below "Copy Link" -- I think that looks better.
2021-08-03 14:24:02 +08:00
Baltazar Gomez
7bbb1a436c
fix #6766 (Channel staked badge in the wrong line) 2021-08-03 00:14:26 -05:00
zeppi
1f2762af02 tags patch 2021-08-02 16:14:33 -04:00
zeppi
26b1c901c8 no limit on stream types for following 2021-08-02 16:14:33 -04:00
Baltazar Gomez
0214c80544 fix logo size on firefox 2021-08-01 14:26:59 -04:00
Baltazar Gomez
79e39da47f update sockety api urls 2021-08-01 09:47:44 -04:00
btzr-io
c0c65c46f4 use env for twitter account 2021-08-01 09:39:16 -04:00
btzr-io
d462f96834 improve twitter share 2021-08-01 09:39:16 -04:00
Baltazar Gomez
37d9cbfbeb limit claim_search results on livestreamLink 2021-08-01 09:13:25 -04:00
btzr-io
9983777f86 faster claim search on livestreamLink 2021-08-01 09:13:25 -04:00
btzr-io
7802337655 prevent livestream api calls if no livestream claim exists: #6632 2021-08-01 09:13:25 -04:00
Thomas Zarebczan
b5fec393c6
Fix crash 2021-07-31 11:08:15 -04:00
zeppi
b93caf4ebc fix logo image 2021-07-30 12:12:58 -04:00
Baltazar Gomez
9dd065a595 update lighthouse search api 2021-07-30 11:47:28 -04:00
saltrafael
a9a0bc9462 Change warning 2021-07-30 10:24:04 -04:00
saltrafael
87ae041472 Add confirmation on comment removal 2021-07-30 10:24:04 -04:00
Baltazar Gomez
415a522805 fix notification menu button styles 2021-07-30 00:11:18 -07:00
btzr-io
fa1b1737bb fix inconsistent theme css vars: fixes #6738 2021-07-29 22:26:26 -07:00
infinite-persistence
0cdf881941
#6470 Improve accessibility and some minor css fixes 2021-07-30 09:34:40 +08:00
saltrafael
cc93ac1a01 Fix currently active playing item on playlist 2021-07-29 14:55:52 -04:00
zeppi
9c5c566e3a bugfix 2021-07-29 12:58:25 -04:00
zeppi
ba1f7e67e4 more 2021-07-29 12:58:25 -04:00
zeppi
e2877cf505 alt publish api 2021-07-29 12:58:25 -04:00
Baltazar Gomez
eee7878954
fix typo 2021-07-29 11:52:34 -05:00
zeppi
c4639934d1 better... 2021-07-29 11:28:19 -04:00
zeppi
e09199d331 stylesRecon 2021-07-29 11:28:19 -04:00
infinite-persistence
7537b5ae7b
Lint and cleanup. No functional change. 2021-07-29 21:11:20 +08:00
infinite-persistence
4ff32e0c61
Fix missing file-thumbnail in Notifications
## Issue
6721 Notifications: Thumbnail for "new content" not showing up in Desktop layout

## Change
The `className` wasn't propagated during the `FileThumbnail` refactoring to `Thumbs`.
2021-07-29 15:56:42 +08:00
Baltazar Gomez
74087d2b86
Merge branch 'master' into accessibility 2021-07-28 23:47:42 -05:00
zeppi
9889c258e3 livestream api constant rename 2021-07-28 16:51:11 -04:00
zeppi
6cc3216d62 live url 2021-07-28 16:51:11 -04:00
zeppi
841733d4f0 embed 2021-07-28 16:51:11 -04:00
zeppi
46e874e83c livestream endpoint 2021-07-28 16:51:11 -04:00
zeppi
d25896d99c recon commentCreate 2021-07-28 15:43:56 -04:00
zeppi
b6c21dcb84 patch devmode for custom lbry api 2021-07-28 11:49:36 -04:00
zeppi
edebde5a2e file reactions recon 2021-07-28 08:12:29 -04:00
zeppi
2a69c42e5b back to img tag 2021-07-27 15:13:29 -04:00
zeppi
b1e8d2d6db desktop logo 2021-07-27 15:13:29 -04:00
zeppi
ef77a5cd00 optimizedImage 2021-07-27 15:13:29 -04:00
zeppi
71d9b0d973 default logo 2021-07-27 15:13:29 -04:00
zeppi
3f4c601428 logo component on embeds/embeds ended 2021-07-27 15:13:29 -04:00
zeppi
19f8b0adac logoComponent 2021-07-27 15:13:29 -04:00
zeppi
e4d7e4f69d force has source channel page 2021-07-26 14:17:52 -04:00
zeppi
403ea8f6f4 no livestreams on channel content 2021-07-26 14:17:52 -04:00
infinite-persistence
6de16813cb
i18n update 2021-07-26 23:31:03 +08:00
infinite-persistence
077207e203
ChannelPage: Don't mount inactive ChannelContent
## Issue
In the Channel Page, if the _Collections_ `claim_search` comes in after the main content's `claim_search`, the Collection's `ChannelContent` is being re-rendered despite not being in the active Tab. This causes a 0.4 CLS score (it's ridiculous that invisible components are taken into account). Apparently 41% of users are hitting this scenario, causing a poor aggregate.

## Change
Don't mount the `ChannelContent` components unless its tab is the active one. It doesn't seem like Reach Tab hides components under the inactive tab.
2021-07-26 22:01:31 +08:00
infinite-persistence
f6e648222e
Change constants to object for IDE auto complete
No functional change; just thought this is cleaner (group up the constants) and easier to type via IDE auto-complete, at the expense of creating an extra object.
2021-07-26 22:01:30 +08:00
infinite-persistence
8dc18e8fcd
Fix split (concat) string usage
Concatenated strings are hard to translate.
2021-07-26 12:37:59 +08:00
zeppi
8fef6c6160 ugly discover recon 2021-07-24 11:29:30 -04:00
zeppi
e3006a0edb exempt news from hp 2021-07-23 16:03:01 -04:00
infinite-persistence
76a6c0441c Beautify/elaborate comment spam-check message 2021-07-23 13:33:10 -04:00
zeppi
ad3fd5700f default search types from config 2021-07-23 10:31:07 -04:00
zeppi
0987c6e94f publish form recon 2021-07-23 10:14:22 -04:00
infinite-persistence
ffad52d5b7 Remove console.log
Seems like lint is being bypassed recently?
2021-07-23 08:42:58 -04:00
infinite-persistence
6e402240b0
Fix muted-words now returning null instead of ""
## Issue
Creating Settings suddenly start to stop loading correctly for some of my channels.

## Change
`settings.List` now returns null instead of empty array. Double-checked the Commentron repo and this is indeed the case.

Updated the code to handle null.
2021-07-23 15:46:38 +08:00
btzr-io
8597195f86 increase space between claim-tile title and menu button 2021-07-23 02:21:44 -05:00
btzr-io
632ce31a5d add visible focus style to file action buttons 2021-07-23 02:07:08 -05:00
infinite-persistence
7a8d213861
Eliminate CLS in Recommended due to wrapper mismatch
Seem like `type === small` was missed out, so it was using a wrapper than necessary, causing the shift.
2021-07-23 13:23:52 +08:00
infinite-persistence
c62c667436
CLS: reserve space for injected video ads 2021-07-23 13:23:51 +08:00
zeppi
038431f95c channel follow first run on master 2021-07-23 00:00:32 -04:00
zeppi
ed0387d94a pinning 2021-07-22 23:24:55 -04:00
zeppi
f2cd9f372e Chan fol disc recon 2021-07-22 23:08:33 -04:00
zeppi
d88752c646 music icon, fix lint 2021-07-22 17:31:46 -04:00
Anthony
15e696c4d6 bugfix not updating the frontend on account add 2021-07-22 17:23:51 -04:00
zeppi
085ea15247 settings page recon 2021-07-22 14:43:01 -04:00
zeppi
e920738cd1 file page recon 2021-07-22 14:28:12 -04:00
Anthony
78b4fa05b3 pull out variable for max and min fiat amounts 2021-07-22 14:06:59 -04:00
Anthony
7975ccf3e0 disable button if theres a fiat tip error 2021-07-22 14:06:59 -04:00
Anthony
713dc69ed7 add check for two decimals and fix showing error for fiat tip 2021-07-22 14:06:59 -04:00
btzr-io
f3b5079241 don't use break-all for livestream chat comments: #6602 2021-07-22 12:46:29 -05:00
btzr-io
c82884cff9 truncate title on channel Page #6635 2021-07-22 12:32:35 -05:00
infinite-persistence
ecb14be871
Fix broken embeds in incognito
## Issue
Closes 6490
Embeds in https://lbry.com/news/2002dtf was crashing in incognito

## Change
Ensure localStorage is available before using it. Jessop warned me before...
2021-07-23 00:50:02 +08:00
zeppi
f4559c1cce fileSubtitle recon 2021-07-22 12:09:54 -04:00
zeppi
8919182c0c default avatar config 2021-07-22 09:44:57 -04:00
btzr-io
86e1cfc3dd refactoring of claim preview aria-label format 2021-07-22 03:24:25 -05:00
btzr-io
083aff2ceb minor fix for channel menu button alignment 2021-07-22 02:55:40 -05:00
btzr-io
2a291366da use full sentences with variables for claim preview aria-label 2021-07-22 02:37:57 -05:00
infinite-persistence
032e17cecd
Improve CLS on Posts
## Issue
6068 Fix "Cumulative Layout Shift" for Core Web Vitals

In Posts, the Comments section appears first while we fetch the MD file. When the MD is fetched, Comments get pushed to the bottom (or shifted up for short posts), hence the red CLS scores.

## Approach
There are too many layers between `<FilePage>` and `<DocumentViewer>` to pass the `loading` state around to hide the Comments section, so just make Comments fade in after a 2s delay.

## Changes
- Posts: Add 2s fade-in delay to Comments.
- Posts: remove the gray placeholder. This improves the score a bit more, and reduces flicker as well. There's already a spinner from `FileRenderInline` to tell the user to be patient.
- Posts: add a minimum 30vh height so that short posts don't get collapsed too much, causing the `FileDetails` and Comments to shift. Small shifts are fine as long as CLS is below 0.1.
2021-07-22 10:38:01 +08:00
Baltazar Gomez
c983af927f
Merge branch 'master' into accessibility 2021-07-21 20:59:12 -05:00
infinite-persistence
50c606d916 claimListDiscover: don't re-render until query is done
## Issue
6542 Livestream listing and blocked list kills CLS score

This is basically a repeat of what was done on `claimTileDiscover` (homepage), but now on `claimListDiscover` (category pages).

This handles the unnecessary re-render when:
- the uri list temporarily being zero while waiting for new claim-search results.
- livestream claim-search invalidating the list.

## Changes
Store the last uri list and use that when we know that claim-search is still not done.

## Tests
1. Ran Lighthouse on category pages (force a livestream channel on it). CLS score must be green.
2. Block `claim_search` from Dev Tools and move to another category. The page should say "timed out" instead of "no results" (i.e. maintain existing behavior).
2021-07-21 21:51:12 -04:00
zeppi
1994b5da04 guidelines optional in sidenav 2021-07-21 20:26:17 -04:00
zeppi
fbf105e113 fileActions recon 2021-07-21 18:37:43 -04:00
zeppi
573ed1e88c recon followDisc 2021-07-21 16:58:13 -04:00
zeppi
91b908ad50 pubfile copy 2021-07-21 16:18:46 -04:00
zeppi
6ec95647e7 lbc remove file 2021-07-21 15:56:09 -04:00
infinite-persistence
4fc6b89975 Fix reposted channels incorrectly showing the channel thumb
## Issue
6589

## Notes
`parseURI` will return `isChannel=false` due to the reposted channel URL not having the '@' symbol.

Since we already have the claim object, check `value_type` directly instead.
2021-07-21 14:41:47 -04:00
saltrafael
b164a5d1f4 Pop up Menu Fixes and Improvements
Pop up Menu Fixes and Improvements

Improve re-directs

Fix file deletion

Improve code, and more

Fix List Layout collection popup

Allow to edit list

Fix blocking when not logged or no channel

Fix Edit and Delete showing for not owned Lists

Fix actions breaking when not logged in

Fix List options not showing

Lint

Shorten logic

Lint
2021-07-21 14:40:44 -04:00
zeppi
fdca58727c restore paid content 2021-07-21 12:49:56 -04:00
zeppi
1600bb69b9 sms copy 2021-07-21 08:11:33 -04:00
infinite-persistence
6b2548cc49
Fix channel-selector thumbnail not updating
Recently changed to `<OptimizedImg>`, which was assuming the `src` never changes.

dejavu ... we also hit this issue when implementing the `IntersectionObserver` lazy-loading.
2021-07-21 16:38:54 +08:00
btzr-io
6a8d32c9bf add SkipNavigationButton to its own file 2021-07-20 19:31:26 -05:00
btzr-io
f6261611f0 fix ClaimPreview errors 2021-07-20 18:49:41 -05:00
Dispatch
e138673d27
Merge pull request #6508 from saltrafael/live_comments
Fix 'Recent Comments' button for livestreams
2021-07-20 12:33:52 -07:00
zeppi
283bbb52fa disable google imasdk 2021-07-20 15:12:14 -04:00
zeppi
8674b97be8 disable aniview 2021-07-20 15:12:14 -04:00
btzr-io
7375c106a2 fix channel quick menu actions z-index: #6582 2021-07-20 12:56:55 -05:00
Baltazar Gomez
0db4e4ab51
Merge branch 'master' into accessibility 2021-07-20 12:24:36 -05:00
btzr-io
bc2a8ba77d fix accessibility issue on rewards page #5991 2021-07-20 12:14:28 -05:00
zeppi
dd4385f243 modal publish recon 2021-07-20 12:48:43 -04:00
zeppi
e4f1d4221b header notify recon 2021-07-20 12:32:17 -04:00
zeppi
8301244507 commentReactions recon ma 2021-07-20 11:17:44 -04:00
zeppi
27400cbe03 yt recon 2021-07-20 10:37:46 -04:00
zeppi
e834a4aa51 change uploads copy 2021-07-20 10:33:48 -04:00
infinite-persistence
11b5eb49a0
Optimize ChannelThumbnail using the new method 2021-07-20 16:21:51 +08:00
infinite-persistence
a21b4c5cf3
Optimize banner image 2021-07-20 16:21:51 +08:00
infinite-persistence
68432eef26
OptimizedImage - wrapper for CDN-optimized image
Objective:
- Get appropriately sized images to improve performance and Core Vitals score.
- Ensure images using "objectFit=cover" doesn't get stretched out if the source is large enough.
- Peg to 100px increments for better caching.

Notes:
- Skip images hosted in '/public'. If we really want to optimize it, then we'll need to provide the full path in the code, otherwise CDN lookup will fail.
2021-07-20 16:21:50 +08:00
infinite-persistence
e5f32b21c4
Reaction-fetch: handle "no results"
If there are no API errors but no reactions returned, consider the requested IDs as "done" and stop requesting again. When a channel is being confirmed, Commentron doesn't return the reaction object.

Also added extra guard in case Commentron does return an object in the future, but an empty one.
2021-07-20 15:22:51 +08:00
infinite-persistence
08738ffcee
Reaction-fetch: handle "deleted all channels"
- use `selectActiveChannelClaim` as that takes the current channel list into account (i.e. correct state when all channels are deleted).
    - `selectActiveChannelId` should probably be removed or not exposed through a selector, as it is not updated when channel list changes?
2021-07-20 15:22:50 +08:00
infinite-persistence
c71e4718d0
Remove (revert) reaction-fetch hardstop
Root-cause is known, so removing it to detect other issues.
2021-07-20 15:22:49 +08:00
zeppi
4bf7c68574 use config for showTagsIntro 2021-07-19 22:46:43 -04:00
zeppi
765cef7564 recon notify components 2021-07-19 22:16:29 -04:00
zeppi
3dc7c35cd7 recon 2021-07-19 21:46:28 -04:00
zeppi
1f902726fb copy 2021-07-19 17:39:59 -04:00
zeppi
33ee8ed3b7 site help email transactoin failed 2021-07-19 17:37:36 -04:00
zeppi
3e4206ee69 yt welcome recon 2021-07-19 17:33:23 -04:00
zeppi
f6dc48fdc0 use odysee recsys plugin 2021-07-19 17:30:44 -04:00
zeppi
ed1671fe2f matching comments 2021-07-19 17:30:25 -04:00
zeppi
6fc44720d6 styles 2021-07-19 15:34:46 -04:00
infinite-persistence
424ba85507
100% compression doesn't work with current CDN url
...sometimes produces larger-than-original file sizes too.
2021-07-20 02:34:25 +08:00
zeppi
be9640972e meme style 2021-07-19 14:17:43 -04:00
zeppi
90e2a225e4 use meme component 2021-07-19 14:00:35 -04:00
zeppi
75a6ea21a5 more 2021-07-19 13:52:15 -04:00
zeppi
26e67b375c more 2021-07-19 13:52:15 -04:00
zeppi
50875566ad more 2021-07-19 13:52:15 -04:00
zeppi
9b03f5a1d0 more 2021-07-19 13:52:15 -04:00
zeppi
cc07390ea4 more 2021-07-19 13:52:15 -04:00
zeppi
1d021fc8e0 more 2021-07-19 13:52:15 -04:00
Anthony
fdfa2f1660 hotfix for bug 2021-07-19 11:08:59 -04:00
jessopb
ae2354a0e0 Revert "move stuff to web (#6537)"
This reverts commit a6c413da5c.
2021-07-19 10:12:57 -04:00
infinite-persistence
3243ce6e0a
Image Claims: minimum layout shift on desktop layout
## Issue
6068

## Change
Lock all images to fit a 16:9 container. We have implemented 'ZoomableImg', so no reason in trying to display in full size.

This reduces CLS from 0.4xx to 0.01x.

## Flaws
CLS could probably be zero if not for the spinner shifting things slightly. Also, mobile CLS is 0.07.

The troublesome part in this PR is that FileRenderInitiator, FileRender and their subcomponents are broken apart and it's hard to synchronize their visibility and size. There are time gaps where none of them are visible, etc.

This PR only tackles the major part (most bang for buck), which is the elimination of variable height of the rendered image.

## Aside
I think `claimIsMine` is unused, so don't waste time requesting it.
2021-07-19 14:26:00 +08:00
infinite-persistence
6f4ce0a57c
Apply placeholder images
https://lbryians.slack.com/archives/C81FGKR51/p1624278721203900?thread_ts=1624269131.202200&cid=C81FGKR51

The intrinsic size needs to be at least equal the final image's size. Stretching, SVGs, etc. doesn't count.
2021-07-19 12:07:26 +08:00
zeppi
e03325d0e4 remove old stripe setting 2021-07-18 22:30:12 -04:00
jessopb
a6c413da5c
move stuff to web (#6537) 2021-07-18 21:57:36 -04:00
mayeaux
4fe17363f3
disable review button if no card saved also some cleanup (#6535)
* disable review button if no card saved also some cleanup

* fix flow errors
2021-07-18 21:49:21 -04:00
jessopb
5a04d0fea0
some recon (#6532) 2021-07-18 13:06:52 -04:00
zeppi
dfc013d423 more recon 2021-07-18 11:27:05 -04:00
infinite-persistence
1fa7533ee3
Hide 'download' for livestreams
6517
2021-07-18 23:10:59 +08:00
infinite-persistence
f3ed597ff6
i18n: Fix invalid template literal use + split strings 2021-07-18 22:42:21 +08:00
infinite-persistence
abe32e5f5c
Revert "Reactions: consider failures as "fetched""
This reverts commit 84a2a74c8c.
2021-07-18 10:55:11 +08:00
Anthony
6aea8e38bc fix css 2021-07-17 13:19:33 -04:00
zeppi
7ffd59c169 more lint 2021-07-17 13:19:33 -04:00
zeppi
27aa4e4a22 lint 2021-07-17 13:19:33 -04:00
Anthony
7bb5df97fd Stripe 2
show visible card and add remove card button

show your transactions even if you dont have a card

fix presentational issues

show your transactions even if you dont have a card

fix presentational issues

add link to channel section

update yarn

show donation location

add remove card modal still needs completion and also changed how stripe is used on settings stripe card page

add confirm remove card modal to router

move bank account stuff to settings page

move account functionality to settings page

continuing to move account transactions to settings

list transactions for creator

updating copy

touchup tip error

do a better job autofocusing

bugfix

show an error on the card page if api returns 500

building out frontend for comment tip

display dollar sign if its a fiat tip

more frontend work

more frontend work

more frontend bug fixes

working with hardcoded payment intent id

working but with one bug

bugfixed

add toast if payment fails

add add card button

cant get claim id but otherwise done

more frontend work

call is working

show fiat for livestream comments

add is fiat on comments

round and show values properly

dont allow review if tiperror

copy displaying properly

disable buttons conditionally properly

remove card button working

remove card working with a workaround by refreshing page

bugfix

send toast when tip on comment

jeremy frontend changes

only show cart on lbc
2021-07-17 13:19:33 -04:00
infinite-persistence
cd32fb71c7
Experiment: hardstop reaction-fetch at 500
(Hypothetical max comment of 3000) / (10 comments per page) = 300.
Cap at 500 to stop runnaway loops.
2021-07-17 22:19:15 +08:00
infinite-persistence
84a2a74c8c
Reactions: consider failures as "fetched"
In the event that Commentron returned an empty object, we'll end up re-requesting the same IDs again. Haven't seens this happen before, but since we don't know what's causing the spike, we'll just consider failures and "fetched" to stop the loop.

User can always click Refresh to repopulate the values.
2021-07-17 21:53:23 +08:00
infinite-persistence
47d39b20d3
Stop fetching reacts if failed for 3 times
Not sure if this will ever occur, but technically possible from the code point of view. Try adding this to see if it stops the spikes in `reaction.list` calls.
2021-07-17 13:53:58 +08:00
infinite-persistence
9c05239b04
Don't show "comments disabled" while still fetching.
## Issue
6513
2021-07-17 12:09:42 +08:00
keikari
1882e78d51 Tried to clear errors mentioned in lint details
154:28  error    Trailing spaces not allowed     
 161:6   error    Unexpected tab character
2021-07-16 18:32:41 -04:00
keikari
299682a6dc Make "support-pop-up" text match claim type.
Confirm button label will also show "your" instead of "this" for your own claims.
2021-07-16 18:32:41 -04:00
keikari
08dd1cbf0b Minor fix suggestion: Default to "TAB_BOOST" when supporting own claims
Someone mentioned about odysee.com showing "tip" related text when supporting own claim. Now it should default to "Boost" related text for own claims.

L167: Not edited but not sure if "claimIsMine" is needed there any more.
2021-07-16 18:32:41 -04:00
zeppi
70af46149d discover channelIds from homepages 2021-07-16 18:31:48 -04:00
saltrafael
9cdfb239c0
Playlist style fixes (#6509)
* Fix spacing on List page

* Fix alignment on List sidebar
2021-07-16 15:13:28 -04:00
Baltazar Gomez
e59c67a144
render filedrop for only authenticated users (#6466) 2021-07-16 14:53:14 -04:00
Marko Lorentz
e44b7b929e
i18n: Added missing state handling for RTL languages (#6275)
* Add RTL Support

* Add Arabic to supportedLanguages

* Fixed lint errors

* Allowed RTL flow for Hebrew

Co-authored-by: Sana <sana.benhassouna@ensi-uma.tn>
2021-07-16 13:51:08 -04:00
infinite-persistence
cb0222981c Reactions: switch from SDK to Commentron
## Issue
- Closes 6481 "Use Commentron for react.List, react.React calls".
- 5459 "Interact directly with commenting servers".
2021-07-16 13:41:41 -04:00
btzr-io
4d28c5d208 use aria current 2021-07-16 10:58:40 -04:00
btzr-io
504f230d59 show currently active playing item on playlist: #6204 2021-07-16 10:58:40 -04:00
infinite-persistence
ad7db1e939 Reactions: wait for previous fetch to complete before fetching again.
This was causing duplicate IDs to be fetched over and over again when scrolling quickly.
2021-07-16 10:54:12 -04:00
infinite-persistence
a13708f4dd Handle the case of all replies are blocked.
In this scenario, `comment.List` does not return `comment`. I was expecting an empty array.

Handled accordingly.
2021-07-16 10:54:12 -04:00
infinite-persistence
08c701ba19 Restore comment pagination
This reverts commit e6addb8c2a, reversing
changes made to 47b594107a.
2021-07-16 10:54:12 -04:00
saltrafael
b5ad359e32 Fix 'Recent Comments' button for livestreams 2021-07-16 10:55:47 -03:00
btzr-io
ba763a85cd remove react-helmet 2021-07-16 02:22:54 -05:00
btzr-io
d1a8f28464 use new aria label format for claim preview 2021-07-16 01:53:38 -05:00
infinite-persistence
73c872501c
Copy Link: use canonical
## Issue
6497
2021-07-16 10:18:37 +08:00
btzr-io
06e6feaf3b add date to claim-preview aria-label 2021-07-15 19:44:51 -05:00
btzr-io
d56b32ff19 simplify localization of claim-preview aria-label 2021-07-15 19:13:54 -05:00
btzr-io
60c5d3bf67 add more info for claim-preview-tile aria label 2021-07-15 18:12:11 -05:00
zeppi
637c01750a clean 2021-07-15 17:48:02 -04:00
zeppi
b2b88b466e fix colon handling 2021-07-15 17:48:02 -04:00
zeppi
0e589c0401 bump 2021-07-15 17:48:02 -04:00
btzr-io
7c8c43d3a7 fix file actions accessibility 2021-07-15 15:14:21 -05:00
btzr-io
6354a77bf1 make skip navigation link first focusable element 2021-07-15 13:32:58 -05:00
btzr-io
9426f6af72 more css fixes for menu button styles 2021-07-15 12:13:31 -05:00
infinite-persistence
a2a1ddb403
Revert "Comments Pagination #6390"
This reverts commit 16ef013025, reversing
changes made to fba8b89b3b.
2021-07-15 22:23:26 +08:00
infinite-persistence
08548916df
Revert "Fix continuous reaction fetch in incognito"
This reverts commit ff059c58fd.
2021-07-15 22:23:14 +08:00
infinite-persistence
47b594107a
Use better icon for "Copy Link"
Not re-using the same icon as "Share".
2021-07-15 14:40:10 +08:00
btzr-io
d0e865b9ec define main language on html head 2021-07-15 01:12:18 -05:00
btzr-io
4e40488629 rename css vars 2021-07-15 00:48:53 -05:00
btzr-io
eb1ab935c5 consistent menu button styles and minor css fixes: #5145 2021-07-15 00:40:40 -05:00
btzr-io
4d4fbe4e9a fix typo 2021-07-14 22:12:40 -05:00
btzr-io
6d7e92d73b improve header accessibility
add skip navigation link + minor fixes
2021-07-14 22:08:30 -05:00
infinite-persistence
ff059c58fd
Fix continuous reaction fetch in incognito
myReactions will never be filled in incognito. Also, it's probably enough to just check othersReactions, but for now, still do both when logged in.
2021-07-15 09:58:15 +08:00
btzr-io
7aaaf998a8 use aria-hidden on all tile cards thumbnails 2021-07-14 18:58:56 -05:00
btzr-io
695343532d minor css fixes: #5145 2021-07-14 18:35:49 -05:00
btzr-io
484f2830c8 improve accessibility of claim preview tiles: #6480 2021-07-14 17:12:07 -05:00
btzr-io
6df622307c simplify card tile keyboard navigation 2021-07-14 15:09:48 -05:00
Baltazar Gomez
2f67ca370e
Merge branch 'master' into accessibility 2021-07-14 13:48:37 -05:00
btzr-io
0397617bed use aria-hidden on all icons by default 2021-07-14 13:44:22 -05:00
zeppi
d612b86a8c homepages v2
homepages served without cache

error catching

memo homepagedata

support auto limit

no more config pins
2021-07-14 14:09:46 -04:00
zeppi
bc4f71ed8c clean 2021-07-14 12:26:21 -04:00
zeppi
7581d914fe hide menu on web for unauth 2021-07-14 12:26:21 -04:00
saltrafael
aced8fb593 Add watch later hover action and Favorites
add watch later hover action

replace watch later popup item for favorites

lint

styling for watch_later overlay

Add label

Use just claim, add requiresAuth

Add list icon

Tone down text

Turn WL Hover Button into component

Change WL hover icons

small revert

Keep watch later in the menu
2021-07-14 11:41:36 -04:00
infinite-persistence
5742e1c2ca
Handle representation of blocked replies
## Issue
- `Comment.replies` currently represent all replies, while `comment.List` returns a filtered version, so the actual replies could be less.
- The actual replies is represented by `total_filtered_items`, but we only get that after making a fetch. So, users could click "Show more" but get nothing.

## Fix
- Stop showing "Show more" based on `total_filtered_items`.
- If there is a balance, display 1 dummy comment to represent all blocked replies. This handles the case of "Show more" being displayed but ended up with 0 replies if all replies were blocked.

## Future
Note that `Comment.replies` might be changed to represented filtered comments in the near future (refer to Beamer), so the GUI is made such that the dummy just won't appear when that change happens.
2021-07-14 15:11:44 +08:00
infinite-persistence
4731588a3c
Tell user when linked-comment is not available. 2021-07-14 13:00:26 +08:00
infinite-persistence
e77a986125
Load comments if spinner is visible from the start
It was previously only responding to scroll events.
2021-07-14 13:00:26 +08:00
infinite-persistence
3d63ce4666
Load comments when approaching viewport
Seeing the spinner too much can be annoying.

- This approach works, but currently, when the list is very long, something is taking up resources and the handler couldn't be processed, so the effect is lost (still seeing the spinner). See 6473.

- Since we are now prefetching, bumped the debounceMs a bit.
2021-07-14 13:00:25 +08:00
infinite-persistence
2f92ce8bb4
Bump comment and reply page size to 10 (was 5 and 3, respectively) 2021-07-14 13:00:24 +08:00
infinite-persistence
f8bdd0704f
Handle temporary Commentron bugs
Can be removed when bugs are fixed, but would still work if left there.
2021-07-14 12:58:27 +08:00
infinite-persistence
5ef95846d8
Add AUTO_EXPAND_REPLIES flag to toggle the feature. 2021-07-14 12:58:26 +08:00
infinite-persistence
0cf6fe3df5
Comments Pagination
## Issue
6158 - Support Comment Pagination
2021-07-14 12:58:25 +08:00
Dispatch
fba8b89b3b
Merge pull request #6438 from lbryio/retargetting-pix
add retargeting pixel
2021-07-13 20:49:18 -07:00
zeppi
f1c9aa7907 review this 2021-07-13 23:45:51 -04:00
zeppi
e6376871d5 move pixel to web 2021-07-13 23:40:49 -04:00
infinite-persistence
b822ae39e1
Remove hardcoded filters in doSearch
## Issue
6414 <Don't use "exact match" setting outside of main search - cuases no results in related>

`doSearch` was used in Wunderbar and Recommended, but it was adding in Wunderbar options all the time.

## Changes
- Fix `doSearch` to not use hardcoded options (take from arguments).
- Refactors the searchOption-creation code so that we don't duplicate the logic in both .js and .jsx.
2021-07-14 11:16:19 +08:00
infinite-persistence
052aa87ddd
Remove unused items 2021-07-14 11:13:13 +08:00
DispatchCommit
d32af5606b move pre-roll ad logic into it's designated video.js plugin 2021-07-13 22:22:06 -04:00
btzr-io
3e13930425 add aria-label for modal close button (X) 2021-07-13 18:23:45 -05:00
btzr-io
7398120c0c fix incorrect aria-label in rewards page 2021-07-13 18:09:09 -04:00
btzr-io
2391f66d90 fix upload button on creator analytics: #6323 2021-07-13 18:09:09 -04:00
btzr-io
2dbd5d0f00 fix sidebar shortcut activation on textarea: #6326 2021-07-13 18:07:41 -04:00
btzr-io
97202dd7aa allow other props for lbry icon (aria-hidden) 2021-07-13 16:56:21 -05:00
btzr-io
b595021a7f fix missing aria-label on links / navlinks 2021-07-13 16:38:50 -05:00
btzr-io
c11b73d117 use aria-hidden for icons indside buttons
use aria-expanded for sidebar menu button
2021-07-13 16:23:29 -05:00
btzr-io
9f18822754 use aria-hidden for filedrop component 2021-07-13 15:31:42 -05:00
btzr-io
6eca14f140 fix issue of invalid aria-label values 2021-07-13 15:19:52 -05:00
DispatchCommit
47d9b4a866 fix site detection, add hide logo to macro url 2021-07-13 00:06:32 -04:00
DispatchCommit
8253f5e0dc center play button 2021-07-13 00:06:32 -04:00
DispatchCommit
b777669a7e Add pre-roll ads
change ad macro url
rework video.js load logic
fix autoplay and retry errors
yeet player.ended error
fix another race condition
fix another error message
add allowPreRoll restrictions
fix some lint issues
remove annoying lint rule
remove video.js lazy loading
more linting fixes
2021-07-13 00:06:32 -04:00
infinite-persistence
0de6be77de Fix missing "currrent/remaining time" control is mobile
## Root-cause
`https://github.com/videojs/video.js/pull/7098`

videojs was recently upgraded.

## Change
Override videojs default theme of hiding the time control in smaller layouts.
2021-07-13 10:58:59 +08:00
infinite-persistence
f7cf21b661 useLazyLoading: start loading when near viewport
## Issue
#6332 <Thumbnail lazy-loader is too slow || Use browser-level lazy-loading>

## Change
Switch from "threshold-based check" to "viewport distance comparison" using the `rootMargin` parameter. The root is the viewport.

This change makes it closer to the native `loading="lazy"` behavior, where it starts to load when approaching the viewport. Chrome I believe uses 3000px distance -- I think 500px is a good compromise for now. Can adjust further.

## Future
- We are currently creating N instances of IntersectionObserver.
  - https://developers.google.com/web/updates/2016/04/intersectionobserver
  - "If you need to observe multiple elements, it is both possible and advised to observe multiple elements using the same IntersectionObserver instance by calling observe() multiple times."

This would probably need a refactor to make ClaimList (or something higher) own the IntersectionObserver.
2021-07-12 17:06:30 -04:00
infinite-persistence
59a8b9d663 WaitUntilOnPage: take scaling into account
It was waiting too near the viewport to load on certain zoom levels. This will maintain the same physical distance for the "approaching viewport" buffer regardless of zoom levels.
2021-07-12 17:06:30 -04:00
infinite-persistence
ad1c826f2c RSS: Use canonical_url (with ':') instead of slicing to 2 characters.
## Changes
- Change to canonical_url (with ':').
- The old format of 'claimName/claimId' needs to be supported still, since we shipped with it.

## Notes
- It would be nice to use regex instead of 2 separate paths, but I couldn't figure out how to make the koa variables work.
2021-07-12 17:06:03 -04:00
saltrafael
4bd5beb2f6 Fix notification bell toast 2021-07-12 11:03:11 -04:00
zeppi
af7b553da3
patch-rss-bug 2021-07-10 11:47:23 +08:00
infinite-persistence
cd9337f2d4
Skip RSS URL generation if it's not a channel. 2021-07-09 21:54:44 +08:00
infinite-persistence
e7bed19391
Shorten the RSS URL
This will be backward compatible with existing format that uses the full claim_id.
2021-07-09 21:54:44 +08:00
infinite-persistence
da8000303b
Add toast feedback for RSS and Link copy action.
6369
2021-07-09 21:54:43 +08:00
infinite-persistence
1f16736e5a
Fix invalid semicolon 2021-07-09 21:28:58 +08:00
infinite-persistence
d97a23b699 Rename default import/exports for clarity in text search (no functional change)
I believe it was just due to copy/pasting from another file and not renaming it.
2021-07-09 08:40:26 +08:00
saltrafael
e2de9bf9e7 Fix recommended tab style issues 2021-07-08 16:08:13 -04:00
zeppi
8e2ad8b8ca fix missing i18n on channel page 2021-07-08 15:55:40 -04:00
zeppi
814acc5b11 restore playlists tab 2021-07-08 15:55:40 -04:00
zeppi
0bb9c520ff fix livestream display 2021-07-08 15:08:53 -04:00
DispatchCommit
f390320030 add retargeting pixel 2021-07-08 01:26:58 -07:00
infinite-persistence
67324aca21
Reload page when trying to open stale chunks
https://raphael-leger.medium.com/react-webpack-chunkloaderror-loading-chunk-x-failed-ac385bd110e0

#codesplit
2021-07-08 15:06:09 +08:00
infinite-persistence
3017155867
Don't lazy-load components in ErrorBoundary
We currently handle major errors through ErrorBoundary. If the error is network related, ErrorBoundary ends up blank if it's components are lazy-loaded.

#codesplit
2021-07-08 14:52:29 +08:00
infinite-persistence
a493428247
Skin fiat-tip notification
## Issue
6421 Notification: Fiat Tip Notification
2021-07-08 11:21:58 +08:00
infinite-persistence
52cba611b3
Cleaned up notification constants
- Organized under an object.
- Removed old unused ones.
2021-07-08 11:21:24 +08:00
infinite-persistence
5769a27151
Fix slow mode error message
It won't work with the hardcoded value.

Still waiting for commentron (error code + data) enhancement. It's pretty weird having to parse the number, then add it back in.
2021-07-08 09:51:18 +08:00
DispatchCommit
14d9b99c7b hide logo image on sidebar ads 2021-07-07 18:37:34 -07:00
Thomas Zarebczan
7175e40d61 update error message 2021-07-07 19:31:15 -04:00
infinite-persistence
26efe9fd45 Enable 'slow mode' in comments
## Issue
Sub item in <6119 Creator Settings: beyond "Muted Words">

## Changes
- Removed the existing 5s min gap on livestreams.
- Enabled the 'slow mode min gap' in Creator Settings

This change now affects both comments in claims and livestream comments.
2021-07-07 19:31:15 -04:00
zeppi
6761cd2aa6 add star icon 2021-07-07 14:36:20 -04:00
jessopb
be879ae90a
Recon 7 6 b (#6418)
* changes

* clean

* showNoSourceClaims
2021-07-07 14:21:11 -04:00
zeppi
a422e857e3 do file remove too 2021-07-07 10:45:46 -04:00
Jeremy Kauffman
60384772af remove words like "revoke" and "claim" from abandon modal 2021-07-07 10:45:46 -04:00
infinite-persistence
ffadae9373 Remove unused (?) selector 2021-07-07 07:50:59 -04:00
zeppi
b045f62eb7 rm comment 2021-07-06 16:06:58 -04:00
zeppi
5f83c027be filter buy countries on master 2021-07-06 16:06:58 -04:00
zeppi
e2b8aae554 use ENABLE_MATURE for fileTitleSection 2021-07-06 16:06:58 -04:00
zeppi
9af3380af7 use ENABLE_MATURE 2021-07-06 16:06:58 -04:00
zeppi
6b2569e5f2 use ENABLE_UI_NOTIFICATIONS 2021-07-06 16:06:58 -04:00
infinite-persistence
73e8a99c7e i18n - "LBC" to "Credit" 2021-07-06 14:53:23 -04:00
infinite-persistence
05d831b283 i18n - fiat 2021-07-06 14:53:23 -04:00
infinite-persistence
1f4746ed89 Fix RSS icon not having a gap 2021-07-06 11:21:40 -04:00
infinite-persistence
5d8e3d8b0a
Revert lazy-loading videojs
## Issue
The loading circle wasn't showing up, causing confusion.

Splitting CSS doesn't seem trivial as there seems to be a huge dependency on the load order. Pretty much similar to what this person is facing https://lihautan.com/css-code-splitting/#the-problem

## Change
This reverts videojs-specific changes from 4d638bcf.
2021-07-06 17:04:16 +08:00
infinite-persistence
d1ee904dab Fix notifications "mark all" not working on Desktop
## Issue
6343
2021-07-06 12:10:03 +08:00
jessopb
75a78cb65d
More recon (#6400)
* rm

* rm

* recon

* claimlist recon
2021-07-05 17:45:20 -04:00
zeppi
54b970c69c fix spinner 2021-07-05 15:15:19 -04:00
infinite-persistence
8d1d2d2cf0 RecommendedContent: prevent excessive render
## Issue
When seeking on a video, RecommendedContent gets re-rendered, which causes the 20 ClaimPreviews to be re-rendered, several times. ClaimPreview has lots of children, plus it's constantly checking against the blacklist, among other things.

## Fix
The culprit seems to be the `recommendedContent` array -- the address may be different, but the contents are the same.
Do a deep compare instead.
2021-07-05 11:03:53 -04:00
zeppi
59f0c85aca improve pending over refreshes 2021-07-05 10:22:13 -04:00
zeppi
4f6740d1f8 flow... 2021-07-05 10:02:03 -04:00
zeppi
d34ef851d0 make flow shut up 2021-07-05 10:02:03 -04:00
zeppi
50556bba97 lint master 2021-07-05 10:02:03 -04:00
infinite-persistence
fc7edc875b
ChannelThumbnail improvements
- [x] (6332) The IntersectionObserver method of lazy-loading loads cached images visibly late on slower devices. Previously, it was also showing the "broken image" icon briefly, which we mended by placing a dummy transparent image as the initial src.
  - Reverted that ugly transparent image fix.
  - Use the browser's built-in `loading="lazy"` instead. Sorry, Safari.

- [x] Size-optimization did not take "device pixel ratio" into account.
  - When resizing an image through the CDN, we can't just take the dimensions of the tag in pixels directly -- we need to take zooming into account, otherwise the image ends up blurry.
  - Previously, we quickly disabled optimization for the channel avatar in the Channel Page because of this. Now that we know the root-cause, the change was reverted and we now go through the CDN with appropriate sizes. This also improves our Web Vital scores.

- [x] Size-optimization wasn't really implemented for all ChannelThumbnail instances.
  - The CDN-optimized size was hardcoded to the largest instance, so small images like sidebar thumbnails are still loading images that are unnecessarily larger.
  - There's a little-bit of hardcoding of values from CSS here, but I think it's a ok compromise (not something we change often). It also doesn't need to be exact -- the "device pixel ratio" calculate will ensure it's slightly larger than what we need.

- [x] Set `width` and `height` of `<img>` to improve CLS.
  - Addresses Ligthhouse complaints, although technically the shifting was addressed at the `ClaimPreviewTile` level (sub-container dimensions are well defined).
  - Notes: the values don't need to be the final CSS-adjusted sizes. It just needs to be in the right aspect ratio to help the browser pre-allocate space to avoid shifts.

- [x] Add option to disable lazy-load Channel Thumbnails
  - The guidelines mentioned that items that are already in the viewport should not enable `loading="lazy"`.
  - We have a few areas where it doesn't make sense to lazy-load (e.g. thumbnail in Header, channel selector dropdown, publish preview, etc.).
2021-07-05 16:04:10 +08:00
infinite-persistence
033b03e6e4
WaitUntilOnPage: respond to window resizing or zooming. 2021-07-05 12:06:55 +08:00
infinite-persistence
bb8fb038ca
WaitUntilOnPage: add option to load when approaching viewport 2021-07-05 12:06:54 +08:00
infinite-persistence
9745d6df3e
WaitUntilOnPage: Fix scroll listener always registered + bump debounce ms
## Issue
The scroll listener never unregisters, and is always registering itself on every scroll. I believe it was done that way to also handle the case of "element is already in viewport when mounted".

## Change
Tried to separate both "element is already in viewport when mounted" and "element scrolled into viewport" into different effects.

The timeout value used is a bit arbitrary, but is needed because the initial size is (0, 0), and to debounce any layout shifts. Reasoning: If an element is explicitly placed under this wrapper, the additional delay is acceptable since it's meant to be lazy-loaded anyway.
2021-07-05 12:06:54 +08:00
zeppi
89576572f5 more stripe only on web 2021-07-03 14:42:37 -04:00
zeppi
270049316e fiat tips only on web 2021-07-03 14:42:37 -04:00
Anthony
434030e007 touchup frontend to show balance 2021-07-03 14:42:37 -04:00
zeppi
8a5230ed6a new api 2021-07-03 14:42:37 -04:00
zeppi
bec50829c1 updated code
about to test something

generate programatically

beginning of the frontend

stripe integration page seems to be working

add user

put functionality behind conditional tag

connect frontend working well

adding environment variables to save success and failure url

bugfix

bugfix

final clean up

adding credit card page

seems to be coming along

calls successfully coming from the frontend

fixing up frontend

cleaning up

frontend coming along

client secret working

basic frontend in place

adding tip page

adding more to the tip frontend

frontend almost done

tabs coming along

one last thing to do for frontend

adding explainer text as custom function

putting finishing touches on tabs

support tabs working well

disable fiat toggle when card not connected

fix frontend gui bug

bugfix and pull out label function

fix symbol for tip gui

modal when card is not yet saved

fix fiat disabled bug

knowing whether card is added programatically

sending tip with frontend

tip functionality working

show unpaid balance

add frontend for card add section

update frontend

update frontend

bugfix

change to use react instead of css

update how stripe is instantiated

fix bug

use customer setup

coming along

working but needs optimization

persist if card is saved

adding anonymous tip functionality

fix nan bug

build stripe endpoints programatically

show for all users for time being

allow the stripe key to automatically switch to live environment

bugfix

bugfix

fix jslint

fix channel page support button

better docs

show customer transactions on frontend

basic table in place

various page updates per jeremys notes

showing card details

nicer tip history table

add better prompt to add card on file viewer page

some linting

time

put connect account behind fiat enabled

no persist fiat mode

wallet calls

tip stuff
2021-07-03 14:42:37 -04:00
infinite-persistence
10c04a7991 Show comment failure reason
## Issue
6370
2021-07-03 13:07:05 -04:00
zeppi
22d9495b8d fix rss, add icon 2021-07-02 13:03:24 -04:00
infinite-persistence
5e97fdfa0d
RSS: Fix URL
Not sure why it worked in the dev instance.
2021-07-02 13:17:14 +08:00
infinite-persistence
49046c9d25
RSS feed for channels
## Issue
3779 RSS feed for channels

## Initial implementation details
- RSS only (not atom)
- Grabs latest 10 entries (Beamer have concerns)

## Credit
Referenced the community version mentioned in 3779
2021-07-02 13:03:21 +08:00
zeppi
608a421ce5 lint 2021-07-01 16:01:51 -04:00
zeppi
9c8c00a21f fix tabindexes 2021-07-01 16:01:51 -04:00
zeppi
e9868e37a1 restore single channel content tab 2021-07-01 16:01:51 -04:00
infinite-persistence
ad202d6471
i18n 2021-07-01 17:01:58 +08:00
infinite-persistence
2e0f8c6120
Fix videojs overlay css
Related:
aaffd3b089 "CodeSplit: Load 3rd-party css before ours."
2021-07-01 15:23:42 +08:00
DispatchCommit
da23a5625b fix video js imports 2021-06-30 19:12:21 -07:00
zeppi
304c0553da lint 2021-06-29 14:52:11 -04:00
John B Nelson
5e2a4960fb FIX video.js event firing issues fore RecsysPlugin
- The `rateChange` event now logs the updated speed,
   not just the    time at which it occurred.
- The `scrub` now (more) accurately logs the position
   it came from before the destination.
- The recsys events get consolidated for logical consistency.
2021-06-29 14:52:11 -04:00
DispatchCommit
8ce12f8e60 fix autoplay for transcoded files 2021-06-29 14:52:11 -04:00
infinite-persistence
5766dc34b5 Port recsys to master; enabled for SIMPLE_SITE only 2021-06-29 14:52:11 -04:00
infinite-persistence
099667a4bb Use env for loading-bar color instead of hardcoded. 2021-06-29 21:01:14 +08:00
Niko Storni
c5a63de33c use new optimizer for thumbnails CDN
this should resolve the slow load times for some thumbnails
2021-06-28 17:56:19 -04:00
Anthony
04108f32d5 fix div being stretched by comment section 2021-06-28 12:52:43 -04:00
infinite-persistence
8291cdf7a9
Wunderbar: bump debounce to 1s
per feedback
2021-06-27 11:02:52 +08:00
Anthony
312c561529 update comment 2021-06-26 22:26:40 -04:00
Anthony
ab13b23cef dont display cc button via videojs settings 2021-06-26 22:26:40 -04:00
zeppi
aa8366f21c enable sign up in desktop 2021-06-26 11:56:32 -04:00
zeppi
eed4793799 fix null claim on reactions selector 2021-06-25 16:29:58 -04:00
infinite-persistence
a6b2f91e33
Fix popup menu for both playback rate and quality selector. 2021-06-26 01:11:38 +08:00
infinite-persistence
e367b66a08
Fix stuck video poster when switching videos
## Issue
With autoplay off, clicking on another video from the Recommended section didn't update the video poster.

## Fix
Made a mistake assuming that the whole component will be re-mounted, so was only setting the thumbnail once.
2021-06-26 01:05:23 +08:00
zeppi
c44beaf8fa remove bad new button 2021-06-25 11:40:37 -04:00
infinite-persistence
4d638bcf10
~ Initial Code Split (#6228) 2021-06-25 16:02:45 +08:00
infinite-persistence
3322b91c5d
Improve <video> poster thumbnail fetching.
Even with the caching changes, a 150kB thumbnail still takes 1-2s to fetch. This impacts the score.

## Change
(1) Start with a large-enough placeholder image (has to be larger than the final image -- inflating doesn't count), then delay just enough for scoring, then switch to the real thumbnail.

(2) Since we are now doing post-mount stuff, we have the exact dimensions to optimize the claim thumbnail. This reduces the typically-several-MBs thumbnail to kBs.
2021-06-25 16:00:47 +08:00
infinite-persistence
4562a33926
Lazy-load homepage categories 2021-06-25 16:00:46 +08:00
infinite-persistence
163a10602c
CodeSplit: Show top loading bar while fetching
TODO: Get the primary color programatically
2021-06-25 16:00:46 +08:00
infinite-persistence
aaffd3b089
CodeSplit: Load 3rd-party css before ours.
A temporary solution until we code-split css.
2021-06-25 16:00:45 +08:00
infinite-persistence
60afbaf873
CodeSplit: Consolidate "secondary" chunk.
These are chunks that will be requested immediately after ui.js when opening the homepage, so consolidate them into 1 chunk to reduce network overhead.

More work can/should be done to reduce the secondary chunk.
2021-06-25 16:00:44 +08:00
infinite-persistence
3539031e5a
CodeSplit: Initial work 2021-06-25 16:00:44 +08:00
infinite-persistence
5a467af1f0
i18n 2021-06-25 09:19:17 +08:00
saltrafael
2bfc5d7669 Don't allow editing someone else's Channel 2021-06-23 15:21:49 -04:00
saltrafael
852819dd00 Add back re-direct 2021-06-23 15:21:49 -04:00
saltrafael
360f64e71f Fix repost deletion 2021-06-23 15:21:49 -04:00
saltrafael
97762fdd24 Center livestream 2021-06-23 14:19:50 -04:00
infinite-persistence
aa8b26b5ca Wunderbar: immediate feedback to convey status
Make immediate GUI feedback to convey the current status, which can be the following:
- typing
- waiting lighthouse results
- waiting claim resolve
- no results or failed.
2021-06-23 14:15:59 -04:00
infinite-persistence
36ac9e038d Wunderbar: change throttle to debounce + add min chars
## Issue
6314: prevent lighthouse spam from wunderbar

## Changes
- Wunderbar: change throttle to debounce + add min chars.
- useLighthouse: added option to not throttle.
2021-06-23 14:15:59 -04:00
infinite-persistence
2ba3f05725 FileThumbnail: don't go through optimizer if GIF
## Issue
6301: don't use CDN for GIF thumbnails

## Note
Just a minor mistake in the recent thumbnail refactoring; left out the handling when `allowGif` is true.
2021-06-23 14:15:37 -04:00
zeppi
6d8fce6011 remove more google 2021-06-23 08:54:19 -04:00
zeppi
1b528ea856 remove google sidebar ads 2021-06-23 08:54:19 -04:00
saltrafael
0532e759d4 Fix preview link background 2021-06-22 18:47:25 -04:00
infinite-persistence
f4d327f1f4 Set 'activeChannel' before entering Dashboard
## Issue
6237: Analytics button from Channels page doesn't open analytics to right channel
2021-06-22 18:32:05 -04:00
zeppi
16cfe1c815 remove junk 2021-06-22 14:18:31 -04:00
DispatchCommit
d83856c6cf define magic numbers as constants 2021-06-22 07:42:52 -07:00
Dispatch
f6176f048d
Merge pull request #6268 from saltrafael/scrollback
Button to scroll to recent live chats (scroll to bottom)
2021-06-22 07:29:21 -07:00
saltrafael
2fcc57dbba lint 2021-06-21 11:06:16 -03:00
saltrafael
52f15df5a3 Only show when not at most recent comment 2021-06-21 10:51:07 -03:00
infinite-persistence
7d9fe35d18 i18n 2021-06-21 18:21:18 +08:00
infinite-persistence
244f5ecaa4 Fix videos not switching when floating player is up
## Issue
6278 Video doesn't switch when floating player is up

## Notes
Not sure why the double `src` call is needed, but it is.
2021-06-19 11:23:29 -04:00
infinite-persistence
3db845b9bf
Allow creators to assign moderators from a comment context-menu. 2021-06-19 18:00:02 +08:00
infinite-persistence
9f9d0a651b Moderation: resolve chan name or URL instead of using Lighthouse.
While Lighthouse allows looser searching like "Tom from LBRY", it doesn't show the expected results when direct channel name with partial ID is entered to disambiguate.
2021-06-19 17:11:45 +08:00
infinite-persistence
f02dcb7fe7 No need to resolve as the uri should have all we need 2021-06-19 10:44:28 +08:00
zeppi
13c2c8a9ab small i18n fixes 2021-06-18 19:08:08 -04:00
infinite-persistence
fbcb740dc9 Move 'Download' and 'Report Content' into overflow menu.
## Issue
6236 Add context menu to file page

## Notes
The download button actually handles a lot of things -- generating 'streamingUrl', differences between Web and Desktop, download progress for Desktop, etc.  A simpler fix would be to put something else (maybe "Share") into the overflow menu instead.

Anyway, went ahead to do it per 6236, but retained the item for Desktop since we need a progress label.
2021-06-18 15:50:13 -04:00
infinite-persistence
337cfd8769 Moderator Delegation GUI 2021-06-18 15:46:51 -04:00
infinite-persistence
60780db94b Fetch "am I" list at startup.
This is the list of channels that authorized me as a moderator.

Similar to `moderation.BlockList`, this will only be fetched at startup/reload for now. I don't think there is a need to constantly monitor this. Users just need to refresh to see the moderator GUI elements after the delegator has granted them access.
2021-06-18 15:46:51 -04:00
infinite-persistence
b4b45ffbdc Commentron Moderation Delegation API 2021-06-18 15:46:51 -04:00
infinite-persistence
510056a479 WunderBar customizations for re-use 2021-06-18 15:46:51 -04:00
infinite-persistence
d36c8748e3 Add button to re-fetch Mod Blocklist
... otherwise, a full F5 reload is needed.
2021-06-18 15:46:51 -04:00
infinite-persistence
d6ac2c7954 Comments: enable 'enable_comments' flag
## Issue
Closes 6159 "Support Comments Enabled/Disabled for comment.List API"

## New behavior
- `disable-comments` tag will block the comments component entirely.
- `settings.commentsEnabled`:
  - When false, will pause comment fetching, posting and replying.
  - Any already-fetched comments will stay on screen (unless user reloads/F5).
2021-06-18 15:46:51 -04:00
zeppi
42a9024ab8 youpos 2021-06-18 10:57:19 -04:00
zeppi
1a30cb6586 clean 2021-06-18 10:57:19 -04:00
zeppi
2268ab01fb app works when id api fails 2021-06-18 10:57:19 -04:00
infinite-persistence
701ec0a473 Fix remaining "Collection" strings to "List" 2021-06-18 22:31:10 +08:00
saltrafael
aea22d10ee Button to scroll to recent live chats (scroll to bottom) 2021-06-18 10:40:52 -03:00
zeppi
03e921e6df use commentron for live view counts 2021-06-17 14:58:55 -04:00
zeppi
eb0992879c sidebar channels no staked 2021-06-17 10:44:10 -04:00
Marios Vladimerou
6cec8303b9 adjust channel staked indicator in side navigation 2021-06-17 10:28:16 -04:00
Marios Vladimerou
d8b40931f3 Show channel thumbnails in side menu 2021-06-17 10:28:16 -04:00
infinite-persistence
72a4ed107b i18n and various minor fixes 2021-06-17 17:05:24 +08:00
zeppi
60130ec91e gah 2021-06-16 16:03:08 -04:00
zeppi
0d41ba59b3 forbid playlist embed in share 2021-06-16 16:03:08 -04:00
zeppi
6f2ef41230 fix popup 2021-06-16 13:08:30 -04:00
zeppi
8fa55082d5 remove sub heart on collections 2021-06-16 13:01:30 -04:00
zeppi
932a202573 lists help copy 2021-06-16 13:01:02 -04:00
zeppi
3d83354533 fix simplesite crash 2021-06-16 12:56:44 -04:00
zeppi
ba5586933d fix lists empty on channel page 2021-06-16 12:56:31 -04:00
Thomas Zarebczan
7a852462f9
copy for lists feature 2021-06-16 11:19:41 -04:00
zeppi
ff5c28a70f lists for all 2021-06-15 18:37:35 -04:00
zeppi
179f16470b fix menu separators 2021-06-15 18:37:35 -04:00
zeppi
7457eebd88 clarify incognito claim 2021-06-15 18:37:35 -04:00
zeppi
ce6ae9402b lists help copy 2021-06-15 18:37:35 -04:00
zeppi
761974ca6f extra collection publish buttons, styling 2021-06-15 18:37:35 -04:00
saltrafael
c92bcc945f remove analytics 2021-06-15 13:47:56 -04:00
saltrafael
32d2ac2fc9 better handle reposts 2021-06-15 13:47:56 -04:00
saltrafael
6629ea6041 final code touches 2021-06-15 13:47:56 -04:00
saltrafael
d553c1170e fix showcase for list items 2021-06-15 13:47:56 -04:00
saltrafael
3aa7c754aa lint 2021-06-15 13:47:56 -04:00
saltrafael
055811957b allow delete repost, small block fix, lint 2021-06-15 13:47:56 -04:00
saltrafael
3cd2548206 delete repost 2021-06-15 13:47:56 -04:00
saltrafael
4ef8247985 remove redundancy when buttons are already on page 2021-06-15 13:47:56 -04:00
saltrafael
3a6bddc588 fix multiple channels analytics bug 2021-06-15 13:47:56 -04:00
saltrafael
32d624b807 allow unblock/mute own 2021-06-15 13:47:56 -04:00
saltrafael
2aaa9f358b Additional pop up menu options 2021-06-15 13:47:56 -04:00
infinite-persistence
524370711c
WaitUntilOnPage: Reduce debounce ms; remove unused hack
(1) Reduced the debouncing duration so that the final element can be rendered asap after visible.
  - If the user is scrolling non-stop, it would continue to debounce and the GUI ends up not showing the final element.
  - 25ms seems enough to prevent the initial false-positive that occurs in the scenario of "adjacent/upper elements resized late, so our element was briefly on screen when mounted". If not enough, we can make this a parameter.

(2) Removed `lastUpdateDate` that was a quick hack for Recommended section. We don't use it on that element anymore, so remove the hack to keep the file clean.
2021-06-15 16:28:11 +08:00
infinite-persistence
df2c274216
WaitUntilOnPage: handle large items; add optional placeholder element.
(1) The previous code assumed the element is always smaller than the screen. When used on large items like "homepage categories", it'll never load because the element exceeds the screen width or height.

(2) Added optional placeholder element. This allows us to put a cheaper element while waiting, so that the layout doesn't shift when we finally render. This is visually better when scrolling, and complies with Web Vitals.
2021-06-15 16:28:10 +08:00
saltrafael
79fb020fc8 Don't reset content language on edit 2021-06-14 14:53:14 -04:00
zeppi
f91940a8b3 remove stuff 2021-06-14 11:55:50 -04:00
zeppi
fca900fb9d default top to all-time on channel content 2021-06-14 11:55:50 -04:00
zeppi
f149410902 thumbnail fix 2021-06-14 11:55:50 -04:00
zeppi
99f41ae53f list add scrollbar only when needed 2021-06-14 11:55:50 -04:00
zeppi
e40aa84a40 fix canonical redirect 2021-06-14 11:55:50 -04:00
zeppi
5680b19dc8 add lists modal stuff 2021-06-14 11:55:50 -04:00
infinite-persistence
cbf0be3f3c
i18n update request from translators 2021-06-13 15:46:18 +08:00
infinite-persistence
c2ff765a60 Revert "Don't reset content language on edit"
This reverts commit 09aceb6295.
2021-06-13 15:45:15 +08:00
saltrafael
7483429ee6 Handle comment + tip failure, don't re-support 2021-06-11 17:14:17 -04:00
saltrafael
09aceb6295 Don't reset content language on edit 2021-06-11 17:01:20 -04:00
zeppi
eff948f786 toms fix for player timeout bug 2021-06-11 13:40:01 -04:00
zeppi
e8d352cc4c fix channel tabs again 2021-06-11 07:49:27 -04:00
zeppi
d55ef7e899 Empty states for channel tabs 2021-06-10 17:47:02 -04:00
zeppi
501d1cf5f1 include tabs fix from ody 2021-06-10 17:47:02 -04:00
zeppi
d5f199be66 enable clear edits 2021-06-10 17:47:02 -04:00
zeppi
f258de54b0 fix list order down 2021-06-10 17:47:02 -04:00
zeppi
9b7c8fd642 sharing with lId, fix autoplay bump, 2021-06-10 17:47:02 -04:00
zeppi
78ce17844b limit lists page display count and improve empty state 2021-06-10 17:47:02 -04:00
infinite-persistence
3a58ca1954 Fix notification color.
## Issue
Closes: 6196 Bright Theme is Broken

## Notes
I was trying to fix the problem of the border not visible in Desktop Dark because the highlight color was the same as the border color.  The approach didn't take Light and Odysee into account ... oops.

Round 2.
2021-06-10 10:21:50 -04:00
infinite-persistence
47539edcab Fix lint (removal of videoFetchDuration) 2021-06-10 10:14:52 -04:00
infinite-persistence
617ab25f6e Fix Reddit-share tooltip + i18n update 2021-06-10 07:59:58 +08:00
Andrey Beletsky
27abc1e9d3 Remove erroneous multiplication of time to start by 1000 2021-06-08 13:42:40 -04:00
Andrey Beletsky
09cfee2fa1 Remove time to fetch metric 2021-06-08 13:42:40 -04:00
zeppi
ca116ba010 wip
wip

wip - everything but publish, autoplay, and styling

collection publishing

add channel to collection publish

cleanup

wip

bump

clear mass add after success

move collection item management controls

redirect replace to published collection id

bump

playlist selector on create

bump

use new collection add ui element

bump

wip

gitignore

add content json

wip

bump

context add to playlist

basic collections page style pass wip

wip: edits, buttons, styles...

change fileAuthor to claimAuthor

update, pending bugfixes, delete modal progress, collection header, other bugfixes

bump

cleaning

show page bugfix

builtin collection headers

no playlists, no grid title

wip

style tweaks

use normal looking claim previews for collection tiles

add collection changes

style library previews

collection menulist for delete/view on library

delete modal works for unpublished

rearrange collection publish tabs

clean up collection publishing and items

show on odysee

begin collectoin edit header and css renaming

better thumbnails

bump

fix collection publish redirect

view collection in menu does something

copy and thumbs

list previews, pending, context menus, list page

enter to add collection, lists page empty state

playable lists only, delete feature, bump

put fileListDownloaded back

better collection titles

improve collection claim details

fix horiz more icon

fix up channel page

style, copy, bump

refactor preview overlay properties,
fix reposts showing as floppydisk
add watch later toast,
small overlay properties on wunderbar results,
fix collection actions buttons

bump

cleanup

cleaning, refactoring

bump

preview thumb styling, cleanup

support discover page lists search

sync, bump

bump, fix sync more

enforce builtin order for now

new lists page empty state

try to indicate unpublished edits in lists

bump

fix autoplay and linting

consts, fix autoplay

bugs

fixes

cleanup

fix, bump

lists experimental ui, fixes

refactor listIndex out

hack in collection fallback thumb

bump
2021-06-08 13:25:52 -04:00
infinite-persistence
5eae88b553
Fix footer in master
Since lbry.tv is going away, I tried not to touch the css file much so that the merge into `odysee` won't affect it. The side effect is that the links are now white instead of the regular link color.
2021-06-08 01:19:41 +08:00
infinite-persistence
05a1f3cdab
More theme color fixes
## Issue
#5998 Theme color problems
2021-06-07 11:36:38 +08:00
infinite-persistence
3abaed0f17
Sort all language dropdowns, not just in the Settings Page. 2021-06-07 10:15:07 +08:00
infinite-persistence
bd8172693c Re-enable "file download" in Odysee
## Issue
Closes 6167 Make downloading more intuitive / obvious in web mode
2021-06-07 09:18:08 +08:00
infinite-persistence
fae90c4ba1
i18n update
- Screen readers will announce an <img> tag as that, so no need to say "image" again in the `alt` text.
2021-06-07 09:15:55 +08:00
infinite-persistence
f1bf067ebd Combine Buy and Swap
## Issue
5873 Unify swap and buy flow // swaps round 2

## Changes
- Added "Buy|Swap" tab in the Buy Page and display the Swap component when needed.
- Removed 'Swap' button from Wallet Page.
- "Buy More" and related tooltips updated to "Buy or Swap Credits".
2021-06-05 10:07:38 +08:00
Anthony
272eb90392 remove native controls for ios 2021-06-04 15:41:42 -04:00
Anthony
eef218a807 use video js viewer for ios and add playsinline 2021-06-04 15:41:42 -04:00
Thomas Zarebczan
b8c5a0ed29
Add support for reward approval prompt 2021-06-03 14:54:06 -04:00
zeppi
3ce551f106 copy 2021-06-03 12:08:46 -04:00
zeppi
28a3db28b7 use tag to disable interactions on livestreams 2021-06-03 12:08:46 -04:00
saltrafael
213c336192 fix multi line links 2021-06-03 10:56:28 -04:00
zeppi
f386352be3 fix lint 2021-06-02 22:42:50 -04:00
Jeremy Kauffman
22447aa20a
shorter text on sign up 2021-06-02 13:42:30 -04:00
Jeremy Kauffman
417f0a853b
eliminate text wrapping on sign in 2021-06-02 13:41:06 -04:00
infinite-persistence
a613f28bc8 Login graphic improvements
1. Lock the width of the second pane so that the layout doesn't shift after the image is fetched.
2. The image is huge, so pass through the optimizer.
  - Wait until the container is mounted to get the exact image width.

Unfortunately, it still takes 0.8s on average to fetch the image, regardless of how small the image has been optimized.
Login graphic improvements

1. Lock the width of the second pane so that the layout doesn't shift after the image is fetched.
2. The image is huge, so pass through the optimizer.
  - Wait until the container is mounted to get the exact image width.

Unfortunately, it still takes 1s (on average) to fetch the image, regardless of how small the image has been optimized.
2021-06-02 08:24:35 +08:00
infinite-persistence
15015dacd7 Performance: don't spread in 'reduce' 2021-06-02 08:21:43 +08:00
infinite-persistence
dec38e1770 ChannelThumbnail: use 1x1 transparent image as starting point instead of 'undefined'.
## Issue
6135

While waiting for the lazy-loader IntersectionObserver to initialize, and for the real image to be fetched, an undefined `src` results in the "broken image" thumbnail.

## Fix
Use a transparent image as the starting point. This visually retains the current behavior but minus the "broken image" part.
2021-06-02 08:20:37 +08:00
infinite-persistence
8da7ddf6e6 Parallelize 'channel_sign' calls.
## Issue
If the account has lots of channels, each channel name was sequentially signed, delaying the final action.
2021-06-01 13:39:53 -04:00
infinite-persistence
eba8de1cda i18n update 2021-06-01 13:33:58 -04:00
infinite-persistence
315bbe21b1 Open the sidebar by default
## Issue
Closes "6112 Side menu expanded by default unless collapsed by user"
2021-06-01 11:16:08 -04:00
infinite-persistence
d6d1cf58e9 Fix SidebarNavigation key errors 2021-06-01 11:15:30 -04:00
infinite-persistence
27a9f654d4 Bump up notification content width to show more text
## Issue
Closes "6056 Extend notificaiton text to show more characters"

## Notes
Looking at the code and comments, I couldn't figure out what was the reason for adding the width constraint (just in case this breaks something).

My guesses:
- Try not to make the rhs thumbnail too far apart from the lhs thumbnail.
- Try not to make the rhs thumbnail misaligned due to dynamic width of the "xx days ago" string on the far right.

## Changes:
Extended the width as much as possible, while retaining some gap before the "xx days ago" string and "unread dot" so that thumbnails stay align in the general case.

The components still reflows nicely (as it did previously) per window-size.
2021-06-01 11:15:04 -04:00
Thomas Zarebczan
97a4f5fcab
Fix metadata and make thumbs work 2021-05-27 17:00:19 -04:00
infinite-persistence
6043b6101b ClaimTilesDiscover: pause visual update until new results are fetched
## Issue
GUI fix for 5979 `claim search runs twice sometimes and "refreshes" view`

The search query might encounter minor alterations after rendered (e.g. for the case of 5979, the `moderation.Blocklist` data came late). The code currently resets the result to 0 before initiating `claim_search`, so we see the GUI blink.

## Idea
There is a possibility that the query-change does not alter the final results in the end. Instead of reseting to the results to zero, hold on to the previous results until the fetch is done.

## Known issue
The tiles no longer blink if there is no change, but the "LIVE" indicator still does. I didn't want to propagate the info too deep, so leaving as is for now. It can be considered a feature ("blinking LIVE indicator" :))

## Results
- No blinking if results stay the same.
- Minimal tile-shifting if new ones are added or removed.
- In the current Odysee homepage, reduced React commits from 88 to 76 (save some CPU cycles).
2021-05-27 13:50:59 -04:00
zeppi
a6e76bab31 fix: ignore flow linter promise allsettled 2021-05-27 12:17:23 -04:00
infinite-persistence
1b3fec0452 Add sign-in graphics for SIMPLE_SITE
Homepages repo: `Issue 64 - Add new graphics to odysee sign in`
2021-05-27 14:21:16 +08:00
saltrafael
19055784ff fix recipient address mobile view 2021-05-27 00:54:42 -04:00
infinite-persistence
f8e1274c38 Fix broken Comments API due to surfacing of error
## Issue
The "Muted Words" PR elevated Comment-API errors so we can handle it (previously, it goes unnoticed). This broke the other Comment functions because the spammer mitigation might return an error, causing `Promise.all` to bail early.

## Fix
Changed to `Promise.allSettled` and reconstructed the results. This will make it equivalent to the code prior to the "Muted Words" PR.
2021-05-27 00:54:12 -04:00
infinite-persistence
06c6018047 Creator Settings now require a minimum staked LBC. 2021-05-26 15:38:29 -04:00
infinite-persistence
112947adc6 Hide Creator Settings that are not ready 2021-05-26 15:38:29 -04:00
infinite-persistence
82aaf361f1 Hide "control tags" except when creating/editing claims.
## Changes:
1) TagSearch: hide the "control tags" in the Creator Settings page (irrelevant).
2) TagSearch: show the "control tags" when creating/editing Channel (let's use `setting.CommentsEnabled` instead).
3) TagSearch: show the "control tags" when creating/editing Content (`disable-comments` can be used to block comments at the per-claim level, e.g. allow comments in general but block only for specific claims).

## Missing pieces:
For (2) and (3), some work is needed to hide the comment GUI when `setting.CommentsEnabled` is disabled for a particular channel. That flag is not ready in Commentron yet, so I'm not sure how this will be done at the moment. In other words, the checkbox does nothing at the moment.

## Potential flaw:
This change will hide all control tags. If we have more tags in the future and would like to selectively disable some, we'll have to change this parameter to an array instead. Since the usage is not widespread at the moment, a single `disableControlFlag` seems cleaner (don't over-think it yet).
2021-05-26 15:38:29 -04:00
infinite-persistence
8050fa24b2 Relay and beautify 'blocked words' error message 2021-05-26 15:38:29 -04:00
infinite-persistence
2b70ad667b Add/implement SettingsCreatorPage 2021-05-26 15:38:29 -04:00
infinite-persistence
54b17ee739 Commentron Settings API 2021-05-26 15:38:29 -04:00
infinite-persistence
3b1397badc fetchCommentsApi: Relay error messages to the client's 'catch' block. 2021-05-26 15:38:29 -04:00
infinite-persistence
b2c2096da5 TagsSearch: tweaks to allow re-use beyond tags
- Allow 'followed' and 'unfollowed' list to be overridden via props.
- Allow labels to be overridden via props.
- Add ability to disable "Suggestions"
2021-05-26 15:38:29 -04:00
infinite-persistence
1008724761 Fix lint 2021-05-26 15:38:29 -04:00
infinite-persistence
cded632fd2
DateTime: avoid unnecessary update (#6110)
## Issue
Part of `5834 Performance investigation`

In a homepage with 120 tiles, the lists get rendered 3 times during initial update. The sub-components are updating recursively (will investigate), so instead of 120 DateTime renders, we have 1000+ renders.

The resolved DateTime string for `timeAgo` rarely changes, and even if the string was "a few seconds ago", there's no real need to constantly update it.

## Change
Require a minimum 1-minute delta when deciding whether the component should update. Clients can change this value as needed.

## Test
- [x] Verified `shouldComponentUpdate` doesn't end up taking more time than not having it (it's in micro-second range, compared to the millisecond render).
- [x] Profiler showed no significant improvement for low number of DateTime components, but for the 120 DateTime case, almost 1/4 of a second is saved.
2021-05-24 18:29:58 -04:00
infinite-persistence
9e13596104 Fix 5932 "no way to buy Paid Images or Posts"
- FileRenderInitiator: we don't display if it's not Audio or Video ("playables"). But only do that if it's free or was purchased, otherwise there's no button to buy it.

- FileRenderInline: if the user have not purchased it, don't show anything (not even the spinner).
2021-05-24 11:07:13 -04:00
infinite-persistence
b101cb304f Auto fetch paid-content if already paid.
Seems odd to force users to manually "play" purchased files.
2021-05-24 11:07:13 -04:00
Thomas Zarebczan
b4da616176
Fetch last 75 comments for livestreams
We only show 75 anyway...
2021-05-21 15:48:43 -04:00
infinite-persistence
09d8b38073
Markdown editor tweaks (#6096)
* Markdown: make '>Quote' look less like a banner

Quotes should be subtle as it is primarily intended for redundant content, but currently it looks more like a banner that brings lots of focus.

This change is also background-independent. Currently, the Quotes in Posts doesn't look like it has a background color, because it happened to be the same as the Post's background. This makes it inconsistent with Quotes in Comments. Let's just always make it blend in + grayish text.

* Markdown: inline code tweak

- better symmetry
- less spacing to the left and right, since it's common to already have a space in the sentence (even if it doesn't, like in CJK, the new spacing looks sufficient).

* 4481: Use regular font in Markdown Editor

I think we should not use Monospace fonts for the Markdown Editor since we are not coding.

Similar to Github, code-blocks and inline-code only gets converted to monospace in the Preview.
2021-05-20 15:31:14 -04:00
saltrafael
2852138c3a
allow sending directly to a channel or content address (#5990)
* allow sending directly to a channel or content address
2021-05-20 15:30:40 -04:00
infinite-persistence
200dc66763
Fix "Buy More" button touching the presets (#6094) 2021-05-20 15:20:13 -04:00
infinite-persistence
c8659cc44b
More theme color fixes (#6095)
## Issue
- Closes 5998 Theme color problems
  - "_Seeing the theme go blue when a modal pops up. There's a change in color on Odysee branch also when this happens (but not as apparent)_"

##
1. Fix overlay background color back to gray theme.
2. Also, fixed the Active Toggle Button back to primary colors.
3. Fix hard-to-read "videojs time tooltip". Using the primary colors is a nice touch, but people have complained in Discord that it's too dim given it's transparent background. Just use 'white' instead. Don't use '--color-white' since that's a bit dimmed down.
4. Fix odd highlight in the volume slider (the bright primary color was used in the background).
2021-05-20 15:20:01 -04:00
infinite-persistence
9c28bc9a83
Theme color fixes (master) (#6088)
* Fix error text color for dark mode.

Don't alter --color-danger since that color works fine as a backdrop for the Toast Message.

* Remove duplicates

* Fix typo

* Fix primary/secondary button and notice_message

* Fix dimmed checkbox

* #6006 Switch from 'coolGray' to 'gray'

* Fix invisible nag (missing --color-orange)
2021-05-19 11:57:33 -04:00
infinite-persistence
2dac41e5e5
Mute video when autoplay is blocked by browser policy (#6087)
## Issue
When opening a video directly in Chrome Incognito, the video should autoplay (since that's the default Lbry setting), but it doesn't due to browser policy
https://developers.google.com/web/updates/2017/09/autoplay-policy-changes

## Changes
- We don't want to forcefully mute the video when `autoplay=true`; we just want to do it when the browser policy is applied.
- Fortunately, there is already an existing code-block for us to check that.

## Test cases
- [x] "Autoplay=Off" should not be affected.
- [x] After manually unmuting, the next autoplayed video should not be muted (this is "user interacted" opening, so the policy allows autoplay)
- [x] If manually muting, the next autoplayed video should retain user's last setting.

## Known issues
- I've seen `error` occasionally being undefined in the `catch` block. In those cases, the solution doesn't work. We could remove `if (player.autoplay() && !player.muted())` and simply just try muting it, but for now it's better to ensure `NotAllowedError` is due to unmuted first before applying the fix.
- This doesn't work for Firefox as there is an explicit "Allow Autoplay" button in the address bar that user needs to click themselves. Applies to all sites.
2021-05-19 11:56:54 -04:00
infinite-persistence
df03cf1032
Skip thumbnail fetch if autoplay is ON (#6084)
It's useful to show the thumbnail as the player's backdrop when Video Autoplay is OFF, but it's a wasted fetch when it's ON because the videojs component will be blocking it.

Although it's the same image as the ClaimPreview, this one will be in full size, so a fetch will always happen.

Aside: videojs handles the backdrop for the audio and embed case, so this change won't affect those items.
```
  <VideoJs
    poster={isAudio || (embedded && !autoplayIfEmbedded) ? thumbnail : ''}
  />
```

Future: for "mobile + autoplay=OFF", we should consider using the optimized thumbnail. 6074 should help.
2021-05-18 01:48:23 -04:00
saltrafael
31a84828cc
improve logic for own comments showing first (#6073) 2021-05-17 15:55:23 -04:00
infinite-persistence
2a6df18b72
ChannelThumbnail fixes (#6075)
* Restore "use cdn for channel thumbnails"

This reverts commit e7adc607fa.

* ChannelThumbnail: disable optimization in Channel Page and for GIFs

## Issue
5564: Don't use optimized URLs on channel pages (profile/banner)

## Notes
This is not the best/full solution yet, but it is better than what we have to today (one step in the right direction).

Optimized channel thumbnail size is currently hardcoded to a lowest common denominator.
- Pro(s):
  - For images used in multiple places (different sizes) in a page, the total time needed to get the optimized version for each size is too much. Also, the optimizer seems to increase the size of the image in some cases. So, getting 1 image and re-using it is faster for this scenario.
  - Simpler code (no need to mount first -> get dimension -> load image)
- Cons:
  - We aren't fully optimizing the size, so not really addressing Core Web Vitals score problem.
    - e.g. in the front page, we could have used a smaller image for the channel thumbnails.
  - We haven't address the problem with large screen sizes.

* Restore channel selector

This reverts b5cc0bb42d

* ChannelThumbnail: fix lazy-loading

- Closes 6066: Revisit lazy-loading Channel thumbnails
- Properly fixes 5933: Thumbnail lazy-load causes ChannelSelector icon to not update.
    - Add effect-dependency on `channelThumbnail` and `thumbError`.
- Really perform the lazy-loading now.
    - `data-src` was not used, so it wasn't actually lazy loading previously.
2021-05-17 15:51:21 -04:00
infinite-persistence
73f6d207ea Restore "Autoplay media files" behavior
## Issue
Closes 6078 `"Autoplay media files = disable" is broken`

`if (-1)` is "truthy"
2021-05-18 01:57:16 +08:00
infinite-persistence
354027a5f4
i18n update (#6039)
* Don't translate non-English strings

This requires an accompanying change in the homepages repo.

* Translate swap errors.

* i18n update

- Add missing sub-strings.
- Removed 'video stonks'.
- Added 'Nothing here...'
- Updated notifications drop-down strings.
- Add latest "mayo" meme.

* Remove strings that can't be translated due to dynamic values.
2021-05-15 02:01:00 -04:00
mayeaux
2292f790a0
force autoplay when timestamped (#6064) 2021-05-15 01:59:21 -04:00
saltrafael
3131b48c77
Fix blocking/muting issues on channel pages (#6034)
* dont use no_channel_ids on channel content claim search

* ClaimMenuList not filtering own content initially

* fix errors

Co-authored-by: Thomas Zarebczan <thomas.zarebczan@gmail.com>
2021-05-15 01:53:56 -04:00
infinite-persistence
c85d7f12c8
Livestream-only query cleanup. (#6036)
This completes the change in c24c016e, covering ClaimListDiscover as well.
2021-05-15 01:52:24 -04:00
saltrafael
e5795baa10
own comments show first in controversial / best #5905 (#5939)
* own comments show first in controversial / best #5905

* workaround to place my recent comment at the top

* only most recent comment

* lint fix

Co-authored-by: Thomas Zarebczan <thomas.zarebczan@gmail.com>
2021-05-15 00:56:58 -04:00
infinite-persistence
698bd5eef1
Continuation of "Add release date field #5514" (#6049)
* Release date -- initial attempt (squashed and rebased)

- Use white color for calendar buttons in release date input
- Update icon color for release date input
- Allow to set time in release date and display it under additional options
- Add release date field

* Upgrade to latest react-datetime-picker.

I believe this also picks up the y18n security fix.

* Handle dark theme and general style fixes.

* [+redux] Change how release_time is edited.

- `releaseTime` is now a number instead of a string, matching `release_time`. It was getting confusing what the variable units were.

- `releaseTime` will always match `release_time` for an edit. It will be used in the GUI to reset just the date to the original, instead of having to reset the entire form.

- `releaseTimeEdited` will be used by `updatePublishForm` in the GUI to represent the desired new release time. Set to `undefined` if we don't want to change the date.

* Add 'Reset|Now|Default' buttons instead of overloading the date-picker's "X" button.

Before this, the "X" button resets to the original (previous) publish date for Edits, and resets to current time for New Claims. This is very confusing, so added explicit text-based buttons -- hopefully this is more intuitive.

* bump redux to master

Co-authored-by: Franco Montenegro <franco.montenegro.ruke@gmail.com>
Co-authored-by: Thomas Zarebczan <thomas.zarebczan@gmail.com>
2021-05-15 00:10:28 -04:00
Thomas Zarebczan
2bbdbf4ed8
Fix mobile view with long descriptions 2021-05-14 13:51:55 -04:00
infinite-persistence
4dc333de41
Fix blank gif avatars (#6060)
## Issue
6010: hyperchat send display issues with GIF profiles

The FreezeFrameWrapper have no `src` to freeze due to the lazy loading.

## Fix
Delay the freezing by making the lazy-load effect return a state to indicate when then `src` has been loaded.

Since the lazy-loader will `unobserve` after loading, the state will never go back to false, so we don't need to handle the case of preventing `new FreezeFrameWrapper` from being called multiple times from it's effect.
2021-05-14 11:00:07 -04:00
infinite-persistence
ee1825f5f1
Notification: handle "creator_comment" (#6069)
## Issue
Closes 6022 Notifications: Creator Commented

## Changes
- Beautify - show creator icon instead of generic bell.
- Link to comment directly instead of the claim.
2021-05-14 10:59:36 -04:00
Thomas Zarebczan
420f2c957e
Encode additional special characters 2021-05-13 15:21:21 -04:00
infinite-persistence
645f8ef452
Posts: restore "Tip unlock | Claim details" component (#6051)
* Add ICON.INFO - "i" within a circle.

Basically, an inverted ICON.ALERT.

* Posts: restore "Tip unlock | Claim details" component

## Issue
5882: tip unlock + claim id detials missing from markdown posts view

## Notes
The easiest solution would be to put `FileDescription` into posts, but I think that goes against the clean up of the Post layout, where the focus should be on the content. The faded style of the File Details section seems too distracting, plus we don't want the File Description anyway.

Fixed by:
- Make the existing "LBC amount" clickable to show credit details. An additional padlock will appear if the content is yours and you have tips to unlock.
- Add an "info" icon beside it to show file details.

These "link" buttons are usually lit, but I dimmed it in this case to make them stand out less. Again, focusing on Post content instead of buttons.
2021-05-12 14:26:47 -04:00
infinite-persistence
02fdb1e6df
Notification: further handle "missed_out" + other tweaks (#6052)
* Show full notification text via tooltip

The tooltip fixes the system notifications problem (mentioned below), and also allows one to quickly read the entire comment without actually having to visit the comment.

Currently, we only show about 50 characters in the notification, truncating it to an ellipsis when exceeded.

This is not much of a problem for dynamic text (e.g. comments) since the full text can be seen after clicking on the notification (brings you to the comment). For system notifications, this is problematic since there's no other way to know what the full text was.

Tried to dynamically change the font size to auto fit, but it wasn't fruitful. Even if it did work, it'll probably won't be legible for a 2000-character comment, plus the entire list will look weird with various font sizes.

* Beautify "missed out" notification; bring user to Verify page.

## Issue
6021: Notifications: Missed Out

## Changes
- The notification already brings the user to the `/rewards`. Tweaked it to directly enter the Verify Page.
- Use LBC icon instead of generic bell for this notification.
2021-05-12 13:51:55 -04:00
saltrafael
355dd8e755
remove emojis from reporting (#6042) 2021-05-12 10:19:45 -04:00
zeppi
c24c016eb7 livestream fixes from odysee 2021-05-04 23:00:43 -04:00
Thomas Zarebczan
de8d139351
Force page size to 50 on live streams 2021-05-04 14:12:51 -04:00
infinite-persistence
c32a95a885
Livestream comment delete/edit fix (#5971)
* Fix ability to delete own comments in livestream

## Issue
5832: can't remove own comments in live stream mode (if you have multiple channels?)

Looks like it was just missing `commentIsMine` for the new component.

* Disable editing livestream comments

It doesn't do anything at the moment, anyways.

* Disable deleting hyperchats

The "total tipped" will get deducted when hyperchats are deleted, which doesn't make sense (doesn't reflect actual total that the creator received).
2021-05-04 11:08:36 -04:00
infinite-persistence
432c1233b6
Swap: populate 'status' from 'btc/swap' response instead of waiting for first websocket input. (#5997)
* Swap: populate 'status' from 'btc/swap' response instead of waiting for first websocket input.

## Issue
Clsoes 5975: swap stop at processing even though response comes through

## Notes
Occasionally, the first websocket message doesn't come through (seems like the commerce didn't send?). There's really no need to wait for one more 'status=NEW' message to ensure the right data is being populated (being over-cautious here).

* Beautify the "exact amount" advice.
2021-05-04 11:08:01 -04:00
Thomas Zarebczan
09ee081218 remove stream_types from live
and fix homepage too
2021-04-30 17:55:33 -04:00
Sean Yesmunt
b9a7f9673d remove has_source param from livestream claim_search on homepage 2021-04-30 16:53:17 -04:00
Sean Yesmunt
ce71393d83 theme orginization and cleanup 2021-04-30 15:05:58 -04:00
infinite-persistence
742110c81c Homepage|Discover: hide livestreams, then append active livestreams at the top.
This essentially hides inactive livestreams from the list.
2021-04-30 14:11:42 -04:00
infinite-persistence
0258c2d3c3 useGetLivestreams: add ability to filter by minimum viewers 2021-04-30 14:11:42 -04:00
infinite-persistence
ec5e14ca96 ClaimListDiscover: perform secondary has_no_search search as well. 2021-04-30 14:11:42 -04:00
infinite-persistence
c2a766a3e8 ClaimListDiscover: repeat livestream-sorting changes in ClaimTilesDiscover 2021-04-30 14:11:42 -04:00
infinite-persistence
8919cba43c Refactor livestream sorting into 'prioritizeActiveLivestreams' 2021-04-30 14:11:42 -04:00
infinite-persistence
6ef42cd121 Run 'claim_search' with 'has_no_source' to bring up buried active livestreams.
Scenarios where active livestreams will not appear:
- creation date is way back.
- homepage section options excludes livestreams.

Make an explicit `claim_search` but with `has_no_source` if the client wants `liveLivestreamsFirst`.

If there are lots of channels with livestreams, there's a possibility that the final list will be larger than what was requested. We could trim it to be within the original `options.pageSize` range, but I left that out for now.
2021-04-30 14:11:42 -04:00
infinite-persistence
41380d20df Homepage: move "LIVE" livestreams to the front. 2021-04-30 14:11:42 -04:00
infinite-persistence
3a884152b1 ClaimPreviewTile: add attribute to show "LIVE" tag.
It would have been a clean implementation through `renderProperties`, but due to the need to adjust the opacity of `claim-preview__file-property-overlay` (the parent elemtn), I ended up having to create a new `live` attribute.
2021-04-30 14:11:42 -04:00
infinite-persistence
355bc9296c Pull out livestream data-fetch into an effect.
Differences with the original from 'livestreamList/view.jsx':

- Returns null instead of an empty object for the empty case. This removes the need for clients to create a temp array to determine if the list is empty ('Object.keys(x).length').

- Allow option to not periodically refresh by setting the interval to 0.
2021-04-30 14:11:42 -04:00
Sean Yesmunt
44195ec239 fix lbc-message to prevent incorrect 'Credits' replacement 2021-04-30 12:45:46 -04:00
Sean Yesmunt
ded48bcc3d wrap notification text in <LbcMessage> to handle text with 'LBC' 2021-04-30 12:45:46 -04:00
Sean Yesmunt
f04267ffc6 don't resolve all comment author uris 2021-04-30 12:45:46 -04:00
Sean Yesmunt
3808c61148 fetch notofication/categories for notification types dropdown 2021-04-30 12:45:46 -04:00
zeppi
b9fc9b6319 allow unsubscribe from deleted channels by navigating from sidebar 2021-04-30 11:06:34 -04:00
infinite-persistence
cba369a5ce
Restore lost languages (#5972)
While looking at the next RC, I noticed the new languages were lost. I recall the new language commit included some refactoring which had to be reverted due to some webpack issue.

Re-add those languages in the old (non-refactored) method.
2021-04-28 20:27:04 -04:00
zeppi
fe86010be5 More master reconciliation
rewards page recon

router recon

uEmailVerify recon

uPVerify recon

rm style

app/view recon

channel page recon

chanFol recon

syncPassword recon

fileDesc recon

web/redirect recon

wip

page/view recon
2021-04-27 23:05:38 -04:00
zeppi
6b307352d3 integrate some Odysee code with master
integrate analyticsjs

top page

buy page

reconcile help page

rec. constants

reconcile search page

search page

wip

wip
2021-04-27 19:56:30 -04:00
Sean Yesmunt
8bf14c4c04 fix form field prefix border styling so it's more visible 2021-04-27 13:40:40 -04:00
Sean Yesmunt
778250aa0e fix role=button on all cards and add correct release_time flag to livestreamLink 2021-04-27 13:40:40 -04:00
zeppi
6ab2878766 wip 2021-04-27 11:20:41 -04:00
zeppi
870b9e0c27 wip 2021-04-27 11:20:41 -04:00
zeppi
b819d59674 wip 2021-04-27 11:20:41 -04:00
zeppi
c2f945ab3c unify some styles with master 2021-04-27 11:20:41 -04:00
zeppi
830375cb32 fix disabled publish form 2021-04-27 09:22:11 -04:00
infinite-persistence
b0996d4d18 Mobile: make double-tap match the arrow keys (+/-5s instead of 10s)
## Issue
One of the items in 5865 Video shortcut issues

This one is not really an issue, but it would be nice to match what the arrow keys are doing. Also, in slower regions, seeking 10s will almost always end up buffering.
2021-04-27 09:26:19 +08:00
Sean Yesmunt
f2d83cbf9d fetch ads provider for all homepage videos (but still only show ads for unauth users) 2021-04-26 16:38:33 -04:00
zeppi
b10b79432f autofollow waits for prefs ready 2021-04-26 14:59:15 -04:00
infinite-persistence
e2db26c595 Fix channel links being filtered by Staked Level
## Issue
Channel links were showing the "This channel isn't staking enough LBRY Credits for link previews." -- channel links shouldn't be showing previews in the first place.

## Change
Moved the logic into `ClaimLink`, which is the better place to put it anyway. I think I was trying to not touch as many components as possible (i.e. not passing `allowPreview` down too many layers) in the initial implementation. This caused the `isChannel` consideration to be missed.
2021-04-26 14:51:58 -04:00
Sean Yesmunt
1e2919531b use blocked/muted uris in not_channel_ids for claim_search 2021-04-26 13:27:13 -04:00
infinite-persistence
955f5ac0df Block encoded thumbnail URLs ('data:image')
These only work in the `selectThumbnail` component. If it's small enough, it'll get past the transaction limit-check, but ultimately it doesn't appear correctly in the claim list.

It'll probably appear correctly if we tweak the ClaimPreview code, but since this also fails the Google Video metadata test, I think we should disallow this.

## Issue
5923
2021-04-26 12:24:19 -04:00
infinite-persistence
364db9dafa Propagate thumbnail errors to PublishFormData
Thumbnail errors were just being used in `selectThumbnail`. The form doesn't know about it and was using allowing invalid thumbnails like 'helloworld' to pass through.
2021-04-26 12:24:19 -04:00
infinite-persistence
1911a5132b PublishFormError: look at 'thumbnail' instead of 'thumbnail_url'
I believe the rest of the GUI is setting 'thumbnail'.
'thumbnail_url' is only populated right before publishing.

So, the flag was always false -- we just never see the error on screen because the component is incorrectly hidden (fix for this is coming up next...)
2021-04-26 12:24:19 -04:00
Sean Yesmunt
d4fa45b257 fix hyperchat size when thumbanil is gif and fix totalAmount calculation 2021-04-26 00:32:52 -04:00
Sean Yesmunt
7531a2c21a add back blocked/muted channels to homepage claim_search 2021-04-24 01:00:02 -04:00
Sean Yesmunt
0c71059bf0 fix comment websocket from connecting more than once per claim 2021-04-23 16:58:23 -04:00
Sean Yesmunt
6d89f0df7e hyperchats 2021-04-23 16:20:17 -04:00
zeppi
bd62a55608 review 2021-04-23 14:51:09 -04:00
zeppi
f5f3bf21ee bugfixes 2021-04-23 14:51:09 -04:00
zeppi
f3463ebdeb use redux for livestream claim setup 2021-04-23 14:51:09 -04:00
infinite-persistence
b0193202d1
Re-add ability to export transactions (#5899)
* FileExporter: add 'fetch' hook + Web support

* Re-add ability to export transactions

Closes 4793: Export Wallet History For Taxation Purposes

* Move file-creation to the background.

Don't let the file-creation process block the GUI.

Requires lbry-redux update.

* Bump redux | doFetchTransactions: bump pageSize to 999999; remove doFetchSupport

* bump redux

Co-authored-by: Thomas Zarebczan <thomas.zarebczan@gmail.com>
2021-04-23 12:10:37 -04:00
infinite-persistence
b5cc0bb42d Disable thumbnail lazy-load for Channels
## Issue
5933: Thumbnail lazy-load causes ChannelSelector icon to not update
2021-04-23 00:23:36 -04:00
zeppi
a3af1ad44d toggle button styles in themes 2021-04-22 10:59:03 -04:00
zeppi
9b82f57006 livestream related publish fixes 2021-04-22 10:59:03 -04:00
Sean Yesmunt
0653dbde04 update notification websocket to sockety 2021-04-21 20:18:25 -04:00
Thomas Zarebczan
5ac9e70304
warning about exact amount 2021-04-21 15:27:01 -04:00
infinite-persistence
47d5de1fca
Swap: Don't copy the currency, only amount (#5915)
* CopyableText: add 'onCopy' for clients to change the text-selection

* Swap: only copy the amount (without currency)

## Issue
5873: Rounds 2 of LBC swaps

## Notes
It was an intended feature to include the currency -- I can paste the full string into my note book, while pasting into wallet apps like Exodus will automatically trim off the currency anyway.

Regardless, removed the 'feature' :D
2021-04-21 11:36:34 -04:00
Sean Yesmunt
13b6cc413b add category param 2021-04-21 11:19:23 -04:00
infinite-persistence
cb2c33a35f Implement ReportContent page 2021-04-21 10:49:31 -04:00
infinite-persistence
e5e4a5688f Rick constants
https://docs.google.com/spreadsheets/d/1CXUO0b6uU7hCNureMb0F-ruzrtqZyADNjk_JrKmaZzs/
2021-04-21 10:49:31 -04:00
infinite-persistence
3a09bb18e3 Reporting: use upcoming new Page 2021-04-21 10:49:31 -04:00
infinite-persistence
bcbb1c8185 Add 'ReportContent' actions/reducers/selectors 2021-04-21 10:49:31 -04:00
infinite-persistence
fe885ae6de Util to get list of countries 2021-04-21 10:49:31 -04:00
Sean Yesmunt
dad75f76bd new comment websocket url 2021-04-20 14:28:45 -04:00
DispatchCommit
762005f217 remove prometheus event that doesn't exist and causes errors
"there won’t be a metric by this name, our code is just getting errors" - andrey
2021-04-20 00:49:08 -07:00
Sean Yesmunt
a4ce82e97f allow comment blocking on all claims 2021-04-19 15:55:11 -04:00
Sean Yesmunt
a841fd6206 fix typo 2021-04-19 15:55:11 -04:00
Sean Yesmunt
27b1101d12 don't pass streamTypes to homepage following section
so the following section shows all file types
2021-04-19 15:55:11 -04:00
Sean Yesmunt
0083a29231 force thumbnail for uploads 2021-04-19 15:55:11 -04:00
Max Kotlan
1279a6eaaf Fixed and cleaned up Hotkeys. Fixed overlapping lbry hotkeys with browser hotkeys 2021-04-19 13:34:10 -04:00
Sean Yesmunt
fdeea30a4a livestream notification styling 2021-04-16 15:58:26 -04:00
zeppi
1b6c217226 support brazilian portugese 2021-04-16 11:16:25 -04:00
Thomas Zarebczan
9689ef72a1
Odysee audio support (#5897) 2021-04-15 22:52:41 -04:00
Thomas Zarebczan
56cf3464ab
Make other crypto clearer until we can show rates 2021-04-15 10:06:26 -04:00
Sean Yesmunt
e4a3e54613 move lazy loading effect into effects/ 2021-04-14 15:25:19 -04:00
Louis Sandoval
a7cb0e240e Fix #5795 - Claim images not lazy loaded 2021-04-14 15:25:19 -04:00
zeppi
fe69ef2c90 allow non video selection when not odysee 2021-04-14 15:06:08 -04:00
Sean Yesmunt
42dcd34d49 trigger file/view event for livestream claims 2021-04-14 12:26:33 -04:00
Sean Yesmunt
2d9fac46a5 open the floodgates 2021-04-14 11:00:36 -04:00
Sean Yesmunt
942c85c9f1 Reconnect when comment websocket loses connection 2021-04-14 00:08:19 -04:00
jessopb
989126c603
Feat publish replays on master (#5863)
* provide livestream replay publish via url
2021-04-14 00:06:11 -04:00
Sean Yesmunt
9f3d779cf2 add tags to mobile navigation and add manage tags link on tag page 2021-04-13 17:08:24 -04:00
Sean Yesmunt
27c7a8a31e comment out swap button until api is ready 2021-04-13 14:08:25 -04:00
infinite-persistence
e9c386678b Don't link to external blockchain explorers
It's unclear whether the use is ok or not without consent. Etherscan.io says consent is required.

Better be on the safe side.
2021-04-13 14:02:25 -04:00
infinite-persistence
f94f98e0f3 ViewPastSwaps: limit to 10 entries + other fixes
(1) Due to IAPI/commerce query limit, and also to not pollute the wallet with infinite chargeCodes, we'll only show the last 10 swaps. Beamer mentioned that it's possible to tracked back the past chargeCodes of the user, and potential provide a `list` endpoint to handle disputes.

(2) If a user explicitly removed an entry, don't repopulate that entry even if websocket returned an updated status for it. While it might be useful to handle accidental removals, it looks weird when the list gets repopulated with 'Expired' entries.

(3) Add sanitization when repopulating the chargeCodes from the wallet data (i.e. remove 'null' entries).

(4) Always repopulate the list per wallet data so every instance looks the same.
2021-04-13 14:02:25 -04:00
infinite-persistence
ca40e0287b Swap the order of LBC vs BTC as the entry point 2021-04-13 14:02:25 -04:00
infinite-persistence
7cf5c1f6fe CoinSwap: websocket + multi-coin
- For the active swap, switch from polling to websocket. The returned data is now the Charge data from the commerce, so some parsing will be required.

- Allow the user to send other coins that the commerce supports.

- Only save the 'chargeCode' to the wallet. The other data can be repopulated from this.

- Store the receipt currency. I'm not sure if the commerce supports sending bits from various coins. Take the coin that came with the 'COMPLETED' message for now.

- Fix 'lbc' calculation to match IAPI side.

- Allow users to see full detauls from "View Past Swaps".

- String cleanup

- GUI cleanup.
2021-04-13 14:02:25 -04:00
infinite-persistence
d1e83fcee2 Run doNotificationSocketConnect for CoinSwapStatus 2021-04-13 14:02:25 -04:00
infinite-persistence
a76f4e4dfe Fix table wrapping
Wrap second column instead of making it scroll horizontally.
2021-04-13 14:02:25 -04:00
infinite-persistence
23072f1a46 Coin-swap: Handle "Confirming" state 2021-04-13 14:02:25 -04:00
infinite-persistence
7c25de1e58 Coin-swap: require authentication
While it would be nice if we can swap anonymously through Desktop, the IAPI will tie a wallet address with an account. Final decision is to require authentication.
2021-04-13 14:02:25 -04:00
infinite-persistence
d63cb0dc2d Past swaps: show the amount of BTCs that we are waiting for. 2021-04-13 14:02:25 -04:00
infinite-persistence
b2630f6f21 Save entire swap info instead of just the address.
- Users should be able to see the entered and promised amount, otherwise they might forget how much to send over.
- This change also prepares for the future upgrade to support multiple coins.
2021-04-13 14:02:25 -04:00
infinite-persistence
9c808e2b5e Implement Swap BTC page 2021-04-13 14:02:25 -04:00
infinite-persistence
8e6604cfa6 Add blank Swap page 2021-04-13 14:02:25 -04:00
infinite-persistence
28260c27d1 SendLBC: switch from Modal to Page 2021-04-13 14:02:25 -04:00
infinite-persistence
5d31dc536c ReceiveLBC: switch from Modal to Page 2021-04-13 14:02:25 -04:00
zeppi
fbff266b28 add br mindblown icon 2021-04-13 13:22:02 -04:00
Sean Yesmunt
a23f0cb30f add back tags search 2021-04-13 13:21:44 -04:00
Sean Yesmunt
bf24bd3193 fix related button toggle color on dark mode 2021-04-12 21:43:41 -04:00
infinite-persistence
3406c2f800 Wunderbar: handle 'shift+home' key not highlighting text
## Issue
- Patch for 5316: "Home and End keys not working in search box"

## Notes
Seems like 'shift+home' wasn't highlighting the text. 'shift+end' works.

Was pretty sure I tested that previously. Anyway, adding the direction variable seems to fix it.
2021-04-12 14:58:42 -04:00
infinite-persistence
294866fb4b Search: fix 'x' appearing incorrectly
- Need to handle the 'undefined' case. The change will cover undefined, null and blank string (blank string === 'All').
2021-04-12 14:58:25 -04:00
Sean Yesmunt
216d0fefa0
fix typo 2021-04-12 13:14:20 -04:00
Sean Yesmunt
e08b71774c pre-roll ads 2021-04-12 12:55:06 -04:00
Sean Yesmunt
ae980bc142 use isChannel from parseURI 2021-04-12 12:24:04 -04:00
zeppi
57dfaab1ea fix show yrbl empty 2021-04-12 12:24:04 -04:00
zeppi
eea3497845 fix publish something empty 2021-04-12 12:24:04 -04:00
seanyesmunt
f5125b25c2 update livestream eligibilty
add CHANNEL_STAKED_LEVEL_LIVESTREAM to config set to level 5
use odysee_live_enabled tag on users insead of experimental_ui
2021-04-12 11:17:17 -04:00
infinite-persistence
47c2d4633d ReportCreate: Fix anonymous url prefix
## Issue
5857 Channel does not update on display when reposting (but actually does)
2021-04-09 17:05:20 -04:00
infinite-persistence
f344096da4 SearchOptions: label fixes
## Issue
5842: search filters fall out
2021-04-09 11:27:25 -04:00
infinite-persistence
fb839b92ef Only apply Staked Levels to Comments (allow it in Posts)
Blocking videos and images was too limiting, plus the system was intended to block spammy comments in the first place.
2021-04-09 11:27:07 -04:00
infinite-persistence
5bc462927a SimpleImageLink: simplify + use 'src' as last resort
- The icon makes the screen too busy when there are lots of images in a page.

- Use src as the last resort for the text (I though `title` and `alt` was mandatory in markdown; apparently not).
2021-04-09 11:27:07 -04:00
infinite-persistence
20a28865fe Fix "channel levels" being applied to all MarkdownPreview usages.
`stakedLevel` is only provided when needed (comments, etc.), so when it's null, resume normal operation.
2021-04-09 11:27:07 -04:00
infinite-persistence
3bab4feeca Update GUI to use queried notification filter.
- Re-organize the return statement of 'NotificationsPage' a bit, otherwise the entire page will reload (blink) every time the drop-down value is changed due to the 'fetching' flag.

- Retained the original behavior of (only showing a blank page + spinner) on the very first load. I think there is merit in not showing the buttons immediately (e.g. when not logged in and `/$/notifications` is accessed directly).
2021-04-08 14:28:21 -04:00
infinite-persistence
b8ec0c9967 Augment doNotificationList to get a filtered list.
Initially, the filtered list was done at the component level, and the list was simply a subset of `notifications`. But due to the limit issue explained in 5694, we now query the filtered list instead.

Considerations:
- The filtered list could contain items not listed in the 'All' list. We could add a string at the bottom of 'All' that says "not all items retrieved" if this confuses the user.
- The unseen count needs to be based on 'All' and not the filtered one, so that data needs to be stashed somehow (can't re-use the array).

Use 2 arrays for now instead of trying to accumulate "all" and "filtered" into 1 array.
2021-04-08 14:28:21 -04:00
infinite-persistence
4252db91f9 Add new notification filter api params 2021-04-08 14:28:21 -04:00
seanyesmunt
fbd90b8f3e style pass 2021-04-08 12:40:07 -04:00
saltrafael
1d74b364e5 Keep just More From for now 2021-04-08 12:40:07 -04:00
saltrafael
6718d87848 Recommended bar: extra options for ease of discovery 2021-04-08 12:40:07 -04:00
seanyesmunt
6ccbbebad9 limit simple site search options to just video and text 2021-04-07 14:13:40 -04:00
seanyesmunt
6718f153a9 style pass 2021-04-07 12:08:17 -04:00
infinite-persistence
72443d4d2e Reset the search page when options changed. 2021-04-07 12:08:17 -04:00
infinite-persistence
8111b8d9dc Only concatenate results if 'from !== 0' 2021-04-07 12:08:17 -04:00
infinite-persistence
340c883ac7 Disable 'last hour'
Requires further work in IAPI
2021-04-07 12:08:17 -04:00
infinite-persistence
855ae15a27 Search: infinite scroll 2021-04-07 12:08:17 -04:00
infinite-persistence
5421a64b65 Revamp search filters
## Issue
4945: Simplify / revamp search filters for odysee (and lbry.tv)

## Changes
- Tweaked the "claim type = file | channel | everything" a little to hopefully make it more intuitive.
- Added "Sort By".
- Added "Upload Date".
- Fixed the affected files to handle both Desktop and Odysee.
- Tweaked the layout to be more condensed so that we can see some results as we change the filter.
- Added animations.
- Added "Exact match" option that helps user to surround with quotes.
2021-04-07 12:08:17 -04:00
infinite-persistence
a9cae23d87 getSearchQueryString: add "time_filter" option 2021-04-07 12:08:17 -04:00
infinite-persistence
2cc049bb83 getSearchQueryString: add "exact" option to include surrounding quotes. 2021-04-07 12:08:17 -04:00
infinite-persistence
dc06e2da99 getSearchQueryString: add "sort_by" options 2021-04-07 12:08:17 -04:00
infinite-persistence
1ee05d1f7f getSearchQueryString: customizations for SIMPLE_SITE.
- This change makes it work for both Desktop and Odysee. When merging back to Odysee, just take the file from `master` (barring any changes from someone else).

- Given that we'll be opening up the search filter for Odysee, the only "simple site" customization that was back-ported is `free_only=true`.
2021-04-07 12:08:17 -04:00
infinite-persistence
c73ba60ef5 Revert "Use blank poster and advisory when preview is blocked by insufficient stake."
This reverts commit 9d1cf97aef.
2021-04-07 00:39:35 -04:00
seanyesmunt
e23a6f3cd6 fix notice-message spacing on livestream page 2021-04-06 17:20:21 -04:00
seanyesmunt
15fea9fe1f fix livestream comment spacing 2021-04-06 17:01:31 -04:00
seanyesmunt
e3ea004f67 revert e3a478adc3 2021-04-06 15:42:27 -04:00
seanyesmunt
0d41e6d88d Revert "Simplify language lists"
This reverts commit 27d43b2b41.
2021-04-06 15:42:27 -04:00
Stefan Sundin
d5ba66ca1a Add a min-width to the "Automatic dark mode" inputs to stop UI shifting when clicking the "24-hour clock" checkbox. I have no idea where this should go so I just put it somewhere. 2021-04-06 13:00:10 -04:00
Stefan Sundin
aff8cfdf9c Fix the "Automatic dark mode" labels having the same name. Now the correct input is selected when clicking the "To" label. 2021-04-06 13:00:10 -04:00
Stefan Sundin
56d4a677a5 Also format the "Automatic dark mode" clocks. 2021-04-06 13:00:10 -04:00
Stefan Sundin
039264531f Add 24-hour clock setting. 2021-04-06 13:00:10 -04:00
infinite-persistence
f3869ddb78 Markdown: inline image preview for Level 4 and above only 2021-04-06 12:55:33 -04:00
infinite-persistence
9d1cf97aef Use blank poster and advisory when preview is blocked by insufficient stake.
## Issue
- Redo 5636: Disable video previews in comments/posts made by channels below a certain channel staked level
- Closes 5738: expand video preview level requierment to markdown images also
2021-04-06 12:55:33 -04:00
infinite-persistence
2a31678632 Fix tooltip not working in <Icon>
According to https://stackoverflow.com/questions/10643426/how-to-add-a-tooltip-to-an-svg-graphic, the tooltip needs to be a child `title` element, not the attribute.
2021-04-06 12:55:33 -04:00
Sean Yesmunt
7c83fa662c
bump comments length to 75 2021-04-05 21:45:42 -04:00
Sean Yesmunt
707ad5d4de re-enable pdfs on web 2021-04-05 15:06:56 -04:00
Sean Yesmunt
a99042b60b remove extra comment 2021-04-05 15:06:56 -04:00
Sean Yesmunt
822ab329ac undo my weird changes - simplify logic 2021-04-05 15:06:56 -04:00
infinite-persistence
51bbda75ee Sort the language list (correctly) 2021-04-05 14:45:21 -04:00
Sean Yesmunt
64928213bf fix websockets not reconnecting
When it gets closed, even for errors, it doesn't always go into Socket.onerror. Add the reconnection logic back to just onclose (like it was before)
2021-04-05 14:33:37 -04:00
Sean Yesmunt
4a33e4dce5 style updates 2021-04-05 14:32:37 -04:00
saltrafael
3e1f6cdf4d Highlight comments made by content owner 2021-04-05 14:32:37 -04:00
zeppi
3c3fc90b6a review changes 2021-04-05 13:26:52 -04:00
zeppi
14685e11af clean up publishing on desktop 2021-04-05 13:26:52 -04:00
zeppi
9468f2b0f2 update master with some odysee changes 2021-04-05 13:26:52 -04:00
infinite-persistence
bfcdbd575f Sort the language list
I think using the 'values' for the keys should be fine since each language name is unique. A key-clash would also help us catch mistakes like not differentiating sub-languages if support any (e.g. "English" vs. "English (British)")

Had to cast to String for lint.
2021-04-05 01:56:49 -04:00
infinite-persistence
b17ba20fd5 Change: 'Wikang Filipino' --> 'Filipino'
I think both are acceptable, but the latter seems more popular. Doing this change as we'll be sorting the list.
2021-04-05 01:56:49 -04:00
Jeremy Kauffman
281fad7382 copy pass 2021-04-04 23:32:47 -04:00
Sean Yesmunt
21ad5077f7 add helplbrysavecrypto prompt and fix file page UI bugs 2021-04-04 23:32:47 -04:00
Sean Yesmunt
3cdeb98ea8 fix date on short post titles
always send it to a new line
2021-04-04 23:32:47 -04:00
infinite-persistence
52f068cead Add: Japanese, Afrikaans, Filipino, Thai and Vietnamese
## Issue
Closes 5646: Add more completed language translations

## Notes
SDK uses RFC 5646 format, which led me to
https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry. Took the codes from here. They match what's already used in Transifex, so that's good.
2021-04-04 22:54:33 -04:00
infinite-persistence
81e4730037 Simplify language lists
- SUPPORTED_SUB_LANGUAGE_CODES[] that I introduced was pretty redundant when SUPPORTED_LANGUAGES[] already hold the information. The logic to ignore sub-languages (i.e. reduce the locale's "en-GB" to "en" is now located in getDefaultLanguage()).

- SUPPORTED_BROWSER_LANGUAGES[] and SUPPORTED_LANGUAGES[] look so similar and hard to tell what the former is for at first glance. The functionality to map 'zh-CN' to 'zh-Hans' is now handled by resolveLanguageAlias(), which makes the intention clearer.

This leaves us with a single list -- SUPPORTED_LANGUAGES[], whose key also tells us the desired language code to use.
Also, clients now need to call `resolveLanguageAlias` to map any language code aliases, as they differ depending on how it is queried (e.g. `navigator.language` vs. `app.getLocal()` uses different standards).

I think we no longer need to explicitly migrate existing user's 'zh-CN' into 'zh-Hans' because the rest of the system will always use the desired language code as long as 'resolveLanguageAlias' is called appropriately. e.g. the system uses `selectLanguage` and `selectLanguage` calls `resolveLanguageAlias`.
2021-04-04 22:54:33 -04:00
Louis Sandoval
d58d96b8dd Fixes #5822 display of upload date and view count on smaller screens 2021-04-04 22:51:07 -04:00
Sean Yesmunt
105fe85504 more robust check on channel name 2021-04-04 22:16:45 -04:00
Sean Yesmunt
03ef30eb40 claim email_verified reward on channel/new page 2021-04-04 22:16:45 -04:00
Sean Yesmunt
650ce42dc0 open livestream channel create redirect in new tab
so users can keep the stream going while they do sign up stuff
2021-04-04 22:16:45 -04:00
DispatchCommit
bb56de1d4f fix scrolling issue, limit length of chat history 2021-04-04 21:43:44 -04:00
Stefan Sundin
92e55c7d5f Add a title with the exact date to dateTime elements that use timeAgo. 2021-04-03 00:32:06 -04:00
Sean Yesmunt
ac18b85c34 sandbox iframe react component 2021-04-02 18:11:23 -04:00
Sean Yesmunt
991b45d831 fix typo
took commit from #5790 since it was merging into the odysee branch
2021-04-02 16:17:50 -04:00
Sean Yesmunt
ddd6a8d191 i18n 2021-04-02 15:44:00 -04:00
r0ckinn
e1531b03bf minor improvement: if not live yet, say users are waiting instead of watching 2021-04-02 15:44:00 -04:00
infinite-persistence
f0d0992d20 Fix broken video embed
## Issue
Closes 5811: Video-embed in markdown-post is broken

- Revert "Fix 'makeSelectIsPlaying' to look at 'playing' instead of 'primary'." dabdc980a1.
- Revert "Fix 'isPlaying' to reflect 'playing' instead of 'primary' URI" 351890decf.

Reverting means "Deleting MD from downloads list causes spinning icon to run forever 4959" gets re-opened, but this is a way less severe issue to leave in.
2021-04-02 14:44:22 -04:00
infinite-persistence
d279d70770 Fix autoplay in floating mode
Closes 5000: AutoPlay in Floating Player only works one time

Factor out the code that queries the recommendation. It needs to be called in two places:
(1) `RecommendedContent` - need to cover the case of floating player + visit another video page.
(2) When video is floating and autoplayed the next video.
2021-04-02 14:35:18 -04:00
jessopb
8ab0bcd545
clear publishing on publish load (#5807) 2021-04-02 11:55:41 -04:00
jessopb
9cd86be04f
use show mature selector (#5803) 2021-03-31 16:55:26 -04:00
infinite-persistence
4a0aea15a6 i18n: missing translation + emoji fixes 2021-03-29 15:50:21 -04:00
infinite-persistence
2037dfbd03 prepareEdit: ensure 'incognito' is false when channel is active.
## Issue
Closes #5720: Edit: channel-selector should re-populate with original channel

## Notes
'incognito' was not set to false, causing the 'ChannelSelector' to select Anonymous.
2021-03-29 08:42:58 +08:00
zeppi
5982b61f0d oops 2021-03-26 18:43:09 -04:00
zeppi
ad10250e16 review changes 2021-03-26 18:43:09 -04:00
zeppi
9e86cab4eb fix livestream redirect to dashboard 2021-03-26 18:43:09 -04:00
zeppi
8755c634ad bugfix 2021-03-26 18:43:09 -04:00
zeppi
777566f414 replace instead of push on publishform 2021-03-26 18:43:09 -04:00
zeppi
713109167c publish, edit, remote_url publish 2021-03-26 18:43:09 -04:00
zeppi
c546589cc5 copy changes 2021-03-26 18:43:09 -04:00
zeppi
f691643eb7 ls help title copy 2021-03-26 18:43:09 -04:00
zeppi
6c137fc0fd improve loading for livestream setup 2021-03-26 18:43:09 -04:00
zeppi
76a5fe0d83 add help to livestream setup 2021-03-26 18:43:09 -04:00
zeppi
f091da3c54 use new isLivestream (placeholder stream) selector 2021-03-25 20:14:24 -04:00
zeppi
da60104c96 pending and publish 2021-03-25 16:40:17 -04:00
zeppi
7fdc3d2919 fix crash on invite page 2021-03-25 16:38:25 -04:00
zeppi
33c325031d check simplesite for notifications 2021-03-25 15:54:30 -04:00
infinite-persistence
e70eb3b5bc Tip-unlock: add tooltip and related strings 2021-03-25 15:35:53 -04:00
infinite-persistence
5d4828514c Improve mature-tagging message
## Issue
Closes 5747: Typo on Create Livestream page
2021-03-25 15:35:53 -04:00
zeppi
ba4a29c102 hide livestream claims in previews if no flag 2021-03-25 15:31:31 -04:00
Sean Yesmunt
64e8c8e095 use comment component for livestream comments 2021-03-25 15:08:05 -04:00
zeppi
d8a5ca082b no livestream price on odysee 2021-03-25 13:53:42 -04:00
zeppi
4269a63f62 no mature on simple site 2021-03-25 01:56:21 -04:00
zeppi
81b9b0d801 copy for buttons and modals for livestream
redirect on success to dashboard
2021-03-24 13:36:50 -04:00
zeppi
995f51711f use pending livestreams on dash, filter modes 2021-03-24 13:36:50 -04:00
zeppi
137c268a7b add livestream icons 2021-03-24 12:13:26 -04:00
infinite-persistence
43965ddf72 i18n: Livestream strings 2021-03-24 09:09:24 +08:00
infinite-persistence
a36a8023c7 Support = Boost | Tip
## Issue
Closes 5226: Figure out odysee-friendly way to re-enable supports

This essentially re-enables staking (now called "Boost") for Odysee.
2021-03-23 20:01:55 -04:00
infinite-persistence
3b960aa0a0 Back-port changes from Odysee to master 2021-03-23 20:01:55 -04:00
Dispatch
d362fe0d75
hide livestream on upload form if not experimental UI (#5735) 2021-03-23 13:27:30 -04:00
zeppi
f2e17f8566 fix dmca 2021-03-22 21:19:53 -04:00
Dispatch
a258fcb039
Merge pull request #5691 from lbryio/feat/go-live
[feat] Add LiveStreaming Support
2021-03-22 16:48:10 -07:00
Thomas Zarebczan
b261763402
Add note about editing while transfer is active 2021-03-22 18:56:50 -04:00
DispatchCommit
ec996d8bf7 this has to fix the linting issue 2021-03-22 15:48:56 -07:00
DispatchCommit
a4a714a561 please work this time 2021-03-22 15:42:51 -07:00
DispatchCommit
3446b63768 coerce null to empty string for flow
this is a bad way to satisfy flow, probably, but it'll work.
2021-03-22 15:30:30 -07:00
DispatchCommit
7a327596cd i hate flow 2021-03-22 15:30:29 -07:00
DispatchCommit
49395a8a05 remove unused import 2021-03-22 15:30:28 -07:00
DispatchCommit
8ae7247c35 remove unused variables from LiveStreamSetup 2021-03-22 15:30:27 -07:00
DispatchCommit
0ec31d3c29 fix slow mode chat
set last comment time when comment is submitted
2021-03-22 15:30:26 -07:00
DispatchCommit
f18ad64527 use new livestream iframe embed 2021-03-22 15:30:25 -07:00
DispatchCommit
1e0afd1b86 Add live detection to livestream page
- reduce interval from 15 seconds to 10 seconds
2021-03-22 15:30:24 -07:00
DispatchCommit
816bd07570 Improve live detection on channel page
Call bitwave live API immediately on page load.
Reduce poll to 15 second interval
Fix incorrect data parsing
2021-03-22 15:30:23 -07:00
DispatchCommit
76ac4c19b9 Hookup new live detection API 2021-03-22 15:30:22 -07:00
Sean Yesmunt
ca569dc4a7 wire up bitwave api 2021-03-22 15:30:21 -07:00
Sean Yesmunt
5aaa038d3f random fixes for livestreaming 2021-03-22 15:30:19 -07:00
Sean Yesmunt
6d07d1b672 reset livestream claims when active channel changes 2021-03-22 15:30:18 -07:00
Sean Yesmunt
204f24354f hide date for livestream claims 2021-03-22 15:30:17 -07:00
Sean Yesmunt
0f24f3fdfd use has_no_source to check if claim is a livestream 2021-03-22 15:30:16 -07:00
Sean Yesmunt
e5fc28821a add ENABLE_NO_SOURCE_CLAIMS to config
this sets has_source:true if the variable is true to non-odysee apps won't be shown livestream claims
2021-03-22 15:30:15 -07:00
Sean Yesmunt
dcd0528fda disconnect from comment websocket when leaving livestream page 2021-03-22 15:30:14 -07:00
Sean Yesmunt
3644eed49b fix first livestream comment not being displayed 2021-03-22 15:30:13 -07:00
Sean Yesmunt
fe3eb1e4c6 fix typo 2021-03-22 15:30:12 -07:00
Sean Yesmunt
3aead19b47 style cleanup 2021-03-22 15:30:11 -07:00
DispatchCommit
874188a973 Allow for specifying a type query to pre-select upload type
e.g. https://odysee.com/$/upload?type=livestream
2021-03-22 15:30:10 -07:00
Sean Yesmunt
372c6d0d9f rename livestream + livestreamsetup pages 2021-03-22 15:30:09 -07:00
DispatchCommit
17d0d9f1e0 default livestream calims state to empty array 2021-03-22 15:30:08 -07:00
DispatchCommit
99ec447bee show list of live stream claims 2021-03-22 15:30:07 -07:00
DispatchCommit
92e320e384 Fix livestream Title Section 2021-03-22 15:30:06 -07:00
DispatchCommit
2ac5ad0201 fix minor bugs
- remove anon option in channel dropdown when livestream tab is selected
- attempt to fill publish form with current active channel name just prior to publishing to (edge condition)
  - edge condition occurs when user fills out form fully. User switches to Post (which allows anon in drop down selector). User selects Anon channel, then switches back to the livestream tab. The form was previously updated with `channel: undefined` but does not get changed when clicking the livestream tab. So we just updated the form one last time prior to publishing as a livestream
- Show most recent livestream claim on livestream setup page instead of first livestream claim
2021-03-22 15:30:05 -07:00
DispatchCommit
70575edfb4 Add link to create livestream claim 2021-03-22 15:30:04 -07:00
Sean Yesmunt
da3e3c8404 add new 'livestream' publish mode 2021-03-22 15:30:03 -07:00
DispatchCommit
40035ae4ad fix lbry-redux import typo 2021-03-22 15:30:02 -07:00
Sean Yesmunt
73f593ddb3 bring in livestream changes from odysee 2021-03-22 15:30:01 -07:00
DispatchCommit
1ef44ce199 Add channel name hex data to streamkey
Also adds individual debug fields to help when debugging a channel verify currently
2021-03-22 15:30:00 -07:00
DispatchCommit
02c0882d90 Create livestream page and generate signed streamkey 2021-03-22 15:29:59 -07:00
DispatchCommit
51a940ed62 Add Go Live to header dropdown 2021-03-22 15:29:58 -07:00
infinite-persistence
6697c2a9ce PublishPreview: Add chan icon; fix "anonymous" label
## Issue
Closes 5721: Publish-Preview updates

## Changes
(1) Match the recent "incognito" change that sets the channel to `undefined` via `updatePublishForm`. This change would also cover `null` -- I don't think it's being used to represent something else, so showing "Anonymous" for `null` should be fine.

(2) Added channel icons, so it'll be more obvious to the user if they accidentally selected the wrong channel.
2021-03-21 21:13:35 -04:00
infinite-persistence
5d40a4c9f6 Markdown editor: Remove character limit
## Issue
Closes 5687: Ensure post mode has no text limit

## Changes
- `type="markdown"` can now have unlimited length if clients don't define `textAreaMaxWidth`.
- The internal default limit of 2000 is narrowed down to `type=textarea`.
2021-03-21 21:00:16 -04:00
Sean Yesmunt
1aaaf118c5 remove signup nudge in sidebar for lbry.tv 2021-03-21 20:48:27 -04:00
DispatchCommit
954966abbb fix linting errors 2021-03-21 20:36:50 -04:00
r0ckinn
6b8554517c also add keybinds for volume 2021-03-21 20:36:50 -04:00
r0ckinn
6b3dce0450 improve keyboard shortcuts 2021-03-21 20:36:50 -04:00
infinite-persistence
ede83f358d Fix autoplay infinite loop
## Issue
Closes 3661: Autoplay + Related go into loops ( infinite ) sometimes

## GUI
Push the actual "next" item into the top of the list.

## History search
1. Skip if the next item is itself.
2. The URL stored in the history comes in various forms, so a direct comparison won't work.
  - There's also a weird case where the URL differs by just a little (p.09 vs p-09), but with the same claim ID:

lbry://vacuum-tube-computer-p.09-–-building#5212bc8bc63c373e2bf1ebc5b765595ed7b6514d
lbry://vacuum-tube-computer-p-09-–-building#5212bc8bc63c373e2bf1ebc5b765595ed7b6514d

Check the claim_id as well to cover cases like these.
2021-03-21 20:15:33 -04:00
infinite-persistence
59b7975085 Fix lint 2021-03-21 20:15:33 -04:00
infinite-persistence
945a5365f9 Corrected channel_language order 2021-03-21 20:00:16 -04:00
infinite-persistence
035f04fb3e YT-Sync: Add field to select channel
## Issue
Closes 5537: Allow youtube sync new pass language to api

## Notes
- Default language for the selector comes from browser (`navigator.language`)
2021-03-21 20:00:16 -04:00
Sean Yesmunt
63453284dd add lbry.tv is shutting down message 2021-03-19 17:58:05 -04:00
Sean Yesmunt
a8cc4cefb0 remove has_source param until wallet server bug is fixed 2021-03-19 11:57:10 -04:00
infinite-persistence
39790d800a i18n: Notification setting strings 2021-03-19 11:27:10 -04:00
infinite-persistence
895f25cc8c i18n: Reward cards
Note that `subtitle` doesn't need the translation macro as `LbcMessage` would do it.
2021-03-19 11:27:10 -04:00
infinite-persistence
605d33331b Support for Category-Page Metadata definition.
## Issue
Part of 4786: Add support for web metadata on category pages

## Note
Remaining task: `category-metadata.js` needs to be filled first.
2021-03-19 11:11:02 -04:00
Sean Yesmunt
c08e4eed9c prevent release notes from extending beyond height of app 2021-03-18 18:17:10 -04:00
Sean Yesmunt
e967f2e1ad add ENABLE_NO_SOURCE_CLAIMS to config
this sets has_source:true if the variable is true to non-odysee apps won't be shown livestream claims
2021-03-18 12:07:27 -04:00
Sean Yesmunt
0eaa5dadcf bump channel search limit to 50 2021-03-17 16:19:13 -04:00
Sean Yesmunt
2d6292bd6f don't show placeholder if claim already exists
so the claim is shown even if we re-resolve it
2021-03-17 16:19:13 -04:00
Sean Yesmunt
19023a31d0 ensure lbrytv api status is web only 2021-03-16 22:19:03 -04:00
Sean Yesmunt
7b446d1982 show correct amount on post staked amount 2021-03-16 14:38:33 -04:00
Sean Yesmunt
2ddfde1480 use button-toggle group for page title 2021-03-16 12:04:39 -04:00
infinite-persistence
475256e63a Uploads: Add 'All,Uploads,Reposts' filter
## Issue
- Closes item 2 of 4563: Publish page + reposts
- Requires [lbry-redux::392](https://github.com/lbryio/lbry-redux/pull/392/files)

Also removed the redundant double spinner.
2021-03-16 12:04:39 -04:00
infinite-persistence
b467873f0b Notification bell shows is_read, not is_seen
## Issue
Closes 5664: notification bell shows is_read, not is_seen
2021-03-16 11:39:52 -04:00
infinite-persistence
ddc5a65c49 Settings button: Fix typo that's causing error message.
Not really sure if the attribute is needed or not, but retained just in case.
2021-03-16 11:27:38 -04:00
Sean Yesmunt
af4e1afd59 bump lbry-sdk and fix build warning 2021-03-15 16:19:13 -04:00
Victor Shyba
1251262e22 status -> wallet_status on wallet_status call 2021-03-15 16:19:13 -04:00
Victor Shyba
8a016eccb2 remove check for online 2021-03-15 16:19:13 -04:00
Victor Shyba
588fc7a047 fix for connection_status -> wallet.connected 2021-03-15 16:19:13 -04:00
infinite-persistence
c7d7bef1d7 vjs: Narrow down changes to just playback rate
## Changes
- Restore original code for how Volume and Mute is restored.
- Playback rate will be only change that gets "re-restored" in "loadedmetadata".
2021-03-15 15:03:15 -04:00
infiinte-persistence
83912627de vjs: Fix 'Video-setting persistence broken'
## Issue
5513: Video-setting persistence broken

## Notes
- Per videojs recommendation, the setting-restoration should be done after the video has been loaded, so the action was moved to `loadedmetadata`. This fixed the volume slider problem, and should have fixed the playbackRate too.
- For playbackRate, there is another special case where it gets reset to 1 (refer to comments in code).
2021-03-15 15:03:15 -04:00
infiinte-persistence
09c1cfeb8f vjs: Fix 'Video showing previous audio clip's thumbnail instead'
## Issue
5450: Video showing previous audio clip's thumbnail instead

## Notes
`createVideoPlayerDOM` depends on `isAudio`
2021-03-15 15:03:15 -04:00
infiinte-persistence
9ce6ecc923 Lint fixes
I just wanted to make the lint fixes in a separate commit to make the diff's for the next commit clearer.
2021-03-15 15:03:15 -04:00
infinite-persistence
9fadf3850f Take 'incognito' into account when reposting
## Issue
Fixes 5661: can't choose anonymous from channel on repost page
2021-03-15 14:22:49 -04:00
infinite-persistence
d91530b0c8 Markdown: don't convert '[label](uri)' to embeds.
## Issue
Closes 4936: Don't process markdown formatting as lbry:// url previews

## Approach
Preamble:
 - We want to convert plain `https://lbry.tv/befreeonlbry` to an embed, but not `[blah](https://lbry.tv/befreeonlbry)`.
 - At the markdown/remark level, both formats resolve to the same node type, having a `link` and a `text`, with the 'text' being auto-filled with the `href` if there is no label.

Fix by assuming the link is the non-labelled format if the `text` is the same as `href`.

This opens up one corner-case that we can't handle, which is when the user explicitly set the label using the href, e.g. `[https://lbry.tv/befreeonlbry](https://lbry.tv/befreeonlbry)`. This will still resolve to an embed. There's not enough data at the parsed level differentiate this case -- we would need to parse the content ourself before `remark`, which I think is not worth it.

## Aside/Reminder
If you see that the link doesn't resolve to an embed regardless of the format used, that's probably just due to `5636: Disable video previews in comments/posts made by channels below a certain channel staked level`
2021-03-15 13:31:17 -04:00
DispatchCommit
7ddace3266 Fix invalid DOM 2021-03-15 13:19:07 -04:00
Sean Yesmunt
7dccba5813 only use new post styling for markdown 2021-03-12 11:54:37 -05:00
infinite-persistence
469e9cddc0 Handle remaining usages of MarkdownPreview
- Channel About
  - description: seems handy to have a preview, so pulled in the "allowed" logic.
  - email: shouldn't render preview at all
  - website: shouldn't render preview at all

- Publish Preview:
  - description: there's not enough height anyway, so don't render preview.
2021-03-12 10:38:16 -05:00
infinite-persistence
0d850742f5 Disable video previews in Comments and Post if author is below a certain level. 2021-03-12 10:38:16 -05:00
infinite-persistence
9192828505 Move getChannelLevel to a selector. Requires accompanying lbry-redux PR. 2021-03-12 10:38:16 -05:00
Sean Yesmunt
dbbe499a86 fix share link to use SHARE_DOMAIN_URL 2021-03-12 09:18:17 -05:00
Sean Yesmunt
bd42418ff3 hide notification filter on mobile 2021-03-12 08:51:50 -05:00
infinite-persistence
4cc2f28f3d Notification: re-order header and actions to look like Uploads page. 2021-03-12 08:51:50 -05:00
infinite-persistence
7a66be1d54 Add filtering on notifications page - 5193
## Issue
Closes 5193: Add filtering on notifications page

## Approach
- Add a combo box, and simply filter out the notifications based on the combo box value.
- Selection state is persistent, but reset to All if there are unread ones when entering the page.
- Tell the user that "no notifications" could be due to the filter.
2021-03-12 08:51:50 -05:00
Sean Yesmunt
7702477e71 better posts styling 2021-03-11 14:12:59 -05:00
Sean Yesmunt
4e9a4f41c8 bump lbryinc and add additional pending status for youtube transfer page 2021-03-09 21:54:11 -05:00
infinite-persistence
19c5132ac5 Fix unencoded StatusBar on Desktop 2021-03-09 16:17:57 -05:00
infinite-persistence
a33087440c Fix timestamp regex error
## Issue
https://discord.com/channels/362322208485277697/363087331475062785/817972023347249153

## Change
Open up the range as per YT, indirectly fixing the regex mistake.
2021-03-09 16:05:00 -05:00
DispatchCommit
11fdbcaee5 add videoFetchDuration to typedef 2021-03-09 16:04:40 -05:00
DispatchCommit
1f3035b2f9 remove console.log for linter 2021-03-09 16:04:40 -05:00
DispatchCommit
d47b6eae0c Track duration for initial video fetch time
this may help identify degraded services and poor user experience.
2021-03-09 16:04:40 -05:00
infinite-persistence
dc1be2791f Wunderbar: Use typical Home/End behavior instead of ReachUI's.
## Issue
- Closes "Wunder: Keyboard typing confusion" (https://discord.com/channels/362322208485277697/377895389992321064/784309720293965824)
- Closes 5316: "Home and End keys not working in search box"

## New behavior
Home/End key now behaves like it normally would in a typical text box, i.e.:
- Brings you to the start or end position.
- Adding a <Shift> key also selects the text from the current position.

To select the top or bottom item in the Suggestion Popup List, use Ctrl+Home/End instead (without this change, it was just Home/End previously).

## Approach
Adding the listener at the element level allows us to run it before the component's listener.
2021-03-09 15:52:57 -05:00
DispatchCommit
db2e1aafb1 rename getHls to getVhs
adds deprecation warning and allows for backwards compatibility
2021-03-09 15:31:29 -05:00
DispatchCommit
d6aa72ed94 hls options is deprecated. Use vhs instead.
Fixes this video.js warning:
VIDEOJS: WARN: Using hls options is deprecated. Use vhs instead.
2021-03-09 15:31:29 -05:00
infinite-persistence
af8b683308 videojs: Localize + add shortcut tooltip
## Issue
Partially closes 3041: Display/hint what keyboard shortcuts are available in videos
(minus the "all shortcuts" overlay -- saving that for another day)
2021-03-08 14:13:56 -05:00
Sean Yesmunt
db1b2909e8 fix placeholder tile margin 2021-03-08 14:05:02 -05:00
Sean Yesmunt
659c9937b4 pass second argument to doResolveUris correctly 2021-03-08 14:05:02 -05:00
infinite-persistence
c92fc2e16b Batch-resolves channel page query
Closes 5597: batch resolves on channel search page

Do a batch-resolve immediate after getting the results and before setting the result variable, as the latter would result in the Claim* components resolving individually.

I enabled `returnCachedClaims` -- I assumed that's a reasonable thing to do. I don't see other places use it, though, so highlighting it here.
2021-03-08 14:05:02 -05:00
infinite-persistence
05383701af Restore video loading circle
## Issue
5554: Video: loading circle sometimes does not appear until 2nd click

## What's happening
videojs behavior:
(a) A `src` change makes the Play button re-appear.
(b) An `onPlay` (or `play()`) makes the button go away.

Due to the `m3u8` header async fetch (i.e. return is potentially delayed), the initial `onPlay` (which cleared the button) that happened after user clicked Play gets negated by a potentially-delayed `src` change.

# Changes
- Manually hide the play button that is induced by the change in `src`. In the fetch-delay scenario mentioned above, the player continues to be in a 'playing' state anyway.
- But don't hide the button if paused externally (e.g. browser-level)
Restore video loading circle
2021-03-08 13:28:25 -05:00
Sean Yesmunt
7d3653d787 fix lint 2021-03-08 13:21:43 -05:00
Sean Yesmunt
15123d161d remove extra un-needed MenuButton component 2021-03-08 12:50:07 -05:00
infinite-persistence
90b559618c ClaimPreview: use new MenuList instead of context-menu (works for both Desktop and Web)
## Issue
- Second attempt at 5500: Allow right click + report feature on tiles
- Related: PR_5531

## Notes
Although the link can already be easily copied on web, the menu item is still retained for consistency between the platforms.
2021-03-08 12:50:07 -05:00
zeppi
2be8575afb display signing channel for tips 2021-03-08 12:31:19 -05:00
DispatchCommit
1d12fc8102 hide quality selector by default 2021-03-08 12:08:12 -05:00
infinite-persistence
1e4c79cf06 Don't clear all notifications when only 1 is clicked.
## Issue:
Closes 5515: All videos marked as read when clicking a single notification from notification list

## Change:
- Augment `doReadNotifications` to only clear the given IDs. If the argument is `null` or is not a valid array (e.g. when used as a click handlers, the click event object is passed in), all notifications will be cleared.

- Augment `NOTIFICATION_READ_COMPLETED` to only clear the given IDs.

## Notes:
- Wasn't sure of the API will fail if the ID is invalid, so I start from `unreadNotifications` first, then only filtering it further with the given ID. Otherwise, we could just skip the `unreadNotifications` filtering.
2021-03-08 11:41:04 -05:00
infinite-persistence
2e49421960 Lint - separated commit to make the next diff clearer 2021-03-08 11:41:04 -05:00
infinite-persistence
35955f067d Add SITE_HELP_EMAIL in strings to ease Odysee string merge and maintenance. 2021-03-08 11:33:33 -05:00
infinite-persistence
e361289c06 Don't close main player when editing comments
https://discord.com/channels/362322208485277697/363087331475062785/815132676293918730

- Renamed `closeInlinePlayer` to `clearPlayingUri` to reflect it's actual function.
- Add additional check to see if the current video is actually inline before closing it.

Wanted to refactor out an actual `closeInlinePlayer`, but let's wait until there are more usages.
2021-03-08 11:21:57 -05:00
zeppi
b6d613fe47 re-unify icons with master 2021-03-08 11:08:23 -05:00
DispatchCommit
9be8a3036c Move videojs sass file
Looking at a few other files hoping to understand the convention for components, I moved the videojs.scss file to where all CSS related files appear to be in the project.
2021-03-05 16:51:45 -05:00
DispatchCommit
6eebf8ff46 replace todo with link to explanation 2021-03-05 16:51:45 -05:00
DispatchCommit
46f58c63c8 Pull styling out out into it's own file
Also restores the CSS for vjs-overlay which I commented out previously for *some* reason (but I don't know why, and it doesn't seem to make a difference whether I comment it out or not)
2021-03-05 16:51:45 -05:00
DispatchCommit
d21a4fe8ab Remove intermediate accent-color sass var
Replaced with direct usage of `var(--color-primary);`
2021-03-05 16:51:45 -05:00
DispatchCommit
3fb0ac80ae Prevent user from highlight selecting UI 2021-03-05 16:51:45 -05:00
DispatchCommit
0b20f73841 Fix theatre mode button 2021-03-05 16:51:45 -05:00
DispatchCommit
5a6743a4ce Bring in the initial styling 2021-03-05 16:51:45 -05:00
Sean Yesmunt
6345549c88 increase file thumbnail size in cdn url 2021-03-05 16:51:38 -05:00
Sean Yesmunt
e2bd128cc4 show click through on channel page for muted channels too 2021-03-05 16:51:38 -05:00
Sean Yesmunt
88c5552352 don't pass blocked/muted to claim_search on the homepage to prevent double claim_search calls
if blockedList takes a while to return, the app would call claim_search once without the blocked list, then again with the block list. just hide them in the ui
2021-03-05 16:51:38 -05:00
Sean Yesmunt
84bab875bc improve mobile style and initial blocked screen loading 2021-03-05 16:51:38 -05:00
Thomas Zarebczan
eb0e0cb7cc Better downtime / reboot status message
Fixed
2021-03-03 19:40:15 -05:00
Sean Yesmunt
ea74a66dbd
New moderation tools: block & mute (#5572)
* initial support for block/mute

* hide blocked + muted content everywhere

* add info message for blocked/muted characteristics

* sort blocked list by most recent block first

* add 'blocked' message on channel page for channels that you have blocked

* cleanup

* delete unused files

* always pass mute/block list to claim_search on homepage

* PR cleanup
2021-03-03 13:50:16 -05:00
infinite-persistence
277a1d5d1f Tell user to reduce 'Channel Description' when exceeded tx-limit.
## Issue
Second attempt at 5571: Limit description length on channel edit

## Changes
- Undo #5573: restore limit back to 5000.
- Translate the `bad-txns-claimscriptsize-toolarge (code 16)` error into `Transaction limit reached. Try reducing the Description length.`
2021-03-03 11:52:51 -05:00
infinite-persistence
df17504649 Allow any URL from known domain in wunderbar
## Issue
Closes 5598: support all URLs regarldess of domain on search bar

## Changes
- There is already a KNOWN_APP_DOMAINS[], so I just used that.
2021-03-03 11:20:50 -05:00
Sean Yesmunt
3fba7f0797 show file page even if blacklistedOutpoints is empty 2021-03-03 11:04:47 -05:00
infinite-persistence
c67b92cfa4 Markdown "Create Link": highlight URL instead of label
## Issue
Closes 4505: Highlight url instead of text when embedding a link

_Too used to Github's editor behavior, so was annoyed at this too. It makes more sense to highlight the URL placeholder since that needs to be filled._

For to the unhighlighted case, then the cursor should be at the Label.

## Changes
Until the upstream code decides to fix it (`github::Ionaru/easy-markdown-editor/issues/85`), we'll handle it ourself by listing to the 'changes' events.
2021-03-01 14:44:16 -05:00
infinite-persistence
9d03968b5e Add tooltip to embed's Title and Home button
## Issue
- Most titles don't fit the embed container width. I wish to know what the title is without having to click on it first.
- Also, add clarity that the LBRY icon brings you Home.
2021-03-01 10:27:52 -05:00
infinite-persistence
fd0e56daa6 Fix broken markdown editor border color
## Issue
The border became white recently, which made it look "focused" all the time. Confirmed with Sean that the change wasn't intentional.
2021-02-26 11:04:25 -05:00
infinite-persistence
94fe68eb45 Fix URI comparison in 'doDeleteFileAndMaybeGoBack'
## Issue
4959: Deleting MD from downloads list causes spinning icon to run forever

5077: player doesn't close when video deleted
2021-02-25 15:38:04 -05:00
infinite-persistence
351890decf Fix 'isPlaying' to reflect 'playing' instead of 'primary' URI
## Issue
4959: Deleting MD from downloads list causes spinning icon to run forever

5077: player doesn't close when video deleted
2021-02-25 15:38:04 -05:00
infinite-persistence
dabdc980a1 Fix 'makeSelectIsPlaying' to look at 'playing' instead of 'primary'.
## Issue
4959: Deleting MD from downloads list causes spinning icon to run forever

5077: player doesn't close when video deleted
2021-02-25 15:38:04 -05:00
infinite-persistence
891207df3d Lint
Separating out the lint fixes just to make the next commmit clearer.
2021-02-25 15:38:04 -05:00
zeppi
05740cad75 send perm url for referrals 2021-02-25 14:44:40 -05:00
infinite-persistence
217ae3ecf7 Fix broken 'Open File' icon color
## Issue
The removal of `svg` from `media__subtitle` in 09b689ba made the icon black.

## Fix
Both 'Open File' and 'Download' should have the same css class.
2021-02-24 11:23:06 -05:00
infinite-persistence
bf5b2370e2 Restore 'duplicate claim URL' msg while waiting for 3704
## Issue
5575: Show "URL already used" msg when publishing

Seems like `uri` just got accidentally removed from db87125d
2021-02-24 11:23:01 -05:00
infinite-persistence
aa8b1f8602 Lowered 'Channel Description' limit from 5000 to 3000 chars.
## Issue
Closes 5571: Limit description length on channel edit

## Notes
Similar to the previous value of '5000', this is a trial-and-error estimate.
2021-02-24 11:11:06 -05:00
infinite-persistence
52878efae1 Touch up for active channel refactoring
## Issue
5563: don't allow URL change on edit
2021-02-23 16:11:00 -05:00
infinite-persistence
e7adc607fa Revert "use cdn for channel thumbnails"
This reverts commit b231b1a51f.

## Issue
5564: Don't use optimized URLs on channel pages (profile/banner)
2021-02-23 12:53:16 -05:00
infinite-persistence
3d6304bc25 Revert optimized URLs on channel banner.
## Issue
5564: Don't use optimized URLs on channel pages (profile/banner)
2021-02-23 12:53:16 -05:00
zeppi
f0912f9051 entering lbry url with colon goes to url, doesnt error 2021-02-23 12:42:11 -05:00
infinite-persistence
c52ddb9e03 i18n update: Creator Tools 2021-02-23 10:44:15 -05:00
Sean Yesmunt
d71f977a55 Revert "Remove hack in Timestamp parser now that 'remark-breaks' has addressed the original problem."
This reverts commit 02792b8f0c.
2021-02-20 18:23:52 -05:00
infiinte-persistence
6f67af5ec3 Make educated guess if 'no result' is due to language filter, and warn user. 2021-02-19 14:46:19 -05:00
infiinte-persistence
545ee46a02 Add content type and language filters to channel page
## Issue
5219: Add content type and language filters to channel page

## Notes
There is a quirk in the dropdown (see 5542: Language filter doesn't reflect effective setting if language is outside of `SEARCHABLE_LANGUAGES[ ]`)
2021-02-19 14:46:19 -05:00
infiinte-persistence
f660267dc5 Untranslated strings
Included the memes as well per translator request. I've been excluding it since I wasn't sure if memes can be translated, but I guess they can change it to something equivalent in their language.
2021-02-19 14:28:50 -05:00
infiinte-persistence
530bd14f4a Add tooltip for bell icon
I bypassed the lint checker so that it'll be easier to merge this change to `odysee` branch.
2021-02-19 14:28:50 -05:00
infiinte-persistence
9e9183aa95 Clear dev-web warnings and lint 2021-02-19 14:18:44 -05:00
infiinte-persistence
b0cc1d7f51 Add context-menu to report claims directly from Preview/Tile 2021-02-19 14:18:44 -05:00
infiinte-persistence
2f7880a697 Remove 'Copy' from Claim context-menu; Do nothing when menu is blank.
'Copy' is always disabled for the case of Claim previews since no text is selected. User cannot select text anyway since a left-up event would invoke the Claim's `click` event. 'Copy' is there simply because of re-using `openContextMenu`.
2021-02-19 14:18:44 -05:00
infiinte-persistence
cf832d14b4 Make both claimPreview and claimPreviewTile use the same context-menu function.
Consolidated into `openClaimPreviewMenu`. We'll only update that function next time for context-menu additions.
2021-02-19 14:18:44 -05:00
togekk1
232841ef5e Open ZoomableImage viewer when clicking on the image 2021-02-19 14:05:51 -05:00
togekk1
00017e241e Revert "Open the actual image when clicking on the image viewer"
This reverts commit 6a99947ac2d3fada59438d818599af6b68dcebd8.
2021-02-19 14:05:51 -05:00
togekk1
6144b08cf9 Open the actual image when clicking on the image viewer 2021-02-19 14:05:51 -05:00
Franco Montenegro
8d21acf64c Use stringify version for options in searchOptions component 2021-02-19 13:50:13 -05:00
Franco Montenegro
ddae2e8ac5 Disable claim type search if filtering by channel 2021-02-19 13:50:13 -05:00
Franco Montenegro
62c7216b43 Fix mediaType filter parameter in search 2021-02-19 13:50:13 -05:00
Sean Yesmunt
67192ea23f hide staked indicator on creator likes in comments 2021-02-18 22:29:11 -05:00
jessopb
06681017ee
Try some popcorn (#5553)
* try popcorn

* different icon

* icon attr

* popcorn2

* popcorn3

* popcorn to movies
2021-02-18 22:10:25 -05:00
Sean Yesmunt
05b998c0ee fix anonymous option showing black text in channel selector 2021-02-18 17:24:31 -05:00
Sean Yesmunt
b231b1a51f use cdn for channel thumbnails 2021-02-18 17:24:31 -05:00
keikari
391190f33f Small fixes for amounts
Needed amounts seemed odd, did small fix hopefully the right way
2021-02-18 16:14:20 -05:00
Sean Yesmunt
647d2f74df Revert "Use fallback image for broken thumbnails"
This reverts commit 6aae5987e6.
2021-02-18 15:57:38 -05:00
Sean Yesmunt
9442d586ee Revert "Add fallback thumbnail for streams"
This reverts commit 0423d30a4e.
2021-02-18 15:57:38 -05:00
Sean Yesmunt
0a8d43e932 lint 2021-02-18 14:11:10 -05:00
DispatchCommit
d5d97fe6e7 cleanup plugin code 2021-02-18 14:11:10 -05:00
DispatchCommit
0fff2542b7 Add custom quality selector plugin
Adds custom video.js hls quality selector plugin
This allows the quality selector plugin to stay active and listen for source changes on the player to prevent the need to recreate the player when switching between MP4's and M3U8's
2021-02-18 14:11:10 -05:00
Sean Yesmunt
21523fe707 fix to remove channel thumbnail on lbry.tv 2021-02-18 02:19:26 -05:00
Sean Yesmunt
dc56b2bc93 set first five level amounts 2021-02-18 01:14:39 -05:00
Sean Yesmunt
1329b28af3 improve styling on comment thumbnails on staked indicator placement 2021-02-18 01:14:39 -05:00
Sean Yesmunt
09b689ba1c add channel staked amount indicator on channel thumbnails 2021-02-18 01:14:39 -05:00
infiinte-persistence
d26d76fc70 Theater: hide button when not needed
## Issues
5349: Remove theater mode button from player in comments
5519: Theatre mode button doesn't do anything in full screen mode [Odysse/LBRY desktop app]

## Notes
5349: Wanted to hide for 'markdown' as well, but it seems useful for 'markdown' (to clear the screen from Related), so I did not include it.
2021-02-17 17:56:10 -05:00
infiinte-persistence
52a5655b26 Remove irrelevant comment (was copy-pasted) 2021-02-17 17:39:54 -05:00
infiinte-persistence
a127fce561 Add Finnish and Norwegian
## Issue
5458: add Finnish/Norwegian languages to supported
2021-02-17 17:39:54 -05:00
Sean Yesmunt
c29dccc1b1 don't set setting until preferences are ready 2021-02-17 17:29:09 -05:00
infiinte-persistence
02792b8f0c Remove hack in Timestamp parser now that 'remark-breaks' has addressed the original problem.
## Issue
Closes 5523: timestamps not interpreted in some cases

## Notes
`remark-breaks` previously kept repeating the same index in the loop, causing some corner-cases to be parsed oddly. I added code to address that.

Later, `remark-breaks` fixed the problem and we recently just bumped up the componnent version. My hack is no longer necesary.
2021-02-16 17:11:07 -05:00
infiinte-persistence
8e9f6eb905 Bump lbry.tv upload limit to 4GB as well, plus lint fixes (matching Odysee) 2021-02-16 15:02:46 -05:00
infiinte-persistence
642e872296 Change upload limit to a variable to better handle site differences.
`const TV_PUBLISH_SIZE_LIMIT_STR_GB = '2';`

The above needs to be changed when merging into Odysee.
2021-02-16 15:02:46 -05:00
Sean Yesmunt
5ef19696a9 correctly set active channel on edits 2021-02-15 12:11:19 -05:00
Sean Yesmunt
92fc807e3d fix missing prop 2021-02-11 14:01:22 -05:00
Sean Yesmunt
ca4ca536fa set active channel in publish form on load 2021-02-11 10:45:34 -05:00
Sean Yesmunt
02019edcb7 cleanup styles 2021-02-11 10:45:34 -05:00
Sean Yesmunt
1f117e43bd add initial support for comment API outside of SDK 2021-02-11 10:45:34 -05:00
Sean Yesmunt
db87125dc8 refactor 'active' channel usage across the app 2021-02-11 10:45:34 -05:00
Franco Montenegro
c59d827a39 Refactor last release changes component to use markdown preview component 2021-02-09 11:04:03 -05:00
Franco Montenegro
d6663074e3 Fetch and display last release changes from GitHub in modal upgrade & modal auto update downloaded 2021-02-09 11:04:03 -05:00
zeppi
d01f3da174 mass claim tips
bump

ui pass

move mass tip unlock to modal

better track wallet operations in progress
2021-02-05 16:55:06 -05:00
Sean Yesmunt
03f419a49c use totalBalance for check to show empty wallet page or not 2021-02-05 13:12:15 -05:00
zeppi
c784c5393d tags: keep placeholder if only special tags 2021-02-04 22:36:07 -05:00
zeppi
bbf92b06f0 disable comments label 2021-02-04 22:36:07 -05:00
zeppi
40408e25be review changes 2021-02-04 20:55:36 -05:00
zeppi
18682fdac0 cleanup2 2021-02-04 20:55:36 -05:00
zeppi
dc65f6140b cleanup 2021-02-04 20:55:36 -05:00
zeppi
a85c9a1f48 provide tags for disabling comments 2021-02-04 20:55:36 -05:00
Sean Yesmunt
d47d55098e add immediately spendable balance inline wherever credits are used 2021-02-04 18:02:04 -05:00
Jarred Kennedy
b4dd6f3bfa Do not propogate double click event on search input 2021-02-04 10:41:22 -05:00
johnspirit
e95896fd08 fix wrong word to 2021-02-03 23:39:40 -05:00
Franco Montenegro
0423d30a4e Add fallback thumbnail for streams 2021-02-03 17:02:58 -05:00
Franco Montenegro
6aae5987e6 Use fallback image for broken thumbnails 2021-02-03 17:02:58 -05:00
zeppi
11931d4037 provide ad blacklisting 2021-02-02 21:18:13 -05:00
infiinte-persistence
64874c773b Search: Get uris with same query as doSearch
## Issue
2731: Searches with forward slashes returns no results

## Change
The slash-removal came from (0db20834f9).

Removing the 2 `replace(/\//, ' ')` from lbry-desktop fixes it, but this PR assumes the slash-removal is intentional to cover something else. So, we'll make the Search side do the same thing to match what's happening in `doSearch`.

A little bit ugly, but there's already a comment about this in `makeSelectSearchUris`, so it'll probably get cleaned up in the future.
2021-02-02 15:08:52 -05:00
infiinte-persistence
0699c55229 videojs: make control bar slightly transparent.
## Issue
Closes #5392 better support for non-standard resolution videos

It's not actually cropped -- the control bar was opaque.

## Change
Use 0.80 opacity to somewhat see the full picture.

Using 0.5 or less would be even better, but due to the default tiny size of the control bar, the text becomes unreadable (it's readable if you zoom the browser to get larger text). Don't want to mess with sizing for now, so using 0.80 to get the best of both worlds.
2021-02-01 17:06:49 -05:00
infiinte-persistence
44458c2b8c Fix 5438: Keep floating player in view area
## Issue
5438: Keep floating player in view area

## Changes
- Restore correct z-index
    -  The bug came as a side effect of cbac2174. Redo cbac2174 to cover both close button and floating player.

- Remove wobbling when dragging to bottom-right.
    -  The extra gap introduced is fighting against react-draggable. If gaps are needed, handle it entire ourselves or do it somewhere in react-draggable; neither is worth the effort, so the gap was removed.
2021-02-01 14:51:04 -05:00
Sean Yesmunt
19275f8f3d flowfixme 2021-02-01 13:50:16 -05:00
DispatchCommit
599f9e106e use smooth scrolling
Tells browser to use smooth scrolling to animate scroll
https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollTo
2021-02-01 13:50:16 -05:00
Daniela Narvaez
1698ca8775 Small change based on code review 2021-02-01 10:58:37 -05:00
Daniela Narvaez
1f66132cd2 Small change based on code review 2021-02-01 10:58:37 -05:00
Daniela Narvaez
ec875a6cdf "Fix Long commenter name issue" 2021-02-01 10:58:37 -05:00
Franco Montenegro
77d90b807e Display default image for channel thumbnail on error 2021-01-29 14:50:36 -05:00
Dispatch
b27395607c Add all proper react lifecycle hooks
Fixes 1 of 52 linting warnings
2021-01-29 14:49:12 -05:00
Sean Yesmunt
f28707504a Revert "Make dropdown menus actually dropdown"
This reverts commit a2046be0ee.
2021-01-29 11:54:39 -05:00
Sean Yesmunt
5314100714 Revert "use variable for header height"
This reverts commit b68600d978.
2021-01-29 11:54:39 -05:00
Sean Yesmunt
17f0997ec3 Revert "animate in from top instead of bottom"
This reverts commit 153ebbca63.
2021-01-29 11:54:39 -05:00
zeppi
6a16d8e0cd fix bad lighthouse results 2021-01-28 15:35:15 -05:00
Jeffrey Fisher
4c97cb4ba4 Enable PDF Viewer in App
Closes #2903
2021-01-28 10:21:35 -05:00
Sean Yesmunt
8c21ec30e8 prevent caching on streaming url requests
Fixes an issue where the browser still thought a file wasn't transcoded because it was serving the cached response
2021-01-27 14:27:27 -05:00
Sean Yesmunt
99d7487bc2 fix quality selector not showing up 2021-01-27 14:27:27 -05:00
DispatchCommit
9a395a0284 remove leftover console log 2021-01-27 12:50:40 -05:00
DispatchCommit
d6e5df540e remove unused player reference 2021-01-27 12:50:40 -05:00
DispatchCommit
3d38739be1 adds vjs player reference to component state 2021-01-27 12:50:40 -05:00
infiinte-persistence
1f48dab312 Remove unnecessary 'reload' at the return statement.
We no longer need to re-render the whole thing..
2021-01-27 12:50:40 -05:00
infiinte-persistence
84bba58d64 Update broken 'Retry' button after videojs refactoring. 2021-01-27 12:50:40 -05:00
infiinte-persistence
33f880758a Thumbnail: Display the same label (recommended ratio) for both URL and UPLOAD.
- Fix i18n concat problem for some languages.
- Display the same label (specifically, the recommended aspect ratio) for both URL and UPLOAD. I think the string "File to upload" can be omitted, but I left it as-is.
- Remove old/unused strings.
2021-01-27 10:21:59 -05:00
infiinte-persistence
7419fefa2d Zoomable image viewer in Markdown (posts and comments)
## Issue
4899: Ability to expand images in markdown posts for viewing
2021-01-27 10:06:31 -05:00
Sean Yesmunt
153ebbca63 animate in from top instead of bottom 2021-01-27 10:05:02 -05:00
DispatchCommit
b68600d978 use variable for header height 2021-01-27 10:05:02 -05:00
DispatchCommit
a2046be0ee Make dropdown menus actually dropdown 2021-01-27 10:05:02 -05:00
Dispatch
4cf9a455bc
add autoplay logic for embedded player (#5399)
Add autoplay logic when player is embedded.

Adds new `autoplay` prop to `VideoJs` component for specifying autoplay value.
2021-01-27 08:49:30 -05:00
zeppi
d04b0f09ba fix ad areas and drivers 2021-01-26 19:39:22 -05:00
Daniela Narvaez
e9d28918cd Add type definition for new prop in comment component 2021-01-26 16:34:50 -05:00
Daniela Narvaez
0a2f9fa0be Fixing inline videos in comments 2021-01-26 16:34:50 -05:00
Franco Montenegro
10a83bbfe9 Fix first claim nsfw result being hidden even if nsfw is enabled 2021-01-26 16:31:01 -05:00
Sean Yesmunt
3d58c4eca6 fix typo 2021-01-26 11:19:18 -05:00
DispatchCommit
52f883be4e fix linting errors 2021-01-26 11:00:41 -05:00
DispatchCommit
ee28648852 remove console.log statements 2021-01-26 11:00:41 -05:00
DispatchCommit
d8564cda5a hack-y solution to losing player context
use a global window variable to store the reference to the current video.js instance.
2021-01-26 11:00:41 -05:00
DispatchCommit
68ae2d571f only react to source prop updates 2021-01-26 11:00:41 -05:00
DispatchCommit
7c8383f2dc attempt to persist a single video.js instance
Continually recreating video.js instance on render is bad.
Instead, persist a single instance, and simply update the source and poster on the existing instance.
2021-01-26 11:00:41 -05:00
infiinte-persistence
912489cce0 Make zoom level persistent on Desktop
- uses local storage.
- for 'web', the browser is already handling that.
2021-01-26 10:20:59 -05:00
Sean Yesmunt
0c8c4938d9 move channel selection to top of publish form 2021-01-25 17:51:58 -05:00
Sean Yesmunt
6903836ebe add 'immediately spendable' balance on header balance hover 2021-01-25 14:24:57 -05:00
Sean Yesmunt
7152f9b04f call install/new after users select privacy options 2021-01-25 14:24:57 -05:00
Sean Yesmunt
d7f95ddd43 fix desktop build 2021-01-25 14:24:57 -05:00
Sean Yesmunt
513e239771 encode embed url too 2021-01-25 13:58:12 -05:00
Sean Yesmunt
26ece81da8 manually encode ' because encodeURIComponent doesn't encode it 2021-01-25 13:58:12 -05:00
zeppi
2adfa8b6b6 sync again 2021-01-25 10:39:40 -05:00
infiinte-persistence
855d13e735 Add "t" as shortcut for Theather Mode 2021-01-25 10:38:25 -05:00
zeppi
a8a26fabd8 simplesite always ads
theme based related ads

test ad layout

logic
2021-01-24 17:32:51 -05:00
zeppi
61ace3566a gads on master 2021-01-23 12:57:09 -05:00
Sean Yesmunt
8552515e34 string cleanup + add available balance to publish/channel create 2021-01-22 11:46:27 -05:00
Jeremy Kauffman
18f1f983ae contribute -> boost 2021-01-22 11:46:27 -05:00
Jeremy Kauffman
79a85db7e4 potential language changes 2021-01-22 11:46:27 -05:00
Sean Yesmunt
5420a6a887 show total balance on wallet page/header 2021-01-22 11:46:27 -05:00
jessopb
2f1fae23cf
vanity referrals (#5353) 2021-01-22 10:47:21 -05:00
infiinte-persistence
b767fc4db1 Fix 'Annoymous Reposted' split string. 2021-01-21 14:31:31 -05:00
infiinte-persistence
2bf4a96d09 String fix for 'Support Repost'
- Added to json
- Don't need the context note for this case.
2021-01-21 14:31:31 -05:00
DispatchCommit
bb3354581a fix overrideNative option for vjs
resolves https://github.com/lbryio/lbry-desktop/issues/5323
2021-01-20 21:49:08 -05:00
Sean Yesmunt
21cbb64001 Revert "Add Chromecast support on Google Chrome."
This reverts commit 65ce47a7d1.
2021-01-20 15:14:00 -05:00
Sean Yesmunt
c166060f0d Revert "Pass the title and channel name to Chromecast."
This reverts commit bb828385d0.
2021-01-20 15:14:00 -05:00
zeppi
6ed103b33f shorter timeout 2021-01-19 13:41:10 -05:00
zeppi
a2d93bc7cc fix embed loading hang 2021-01-19 13:41:10 -05:00
infiinte-persistence
bb828385d0 Pass the title and channel name to Chromecast.
I'm a bit wary of adding props to this component due to the 'dispose' call, but I think 'source' and 'claim' will update together, so it shouldn't be an issue?
2021-01-19 10:29:28 -05:00
infiinte-persistence
65ce47a7d1 Add Chromecast support on Google Chrome. 2021-01-19 10:29:28 -05:00
infiinte-persistence
95b4f89e50 Make 'playback rate' persistent
## Issue
5308: Ability to choose default play speed and theatre mode or regular playback size

## Comments
Initially, I used the local storage, as per 'muted' and 'volume' -- I thought that would be appropriate.
Later, I saw that Theater Mode is already using Client Settings, so I re-did everything to match that.

Also, there is an accompanying commit in lbyr-redux.
2021-01-19 10:16:46 -05:00
zeppi
a8cc17624c make clear supporting repost 2021-01-15 10:43:27 -05:00
zeppi
6211c243dd support repost bugfix 2021-01-15 10:43:27 -05:00
zeppi
ccd13f2233 put auth in progress back with timeout 2021-01-15 10:40:34 -05:00
Sean Yesmunt
80a7cbe16f add quality selector to transcoded videos 2021-01-15 10:34:41 -05:00
Sean Yesmunt
ee0bdf3a82 encode claim name in embed url 2021-01-14 11:48:42 -05:00
Sean Yesmunt
72ac5a5437 encode share url parts 2021-01-14 11:48:42 -05:00
Franco Montenegro
d9b8f0310a Fix nsfw parameter in search page 2021-01-13 14:56:12 -05:00
zeppi
93834fb281 redirect to source after repost 2021-01-13 12:47:46 -05:00
Sean Yesmunt
45bc5182ce don't call sync/set for exisitng users that signed in in a different tab
this was causing users to lose their subs before the page refreshed
2021-01-13 11:59:36 -05:00
zeppi
5435dc88d4 langmig 2021-01-13 11:11:58 -05:00
jessopb
e94d4bcd28
repost ui (#5293) 2021-01-13 10:44:44 -05:00
Sean Yesmunt
55182e0b94 remove bad CSS rules 2021-01-13 10:25:40 -05:00
zeppi
554ca1a4f4 two digits and up smaller notif bubble txt 2021-01-12 10:12:28 -05:00
zeppi
eac7e100cc notifications 20+ 2021-01-12 10:12:28 -05:00
jessopb
6cb2377266
Merge pull request #5296 from lbryio/authInProgressTemp
disable authinprogress for now
2021-01-11 18:40:48 -05:00
zeppi
ae032cb557 disable authinprogress for now 2021-01-11 18:39:54 -05:00
zeppi
68de0a8107 language map fix 2021-01-11 18:14:42 -05:00
Sean Yesmunt
65709e1139 Revert "Fix nsfw parameter in search page"
This reverts commit 4f1bd23442.
2021-01-11 15:01:40 -05:00
Sean Yesmunt
148fa4f4cd call user/signout on signout
fixes sync issues for users with multiple accounts signed in to multiple tabs
2021-01-11 14:31:01 -05:00
Franco Montenegro
4f1bd23442 Fix nsfw parameter in search page 2021-01-11 10:32:14 -05:00
zeppi
72945b45c5 cleaner 2021-01-11 10:30:26 -05:00
zeppi
6fb345dbbc zh languages
bugfix

bugfix3

publish

add zh back for homepage selector

test

revert i18n file

DRY publish language
2021-01-11 10:30:26 -05:00
Sean Yesmunt
b65934cc7f fix reposts not showing up as winning claim in search suggestions 2021-01-08 09:31:25 -07:00
Sean Yesmunt
d43c4d053e add video theater mode button 2021-01-08 08:27:41 -07:00
Franco Montenegro
b43593a996 When a new reward is acquired, only close modals if the reward comes from reward_code 2021-01-08 08:16:41 -07:00
Daniela Narvaez
a65162c204 Change list style in comments to be inside. 2021-01-08 08:10:43 -07:00
Sean Yesmunt
eb398c419a turn it back on but head 2021-01-06 23:03:23 -05:00
Sean Yesmunt
d92f6d3e18 comment out redirect handling for transcoded streams 2021-01-06 18:40:38 -05:00
Thomas Zarebczan
09decf796a
String! 2021-01-06 01:28:16 -05:00
zeppi
65d524dfdf buffer id 2021-01-05 16:29:04 -05:00
jessopb
f538ab3670
Merge pull request #5259 from lbryio/feat-consolidateUtxosRebase
Feat consolidate utxos rebase
2021-01-05 14:33:45 -05:00
zeppi
1b3bc0f4e3 support consolidating txos
improvements

actual values

bump

bump

devtools revert

bugfix

bump
2021-01-05 12:38:55 -05:00
Sean Yesmunt
2436c3eb70 add extra check for video source response 2021-01-04 15:19:54 -05:00
Sean Yesmunt
f59cdb1929 fix for hls support 2021-01-04 15:04:36 -05:00
Sean Yesmunt
3317d32ae2 fix weird search suggestion behavior 2020-12-30 23:03:46 -05:00
infiinte-persistence
d0f42ce6b3 Desktop: Enable 'Alt+Left/Right' for history navigation.
## Why
- Consistent behavior across Web and Desktop.
2020-12-30 14:55:24 -05:00
infiinte-persistence
cbac21746f FloatingPlayer: Fix close button not working when AutoplayCountdown is visible.
## Issue
5221: floating player won't close during autoplay countdown

## Change
Change the z-index when hover to ensure it is really on top of everything.
2020-12-30 14:35:11 -05:00
zeppi
e4eb8f4a26 review test 2020-12-28 15:00:15 -05:00
zeppi
ad420670a7 changes, bump 2020-12-28 15:00:15 -05:00
zeppi
30a9bb010f show loading while searching
fixes

bump

bump
2020-12-28 15:00:15 -05:00
Sean Yesmunt
a8cb4d7d57 update videojs import to include http-streaming module
so we can support hls streams
2020-12-28 13:44:38 -05:00
zeppi
5fa57e1859 no resolve undefined pls 2020-12-28 13:16:37 -05:00
zeppi
91f25abf2c email spam reminder 2020-12-23 16:51:41 -05:00
zeppi
cbe4cb1cf1 i18n homepage sections 2020-12-23 09:45:45 -05:00
zeppi
3de290f04f fix search 2020-12-22 14:11:07 -05:00
Sean Yesmunt
53d3efe895 update youtube sync text for channels that don't qualify 2020-12-21 22:12:21 -05:00
Sean Yesmunt
a0123c2a6f fix earnings per view style 2020-12-21 22:12:21 -05:00
Baltazar Gomez
a09216da76 remove typo 2020-12-21 14:08:52 -05:00
btzr-io
35653bb115 prevent front-matter render on markdown 2020-12-21 14:08:52 -05:00
infiinte-persistence
49abbecbd7 mobile-ui: Fix missing chromecast button in Android-Chrome
## Issue:
5119 "Video: Mobile UI + overlay for keyboard shortcut feedback" was disabled because the feature broke the chromecast button in Android Chrome
2020-12-21 12:15:45 -05:00
infiinte-persistence
4a4247180f Revert "comment out mobileUI function until chromecast bug is fixed"
This reverts commit d8c4ff62cb.
2020-12-21 12:15:45 -05:00
infiinte-persistence
4b03a30121 Fix initial pause state for the Autoplay Countdown
## Issue
5204: Don't autoplay when commenting/video off screen

## Change
Previously, the checking was only done during a scroll event. We also need to check if the user has already scroll down before the component was invoked.
2020-12-21 12:14:31 -05:00
infiinte-persistence
0d374725d6 i18n update 2020-12-21 12:11:59 -05:00
Sean Yesmunt
5d1b1f5293 update placeholder 2020-12-21 10:36:55 -05:00
Sean Yesmunt
187cbd9695 fix doSetPlayingUri arguments 2020-12-21 10:31:34 -05:00
infiinte-persistence
a0ec5097d9 Enable tile layout for 'Your Tags' page
## Why
- Something I miss every time I switch to lbry.tv.
- Consistent with other search pages like Discover.
2020-12-18 14:02:50 -05:00
infiinte-persistence
4760f00050 Fix "Not Now"
## Issue:
https://discord.com/channels/362322208485277697/646840786662719488/788694493532520458

## Change:
It's either adding the non-capitalized "Not now" to the list, or change the usage to "Not Now".

Chose the latter since the rest of the modal (and other usage) is using the capitalized format.
2020-12-18 14:02:18 -05:00
infiinte-persistence
267c019d7a Timestamp: Handle Safari + better parsing
## Issue
- The previous regex uses lookback (I think ES2018?) which Safari has yet to implement.
- There were a few bugs in the previous regex too, like missing out multiple timestamps in a line, or parsing "62:02" as "2:02" (although YT does this as well).
- The previous method searched too deep (matchAll) on each 'locate' call, which was wasteful.
2020-12-18 11:35:47 -05:00
infiinte-persistence
897128a168 Restore "Handle timestamp in Markdown."
This reverts the revertion in:
- 85f8965d44.
- d3f0e471e5.
2020-12-18 11:35:47 -05:00
Sean Yesmunt
b9f8fd73f1 fix sidebar for mobile 2020-12-17 13:55:58 -05:00
Sean Yesmunt
77739c971a slightly improve mobile style on top page 2020-12-16 14:58:30 -05:00
Sean Yesmunt
047e84ac8c winning claim style pass 2020-12-16 14:58:30 -05:00
Sean Yesmunt
1aefdba5ab fix wunderbar suggestions spacing 2020-12-16 14:58:30 -05:00
Sean Yesmunt
cc568fb8cf working 2020-12-16 10:52:22 -05:00
Sean Yesmunt
0cc3af28a3 flow fixes 2020-12-16 10:52:22 -05:00
zeppi
f825533afa cleanup 2020-12-16 10:28:57 -05:00
zeppi
99ab165a8f New repost flow
Clearer display of takeover amounts
Repost from empty search result, from top page, or from claim

review changes

final touches

bump

empty comment copy

they

emptier

validation cleanup

extra
2020-12-16 09:47:28 -05:00
Sean Yesmunt
73dea00e41 revert encode share url 2020-12-15 19:44:37 -05:00
Sean Yesmunt
d8c4ff62cb comment out mobileUI function until chromecast bug is fixed 2020-12-15 17:03:32 -05:00
Sean Yesmunt
87d54d9c88 show 'SITE_NAME view reward' message on txo list table 2020-12-15 16:22:40 -05:00
Sean Yesmunt
e6b502dd4a hide duplicate purchase page link on sidebar 2020-12-15 16:22:40 -05:00
Sean Yesmunt
0d4659472b remove old ads code and disable videojs mobile plugin 2020-12-15 14:10:57 -05:00
Sean Yesmunt
62dfaf0709 use thumbnail cdn for cover photos 2020-12-15 13:59:08 -05:00
Sean Yesmunt
71b948f2fc redirect to channel creation page when reacting to comment with no channel 2020-12-15 13:59:08 -05:00
Sean Yesmunt
dd582f4009 encode lbry url when shared from modal 2020-12-15 13:59:08 -05:00
Sean Yesmunt
664e969730 don't search if term is empty 2020-12-15 13:59:08 -05:00
Sean Yesmunt
540a527a61 swap seen & read notification behavior 2020-12-15 13:59:08 -05:00
Sean Yesmunt
138d84155b fix opening files externally on desktop 2020-12-15 13:58:27 -05:00
Sean Yesmunt
d3f0e471e5 Revert "Tokenize and format timestamps in Markdown"
This reverts commit 93709fbeb8.
2020-12-14 22:31:18 -05:00
Sean Yesmunt
85f8965d44 Revert "Handle timestamp in Markdown."
This reverts commit 3f1913e5f4.
2020-12-14 22:31:18 -05:00
infiinte-persistence
3f1913e5f4 Handle timestamp in Markdown.
The videojs player is exposed through the 'window' object.
2020-12-14 12:12:50 -05:00
infiinte-persistence
93709fbeb8 Tokenize and format timestamps in Markdown
1. Find and tokenize timestamps, i.e. "XX:XX:XX" strings.
2. Transform 'timestamp' nodes to Links.
2020-12-14 12:12:50 -05:00
infinite-persistence
04fbde49ec
Video: Mobile UI + overlay for keyboard shortcut feedback (#5119)
Co-authored-by: import <>
2020-12-14 11:40:59 -05:00
Sean Yesmunt
e648f15fdc lower thumbnail quality to 80 2020-12-11 17:08:20 -05:00
Sean Yesmunt
f420785bfb fix casing 2020-12-11 17:01:59 -05:00
Sean Yesmunt
9c5ffdc1bf deal with completed transfers on youtube transfer page 2020-12-11 17:01:59 -05:00
Sean Yesmunt
38a916dcc4 fix view_count getting called multiple times 2020-12-11 17:01:59 -05:00
Sean Yesmunt
6ac3b0d6cd add sub/upload count to youtube transfer status component 2020-12-11 17:01:59 -05:00
Sean Yesmunt
9a90a00c83 fix spacing for unauth users 2020-12-11 17:00:32 -05:00
Sean Yesmunt
a5e9557e4b enable thumbnail cdn for all file thumbnails 2020-12-11 15:47:06 -05:00
Sean Yesmunt
05d625484d improve jumpiness on search suggestions 2020-12-11 14:37:06 -05:00
Sean Yesmunt
120300643f improved mobile-search experience 2020-12-11 14:37:06 -05:00
infiinte-persistence
b35e68c6d3 Don't parse a 'mailto:' into a lbry link.
## Issue
5130: Support mailto hyperlinks / urls in markdown

## Change
The markdown components already support mailto, just that the logic here ended up making it a 'ClaimLink'
2020-12-11 10:18:07 -05:00
Sean Yesmunt
b0026a562a pass x-lbry-auth-token to apis status call for email verified users 2020-12-10 17:35:03 -05:00
Sean Yesmunt
cffc70fb6b disable 2020-12-10 17:28:38 -05:00
Sean Yesmunt
996a5c40b1 use new cdn for images
default to using one in the env
2020-12-10 17:01:29 -05:00
Thomas Zarebczan
b86f748700
Fix following discover on Odysee 2020-12-10 16:58:31 -05:00
Sean Yesmunt
c2213d9008 new test 2020-12-09 18:03:40 -05:00
Sean Yesmunt
dccb1c93e1 comment out cdn - need to fix env so I don't need to make this change 2020-12-09 12:48:36 -05:00
infiinte-persistence
d8787cb4c5 Handle scrolling for ClaimListDiscover that exists in the middle of a page.
## Issue
5090: When sorting channels, switching between Trending/Top/New returns viewer to the top of the page

## Approach
- Add an optional parameter to `ClaimListDiscover/Header` to add an additional anchor ID when building a new search URL.
- Clients then add the anchor ID on the desired location.
- The code that handles the scrolling then checks if the `location` contains an anchor hash. If it does, we'll scroll to that element; else, the existing behavior will be used.
2020-12-08 16:01:32 -05:00
infiinte-persistence
4b53d1267c Consolidate method of reseting scroll position
## Issues
(1) 4783: New search query does not reset to the top
(2) The current way that Tag Search resets the position can be overridden by the AppRouter's call.

## Approach
Listen to `search` changes as well. This basically covers any search param changes.

Components should probably not call `window.scrollTo` directly as the AppRouter's call might override it.
2020-12-08 16:01:32 -05:00
Sean Yesmunt
a23b3c8d26 check for thumbnail cdn in config before using 2020-12-08 15:15:29 -05:00
Sean Yesmunt
e81d11fd55 Revert "Revert "use cdn for thumbnails""
This reverts commit d257c312c1.
2020-12-08 15:15:29 -05:00
Sean Yesmunt
d257c312c1 Revert "use cdn for thumbnails"
This reverts commit f7279c1d49.
2020-12-08 14:24:49 -05:00
Sean Yesmunt
f7279c1d49 use cdn for thumbnails 2020-12-08 13:54:23 -05:00
Sean Yesmunt
caae63b44b refresh homepage if clicking 'home' while on the homepage 2020-12-08 11:45:18 -05:00
Sean Yesmunt
0ef0966226 fix moonpay on desktop 2020-12-08 11:45:18 -05:00
zeppi
f8d09994f6 top page selects channel tab if channel is winning 2020-12-07 22:24:08 -05:00
Sean Yesmunt
495cf89a38 remove overflow: auto but keep width the same 2020-12-07 11:47:19 -05:00
Electron - Mark Firth
459a4752ed Wider Post Area
Wider post area for bigger text, while keeping the character count the same or less.
Removed `overflow: auto;` as it was not required and was creating unnecessary scrollbars when margins were incorrectly calculated.
2020-12-07 11:47:19 -05:00
zeppi
cf1d051288 no tiny sidebar signup 2020-12-04 09:22:36 -05:00
Electron - Mark Firth
f0a961b8f8 Darker Area for Code
A darker and more colourful preview code area for a more comfortable and stylish look.
2020-12-04 00:02:46 -05:00
Sean Yesmunt
00c6d80ec9 only search for 25 results on channel page 2020-12-03 16:42:22 -05:00
Sean Yesmunt
16e45c452f fix search not happening after changing search options 2020-12-03 16:42:22 -05:00
Sean Yesmunt
4e0e1e2f2b cleanup 2020-12-03 16:18:04 -05:00
Sean Yesmunt
0de87521b8 add placeholder for top wunderbar suggestion 2020-12-03 15:47:06 -05:00
Sean Yesmunt
fac2050485 pass readyState to buffer analytics api 2020-12-03 15:00:21 -05:00
infiinte-persistence
409fff7ee4 5115: eliminate scrollbar jumping in the sidebar 2020-12-03 12:45:48 -05:00
infiinte-persistence
112e8aeaa0 Sidebar: left-justify "followed channels" in lbry.tv
## Issue
5094: Followed Channel list mistakenly centered on smaller screens?

## Changes
Copied the fix from the Odysee branch.
2020-12-03 12:45:32 -05:00
Sean Yesmunt
30d8a0406d wunderbar improvements 2020-12-03 12:39:12 -05:00
jessopb
dc679add87
Merge pull request #5076 from lbryio/sync-embed-auth
Prevent multiple embeds from creating new users
2020-12-02 14:46:51 -05:00
zeppi
960a0277aa Prevent multiple embeds from creating new users
try with cookies

tweak

tweak 2

tweak3

tweak4

tweak5

try localstorage

tweakerino

final

try testing for sessionStorage

store sessAvail globally
2020-12-02 13:50:10 -05:00
Sean Yesmunt
828dab73a8 fix list bullets from being cut off 2020-11-30 23:33:43 -05:00
zeppi
b736444306 player started event (embedded) 2020-11-30 14:52:05 -05:00
zeppi
adde73605d player loaded analytics event (for embedded/not) 2020-11-30 14:52:05 -05:00
infiinte-persistence
c059f3dced Fix double translation in homepage
## Issue
The "Trending for xxx" string was being resolved and translated twice, so it often re-appears in the string list during development.

## Change
It seems like `getHomepage` is repopulated every time, so I think it is safe to just resolve and translate `title` at that level.

## Extra
Remove unused "Creator analytics are down" message per recent changes.
2020-11-30 14:47:16 -05:00
Sean Yesmunt
919c2bd22a record channel in analytics on first run 2020-11-30 11:50:26 -05:00
zeppi
0495dff904 fix homepage and language defaults 2020-11-25 13:04:07 -05:00
zeppi
d7856b7618 settings use null when matching current browser language
default language functions

bugfix1

bugfix2

bugfix4
2020-11-23 14:12:31 -05:00
Sean Yesmunt
d0773cec4a only use custom scrollbar on non-mac 2020-11-23 14:03:51 -05:00
Sean Yesmunt
d012300fe9 remove double 'discover' link showing up in mobile side nav 2020-11-23 14:03:51 -05:00
infiinte-persistence
28e7fec338 videojs: Add shortcuts for Playback-Rate
">" (shift + .) = Speed Up
"<" (shift + ,) = Speed Down
2020-11-23 13:12:22 -05:00
infiinte-persistence
e12506feef videojs: Squeeze in 'playback rate' button for Mobile Portrait.
## Issue
- Personally annoyed of having to switch to landscape just to change the setting. There's still space for it.
- This serves as a quick fix until "4712: Video: Allow access to all control in small screen" is figured out
2020-11-23 13:05:58 -05:00
infiinte-persistence
7fb7560f75 Limit scrollbar customization to: (1) web (2) linux/windows app
The only downside to this new implementation is that the top-most (or right-most?) scrollbar won't get the customization. Any other sub-components (e.g. sidebar) will get the customization.

My guess is that the "top-most" scrollbar is above the `main-wrapper`. I'm not sure if we can (or should) add another className higher than App.

The impetus for the customization was the ugly sidebar anyway, so at least we covered that.
2020-11-23 11:00:41 -05:00
infiinte-persistence
c9831d1949 Customize scrollbar to fit the theme colors
## Issue
4727: Sidebar's transient scrollbar doesn't fit in the Dark Theme

## Approach
The 'webkit' API works on Chrome, but Firefox ignores it and uses it's own fancy scrollbar when 'webkit' is used (can't seem to change any properties). It's better than the current look, but still doesn't fit our theme, plus it makes the product look different on different browsers.

Firefox now supports the new 'scrollbar' API, so we can now tweak the scrollbar, but the API only provides limited attributes.

Don't wanna complicate things by using Javascript, so we'll use Firefox's limited attributes as the common denominator and just live with a plain, rectangle scroll bar BUT with better color to match the theme.
2020-11-23 11:00:41 -05:00
Sean Yesmunt
d4bc2ca9a5 remove down message for creator analytics 2020-11-20 18:28:39 -05:00
Sean Yesmunt
d42586dc9e fix LbcMessage for ranges with decimals 2020-11-20 12:01:16 -05:00
Sean Yesmunt
fe2656cfa9 don't default to 'new' on discover page 2020-11-20 12:01:16 -05:00
Sean Yesmunt
c822f1702f handle malformed markdown links 2020-11-19 15:28:19 -05:00
Sean Yesmunt
aa4886344e don't allow claims from future to be rendered 2020-11-19 13:33:37 -05:00
Sean Yesmunt
9801f43d3e hack together a thumbnail message on the channel page 2020-11-19 13:33:37 -05:00
Sean Yesmunt
c4573df90f fix import 2020-11-18 17:15:18 -05:00