Commit graph

504 commits

Author SHA1 Message Date
Alex Liebowitz
bcaad75df4 Improve and refactor Download links
- Use a single "state" prop to track download progress (not-started,
   downloading, or done)
 - Accept a file path as a prop an "Open" link after the download is
   complete
 - Trim some outdated code; improve CSS class names
2017-01-16 23:33:28 -05:00
Alex Liebowitz
ce82f8cc6f Make FileTile look up its own download status if not provided 2017-01-16 23:31:16 -05:00
Alex Liebowitz
1b51b4e329 Add support for displaying progress in DownloadLink 2017-01-16 23:31:13 -05:00
Alex Liebowitz
f424e2e439 Show Download link only if file is not published by user 2017-01-16 23:27:14 -05:00
Alex Liebowitz
64d7b680c3 Add propTypes and getDefaultProps() to FileTile 2017-01-16 23:27:14 -05:00
Alex Liebowitz
97f6f3bdf8 Style and formatting fixes in FileTile 2017-01-16 23:27:14 -05:00
Alex Liebowitz
efa1a29d4f Rename SearchResultRow to FileTile and convert styles to CSS
Also moves the component to its own file (file-tile.js) so it can be
used outside the Discover page.
2017-01-16 23:27:14 -05:00
Jeremy Kauffman
9f9a1b66c2 Merge pull request #129 from lbryio/always-use-flash
Bypass check for Flash being installed in MediaElement.js
2017-01-13 17:54:12 -05:00
Alex Liebowitz
9f5c57f93a Add ARIA labels for all modals 2017-01-13 17:05:09 -05:00
Alex Liebowitz
5fa158f771 Remove startup notice code
The API method for this (get_start_notice()) is now deprecated
2017-01-13 16:58:46 -05:00
Alex Liebowitz
35a09dff0f Bypass check for Flash being installed in MediaElement.js
Needed because Safari now reports that Flash isn't installed, even
when it is: https://webkit.org/blog/6589/next-steps-for-legacy-plug-ins
2017-01-12 21:56:39 -05:00
Jeremy Kauffman
4db3211855 always make lbry globally available 2017-01-05 17:30:36 -05:00
Alex Liebowitz
c3e08809c2 Check if Thumbnail is still mounted before confirming its image loaded 2017-01-04 15:50:20 -05:00
alexliebowitz
a6b7b3de5a Merge pull request #125 from lbryio/fix-null-search
Fix search on pages other than Discover
2017-01-04 15:28:10 -05:00
Alex Liebowitz
160c6fd407 DiscoverPage: pass query into handleSearchChanged() on mount 2017-01-04 11:53:30 -05:00
alexliebowitz
5b5318e100 Merge pull request #123 from lbryio/my-files-fix-date-sort
My Files: fix "Date" sorting in Published tab
2017-01-03 22:04:53 -05:00
alexliebowitz
536b8d83dc Merge pull request #122 from lbryio/fix-mediaelement-import
Import MediaElement with <script> tag
2017-01-03 22:04:20 -05:00
Alex Liebowitz
863758ba54 My Files: Preserve order of claims returned by daemon 2017-01-03 19:41:32 -05:00
Alex Liebowitz
304b53e994 Simplify sorting logic in My Files 2017-01-03 19:09:46 -05:00
Alex Liebowitz
a2f7f150db Import MediaElement with <script> tag
Needed because MediaElement doesn't fully support ES6 modules yet
2017-01-03 18:10:03 -05:00
alexliebowitz
5a9d095a44 Merge pull request #121 from lbryio/master
Sync development with fixes in Master
2017-01-03 13:39:13 -05:00
Job Evers
e23cce81dc fix LoadScreen import on watch page 2017-01-02 20:21:23 -06:00
Jeremy Kauffman
2c760ca2dd Merge pull request #118 from lbryio/bug-report
Update Report Bug page
2017-01-02 15:47:21 -05:00
Alex Liebowitz
ff61fbbf7a Update lbry.reportBug() to use new report_bug daemon method 2017-01-02 15:43:34 -05:00
Alex Liebowitz
0ccc8ca809 Report: fix imports 2017-01-02 15:42:53 -05:00
Alex Liebowitz
70953710a8 Help: show Web UI version 2017-01-02 14:23:47 -05:00
Jeremy Kauffman
fa469253a3 Merge pull request #114 from lbryio/fix-dewey-decimals
Restore Dewey Decimals message in searches
2017-01-02 11:26:38 -05:00
Alex Liebowitz
7e86cccd6c Restore Dewey Decimals message
The "no results found" message was showing instead due to some tricky
state management stuff.
2016-12-30 08:21:24 -05:00
Alex Liebowitz
ed38e2ea75 Add import for BusyMessage to discover.js 2016-12-30 07:40:07 -05:00
alexliebowitz
cadb901209 Merge pull request #109 from lbryio/development
Merge development into master
2016-12-29 16:59:40 -05:00
Alex Liebowitz
5bcf095600 Refactor lighthouse.js and add support for custom servers
- Adds support for custom servers
 - Some light refactoring; mainly moving the logic for retrying queries
   into lbry.call() instead of leaving it up to the individual methods
