Commit graph

865 commits

Author SHA1 Message Date
Vishnu Mohandas 4d63dd4ea2 Fix passphrase entry trigger 2020-11-01 13:46:22 +05:30
Vishnu Mohandas b908ffcfcf Fix email entry screen 2020-11-01 13:40:35 +05:30
Vishnu Mohandas 630a03a2fd Remove tentative bill from settings section 2020-11-01 13:13:58 +05:30
Vishnu Mohandas d6b4f16b5c Remove blocking condition for video 2020-11-01 13:07:58 +05:30
Vishnu Mohandas 49af595268 Fix deletion behavior 2020-11-01 13:07:23 +05:30
Vishnu Mohandas df4f08e20f Update to prod endpoint 2020-11-01 12:36:51 +05:30
Vishnu Mohandas 2b2db78d67 Ensure that events are generated on file deletion 2020-11-01 12:15:10 +05:30
Vishnu Mohandas 568947fbf6 Ensure that only non deleted files are fetched from the DB 2020-11-01 12:14:50 +05:30
Vishnu Mohandas 0376bcbe07 Show asset details when possible 2020-11-01 12:04:38 +05:30
Vishnu Mohandas b3dc2c57de Hide option to view info 2020-11-01 12:01:24 +05:30
Vishnu Mohandas 5523733d85 Refresh only the relevant collection 2020-11-01 11:56:30 +05:30
Vishnu Mohandas ba46ce23ad Ensure that thumbnails displayed for folders are locally available 2020-11-01 11:32:13 +05:30
Vishnu Mohandas 6270ce27c8 Fix device folder entries 2020-11-01 11:19:15 +05:30
Vishnu Mohandas 5ec0932021 Minor string changes 2020-11-01 11:03:53 +05:30
Vishnu Mohandas deeffa6d56 Add extra log lines 2020-11-01 11:00:36 +05:30
Vishnu Mohandas 89c5d37389 Refresh local device folder when a file is deleted 2020-11-01 10:50:20 +05:30
Vishnu Mohandas e637d18426 Refresh collection page on file delete 2020-11-01 10:45:33 +05:30
Vishnu Mohandas 01d30dbd69 Minor update to UI 2020-11-01 10:35:04 +05:30
Vishnu Mohandas 1b2f58c48d Minor UI fixes 2020-10-31 23:40:18 +05:30
Vishnu Mohandas c33d5096d8 Listen to appropriate event and refresh UI 2020-10-31 23:29:47 +05:30
Vishnu Mohandas 926d71fd0d Send additional data while triggering an event 2020-10-31 23:29:28 +05:30
Vishnu Mohandas 5170877e36 Ensure that the collections gallery reloads when a collection is updated 2020-10-31 23:29:00 +05:30
Vishnu Mohandas 9c785ef73e Refresh homescreen once photos are loaded 2020-10-31 23:02:30 +05:30
Vishnu Mohandas 46e5993de4 Update collection owner structure 2020-10-31 21:41:43 +05:30
Vishnu Mohandas 8fdbefc3d7 Minor change to hint text 2020-10-31 21:25:32 +05:30
Vishnu Mohandas e92e1f51de Set username on signup 2020-10-31 21:03:32 +05:30
Vishnu Mohandas 4117ae0a3d Add ability to unshare a collection 2020-10-31 18:47:17 +05:30
Vishnu Mohandas 7d52d3c411 Delete collections deleted on remote 2020-10-31 18:18:41 +05:30
Vishnu Mohandas 4dd4eed10c Update delete API 2020-10-31 04:55:28 +05:30
Vishnu Mohandas 6cfb3df4d8 Remove outdated field from File 2020-10-31 04:27:29 +05:30
Vishnu Mohandas d4e1754ca4 Optimize the startup time further 2020-10-31 04:22:22 +05:30
Vishnu Mohandas ef06cfbea0 Optimize collection loading 2020-10-31 04:00:54 +05:30
Vishnu Mohandas ce1d492262 Prevent unnecessary reloads 2020-10-31 02:37:20 +05:30
Vishnu Mohandas 5d65eb2e05 Add error states to deal with no-network situations 2020-10-31 02:21:17 +05:30
Vishnu Mohandas 03e7b385e2 Fix collection updates on the UI 2020-10-31 02:07:21 +05:30
Vishnu Mohandas 7f3602c5cc Add ability to favorite even shared files 2020-10-31 01:48:18 +05:30
Vishnu Mohandas 2bbb27a55c Simplify favorites 2020-10-31 01:47:06 +05:30
Vishnu Mohandas 28541b8246 Ensure that gallery is mounted while reloading 2020-10-31 01:46:53 +05:30
Vishnu Mohandas c880ead160 Add option to remove files from a collection 2020-10-31 01:27:14 +05:30
Vishnu Mohandas c81ad63490 Move code to zip logs into the settings page 2020-10-31 00:05:47 +05:30
Vishnu Mohandas 5730d265a3 Remove endpoint finder 2020-10-31 00:05:14 +05:30
Vishnu Mohandas 32087f79d1 Remove logging util 2020-10-31 00:05:08 +05:30
Vishnu Mohandas 0f88454ce5 Use the upgraded time condition 2020-10-30 23:40:45 +05:30
Vishnu Mohandas 405578b086 Show an indicator of the collection owner's email on the shared collection icon 2020-10-30 21:33:13 +05:30
Vishnu Mohandas 94366a2aea Fix create new album button 2020-10-30 21:01:59 +05:30
Vishnu Mohandas e0000b6888 Make sure that only local files are displayed within the device folders 2020-10-29 21:51:51 +05:30
Vishnu Mohandas 25a78ee52b Backup shared folder if not being backed up already 2020-10-29 18:36:57 +05:30
Vishnu Mohandas ab30c18b6e Update sharing interaction 2020-10-29 18:26:30 +05:30
Vishnu Mohandas 6e02cae865 Sort albums in the order in which they were updated 2020-10-29 06:20:39 +05:30
Vishnu Mohandas af01dbe610 Add ability to add files to existing albums 2020-10-29 06:00:02 +05:30
Vishnu Mohandas 0afbd87898 Update logic to deduplicate existing database entries 2020-10-29 05:44:48 +05:30
Vishnu Mohandas 7e5426088f Remove face search widgets 2020-10-29 05:11:43 +05:30
Vishnu Mohandas 28c1069388 Don't show collections for whom the files haven't been fetched yet 2020-10-29 00:52:27 +05:30
Vishnu Mohandas 1677ed7334 Deduplicate files 2020-10-29 00:50:02 +05:30
Vishnu Mohandas e5a07c86bf Remove verbose logs 2020-10-29 00:49:58 +05:30
Vishnu Mohandas bf423b2ccd Validate entered email address 2020-10-29 00:37:39 +05:30
Vishnu Mohandas cea00d8e8f Fix minor glitch in Gallery 2020-10-29 00:36:32 +05:30
Vishnu Mohandas ff4b620d0d Disable preloading until relevant ordering can be ensured 2020-10-28 21:16:15 +05:30
Vishnu Mohandas 28098cae79 Update diff fetching API 2020-10-28 21:15:05 +05:30
Vishnu Mohandas 3630a25fb5 Remove SharedCollection 2020-10-28 20:55:32 +05:30
Vishnu Mohandas 42507c4354 Remove unnecessary code 2020-10-28 19:37:32 +05:30
Vishnu Mohandas 673e5e9442 Add create album flow 2020-10-28 17:33:28 +05:30
Vishnu Mohandas 585079b380 Download files in parallel when attempting to share 2020-10-26 20:49:29 +05:30
Vishnu Mohandas ccf577c1bb Preload files 2020-10-26 20:38:47 +05:30
Vishnu Mohandas 36ab7edb7c Add a button to create an album 2020-10-26 16:48:00 +05:30
Vishnu Mohandas 22f670ccd4 Prevent parallel downloads for the same thumbnail 2020-10-26 16:24:26 +05:30
Vishnu Mohandas 0c8df6c923 Ensure that encrypted thumbnails are loaded from network correctly 2020-10-26 16:17:09 +05:30
Vishnu Mohandas 09dfe6676a Update query to select important files 2020-10-26 15:58:05 +05:30
Vishnu Mohandas 76e6f1fb60 Set rounded corners for collection thumbnails 2020-10-26 15:55:23 +05:30
Vishnu Mohandas 0c48d83384 Ensure that favorites are parsed from fetched collections 2020-10-26 15:28:08 +05:30
Vishnu Mohandas 95ccf02b2e Ensure that local collections are loaded into memory on app init 2020-10-26 15:27:31 +05:30
Vishnu Mohandas 7fe8f9fa40 Document h4ck 2020-10-25 05:10:53 +05:30
Vishnu Mohandas 6cabe8c21a Ensure that the location is saved to the metadata if unavailable before uploading 2020-10-25 05:09:46 +05:30
Vishnu Mohandas 3d56f71be3 Segregate collections and device folders 2020-10-25 04:40:37 +05:30
Vishnu Mohandas d5d49e3474 Remove video folder 2020-10-25 03:45:25 +05:30
Vishnu Mohandas f473a51d95 Fix DB query to fetch files 2020-10-25 02:55:28 +05:30
Vishnu Mohandas b47cebfec8 Fix thumbnail for device gallery 2020-10-25 02:55:19 +05:30
Vishnu Mohandas fb897e9264 Revert "Fix DB query to fetch owned files"
This reverts commit a6b8d229dd.
2020-10-25 02:51:06 +05:30
Vishnu Mohandas a6b8d229dd Fix DB query to fetch owned files 2020-10-25 02:44:44 +05:30
Vishnu Mohandas d8bab76265 Update UI 2020-10-25 02:37:12 +05:30
Vishnu Mohandas 00527d3490 Remove fixed TODO 2020-10-25 01:42:14 +05:30
Vishnu Mohandas 805e5a8550 Prevent duplicate uploads across collections 2020-10-25 01:35:50 +05:30
Vishnu Mohandas 69ab22f23a Add a unique constraint onto fileID and collectionID 2020-10-24 16:02:45 +05:30
Vishnu Mohandas be2522d85f Update like-unlike interactions 2020-10-24 15:55:02 +05:30
Vishnu Mohandas 28061ed69a Add or remove from remote favorites 2020-10-23 21:48:38 +05:30
Vishnu Mohandas 31fef9cd3a Add API to remove files from a collection 2020-10-23 21:41:27 +05:30
Vishnu Mohandas 56c31318d4 Update delete file interaction 2020-10-23 20:50:51 +05:30
Vishnu Mohandas c44e89641b Remove files that have been deleted on remote 2020-10-23 20:29:51 +05:30
Vishnu Mohandas 4a054e4365 Remove debug log statement 2020-10-23 20:25:41 +05:30
Vishnu Mohandas e47c7841a3 Remove redundant API call to add uploaded file to it's existing collection 2020-10-22 04:06:55 +05:30
Vishnu Mohandas 26f3e62c0e Fix API to add a file to favorites 2020-10-22 03:52:09 +05:30
Vishnu Mohandas 9f88eb413d Persist the generated keys only after successful authentication 2020-10-22 02:59:16 +05:30
Vishnu Mohandas 65a431f366 Expose API to add a photo to the favorites-collection 2020-10-21 23:44:34 +05:30
Vishnu Mohandas f6e6e8bf49 Update contract of the FileUploader 2020-10-21 21:50:41 +05:30
Vishnu Mohandas 658b72864c Add autocomplete for email addresses in the share dialog 2020-10-19 04:12:45 +05:30
Vishnu Mohandas 948814ea9c Use a model to encapsulate public keys 2020-10-19 03:09:55 +05:30
Vishnu Mohandas ff6cc91f0d Fix the query to search for email addresses 2020-10-19 03:05:39 +05:30
Vishnu Mohandas ec0972d7ba Log download speeds 2020-10-19 02:35:32 +05:30
Vishnu Mohandas 2c6fa9c242 Ensure that shared folder files don't pop up in the local folder page 2020-10-18 01:38:50 +05:30
Vishnu Mohandas 964a5e6f50 Fix debug endpoint 2020-10-18 01:24:23 +05:30
Vishnu Mohandas 588fa6dca0 Log the upload speeds 2020-10-18 01:19:45 +05:30
Vishnu Mohandas 622c3ddd1d Remove unused imports 2020-10-17 23:51:32 +05:30
Vishnu Mohandas b8a627a1a3 Add client side validation to prevent the user from sharing the album with themselves 2020-10-17 23:48:28 +05:30
Vishnu Mohandas 0b407ef98d Persist user keys after fetch 2020-10-17 23:46:30 +05:30
Vishnu Mohandas 91e985ec88 Add a data store to persist user keys 2020-10-17 23:46:23 +05:30
Vishnu Mohandas 3f5ef06a09 Remove unnecessary param for fetching public key 2020-10-17 23:34:41 +05:30
Vishnu Mohandas 92d154b96e Create a collection and back up the folder if a user attempts to share a folder that is not backed up 2020-10-17 22:51:32 +05:30
Vishnu Mohandas d64f34f6d7 Remove dead code related to folders 2020-10-14 21:48:26 +05:30
Vishnu Mohandas f6b9e50f8a Add a gallery for shared collections 2020-10-14 03:16:46 +05:30
Vishnu Mohandas 6a73308bd1 Fix remaining issues with displaying shared collection items 2020-10-14 03:10:22 +05:30
Vishnu Mohandas 54558c4d92 Remove folder service 2020-10-14 03:10:09 +05:30
Vishnu Mohandas 0af41fd97b Fetch and store shared collections 2020-10-14 01:42:37 +05:30
Vishnu Mohandas fcc172f733 Pull the util method to serialize and deserialize a collection type into the Collection class 2020-10-14 01:12:39 +05:30
Vishnu Mohandas 3cd6a0fd6e Remove unused variable 2020-10-13 11:54:48 +05:30
Vishnu Mohandas 0849ef21c1 Update share folder UI 2020-10-13 11:53:45 +05:30
Vishnu Mohandas d30851c257 Remove TODO 2020-10-13 10:52:25 +05:30
Vishnu Mohandas c75bc2f784 Update sharee fetching logic 2020-10-13 10:52:20 +05:30
Vishnu Mohandas 40ebae5fa3 Add API to fetch sharees 2020-10-13 10:51:44 +05:30
Vishnu Mohandas 4c94a2b1d5 Wrap email within a flexible widget to prevent overflows 2020-10-13 07:25:24 +05:30
Vishnu Mohandas 181d7af1a8 Fetch owned collections 2020-10-13 02:06:02 +05:30
Vishnu Mohandas aae4813959 Fetch owned collections first 2020-10-13 02:05:39 +05:30
Vishnu Mohandas 83be7e3e42 Fix file decryption logic 2020-10-13 02:05:33 +05:30
Vishnu Mohandas 76eb21350f Fix the type of owner_id in collections table 2020-10-13 02:05:04 +05:30
Vishnu Mohandas 959f6cd27e Log errors with the stack trace 2020-10-13 02:04:34 +05:30
Vishnu Mohandas 107c1b870e Send the collectionID in file creation requests 2020-10-13 00:45:01 +05:30
Vishnu Mohandas b8586e31e0 Fix the serialziation logic for CollectionType 2020-10-13 00:44:23 +05:30
Vishnu Mohandas 13715c924c Remove redundant code to sync diff 2020-10-12 23:55:33 +05:30
Vishnu Mohandas 2f89dcde2a Remove call to sync folders 2020-10-12 23:55:09 +05:30
Vishnu Mohandas d5338af961 Update API endpoint to upload and fetch files 2020-10-11 05:59:31 +05:30
Vishnu Mohandas fa8a284af3 Encrypt file key with the collection key 2020-10-11 05:56:52 +05:30
Vishnu Mohandas 6f2f95b038 Remove unnecessary call to fetch a collection when it's known that there is none 2020-10-11 05:53:28 +05:30
Vishnu Mohandas 8f8594f07f Decrypt keys of files within collections using the collectionKey 2020-10-11 05:47:31 +05:30
Vishnu Mohandas da8b69084b Add collectionID as an attribute to files 2020-10-11 05:30:44 +05:30
Vishnu Mohandas b12f746567 Add API to create a collection 2020-10-11 05:17:51 +05:30
Vishnu Mohandas 0ba60025f3 Add pathDecryptionNonce as a param 2020-10-11 05:14:04 +05:30
Vishnu Mohandas a40355c249 Remove unnecessary await 2020-10-11 05:13:47 +05:30
Vishnu Mohandas bae5c9bf7d Explicitly state the sync nature of the encryption API 2020-10-11 05:08:22 +05:30
Vishnu Mohandas 86b60fd487 Add API to seal with a user's public key 2020-10-11 04:11:15 +05:30
Vishnu Mohandas 50a67acb75 Use the explicit sync-decrypt API 2020-10-11 04:10:18 +05:30
Vishnu Mohandas bd879263f0 Add functionality to extract a decrypted collection key 2020-10-11 04:08:33 +05:30
Vishnu Mohandas 7e4519f9ef Update user service to accept both email and user IDs as input 2020-10-11 03:50:08 +05:30
Vishnu Mohandas c252e03185 Fetch and persist collections on startup 2020-10-11 03:33:38 +05:30
Vishnu Mohandas c66eb60d02 Introduce a CollectionsDB 2020-10-11 03:33:25 +05:30
Vishnu Mohandas eb12d617de Trigger CollectionService sync from sync-service 2020-10-11 02:50:20 +05:30
Vishnu Mohandas ef65350826 Remove redundant todo 2020-10-11 02:38:35 +05:30
Vishnu Mohandas e6a73f882d Update UI to share a folder 2020-10-10 05:21:20 +05:30
Vishnu Mohandas c9342e9cc8 Define a collection service 2020-10-10 05:21:12 +05:30
Vishnu Mohandas ad8bca7fe7 Add a util function to share text 2020-10-10 05:17:14 +05:30
Vishnu Mohandas 792c606c7e Add a util function to display a button 2020-10-10 05:17:00 +05:30
Vishnu Mohandas 5b905e85f5 Set default button color to pink 2020-10-10 05:16:51 +05:30
Vishnu Mohandas 00d9a8d201 Integrate API to fetch public key of a user 2020-10-10 03:15:19 +05:30
Vishnu Mohandas 785481fccd Add a util to validate emails 2020-10-10 03:15:07 +05:30
Vishnu Mohandas 50646612ce Define model for a collection 2020-10-10 00:13:59 +05:30
Vishnu Mohandas 88c09ace89 Add sharing option for local folders within app bar 2020-10-10 00:02:26 +05:30
Vishnu Mohandas 1330ef07d2 Switch to cryptobox keygen 2020-10-07 05:54:13 +05:30
Vishnu Mohandas 266e1984ae Update file creation API params 2020-10-07 05:26:49 +05:30
Vishnu Mohandas 2346d54838 File file decryption behavior 2020-10-07 05:26:37 +05:30
Vishnu Mohandas c553183556 Fix table creation statement 2020-10-07 05:06:23 +05:30
Vishnu Mohandas 8da3f0c687 Remove more unnecessary models 2020-10-07 04:47:53 +05:30
Vishnu Mohandas 3f5d20027e Remove unnecessary model 2020-10-07 04:42:02 +05:30
Vishnu Mohandas 7f707d187e Refactor crypto util 2020-10-07 04:28:41 +05:30
Vishnu Mohandas 27f019af57 Move to XChaCha for thumbnail and metadata encryption 2020-10-07 04:25:59 +05:30
Vishnu Mohandas bdd2e35a66 Fix bugs in configuration 2020-10-07 03:42:54 +05:30
Vishnu Mohandas 16b2ff0624 Declutter root folder 2020-10-03 23:28:26 +05:30
Vishnu Mohandas 7f16f88a8f Move services to a separate package 2020-10-03 23:26:18 +05:30
Vishnu Mohandas 5a25676dc4 Generate and store public private keypairs on the server 2020-10-03 03:15:26 +05:30
Vishnu Mohandas deb489df70 Revert endpoint 2020-10-02 18:50:10 +05:30
Vishnu Mohandas 832b0c7e74 Update the computation logic for kek-hash 2020-10-02 18:43:15 +05:30
Vishnu Mohandas 0daecf3924 Remove unused function 2020-10-01 04:44:20 +05:30
Vishnu Mohandas 0d1473708c Hash KEK instead of the passphrase 2020-10-01 00:01:04 +05:30
Vishnu Mohandas 1b40d64a20 Move hash verification to a separate isolate 2020-09-30 23:59:58 +05:30
Vishnu Mohandas 71720df54c Compute the hash on a separate isolate 2020-09-30 19:20:00 +05:30
Vishnu Mohandas 429b71de4a Await for async functions 2020-09-29 00:36:42 +05:30
Vishnu Mohandas a4323ad280 Reduce the memlimit for pwhash 2020-09-29 00:34:22 +05:30
Vishnu Mohandas fed7cda7f4 Replace scrypt with libsodium's abstractions 2020-09-29 00:02:53 +05:30
Vishnu Mohandas b06190fbf2 Replace AES with libsodium abstractions 2020-09-28 23:22:43 +05:30
Vishnu Mohandas a7944a3f93 Use sodium to generate random bytes 2020-09-28 23:06:04 +05:30
Vishnu Mohandas a089fd1e3b Remove unused AESCrypt library 2020-09-28 22:37:33 +05:30
Vishnu Mohandas 04e2edd4e7 Prevent multiple file download requests 2020-09-28 22:35:53 +05:30
Vishnu Mohandas f3446a9ed0 Don't prefetch files from server 2020-09-28 21:47:19 +05:30
Vishnu Mohandas 61c80bff3e Minor refactor 2020-09-28 21:46:04 +05:30
Vishnu Mohandas 03fb189396 Add some logging to fileutil 2020-09-28 21:45:21 +05:30
Vishnu Mohandas 4de5c56a3f Fix copypastah errors 2020-09-28 21:45:06 +05:30
Vishnu Mohandas f2b10a4168 Move expensive encryption and decryption operations to a separate isolate 2020-09-28 21:24:40 +05:30
Vishnu Mohandas fc44023887 Use sodium for all base64 to byte conversions 2020-09-28 21:24:14 +05:30
Vishnu Mohandas 64b61ad6f0 Remove unavailable progress indicator in downgraded Flutter 2020-09-28 00:24:53 +05:30
Vishnu Mohandas 3591e5863e Remove SVGs so that a Flutter downgrade is possible 2020-09-28 00:23:47 +05:30
Vishnu Mohandas 076c55d89c Replace button type to be compatible with Flutter's stable channel 2020-09-27 20:51:00 +05:30
Vishnu Mohandas 16aa9a9eb6 Revert endpoint to OG staging 2020-09-26 23:15:41 +05:30
Vishnu Mohandas e574a0d8d2 Use Dart's file handling APIs correctly to append to a file 2020-09-26 03:54:33 +05:30
Vishnu Mohandas 05a67773e9 Minor refactor 2020-09-26 03:08:14 +05:30
Vishnu Mohandas d6e0671fe7 Rename variable 2020-09-26 02:28:19 +05:30
Vishnu Mohandas bd66a9a309 Simplify encryption code 2020-09-26 02:26:02 +05:30
Vishnu Mohandas 9f6cfebcb1 Ensure file deletion only after read 2020-09-26 01:55:03 +05:30
Vishnu Mohandas 37b7eb1601 Add extra logging to file 2020-09-26 01:54:52 +05:30
Vishnu Mohandas d99ac864af Make sure that video player controller exists before attempting to dispose it 2020-09-26 01:48:36 +05:30
Vishnu Mohandas a7582df1ed Convert nested parameters toMap before relaying them to server 2020-09-26 01:20:32 +05:30
Vishnu Mohandas 727a1684ce Switch to libsodium for file encryption and decryption 2020-09-26 00:37:32 +05:30
Vishnu Mohandas 44866f7ffe Introduce new models to encapsulate encryption attributes 2020-09-26 00:32:00 +05:30
Vishnu Mohandas 3bad6a7c94 Add API to chacha encrypt and decrypt a file 2020-09-25 21:15:00 +05:30