Commit Graph

625 Commits

Author SHA1 Message Date
Eugen Rochko a6e4f754fc Add an Intl polyfill 2016-11-17 16:34:36 +01:00
Eugen Rochko b2e504616a Remove broken test 2016-11-16 19:11:30 +01:00
Eugen Rochko 01e43c3e57 Adding react-intl i18n to the frontend. No translations yet 2016-11-16 17:20:52 +01:00
Eugen Rochko 489bd99803 Support emojis in display name, bio 2016-11-15 18:38:57 +01:00
Eugen Rochko cea28e0c1d Fix wrong link header on followers API, wrong link in tabs component, order
account results
2016-11-14 01:19:25 +01:00
Eugen Rochko bcfa49aea7 Fix another mistake with infinite user list for following 2016-11-13 21:02:10 +01:00
Eugen Rochko 4286d49ade Fix another mistake 2016-11-13 20:55:24 +01:00
Eugen Rochko 44f236e889 Fix infinite scrolling mistake 2016-11-13 20:52:11 +01:00
Eugen Rochko dbfe1e4be6 Infinite scroll for followers/following lists 2016-11-13 20:42:54 +01:00
Eugen Rochko 49b7896953 Fix stale reference 2016-11-13 19:44:19 +01:00
Eugen Rochko 50d3083cbd Making upload button into a smaller icon button 2016-11-13 19:08:52 +01:00
Eugen Rochko d42ed78aa4 Fix #110 - Make web UI use browser history, change links in e-mails to link to that 2016-11-13 14:02:34 +01:00
Eugen Rochko c4eb63c1d4 Debounce autosuggestions requests 2016-11-13 13:13:36 +01:00
Eugen Rochko f0bdfadab7 Search component 2016-11-13 13:04:18 +01:00
Eugen Rochko afded319d2 Add limit to search results 2016-11-12 14:49:28 +01:00
Eugen Rochko 09218d4c01 Use full-text search for autosuggestions 2016-11-12 14:36:10 +01:00
Eugen Rochko 1c17b932fe Enable emojis in reply indicator as well 2016-11-10 23:30:42 +01:00
Eugen Rochko 82fd74d101 Fix modals sizing and add animation to it, fix #140 by only making the text of
status clickable (this also fixes multiple dropdown being openable at the same
time)
2016-11-10 23:21:24 +01:00
Eugen Rochko 36921be9aa Fix #131 - Make active favourite buttons yellow 2016-11-10 01:32:32 +01:00
Eugen Rochko bf5f55a6bb Fix live status removal from public/hashtag channels 2016-11-10 00:47:47 +01:00
Eugen Rochko 9aecc0f48a Move timelines API from statuses to its own controller, add a check for
resources that require a user context vs those that don't (such as public timeline)

