Commit graph

12288 commits

Author SHA1 Message Date
Rafael
6b2427768c Add ability to link to latest or current live channel file pages
- and some changes to activeLivestream redux since it would return undefined if fetching and no claim, so now it returns null when no activeLivestream is found
2022-05-16 06:36:50 -04:00
Rafael
bf158ad696 Refactor
- some cleanups
- uri was being parsed the same way in different places, so do it only once for simplicity
2022-05-16 06:36:50 -04:00
saltrafael
b75a4014b6
Re-design comment threads (#1489)
* Redesign threadline and fetching state

- threadline goes right below channel avatar, mimicking reddits implementation, has a increase effect on hover and is slimmer, creating more space for comments on screen
- fetching state now replaces show/hide button, also mimicking reddit, and now says that it is loading, instead of a blank spinner, and also improves space a bit

* Redesign comment threads

- Allow for infinite comment chains
- Can go back and forth between the pages
- Can go back to all comments or to the first comment in the chain
- Some other improvements, which include:
- add title on non-drawer comment sections (couldn't see amount of comments)
- fix Expandable component (would begin expanded and collapse after the effect runs, which looked bad and shifted the layout, now each comments greater than the set length begins collapsed)
- used constants for consistency

* Fix replying to last thread comment

* Fix buttons condition (only on fetched comment to avoid deleted case)

* Fix auto-scroll

* Bring back instant feedback for Show More replies

* Improve thread back links

- Now going back to all comments links the top-level comment for easier navigation
- Going back to ~ previous ~ now goes back into the chain instead of topmost level

* Clear timeouts due to unrelated issue

* Fix deep thread linked comment case and more scroll improvements

* More minor changes

* Flow

* Fix commentList tile style

* Fix long channel names overflowing on small screens

* More scroll changes

* Fix threadline

* Revert "Fix long channel names overflowing on small screens"

This reverts commit e4d2dc7da5861ed8136a60f3352e41a690cd4d33.

* Fix replies fetch

* Revert "Fix replies fetch"

This reverts commit ec70054675a604a7a5f3764ba07c36bf7b0f49c8.

* Cleanup and make smooth

* Always use linked comment on threads

* Cleanup

* Higlight thread comment

* Fix comment body styles
2022-05-16 06:22:13 -04:00
infinite-persistence
f6f15531d4 Temporarily prevent invalid get calls until we figure it out
No analytics for the server side.
2022-05-13 12:08:28 -04:00
infinite-persistence
e0fee8cb25
Fix broken v1 homepage api
Due to 88740082
2022-05-13 20:48:34 +08:00
infinite-persistence
f79f346c94
Use get instead of generating the stream url (1499) 2022-05-13 20:31:54 +08:00
infinite-persistence
de206162f9
getHtml/routes/rss: fetch streaming_url instead of generating it.
## Issues from the initial attempt
- There are 2 versions of `Lbry` and `buildURI` -- the app and web-server version.  There are subtle differences between them, and for the app case, importing the web-server version results in a query into an invalid URL.
- It changed the function from returning a string to returning a promise.

## Changes
- Since the new function (renamed to `fetchStreamUrl` for clarity) is currently only needed for web-server, I moved it into the `web` folder to avoid misuse in app.
- Await on the promise. Unfortunately, this also means the entire chain of function calls need to be adjusted to be `async`.
2022-05-13 20:23:17 +08:00
infinite-persistence
251187de06
useGetThumbnail: fetch streaming_url instead of generating it.
In the first attempt (PR 1497, 4d44d81f), the `generateStreamUrl` was tweaked to fetch a `Lbry.get`, which returns a promise.  On top of a few async issues on its own, we also can't just simply `await` here since render functions need to be pure.

Fortunately, there is already redux structure for `get`, and Sean happened to already be passing all the required stuff here (sight beyond sight!), so it's just a matter of calling it.

Again, render functions need to be pure, so the fetch has be in an effect, so the component might take several renders to get the image painted. But oddly this seems to avoid the occurrence of showing the fallback spaceman image (just an observation, no proof of correlation).
2022-05-13 18:19:20 +08:00
infinite-persistence
d5e56d20b6
Remove 'app' code to reduce clutter 2022-05-13 16:16:39 +08:00
Thomas Zarebczan
a7493b2c80 rename field 2022-05-12 18:35:20 -04:00
infinite-persistence
13b59037a6 1317: Log and send totalPlayingTime
The current time is quantized to 1s, and `lastTimestamp` is used to prevent duplicate counts because `timeupdate` is fired at ~250ms intervals.
2022-05-12 18:35:20 -04:00
infinite-persistence
cc666a265a 1317: Exclude events in Recsys submission. 2022-05-12 18:35:20 -04:00
infinite-persistence
72b0977817 Recsys: pass isFollowing and incognito
Additional data requested.

isFollowing - is the user following the creator
incognito - authenticated or not
2022-05-12 18:35:20 -04:00
infinite-persistence
e6f432c69d createRecsysEntry: re-arrange for clarity (no functional change)
Easier to see what's different between an entry with and without a parent.
2022-05-12 18:35:20 -04:00
Thomas Zarebczan
6e9b07ec6f Revert "Replace generateStreamUrl for Lbry get call"
This reverts commit 4d44d81f59.
2022-05-12 18:16:03 -04:00
Thomas Zarebczan
4d44d81f59 Replace generateStreamUrl for Lbry get call
+ remove unused config
2022-05-12 15:24:58 -04:00
Thomas Zarebczan
ac0ec4794a
Fix quality selector 2022-05-12 11:48:21 -04:00
Rafael
b2763e4bf0 Fix Kebab 2022-05-12 11:34:05 -04:00
infinite-persistence
b2b1692525 Restore SDK error logging, limiting to support_create.
v1 publishing timeout is already being recorded. Look for the string `publish-v1: timed out after`
2022-05-12 08:43:59 -04:00
infinite-persistence
c4f88ac7e8
Fix 'freshness' filter not working in Category Pages
## Issue
Ticket: 1484

The commit `7622e7a: Fix release time on category pages` passes in the `releaseTime` prop, which usually means we want that value to be override.

## Change
Only pass the prop when there 'freshness' filter is not active.
2022-05-12 15:37:01 +08:00
infinite-persistence
123496e734
Remove old comment - Wild West is now a proper category 2022-05-12 14:51:53 +08:00
infinite-persistence
40a59c53d4
Don't show wallet value until prefs are ready
... because preference might be "Hide wallet = true". This eliminates the gap during login or boot up that temporarily shows the wallet balance.

Ticket: 1365
2022-05-12 14:36:06 +08:00
Raphael Wickihalder
f0f1d0f695
Fix timestamp input pattern and type 2022-05-12 14:35:13 +08:00
Raphael Wickihalder
4fcaf7ba2f
Fix timestamp input type 2022-05-11 18:56:33 +02:00
Raphael Wickihalder
57eae71d12
Fix timestamp input pattern 2022-05-11 18:44:01 +02:00
Raphael Wickihalder
b0e213a2b5
Fix timestamp input pattern 2022-05-11 18:31:18 +02:00
infinite-persistence
6ade6611d9 Suppress latest floater ad 2022-05-11 10:24:43 -04:00
infinite-persistence
c572891590 Update /$/live to use latest API
1480
2022-05-11 07:57:44 -04:00
infinite-persistence
bf6a2e51c1
Band-aid: hide video ad close button until next update is ready 2022-05-11 16:26:27 +08:00
infinite-persistence
9f7a163456
Meta: escape chars when generating keywords from tags
A content page contained `"` as a tag, and that caused the meta generator to  produced a malformed page.
2022-05-11 14:56:07 +08:00
Thomas Zarebczan
18ec09c5b0
clear up about page 2022-05-10 14:10:31 -04:00
Thomas Zarebczan
71894daf49
Fix crash on middle click (and others?) 2022-05-10 13:25:47 -04:00
infinite-persistence
8874008245 Support homepage-specific memes
1446

- Requires an accompanying commit in `odysee-frontend`.
- The change assumes that the `odysee-frontend` is the only project that uses these files directly, i.e. other clients will use the API instead.
2022-05-10 21:43:14 +08:00
Rafael
17868635bd Bring back default channel functionality
- consolidate cases that need to auto set an active channel (like edit page) into channelSelector component
- also for consistency since some components would do it with button click and others on page mount
- prevent clear function on those pages (kind of a manual process to insert each page into the router condition)
2022-05-10 09:06:10 -04:00
Anthony
d6208707b9 remove section about hosting content 2022-05-09 10:18:36 -04:00
Rafael
0afeaa6223 Remove active channel cleanup function
- reverts active channel functionality back to how it was previously, making the default channel simply a sync fallback and removing all complexity and confusion
2022-05-09 07:50:44 -04:00
Rafael
adc3c06803 Fix header icon active channel 2022-05-09 07:50:44 -04:00
Thomas Zarebczan
86819b6876
update background URL 2022-05-06 14:28:04 -04:00
infinite-persistence
dae78c488f Stacked toast view
From the previous commit, we are now showing toasts in the reverse order (latest to oldest).

Next, extend the "hide snack" timer to handle multiple snacks. It will dismiss them one by one, restarting itself until no more toasts.

Show a stacked GUI when there are multiple toasts.

Users can still manually dismiss the toasts.
2022-05-06 13:53:39 -04:00
infinite-persistence
55916f0763 Revert the toast display order
New toasts should be displayed immediately.
2022-05-06 13:53:39 -04:00
Thomas Zarebczan
463e6f5687
Fix wildwest types, add doc to category 2022-05-06 12:00:20 -04:00
infinite-persistence
208b701998 Fix comment channel not checked in Livestreams
## Change
Moved the fetch from `CommentList` to `CommentCreate` instead, which is used by both Content and Livestreams comments.
2022-05-06 11:31:42 -04:00
infinite-persistence
26f9cf3a4f Undo the channel-clamping and let user figure out from Toast
Several issues with the clamping behavior:
- Problems trying to sync with the activeChannel setting.
- Corner-cases like unable to un-react because the comment and react channel was different; global mods not be able to change channels to do certain actions.

Just let the user know what are the channel(s) that they used to comment previously in the Toast.
2022-05-06 11:31:42 -04:00
infinite-persistence
fd12a98b1b Refresh commented-channels list when deleting a comment
Users should be allowed to clear their past comments and switch to another channel.
2022-05-06 11:31:42 -04:00
infinite-persistence
3bb7e21d3c Disallow commenting if failed to determine if commented before.
If we can't confirm that user has not used another channel to comment, then don't allow commenting at all. Otherwise, there's no point doing the check.
2022-05-06 11:31:42 -04:00
infinite-persistence
2bdae7637b Fix comment_create verification
## Why
Lost in a rebase. The GUI clamping was just meant to complement this (so that user knows what's going on), but ended up being the only thing that was pushed.

## Changes
- If the fetch failed or still in progress, we ask the user to wait or simply refresh the page.
- If already commented from another channel, bail and inform via Toast.
2022-05-06 11:31:42 -04:00
infinite-persistence
2698cc7001
Add 'dispatchToast' wrapper
Just to shorten code, and easier to know what the parameters are if it's a function call (instead of an object).
2022-05-06 13:41:47 +08:00
Thomas Zarebczan
6cc85cd39d minor copy changes 2022-05-05 15:47:01 -04:00
Raphael Wickihalder
4022273408 Add code review requests 2022-05-05 15:47:01 -04:00
Raphael Wickihalder
42b456307f Save new signup flow 2022-05-05 15:47:01 -04:00