2016-12-29 05:15:02 -05:00
Alex Liebowitz
9e2b43c531 Implement debug mode
Exposes lbry and lighthouse modules in global scope for easy testing.
2016-12-29 04:59:29 -05:00
Alex Liebowitz
f947164164 Add Developer Settings page 2016-12-29 04:59:29 -05:00
Alex Liebowitz
a2aaf65be5 Add developer settings to lbry.js 2016-12-29 04:59:29 -05:00
Alex Liebowitz
a03b021945 Add a missing param to an inner function in lbry.getCostInfoForName() 2016-12-29 04:10:36 -05:00
Alex Liebowitz
c672528a18 Update Lighthouse servers 2016-12-28 20:59:30 -05:00
Alex Liebowitz
5d3110a295 My Files: Add import for FormField
Needed for "Sort by" dropdown now that we're on ES6 modules
2016-12-28 20:49:33 -05:00
Alex Liebowitz
ac281105ad Add Sort option to My Files page 2016-12-28 20:49:33 -05:00
Alex Liebowitz
350bc6d847 Add sorting functions to MyFilesPage 2016-12-28 20:49:33 -05:00
Alex Liebowitz
83d59da827 Refactor My Files page
- Checking for file ownership is now done by making one call to
   lbry.getMyClaims() and saving a list of txids.
 - Broke out logic for Published and Downloaded pages
 - Published page now looks up the user's claims instead of files.
   This allows published streams to be listed even if the files don't
   exist on the user's machine; also, because it looks up file info by
   txid, you will no longer see a newer claim listed if you made a
   claim and it was overtaken.
2016-12-28 02:28:13 -05:00
Alex Liebowitz
d557c09f80 Add API stubs for getting info for individual files
- lbry.getFileInfoByName()
 - lbry.getFileInfoBySdHash()
 - lbry.getFileInfoByFilename()
2016-12-26 23:51:01 -05:00
Alex Liebowitz
8456b3d3b2 Add lbry.getMyClaims() 2016-12-26 23:51:01 -05:00
Alex Liebowitz
a642806a8d Add message for when no content is published
Before, it was showing the same message as the Downloaded page
2016-12-26 23:51:01 -05:00
Alex Liebowitz
643c884f56 Fix timeout check in DownloadLink
Was checking typeof streamInfo === 'object', and typeof null is
'object' (because why not?)

I think this was previously returning false for timeouts, and now
will only return null, so the "typeof" part may not be needed anymore.
2016-12-16 17:59:15 -05:00
Alex Liebowitz
7efbccbe83 Use new lbry.getCostInfoForName() in DownloadLink and WatchLink 2016-12-16 17:56:55 -05:00
Alex Liebowitz
1cad30d188 Show: var -> const in DetailPage.render() 2016-12-14 13:27:07 -05:00
Alex Liebowitz
8b781694f2 Show: use new Lighthouse cost reporting 2016-12-14 13:24:58 -05:00
Alex Liebowitz
06de4534cd Show: rename some variables and props for clarity
- cost -> amount
 - available -> costIncludesData
 - claimInfo -> metadata (only in DetailPage for now)
