Commit Graph

23 Commits (v1.0.5)

Author SHA1 Message Date
Mikunj Varsani 625fe0fee2
Session v1.0 changes (#802)
* correct typo in readme

* include log

* decrypt file server response, remove debug, handle crypt before _sendToProxy, improve json parsing failure logging

* support file uploads on file proxy, fix _sendToProxy calling

* bump form-data to 3.0

* initial refactor of feaure flag detection statements in serverRequest()

* fix  send-message line-height with multiple lines

* fix lint

* fix position of delete account modal

* Profile picture upload, fixes and copy

* Various changes suggested by redesign overview

* Scrolling button updated and animations to modals

* Display subscriber count for open chats

* Prevent illegal username and passwords

* Delete channel / group merge

* Solidification of minor changes w appview injections

* hide description field in group panel for now

* fix join publicgroups pulls

* increase min height respecting ratio

* allow space inside a display name but not at start or end

* fix height of leftpane overlay view

* add back typing indicator and read receipt setting under privacy

* Auto-focus new open chat input box

* Password lock screen and delete data screen

* touchups

* Resolving Bilb revisions

* Disable link previews as default per Kee on signup

* remove date, we have git

* add missing semicolon

* _sendToProxy pass headers/handle response refactor, lint

* fix my yarn conflict/resolve

* include IV in server response

* Sealed sender support

* Support sealed sender for friend requests

* fix lint

* Remove unused destinationRegistrationId; lint

* Update messages.json

* pull RSS through file proxy

* fix unit tests: remove not used count in scrolldown view and assert svg
present

* Disable auto-joining default loki open groups

* session-id-editable-textarea

* fix the textscramble for sessionID on registration

* speed up lint, add lint-full/format-full, make sure use lint-full

* add skipToken to establishConnection options, smuggle out secureRpcPubKey

* get latest version through snode proxy, remove clearfix from ExpiredAlertBanner

* expose semver and LokiAppDotNetServerAPI because we can't get ourKey from storage early enough

* update note

* fix upgrade link, wrap expiredWarning in span for styling, use br to clear the float, trim trailing whitespace

* designalify

* designalify

* designalify user agent

* continue designalification

* make expired banner legible

* remove ugly TLS hack

* disable unauthorization rejection when making https requests limited to lokiRpc

* Update main.js

Aspect ratio amendment

* Constants rework

* local commit

* event listeners

* address missing comma for lint

* fix header sessions message section

* fix profile image size conversation list with pending friend request

* textarea centering

* refresh files in group in group panel

* Looking into keyboard navigation

* Remove P2P

* cache eslint on `lint` but not `ready`

* Cleanup media view formatting

* force locale to be EN until our files are updated and translated

* Simplification of keyup

* Updated all icon references

* SASS fixup

* fix disabled state of message input on sent friendrequest

* trim pubkey when user can enter one to remove whitespaces

* remove lZ in path which fixes errors on svg and does not alter rendering

* fix text scramble animation on registration

* reload app on ctrl-r or f5 from anywhere

* add back file which should have not been deleted

* fix lint and clean code

* fix lint

* add .loki to have a self-signed cert

* Remove mixpanel

* use local shortcut instead of global shortcut

otherwise, ctrl+r is only caught bu the last loaded instance

* open the conversation when accepting a friend request

also, it does what is needed to show the new friend in the friend list

* make sure token comms are done over fileProxy, other notes, logging adjustment

* leftpane sections titles are Wasa bold

* minor refactor

* onboarding messageview

* linter

* fix padding buttons overlay

* do not render session-id-editable border when textarea disabled

* textarea sessionID SpaceMono font

* various touchups

* fix font of description to sfprodisplay

* reduce triple dots conversation header icon size

* reduce size of conversationHeader title font size

* fix font for session-search-input

* make conversationlistitem title font wasa

* fix green and white border under title in leftpane

* fix panel-text-divider font-size and family

* disable completely borders for profile images

* make profile image which where 48pixels big 36 noew, as no more border

* Complete conditional message onboarding

* cache file deletions

* Link preview warning on setting toggle

* Messages.json amendments

* Join channel generalisation

* Localise global vars

* remove eslintcache

* rm global launchcount

* Remove source field from envelope

* Session public chat icon

* CLosed groups ui initial listprops

* Desktop: enable useSnodeProxy feature flag

* file proxy needs to be able to talk to snode

- disable TLS check for fileProxy
- lokiHttpsAgent => snodeHttpsAgent (since we use for two different things now)

* enable useSealedSender too per Maxim

* lint

* lint

* window.extension.expiredPromise version

* better error checking

* use promise version to see if we're expired

* fix typo

* lint

* put back seemingly now required process.env.NODE_TLS_REJECT_UNAUTHORIZED

* fix querystring in file-proxy

* lint

* fix typo

* Remove more references to signal.org

* make sure TLS is forced on open groups, improve serverRequest error message

* Closed groups UI

* function params changes

* turn off snode proxy logging

* include useful info on error

* actually validate URL before starting up a bunch of timers

* Closed groups overlay integration

* move comments from connecting_to_server_dialog_view

* use attempt from window object to reduce code duplication

* refactor out validServer()

* lint

* lint caught typo

* Rename BACKGROUND_FRIEND_REQUEST to SESSION_REQUEST.
Don't trigger friend request logic if a message is aimed at a group.

* Linting

* Closed group joining completed w/o backend

* Fix friend request messages being sent to users you don't have a session in closed groups.
Disable typing messages and read receipts in groups.
Send out session request messages if you don't have a session with a member in the group.

* Remove unneeded boolean condition.

* Closed group update message stylgin

* constants renaming

* Message deletion fix

* gruntify

* fix grunt error

* expose isRss, don't close uncloseable Rss conversation on deleteMessages

* remove copyId and block user on RSS feeds

* remove options from RSS feed that don't make any sense and don't work

* fix grunt error

* squelch RSS duplicate messages

* extension.expiredStatus(), adjustable timers, improve guards

* allowing sending of messages if we're still waiting to hear back

* markRandomNodeUnreachable() refactor, notes/logging

* improve logging

* improve logging

* no need to validate empty token, support lokinet/getession file domains, mark broken snodes as bad, improve logging

* try to address travis-osx lint complaints

* not designed to have a period at the end of titleIsNow

* put period back at the end

* Catch a stray loki messenger

* fix stray loki messenger

* loki messenger isnt a thing

* lint

* Fix open group joining.

* guards incase there are no members yet, fixes dialog not showing up

* fixed file server holding up message sender init.
fix joining closed groups.

* Clean

* Don't wait for file server to return tokens when establishing home connection.

* Disable join public chat prompt

Co-authored-by: Audric Ackermann <audric.bilb@gmail.com>
Co-authored-by: Ryan Tharp <neuro@interx.net>
Co-authored-by: Vince <vincent@loki.network>
Co-authored-by: Maxim Shishmarev <msgmaxim@gmail.com>
5 years ago
Beaudan Campbell-Brown ee813a1126 Update libloki/proof-of-work.js 6 years ago
Beaudan b9c11a229b Fix tests by handling millisecond ttl better 6 years ago
Beaudan db8f8ba36f Multiple all ttl values by 1000 and stop dividing timestamp by 1000 so they are both milliseconds 6 years ago
Mikunj 6bd2d3962e Linted files 6 years ago
Mikunj 4de69bee4b Reduced PoW difficulty to 100 on production. 6 years ago
sachaaaaa 8c01bea913 variables name consistency and remove superfluous initialisation 6 years ago
sachaaaaa e3138f8fde add yarn pow-metrics 6 years ago
Beaudan 6113f13d3a Rip the worker logic out of message_receiver and add the functionality for it to work with pow. Fix pow tests to work with those changes 6 years ago
Beaudan f6ab6495ae Updated the nonce trials variables to be constants for production and development 6 years ago
Beaudan 7782c58d14 Slight refactor of PoW file to make easier to test plus some tests for the PoW functionality 6 years ago
Beaudan b515fc41e7 Removed some repetetive logs, made the polling time a variable and lower the polling time and PoW difficulty if we are in debug mode 6 years ago
Beaudan 3aa135fdb4 Grabbing last hash from server response. only requesting messages after the lasthash. Keeping track of lasthash for array of nodes (currently hardcoded for one) 6 years ago
Beaudan c59b196487 Now reading messages and adding them to conversations. Some cleaning of unreachable code. Modified the message data to be encoded as base64 string before sending to server
Sending our public key in header of message

Now attaching our key to the source field when sending messages, allows messages to be decrypted with the fallback cypher

Now polling the server for messages every 5 seconds

Sending the source device with messages

Added mock respond function to request to leave it that same as the websocket stuff. RetrieveMessages now just returns the result

Polling now continues if the server responds with an error. Returning only the result from sendMessage and retrieveMessages

Revert commenting of unreachable code

Refactored http logic into own file

Revert a change to websocket-resources
6 years ago
sachaaaaa bf69e9e897 re-lint proof-of-work 7 years ago
sachaaaaa 8a354c8e5c Revert dodgy linting on proof-of-work.js 7 years ago
sachaaaaa 4b9fcb98d4 Linting and other housekeeping stuff 7 years ago
Beaudan 4598fd222a Cleaned up newNonce stuff. Now doing target calculation with BigIntegers 7 years ago
Beaudan 7f12746d8c Made NONCE_LEN a more globally scoped variable 7 years ago
Beaudan fe3898b9d8 Reintroduced function to compare Uint8Arrays again because < isn't working as expected (<3 javascript). Fixed some bugs with the way the Uint8Arrays were being manipulated and made some of the logic more clear 7 years ago
Beaudan d4180b3ca6 Some syntax tidying up, plus fixed bug with message data not being a uint8array after IPC message 7 years ago
Beaudan dfa8b59bc3 Using let and const properly, updated number to uint function, general cleaning 7 years ago
Beaudan ee57c698d7 Client side proof of work attached to messages
Skeleton calcPoW function that prepares payload for hashingFunction to increment Uint8Array nonce

Util function for converting a number to its Uint8Array representation

Actually perform calculate PoW nonce for every message

Adding bytebuffer as dependency and updated package-lock

Move PoW to new file and execute it in child process

TODO: Move send message logic to callback after child process has finished calculating the PoW

Refactored nonce calculation to function to be awaited

More readable timestamp grab plus converted to seconds

Nonce is now returned as a base64 string and included in request header

Also converted timestamp and ttl to string when including them in the header

Added a couple comments and tidied up some nonce logic
7 years ago