/api/v1/statuses/public   -> /api/v1/timelines/public
/api/v1/statuses/home     -> /api/v1/timelines/home
/api/v1/statuses/mentions -> /api/v1/timelines/mentions
/api/v1/statuses/tag/:tag -> /api/v1/timelines/tag/:tag
2016-11-08 23:29:08 +01:00
Eugen Rochko 86574ea524 Adding Emoji One 2016-11-08 21:46:29 +01:00
Eugen Rochko 0400734df7 Click video player to toggle playback 2016-11-07 19:05:32 +01:00
Eugen Rochko bec47e40f5 Better look/behaviours for video player/lightbox 2016-11-07 18:42:39 +01:00
Eugen Rochko d0d799f911 Replace react-skylight with own solution that centers images better 2016-11-07 18:23:36 +01:00
Eugen Rochko c3559d18a3 Do not modify scroll position unless content has been added to the top, not bottom 2016-11-07 02:11:38 +01:00
Eugen Rochko 4a6cc46e81 Keep scroll position when scrolled down and new content is added 2016-11-07 02:02:55 +01:00
Eugen Rochko 23fc424b7a Account notes (bios) can now contain links. Character limit upped to 160 2016-11-07 01:14:12 +01:00
Eugen Rochko 262adb9791 Fix remote hashtag linking 2016-11-05 17:54:19 +01:00
Eugen Rochko eb47409036 Fix mistake 2016-11-05 17:48:53 +01:00
Eugen Rochko a698b767c1 Fix linking of remote hashtags in UI, add public view of hashtags 2016-11-05 17:44:14 +01:00
Eugen Rochko 48b9619439 Adding hashtags 2016-11-05 17:13:14 +01:00
Eugen Rochko 2463c72006 Add forgotten reducer for FAVOURITES_FETCH_SUCCESS 2016-11-04 14:15:25 +01:00
Eugen Rochko 087b993892 Adding list of who favourited status 2016-11-04 13:39:24 +01:00
Eugen Rochko 6d5ef89356 Reduce code duplication, add touch scrolling behaviour for webkit browsers
on scrollable areas
2016-11-04 13:32:14 +01:00
Eugen Rochko 98c3a5e9c3 Optimize how statuses are re-rendered and relative time intervals 2016-11-04 12:48:53 +01:00
Eugen Rochko 6d26bfd147 Add list of who reblogged status 2016-11-03 20:16:14 +01:00
Eugen Rochko 0405ef977a Aria-labels actually didn't work in React, so removing. Fixing some bugs 2016-11-03 19:52:09 +01:00
Eugen Rochko 159203a7bc Fix #136: Add aria-labels 2016-11-03 19:19:39 +01:00
Eugen Rochko 3731230c6d Allow @username@domain/@username in follow form, prevent duplicate accounts
created via remote look-up when domains differ but point to the same resource
2016-11-03 16:57:44 +01:00
Eugen Rochko aff22bfdb5 Add own composed status to home without waiting for websocket event
This makes the UI appear less laggy. After all, the status *is* created
right there and then, it's the distribution to home timelines that can take
a while
2016-11-03 11:06:55 +01:00
Eugen Rochko 4b357ecf98 Fix subtle bugs, new icon button 2016-11-02 22:29:19 +01:00
Eugen d427df4a8a Merge pull request #132 from marcus-herrmann/master
a11y: Improve icon button component regarding semantics, screen reader usage
2016-11-02 21:53:05 +01:00
mhe 87aabeb7af a11y: Improve icon button component regarding semantics and screen reader usage 2016-11-02 20:18:39 +01:00
Frederic Hemberger 5ff2762fcf a11y: Add labels to input fields for screenreader
See: https://dequeuniversity.com/rules/axe/2.1/label
2016-11-02 14:53:39 +01:00
Eugen Rochko dd03118098 Fix follow icon changing plus to minus, add terms page stub 2016-11-01 18:05:55 +01:00
Eugen Rochko bab4904492 Actually fix the reblogs/favs reducer issue 2016-10-31 18:11:49 +01:00
Eugen d88d148d89 Fix forgotten reducers for reblogs/favourites 2016-10-31 16:59:36 +01:00
Eugen 50aaf4667f Fix accounts not being normalized from context statuses 2016-10-31 01:27:19 +01:00
Eugen Rochko 7e35650398 Actually complete the autosuggestion feature 2016-10-30 18:21:38 +01:00
Eugen Rochko c49f6290eb Basic username autocomplete for text area 2016-10-30 18:13:05 +01:00
Eugen Rochko e8ff4c8e56 Refactoring redux state into different reducers 2016-10-30 15:06:43 +01:00
Eugen Rochko 7060bdf04b Hide notes on user lists for now 2016-10-29 01:31:33 +02:00
Eugen Rochko bfb6cc5f2c Make suggestions box also use user list components 2016-10-28 20:26:49 +02:00
Eugen Rochko ac4f53a3a2 Improved how user lists look, added follow button to them 2016-10-28 20:05:44 +02:00
Eugen Rochko 1c84d505c8 Adding following/followers lists to the UI 2016-10-27 21:59:56 +02:00
Eugen Rochko c1a0633a12 Guard against unexisting statuses rendering 2016-10-25 11:13:16 +02:00
Eugen Rochko de50eff6ac Add opening images in a modal window 2016-10-24 18:08:23 +02:00
Eugen Rochko f8f40f15da Move status components inside individual containers. We still need to select
all statuses/accounts to assemble, but at least lists don't have to be
re-rendered all the time now. Also add "mention" dropdown option
2016-10-24 18:08:23 +02:00
Eugen Rochko 04bbc57690 Fix #100 - Add "back" button to certain views
Also fix reloading of timelines after merge-type events
2016-10-19 18:20:19 +02:00
Eugen Rochko 8698cd3281 Remember scroll position when navigating back, do not needlessly reload
entire timelines (only fetch since last known ID). Side effect: account
timelines no longer update in real-time
2016-10-18 23:06:28 +02:00
Eugen Rochko f88b8ce757 Improve how errors are displayed in the UI 2016-10-18 17:09:45 +02:00
Eugen Rochko 7bb72ff198 Small clean up 2016-10-18 01:48:46 +02:00
Eugen Rochko b62c31306e This should fix it 2016-10-18 01:44:31 +02:00
Eugen Rochko f8b9b0810d Debugging 2016-10-18 01:38:32 +02:00
Eugen Rochko 225ce8cfce More debugging 2016-10-18 01:34:38 +02:00
Eugen Rochko ea44d89383 More debugging 2016-10-18 01:31:03 +02:00
Eugen Rochko dd02fc0ec4 More debugging 2016-10-18 01:22:28 +02:00
Eugen Rochko f3e5625d2d More debugging 2016-10-18 01:16:50 +02:00
Eugen Rochko fdd30af595 Will this fix the issue? 2016-10-18 01:11:00 +02:00
Eugen Rochko 6611e3a2ef More debugging 2016-10-18 00:59:18 +02:00
Eugen Rochko 564e01eaf6 Add console.error to all axios failures 2016-10-18 00:42:04 +02:00
Eugen Rochko e865673175 Fix #82 - only show latest reblog of status in UI 2016-10-17 01:34:16 +02:00
Eugen Rochko b5c6d00afa Fix #99 - public timeline not just reblogs, fix #98 infinite scrolling issues 2016-10-17 01:23:41 +02:00
Eugen Rochko f0f791bb76 Don't preload timelines as props, load them when timeline component is mounted
This prevents the bug where if you go "back" to the UI after navigating to
another page it loads with the old set of statuses
2016-10-16 19:23:17 +02:00
Eugen Rochko b8eda3026f Fix scrolling on small devices for account timelines and compose column 2016-10-16 17:09:00 +02:00
Eugen Rochko 4470330385 Backfill follow suggestions with fallback when not enough results. Cycling
through suggestions in UI
2016-10-16 17:04:13 +02:00
Eugen Rochko df2c0b8dad Fix typo 2016-10-15 16:57:10 +02:00
Eugen Rochko 04bfd4262f Fix follow suggestions ranking 2016-10-15 16:54:50 +02:00
Eugen Rochko 67b35a601a Exclude blocked users from follow suggestions, fix tests 2016-10-15 13:48:38 +02:00
Eugen Rochko aa9d48343d Fix suggestions box style for long names 2016-10-15 13:05:37 +02:00
Eugen Rochko 20f581f796 Display follow suggestions 2016-10-15 12:06:30 +02:00
Eugen Rochko e21a3fe0cd Adding sync of follow relationships to Neo4J, accounts/suggestions API 2016-10-14 23:10:07 +02:00
Eugen Rochko a3384b6ea6 Add "edit profile" link to dropdown on own profile 2016-10-14 02:45:20 +02:00
Eugen Rochko 7a6d95f70c E-mail preferences page 2016-10-14 02:28:49 +02:00
Eugen Rochko 9b195f5dd3 Add window titles to auth pages and about page, link sign up/login from about page 2016-10-14 01:03:12 +02:00
Eugen Rochko f7f3e6e3be Fix styles 2016-10-12 19:14:47 +02:00
Eugen Rochko 45776b55b0 Responsively changing layout to single-column + nav on smaller screens 2016-10-12 13:17:17 +02:00
Eugen Rochko 0634e8dee5 Improved how in-UI profiles look 2016-10-09 22:19:15 +02:00
Eugen Rochko 29e79f770f Making AccountTimeline into a sub-route 2016-10-09 20:18:54 +02:00
Eugen Rochko d85df27053 Fix mistake 2016-10-08 00:39:46 +02:00
Eugen Rochko bef4d8dab8 Add link to public timeline to getting started screen 2016-10-08 00:30:56 +02:00
Eugen Rochko ef9d4f4e06 Use reselect to memoize denormalization in UI state
Also upgrade react-redux to latest version. This is a performance update
2016-10-08 00:01:22 +02:00
Eugen Rochko 1f650d327d Adding public timeline 2016-10-07 16:00:11 +02:00
Eugen Rochko 943c69c65d Fix #73 - Click on in-UI profile avatar/name to open public profile 2016-10-06 23:15:50 +02:00
Eugen Rochko a4b8069cf5 Styling loading indicator, removing unused routes, adding "getting started" explanation
Also, only update relative time every minute instead of 6 seconds. My bad
2016-10-06 22:47:35 +02:00
Eugen Rochko e8a8703a4b Fix how missing display name is displayed (fallback to username) 2016-10-06 22:07:32 +02:00
Eugen Rochko 87ba52ad3f Fix delete option missing from statuses in detailed view 2016-10-06 17:27:07 +02:00
Eugen Rochko b304cc07d5 Fix #76 - set scrollTop property of element node rather than use scrollTo() method 2016-10-06 16:18:32 +02:00
Eugen Rochko 8bdbe99d69 Fix #71 - Add logout link to UI 2016-10-06 15:34:11 +02:00
Eugen Rochko 68402228f3 Fix #70 - disable autocomplete on follow form 2016-10-06 15:24:28 +02:00
Eugen Rochko 70e9dd0b5b Blocking will prevent e-mail notifications from blocked user, blocks in UI 2016-10-03 18:49:52 +02:00
Eugen Rochko 7b9a4af311 API for blocking and unblocking 2016-10-03 18:17:06 +02:00
Eugen Rochko 1fce687f8e Unreblogging and unfavouriting from the UI 2016-10-02 15:14:26 +02:00
Eugen Rochko ef2b50c9ac Deleting statuses from UI 2016-09-30 00:00:45 +02:00
Eugen Rochko e63aebff7a Adding landing page 2016-09-27 23:12:33 +02:00
Eugen Rochko 45a96e899e Fix #58 - disable compose form while image is uploading 2016-09-27 17:02:30 +02:00
Eugen Rochko 4f9b7432dd Fix #52 - Add API versioning (v1) 2016-09-27 16:59:08 +02:00
Eugen Rochko 7e14eefc81 Replace logo, fix #57 - delete/unreblog/unfavourite API, fix #45 - app
registration API
2016-09-26 23:56:53 +02:00
Eugen Rochko 0bd4608ad1 Fix #55 - Filter self from pre-filled mentions 2016-09-26 15:49:28 +02:00
Eugen Rochko 693383234c Improved style of settings page 2016-09-25 15:48:20 +02:00
Eugen Rochko e9bc4a4a08 Limit usernames to 30 chars, statuses to 500, open account after follow form success 2016-09-25 15:26:56 +02:00
Eugen Rochko 62b384824d Improved styling for media/videos in detailed status view 2016-09-25 14:58:07 +02:00
Eugen Rochko 15f51dbf8c Better styling for selected status in detailed view 2016-09-25 14:20:29 +02:00
Eugen Rochko 95d72b2249 Temporarily link "settings" to the static version of the form 2016-09-23 21:59:21 +02:00
Eugen Rochko 0c75ce1122 Improved ColumnsArea on smaller windows, improved how ActionBar looks 2016-09-23 21:52:28 +02:00
Eugen Rochko 3f9708edc4 Change output of api/accounts/:id/follow and unfollow to return relationship
Track relationship in redux state. Display follow/unfollow and following-back
information on account view (unstyled)
2016-09-23 20:23:26 +02:00
Eugen Rochko c6d893a71d Uploading/undoing media modifies status text. Also: status text trimmed before validation 2016-09-22 21:39:53 +02:00
Eugen Rochko b1a670af8d Handle remote account mentions a little better by trying a URL lookup in the db 2016-09-22 21:10:36 +02:00
Eugen Rochko 2a84271e85 Infinite scroll for account timelines 2016-09-22 20:58:35 +02:00
Eugen Rochko 2c0261ac25 Infinite scroll for timeline columns 2016-09-22 01:08:35 +02:00
Eugen Rochko 74dfefabd3 Make in-text mentions open account detailed view when possible 2016-09-22 00:32:27 +02:00
Eugen Rochko bc98865c1a API returns mentions for statuses, compose form pre-fills all relevant usernames into the form when replying 2016-09-22 00:09:21 +02:00
Eugen Rochko e46abc71ca Fix notifications in UI, added new API for fetching account relationships 2016-09-21 22:07:18 +02:00
Eugen Rochko 6d89edc4f7 Fix #47 by renaming TIMELINE_SET action to TIMELINE_REFRESH_SUCCESS 2016-09-20 23:18:00 +02:00
Eugen Rochko a86f21cf90 Fix rake tasks and loading bar 2016-09-20 01:53:30 +02:00
Eugen Rochko 1245ee42fb Update OStatus2 library 2016-09-19 23:52:42 +02:00
Eugen Rochko 98de6927f3 Remove background mask from avatars 2016-09-19 23:28:22 +02:00
Eugen Rochko 337462aa5e Re-organizing components to be more modular, adding loading bars 2016-09-19 23:26:21 +02:00
Eugen Rochko f820edb463 Fix type mistake in account component 2016-09-18 18:44:52 +02:00
Eugen Rochko ee770c3fd3 Live update account timelines, small fix for replyCompose 2016-09-18 18:38:44 +02:00
Eugen Rochko 0967961de7 Improve how account detailed view looks, load account's statuses 2016-09-18 18:18:46 +02:00
Eugen Rochko dafcb02153 Remove unused action constants 2016-09-18 13:45:39 +02:00
Eugen Rochko 08896f7dcf Detailed status view scrollable 2016-09-18 13:03:37 +02:00
Eugen Rochko ab7291b8fe Add ancestors/descendants during normalization in timeline reducer
This way replies will appear in the detailed view live if they are from
statuses that would be delivered to the user normally
2016-09-18 12:51:09 +02:00
Eugen Rochko dfd5deacf4 Volume toggle control in VideoPlayer 2016-09-18 12:39:00 +02:00
Eugen Rochko 5342629a0a Adding webm playback to UI 2016-09-17 18:05:02 +02:00
Eugen Rochko bd5ad304ba Adding media controller, 1 webm/compose form allowed, previews generated 2016-09-17 17:47:26 +02:00
Eugen Rochko 0e9c1a297a Improved error handling for FollowRemoteService 2016-09-17 17:03:36 +02:00
Eugen Rochko 8c0b19012b Fix #41, debug #42 2016-09-17 16:36:10 +02:00
Eugen e906677092 Stop event propagation after IconButton onClick 2016-09-16 11:20:39 +02:00
Eugen Rochko 5b0cef9781 Setting up preliminary "detailed" routes in the UI, new API end-point for fetching status context 2016-09-16 00:21:51 +02:00
Eugen Rochko 2e7aac793a Adding sense of self to the UI, cleaning up routing, adding third (detail) column 2016-09-13 02:24:40 +02:00
Eugen Rochko d6a64f45fd Adding a notification stack for error messages 2016-09-12 19:20:55 +02:00
Eugen Rochko ce29624c6d Fixing image upload limits, allowing webm, merge/unmerge events trigger
timeline reload in UI, other small fixes
2016-09-12 18:22:43 +02:00
Eugen Rochko 0077fc26df Merge and unmerge timelines on follow/unfollow, solves #21, #22 2016-09-10 18:36:48 +02:00
Eugen de7eb2341a Fix typo in deleteFromTimelines action creator 2016-09-09 20:54:49 +02:00
Eugen Rochko 0f4bc56719 Improving production logs, removing n+1 on media attachments in atom,
adding attachments display to static views
2016-09-08 01:24:26 +02:00
Eugen Rochko 499beb4484 UI for uploading media attachments (and cancelling them)
Mostly resolves #8, though attachments are still not displayed in public view
2016-09-07 18:21:57 +02:00
Eugen Rochko aca988a16b Fix for Drawer growing horizontally 2016-09-06 01:45:17 +02:00
Eugen Rochko 75fbde1c1a Fixed styling for media attachments in statuses (margins) 2016-09-06 01:27:40 +02:00
Eugen Rochko ac77170d19 Add icons to column headers, click them to scroll to top 2016-09-06 00:44:28 +02:00
Eugen Rochko 1f18cf97b5 Fix styling of media attachments in statuses 2016-09-06 00:23:27 +02:00
Eugen 265215dae9 Fix reply bug introduced when compose form started using normalized data 2016-09-05 22:43:34 +02:00
Eugen Rochko 5f36d8828a Better layout for attachments in <MediaGallery> 2016-09-05 20:59:56 +02:00
Eugen Rochko fc222dfa49 Displaying media attachments in timelines 2016-09-05 20:38:31 +02:00
Eugen Rochko 05001d54d1 Make compose form also use normalized data 2016-09-05 16:56:43 +02:00
Eugen Rochko 926eea89b5 RemoveStatusService fleshed out, still doesn't send Salmon slaps though 2016-09-05 01:59:46 +02:00
Eugen Rochko 1022d682dc Normalized data in Redux, fix for asset URLs when rendered outside request 2016-09-04 14:04:26 +02:00
Eugen Rochko d0e2733f63 Fix reblogs of reblogs in UI, add follow form in UI 2016-09-03 14:01:42 +02:00
Eugen Rochko 2d57bcf1b7 Preparing for follow form 2016-09-01 15:13:02 +02:00
Eugen Rochko c249ceb10c Reblogs fixed 2016-09-01 14:12:11 +02:00
Eugen Rochko 595c8dda60 Favouriting works, reblogging is a little broken because of <Status> 2016-09-01 13:21:48 +02:00
Eugen Rochko c2a4d70265 Small style fixes 2016-09-01 12:13:41 +02:00
Eugen Rochko 2093cda89a Fixing one more typo 2016-08-31 23:07:46 +02:00
Eugen Rochko d6873797ac Fix typo 2016-08-31 23:03:01 +02:00
Eugen Rochko dbae8062f4 Replies in the compose form 2016-08-31 22:58:10 +02:00
Eugen Rochko 1e0e17ba85 Improving styling a little bit 2016-08-31 16:48:21 +02:00
Eugen Rochko 72591cc6d5 Cleaning up action names and compose drawer 2016-08-31 16:15:12 +02:00
Eugen Rochko 92afd29650 The frontend will now be an OAuth app, auto-authorized. The frontend will use an access token for API requests
Adding better errors for the API controllers, posting a simple status works from the frontend now
2016-08-26 19:12:19 +02:00
Eugen Rochko 44e57f64dd Improving statuses, adding a composer drawer, which doesn't work yet 2016-08-25 19:52:55 +02:00
Eugen f5e1127894 Forgotten return 2016-08-24 23:33:46 +02:00
Eugen Rochko a541e937ca More styling for statuses 2016-08-24 21:08:00 +02:00
Eugen Rochko bc0692d75b Removing mini-profiler that doesn't work, formatting timelines a bit better 2016-08-24 19:23:37 +02:00
Eugen Rochko 49520d6e62 Adding React.js, Redux, revamping dashboard 2016-08-24 17:56:44 +02:00