2016-12-14 13:24:58 -05:00
Alex Liebowitz
34a7d41dc7 Make search result tiles use new Lighthouse cost reporting
Featured/Community Content and regular search results now calculate
cost the same way, so instead of calculating the cost in the outer
component we now do it inside <SearchResultRow /> itself.
2016-12-14 13:24:58 -05:00
Alex Liebowitz
d9a4442cc3 Add lbry.getCostInfoForName() 2016-12-14 13:24:58 -05:00
Alex Liebowitz
d59c5c2a1c Add lbry.getSizeForName() 2016-12-14 13:24:58 -05:00
Alex Liebowitz
0b58ae6e6e Add error and connection failure callbacks to Lighthouse methods 2016-12-14 13:24:58 -05:00
Alex Liebowitz
6963d877df Break lbry.getCostEstimate() into 2 separate functions
lbrynet now supports getting the total cost if you provide the "size"
param, so we break this into two functions: lbry.getKeyFee() and
lbry.getTotalCost()
2016-12-14 13:24:58 -05:00
Alex Liebowitz
97496c33da Make cost prop optional in <SearchResultRow /> 2016-12-13 13:16:59 -05:00
Alex Liebowitz
177fa2cfa2 Move file availability check interval to class member 2016-12-13 13:14:42 -05:00
Alex Liebowitz
100dac0629 My Files: monitor file availability using lbry.getPeersForBlobHash()
Also reduce the checking rate to once every 5 minutes to avoid
slamming your peers with availability checks
2016-12-13 13:13:29 -05:00
alexliebowitz
c7f85046c2 Merge pull request #100 from lbryio/tweak_upgrade_msg
Tweak upgrade message
2016-12-13 13:03:56 -05:00
Alex Liebowitz
7ca6017986 Add lbry.getPeersForBlobHash() 2016-12-09 03:11:25 -05:00
Alex Liebowitz
a6825c4269 Fix imports on My Files page 2016-12-09 02:50:25 -05:00
Alex Liebowitz
7b98f5b9a9 Show: fix imports 2016-12-09 02:10:59 -05:00
Alex Liebowitz
78ed1b9dcd lbry.lighthouse.search() -> lighthouse.search() in two files 2016-12-07 15:14:53 -05:00
Alex Liebowitz
0458d58a08 Remove a couple of stray console.log() calls 2016-12-07 13:19:24 -05:00
Alex Liebowitz
1295b7e1b9 Hard code web UI address in certain links to make testing servers work 2016-12-06 15:09:49 -05:00
Job Evers
c32ab1ac65 bug fixes found while linting 2016-12-06 14:28:10 -05:00
Job Evers
42898d5f60 Convert to ES6 modules 2016-12-06 14:28:10 -05:00
Jeremy Kauffman
b80420465a Tweak upgrade message
Avoid text like "Click 'Upgrade' to XXX" that tells the user how to do something that the UI already invites them to do.
2016-12-05 14:51:36 -05:00
Jeremy Kauffman
f086b47f80 Merge pull request #98 from lbryio/word-break-modals
Change wrapping of file path in "Download Succeeded" Modal
2016-12-04 09:02:44 -05:00
Job Evers‐Meltzer
c0e53b45eb Merge pull request #99 from lbryio/master
Release to Master
2016-12-02 21:15:34 -06:00
Alex Liebowitz
8e90389122 Layout tweak to "Download Succeeded" Modal
This displays the file path on its own line and does character-level
wrapping on the path only.

