Commit graph

5097 commits

Author SHA1 Message Date
David Granado
38f00be231 When video is playing, save position intermittently 2022-03-02 20:20:27 -08:00
Thomas Zarebczan
c4ae797add
Remove deprecated migration 2022-03-02 21:48:40 -05:00
saltrafael
2e87c431ea
Improve logic for different scenarios (#1014) 2022-03-02 13:12:33 -05:00
Thomas Zarebczan
a01e4bad78
update iframe type + sentry 2022-03-02 12:45:26 -05:00
infinite-persistence
2eae20f0bd
Embedded images: serve via CDN for IP protection. (#1009)
## Ticket
536 "Embedding images without proxy is probably not in compliance with data protection regulations in Germany/Europe (GDPR)"
2022-03-02 11:23:34 -05:00
Raphael Wickihalder
fcbaa51df6
Fix OneTrust banner focus 2022-03-02 16:34:33 +01:00
infinite-persistence
5098b7cd87
RecommendedContent: fix ad-words filtering (#1007)
## Issues
Ad-filtering:
- Filtering was done whether or not ads are injected.
- Constants are repeatedly calculated.
- No short-circuiting in the for-loop.
- No memoization (being called 5-6 times on average due to redux updates, can't avoid that).

Others:
- Potentially passing null claimID to recsys (I think this is the issue that Johnny reported in Slack).

## Changes
- Moved 1-time calculations outside of the function.
- Optimized the filtering function and memoize it.
- Reduce unnecessary props since we are passing the whole `Claim` object already.
- Fix recsys being called when claim is not resolved yet (null claimId).
- Move away from the incorrect `makeSelect*` selectors.
2022-03-02 10:10:29 -05:00
saltrafael
712e02db16
Use locale/get response to suggest homepage and language switch (#839)
* Use locale/get response to suggest homepage and language switch

* Fix language modal condition

* Fixes from review

* Fixes from review

* Fix gdpr

* string

* Fix multiple options behavior

* Fix gdpr and use only one fetch

* Only show if no languages set or loaded

* pt-br

* Fix ad

* Fix homepage select

* Fix zh langs
2022-03-02 09:44:01 -05:00
infinite-persistence
f839e0c35d ClaimList: add default page-load indicator | Apply for Search and Following-Manage
Clients can still choose to roll their own way of showing "is fetching", like how ClaimListDiscover displays a whole bunch of placeholder tiles. This just serves as a default.
2022-03-02 09:16:43 -05:00
infinite-persistence
06f7cdbe25 Recommended section: add spinner while searching
It takes a while sometimes, so it feels like not doing anything.
2022-03-01 22:14:14 -08:00
infinite-persistence
83a816bf34 Following Page: make the 2 buttons flow with less space used 2022-03-01 22:07:04 -05:00
infinite-persistence
19dc09b262 ScheduledStreams: don't apply horiz scroll in Medium screen 2022-03-01 22:07:04 -05:00
infinite-persistence
82c4170e64 ScheduledStreams: force horizontal-swipe to tile-only
List-layout is not scrollable, and doesn't look good either. Force to tile-only until we can fix it. If we decide to always use tile-only, then remove the parameter for ScheduledStreams.
2022-03-01 22:07:04 -05:00
infinite-persistence
6c76cff2a0 Fix sidebar subs inefficiencies
- `filteredSubscriptions` was running the filter code whether or not it actually required filtering, because the `!subscriptionFilter` logic is placed in the predicate. While it is a clean one-liner, it is slow when the subs list is huge.
    - While at it, moved the code into `getSubscriptionSection` to isolate things.

- The sidebar was resolving the entire subs list, which is super slow for a list of 500+. Since we now have a "Manage Subscriptions" page, just batch-resolve the N visible subs.
    - TODO: the code should probably be moved from 'app' to 'sideNavigate'.
2022-03-01 10:50:07 -05:00
infinite-persistence
3edb00b99d Manage Subs: change from claim_search to batch-resolve
The idea of using claim_search to indirectly batch-resolve didn't work out well. There's something wrong with the claim_search pagination where some results are duplicated in multiple pages, while some are missing. It's also returning less results that than the given number of claim ids, so sometimes the infinite scroll breaks.
2022-03-01 10:50:07 -05:00
infinite-persistence
0090e9b1ae Manage Subs page 2022-03-01 10:50:07 -05:00
infinite-persistence
1249b0394e claim_search: support ordering by 'name' 2022-03-01 10:50:07 -05:00
infinite-persistence
54f8bd35b3 DebouncedSearch: add inline option + use FormField
Using FormField so that the existing css works.
2022-03-01 10:50:07 -05:00
infinite-persistence
17a9b84df1 Following Page: use horizontal livestream tiles for mobile 2022-03-01 10:27:09 -05:00
infinite-persistence
b99c83a13f Fix "Results boosted by LBC" wrapping unnecessarily 2022-03-01 10:27:09 -05:00
infinite-persistence
d15a0308b2 Category livestreams: re-implement using subSection + use horizontal scroll in mobile
The `useDualLayout` junk is super confusing to maintain and no longer extensible.

At the expense of making the "livestream + regular" list no longer seamlessly continuous when expanded (or when there just a handful of livestreams), use the new `subSection` feature to inject the livestream tiles.  This is far easier to manage and tweak.
2022-03-01 10:27:09 -05:00
infinite-persistence
5f92ccbf47 ClaimListDiscover: add subSection area
This will be an additional area under Header/Meta that clients can put anything with.

Primary impetus is to place the Livestream Tiles in Wild West.
2022-03-01 10:27:09 -05:00
infinite-persistence
6b2d83986b Moved "Dismiss Pin" to the top
If it's a pinned commented, dismissing it is probably the action that the user is looking for, so doesn't make sense to put at the bottom.
2022-03-01 08:53:40 -05:00
Rafael
802dfb0ba8 Fix floating player on auth page 2022-02-28 10:45:54 -05:00
infinite-persistence
fee8e16bd8 Restore spacing between Sort and Filter on mobile
## Ticket
950
2022-02-27 21:38:30 -05:00
infinite-persistence
79a25986ed
Fix ICONS.SUBMIT lost in a prior commit 2022-02-27 18:01:59 +08:00
Thomas Zarebczan
cfea97dd96
Claim title fixes
Also fixed bug on mentions
2022-02-26 13:48:22 -05:00
infinite-persistence
f88bfcd7f3 Render whole app on language change
## Issues
1. We were manually adding `selectLanguage(state)` as a prop to components used in Settings Page to trigger a render. Flaws:
    - Unclear that the unused prop is just to trigger a render.
    - Manually adding on a case-by-case basis will break over time, especially when language can now be changed outside of the Settings Page.

2. The translation file fetching is delayed and also takes time, so the GUI will end up having mixed strings on F5, depending on when the fetch completed.

## Approach
Make the app wrapper have a key that's tied to the language and translation data, so the entire app renders when language changes. Seems like a common design in most apps.

## Ticket
921 language refresh / selection issues
2022-02-26 13:08:17 -05:00
infinite-persistence
5c91d55cbc Fix sub/view count not in compact form for some components
## Ticket
968 Truncate views/subs in other areas

## Changes
- Corrected logic for `minThresholdToApply`, which was ignoring the case of "no threshold", causing it to not be truncated in Channel Page. We want to always truncate there due to the smaller cards.

- Missed out handling `ClaimPreviewSubtitle`.
2022-02-26 10:27:25 -05:00
infinite-persistence
7a59976a5d
i18n: context-split "Duration"
Request from Chinese translator.
2022-02-26 20:35:04 +08:00
infinite-persistence
241a6182a2
FormFieldDuration: 'mo' incorrectly hinted as 'month' + i18n fix
The unit is either 'month' or 'b', so the tooltip and placeholder was incorrect.

Also fixed the tooltip to make it localizable.
2022-02-26 20:25:56 +08:00
infinite-persistence
45181c61b8 Highlight the "Search in selected language" if coming from the hint 2022-02-25 16:53:45 -05:00
infinite-persistence
9665f7f4c2 Add ability to highlight a Settings Row 2022-02-25 16:53:45 -05:00
infinite-persistence
1777397f07 Add hint that results are being filtered by language 2022-02-25 16:53:45 -05:00
infinite-persistence
3974ca6322 ClaimListDiscover: if 'uris' is given, there is no need to perform a search
This was causing unnecessary calls that won't be used.
2022-02-25 16:53:45 -05:00
infinite-persistence
99d8d0dbee Discover: fetch livestreams "per-language", if enabled.
Fetch it using the same language parameters for claim_search that is used in the embedded ClaimListDiscover.
2022-02-25 16:53:45 -05:00
infinite-persistence
a14239a9dc Livestream fetch: add language option
The function argument order can be a bit ugly, but putting it at the back as optional param makes it easier to test without affecting existing clients.
2022-02-25 16:53:45 -05:00
infinite-persistence
c6d8687cfa ClaimListDiscover: pull out 'claim_search' language code for re-use, so all clients are sending the same value. No functional change. 2022-02-25 16:53:45 -05:00
Thomas Zarebczan
f1fdfcd329
Fix missing channel name
Easier to use channel name for now, we can add title later to notifications
2022-02-25 15:15:54 -05:00
infinite-persistence
49fc238e4c
Use titles vs names on channel claim previews, but show name in channel areas (#962)
* use titles

* Sidebar: show "title + name"

Co-authored-by: Thomas Zarebczan <thomas.zarebczan@gmail.com>
2022-02-25 09:04:23 -05:00
Max Kotlan
d5a91b5917
fixed mobile scrolling issue on settings page (#953) 2022-02-24 12:14:01 -05:00
Rafael
ea43f84347 Fix search replacing 2022-02-24 12:42:43 -03:00
saltrafael
2152583816
[Fix] linked uris (#959)
* Fix live claim uri being passed

* Refactor show page

* Fix linked comment being erased
2022-02-24 10:20:07 -05:00
infinite-persistence
2b271730cc
WildWest: always show boosting message (#957)
## Ticket
948 wildwest: always show boosting message, move next to category name

## Changes
1. Make "Show less livestreams" share the same space as "Boosted by LBC", instead of only showing either 1.
    - It's a bit troublesome to move it next to the filter without tweaking the generic `ClaimListDiscover`, so I think this would be a good compromise.

2. Fix "show less livestreams" being super tiny in mobile.
    - I think it is caused by some component-specific changes are being applied at the global level (not sure).
2022-02-23 23:24:41 -05:00
Thomas Zarebczan
c33f7338c7
Adjust open chat window 2022-02-23 18:26:23 -05:00
saltrafael
17e3fcc27c
[Fix] revert fileRenderFloating vs Mobile change (#937)
* Bump react-draggable

Old version was giving out console errors for outdated react functions

* Refactor fileRenderFloating

* Merge fileRenderMobile into fileRenderFloating

* Fixes from review

* Attempt fix failed to view live
2022-02-23 16:13:22 -05:00
infinite-persistence
51d4407002
Don't allow a duration that exceeds Feb 8th
> _Max date it can do is back to : 2022-02-08 - so don't allow a days value that's higher than this. (hint before selection / submission if possible)_

My initial understanding was that it is ok to set beyond this date (e.g. "1 year"), just that any channels created before Feb 7 will still be able to comment even if they are less than a year old.  That feels like ok behavior to me (easier for user to grasp), but turns out setting anything before that date will block all channels.

So, this commit changes the warning message and also blocks the user from finalizing.
2022-02-23 23:01:59 +08:00
infinite-persistence
2e26064d2f
Replace commentron's min-age error message
Hopefully this is more concise, but it's meant more as a placeholder for others to edit easily.
2022-02-23 23:01:58 +08:00
infinite-persistence
f70e631953
Add "min channel age" setting 2022-02-23 23:01:57 +08:00
infinite-persistence
8ace40522e
Add modal to change "min channel age"
It'll be easier to handle through a modal -- we won't need to debounce the values, and it also clears up the clutter from 'settingsCreator'
2022-02-23 23:01:56 +08:00