Ideally, we would just apply character wrapping to all words that are
too long for their line. There are CSS props for that but I haven't
been able to find a reliable way to do it without setting a width on the
outer container, which we don't want here (modals stretch based on their content). So this is the best compromise I can come up with.
2016-12-02 03:21:35 -05:00
Alex Liebowitz
406c37f9ff Help: change method used to get LBRY ID
Now uses lbry.getSessionInfo() instead of lbry.getVersionInfo()
2016-11-30 00:23:57 -05:00
Alex Liebowitz
735444f022 Add lbry.getSessionInfo() 2016-11-30 00:23:45 -05:00
Alex Liebowitz
4868efdfb9 Fix missing $ in string interpolation in a few modals 2016-11-28 18:24:55 -05:00
Alex Liebowitz
7eaeeeefb4 Wrap modal content in div to prevent flexbox layout 2016-11-24 23:03:03 -05:00
Alex Liebowitz
17d13c3a93 Properly notify when a download times out 2016-11-24 22:43:57 -05:00
Alex Liebowitz
323cedadb2 Disable Watch link on click 2016-11-24 22:43:52 -05:00
Alex Liebowitz
12afb10cbc In DownloadLink, don't check this.state.downloading on click
If this.state.downloading is true, the button will be disabled anyway.
2016-11-24 22:43:44 -05:00
Alex Liebowitz
468692b480 Make Download link switch to "Downloading" immediately on click 2016-11-24 22:43:28 -05:00
Alex Liebowitz
70076d8a9e Help: Show LBRY ID in "About" section 2016-11-23 21:35:15 -05:00
Alex Liebowitz
a0fb58415e Help: slight refactor of version section 2016-11-23 21:35:09 -05:00
Alex Liebowitz
e0d0c3f915 Publish: validate names as the user types
Rejects invalid characters and pops up a form hint explaining what
characters are allowed.
2016-11-22 01:14:22 -05:00
Alex Liebowitz
5af7916b20 Add lbry.nameIsValid() 2016-11-22 01:14:15 -05:00
Alex Liebowitz
aea1c7e6ee Convert name field into controlled component 2016-11-22 01:14:02 -05:00
alexliebowitz
6ac9853fd4 Merge pull request #88 from lbryio/better-form-hints
Convert form hints to separate component with better style (WIP)
2016-11-22 01:08:09 -05:00
Alex Liebowitz
8b13f341b6 Don't render hidden form fields 2016-11-22 01:06:24 -05:00
Alex Liebowitz
b73399f4e6 Publish: prevent submit and notify user if file is not fully processed 2016-11-22 01:06:24 -05:00
Alex Liebowitz
f6f4d452b0 Add FormField.showAdvice() for displaying arbitrary form hints
Also modifies FormField.warnRequired() to use this new method
2016-11-22 01:06:20 -05:00
Alex Liebowitz
498b75c688 Convert form hints to separate component with better style 2016-11-22 01:06:15 -05:00
Alex Liebowitz
84464a8118 Add className prop to Icon 2016-11-22 01:06:04 -05:00
alexliebowitz
fd7091cbcf Merge pull request #87 from lbryio/delete-modal-buttons
My Files page: make buttons in "delete" modal work
2016-11-21 22:28:47 -05:00
Jeremy Kauffman
90b483ea7e Merge pull request #91 from lbryio/publish-my-claim-fix
Fix issue with live updating logic on Publish page
2016-11-21 18:30:15 -05:00
alexliebowitz
65ae347090 Merge pull request #84 from benyanke/patch-1
formatName - replace spaces with dashes
2016-11-21 00:18:42 -05:00
Alex Liebowitz
298c03283d Fix issue with live updating logic on Publish page
Previously, if the user typed a name that they have a claim on and
then continued typing, some of the interface would not be updated to
show that they don't have a claim.
2016-11-18 06:14:02 -05:00
Alex Liebowitz
5f5a460a6d My Files: add handler for closing delete modal 2016-11-17 23:40:24 -05:00
Alex Liebowitz
3dd961b70a My Files: make "Confirm" button in delete modal work
Was calling lbry.setState() instead of this.setState()
2016-11-17 23:40:19 -05:00
Ben Yanke
33b43477d5 formatName now using different text sanitation method 2016-11-16 13:56:04 -06:00
Alex Liebowitz
c6104516e7 My Files: don't check stream availability when URI is absent
Previously this was failing silently, but with the new error modals
it started popping up error messages.
2016-11-15 02:33:42 -05:00
Ben Yanke
4bf4d14a24 formatName - replace spaces with dashes
Name-formatter now replaces spaces with dashes, for more readable names. This is similar to Wordpress' permalink processing.
2016-11-15 01:31:28 -06:00
Alex Liebowitz
f346739bfb More error modal appearance tweaks
- Change warning icon to PNG with different color scheme
 - Use alt style button
 - Darken backdrop
 - Add spacing under header
 - Reduce margins on all modals
2016-11-15 01:30:38 -05:00
Alex Liebowitz
46cf8915f9 Restore JSON-RPC 2.0 error keys 2016-11-15 01:30:38 -05:00
Alex Liebowitz
edeaf4f7d0 Add warning icon and dark backdrop to error dialog 2016-11-15 01:30:38 -05:00