Commit Graph

317 Commits

Author SHA1 Message Date
Audric Ackermann ccf8a31ae3
move Attachments and Attachments_test to typescript 2021-04-14 10:34:48 +10:00
Audric Ackermann def03c8baa
working encrypt/decrypt of attachments 2021-03-26 13:07:42 +11:00
Audric Ackermann 35e57f2509
move mnemonic.js to typescript 2021-03-05 14:52:44 +11:00
Audric Ackermann e6cf28cb2a prettier on pre-commit 2021-03-01 12:05:39 +11:00
Audric Ackermann 5ec9722e00
autobind typescript class methods with autobind 2021-02-08 17:17:26 +11:00
Audric Ackermann adf0d03d35
add test for the MessageEncrypter using Session protocol 2021-01-05 14:48:46 +11:00
Audric Ackermann cf2ddc64d8 upgrade libsodium wrapper and add types 2020-12-15 17:11:32 +11:00
Audric Ackermann 26c9eee85d
add sanitize.css and fix up z-index for audio recording canvas 2020-12-09 11:35:58 +11:00
Audric Ackermann 6afe893359
fix up a few test 2020-12-04 18:02:55 +11:00
Audric Ackermann d729e49840
update to latest major version of react-contexify 2020-12-01 10:32:56 +11:00
Audric Ackermann 4df8e06c3c
patch react-mentions types with custom one
this can be reverted once
https://github.com/signavio/react-mentions/pull/449 is merged upstream,
as the DefinitelyTyped types will be regenerated
2020-11-27 17:18:12 +11:00
Audric Ackermann f673589c56
add types for blueimp-load-image 2020-11-24 13:19:21 +11:00
Audric Ackermann d0043ca245
use react-intersection to accurately mark messages as read 2020-11-20 15:10:28 +11:00
Audric Ackermann b5af8eb215
Add Mentions with react-mentions 2020-11-18 15:27:13 +11:00
Audric Ackermann e45ce43e01
store messages currently loaded in convo on redux 2020-11-12 12:18:50 +11:00
Audric Ackermann e613613416
show toast with react-toastify and make them a styled-component 2020-11-09 11:25:57 +11:00
Audric Ackermann 13e02b5bf1
add staged link previews for everything from signal 2020-10-28 11:06:47 +11:00
Audric Ackermann f5818817e9
remove references to old emoji-panel package 2020-10-27 14:32:59 +11:00
Audric Ackermann 3f8b884055
switch react-contextmenu to react-contexify 2020-10-22 14:45:54 +11:00
Audric Ackermann a7bdc93ca8
working drag and drop, but no scrolling on the conversation messages 2020-10-21 10:35:21 +11:00
Audric Ackermann 1768f6c6f7
add styled-component 5.1.1 as 5.2.0 is making not adding style to DOM 2020-10-15 09:50:15 +11:00
Vincent 9f1cef9844 emoji-rendering 2020-07-21 17:37:34 +10:00
Vincent 5ed6a9dda9 reorganise-dropin 2020-07-17 15:44:44 +10:00
Vincent e324d5c0ed Polish audio ui 2020-07-17 11:05:27 +10:00
Vincent 3591001ef1 audio component ui 2020-07-16 18:22:09 +10:00
Vincent c26e20d33f css-loader 2020-07-16 16:39:35 +10:00
Vincent 9ec99da9f9 SessionRecording-cleanup 2020-07-16 11:55:21 +10:00
Vincent 6078be1657 revive-ts-refactor 2020-07-08 17:12:34 +10:00
Vincent 83528f4b8d Merge branch 'clearnet' of https://github.com/loki-project/session-desktop into refactor-ts-react 2020-07-08 16:42:30 +10:00
Mikunj 8f82e7a442 Fix multi device pairing 2020-07-06 11:53:52 +10:00
Maxim Shishmarev 0904e7a8ca Refactor from message polling to content message handling 2020-06-30 18:10:35 +10:00
Audric Ackermann 9ec0c8e6a8
Merge remote-tracking branch 'upstream/clearnet' into hooking-up-sending 2020-06-19 10:09:54 +10:00
Audric Ackermann 702a7d6b88
upgrade tslint to 5.19 to have no-promise-as-boolean 2020-06-18 12:25:02 +10:00
Mikunj 3f93b25ac2 Added string utils 2020-06-18 11:30:30 +10:00
Mikunj ae2b8334e0 Replace bytebuffer component 2020-06-18 10:49:59 +10:00
Maxim Shishmarev 8ca7b8cfb4 Message receiving refactor: handleDataMessage onwards 2020-06-12 18:08:44 +10:00
Mikunj f710606909 Added p-retry 2020-06-10 10:47:54 +10:00
Mikunj cd58e9b86e Add utils for stubbing.
Added ImportMock for easier es6 stubbing.
2020-06-02 12:13:13 +10:00
Audric Ackermann ee6ee7ec4f
Merge remote-tracking branch 'upstream/message-sending-refactor' into audric/refactor-message-sending 2020-06-01 11:21:02 +10:00
Audric Ackermann c6fb04d435
upgrade prettier to support typescript 3.7 2020-05-29 16:25:02 +10:00
Audric Ackermann 8f072de05d
upgrade to ts 3.7.4 2020-05-29 11:08:31 +10:00
Audric Ackermann 1961ae8908
update yarn.lock 2020-05-26 10:53:57 +10:00
Mikunj 3dfc1ca213 Improved JobQueue.
Added tests.
2020-05-22 15:47:07 +10:00
Vincent ffe30d4256 Merge new fonts 2020-04-24 12:20:13 +10:00
Vincent cf05d4ff6c revivify 2020-04-24 12:18:43 +10:00
Vincent 6cda163b27 upgrade typescript 2020-04-06 13:36:15 +10:00
Mikunj 30a6436b86 Add yarn lock 2020-04-06 10:11:41 +10:00
Mikunj Varsani 24a3e05154
Revert "Revert "Clean up unused dependencies."" 2020-04-03 16:41:53 +11:00
Vince 5ff7476359
Revert "Clean up unused dependencies." 2020-04-03 16:20:49 +11:00
Vince 6d591d956d
Merge pull request #1033 from Mikunj/package-cleanup
Clean up unused dependencies.
2020-04-03 16:13:23 +11:00
Maxim Shishmarev 804b4e54ac
Merge pull request #1041 from msgmaxim/lns
API implementation for LNS
2020-04-02 17:25:04 +11:00
Maxim Shishmarev 932ea23ceb API implementation for LNS 2020-04-02 13:35:31 +11:00
Ryan Tharp 7cff4aa221 Merge branch 'master' of https://github.com/loki-project/loki-messenger into patchopensnapps 2020-03-31 15:04:29 -07:00
Mikunj eed0ea058c Removed other dependencies 2020-03-31 13:45:08 +11:00
Mikunj 9d2417c2f6 Removed proxy-agent and web-socket.
Trimmed down web_api.js to most basic functions we are using. This needs to be completely removed in the future.
2020-03-31 13:24:06 +11:00
Mikunj ba1525d6de Remove js-yaml 2020-03-31 12:47:01 +11:00
Mikunj b38c666e95 Remove js-sha512 2020-03-31 12:32:52 +11:00
Mikunj 1cadb01e8d Remove intl-tel-input 2020-03-31 12:22:32 +11:00
Mikunj e875ba2527 remove got.
Fix session IDs not being redacted in logs.
2020-03-31 12:14:26 +11:00
Mikunj d671ce0055 Remove phone number libraries 2020-03-31 10:44:00 +11:00
Audric Ackermann a314b1f3de
remove typo-js and electron-context-menu packages 2020-03-27 17:32:37 +11:00
Audric Ackermann 77ef5de17e
Merge pull request #1018 from vincentbavitz/link-device-copy
Link Device Copy
2020-03-27 17:23:46 +11:00
Mikunj 496afa85cb Remove libsodium-wrapper.
Remove LokiSnodeChannel as we weren't using it.
2020-03-27 15:51:03 +11:00
Vincent 4dcfc17735 Electron upgrade 2020-03-27 14:57:26 +11:00
Vincent 1a3ecf10df Device pairing copy 2020-03-27 14:33:37 +11:00
Audric Ackermann 9ddda73ca2
Integration tests (#975)
* add first integration test Session

Checking window title
Checking window count
Can restore from seed

* FIXME torevert once found why this crash on app close

* [test] add join valid open group test

* [test] validate cannot join two times the same open group

* [test] move common things to common.js

* [test] move tests to separate files

* [test] clean

* [test] add send message to open group test

* [test] lint

* [test] rename hooks -> common

* [test] add 15s delay before considering test as slow

* upgrade electron 8.0.3 and spectron 10.0.0

* [test] signin from seed: validate pubkey

* Replace spellchecker in favor of typo-js

* [test] refactor common calls to common.js

* [test] add two different pubkey, mnemonic and displayname

* [test] FIXME unsafe eval needed for now

* [test] add: add friends test

* [test] working multi instance tests

* [test] FIXME disable snodeproxy

* [test] update yarn.lock

* [test] make tests more robust with restart from scratch each test

* [test] add link of two devices test and hard rm of apps before start (rm -r)

* remove unused file

* [test] lint

* [test] add registration from generated pubkey test

* [test] add beginning of network stub

* [test] stub "token" endpoint

* [test] add test of one message on pub group pull

* [test] add starting port randomize. looks to help for some bad start with multi instance

* [test] add stub for one to one chats (sessions)

* [test] clean code

* [test] finish add friend test and stub snode server

* [test] stub calls during link device test

* [test] add a flag to show some logs on stubbed snode

* [test] finish link of two device test. check both pubkey matches

* [test] add and use function to wrap erase+start+login+stub app

* [test] add method to login as friend and closed group test&messages

* Revert "[test] FIXME unsafe eval needed for now"

This reverts commit de5322fdae6cdab8e3b9bd9a52b7d172c9bc2d26.

* [test] apply review

* [test] fix lint

* [test] fix existing test with new spectron version

* [test] fix lint

* [test] refactor page objects

* [test] add delete account test

* [test] add unlink of two device test

* [test] make tiny waitForExists -> isExisting

* [test] add checks of link new device buttons

* upgrade fs-extra@9.0.0

* address pr review

* [test] fix spell_check test

Co-authored-by: Josh Perez <60019601+josh-signal@users.noreply.github.com>
2020-03-25 11:42:53 +11:00
Vincent c7d96f2565 Marking messages as read completed 2020-03-13 14:28:52 +11:00
Vincent 9a6aafe99c Pull from clearnet 2020-03-13 11:44:00 +11:00
Vincent 19a5571536 Protobuf init for attachments 2020-03-12 14:11:15 +11:00
Vincent 1950876307 Audio playback and pause complete 2020-03-11 12:40:41 +11:00
Mikunj Varsani f0bb328952
Merge pull request #951 from loki-project/clearnet
Merge into Master; prep for v1.0.3
2020-03-05 16:04:28 +11:00
Ryan Tharp 178d788dca Enable auto-updating using electron-updater 2020-03-05 15:39:43 +11:00
Vincent 2dc5885c88 Microphone timer 2020-03-05 10:43:48 +11:00
Mikunj 78389440c0 Update sqlcipher to 4.2.0. 2020-03-04 09:52:14 +11:00
Mikunj a09e370e1d Added testing on pull request
Disable proxy in tests.
2020-02-28 14:51:09 +11:00
Vincent 548db7150d Start message selection reactification 2020-02-28 09:49:03 +11:00
Vincent 57b20d2f1a Loading messages by id 2020-02-19 13:54:59 +11:00
Vincent 2c5e2df817 reactification conversationview bottombar initial 2020-02-17 15:16:24 +11:00
Mikunj Varsani 7e68bc82a3 v1.0.1 release.
Merge branch 'clearnet'
2020-02-11 15:26:40 +11:00
Mikunj Varsani aec4ad0a26
GitHub actions (#814)
* Added build and release actions

* Added building instructions.
Updated electron builder to 23.2.3.
Fix unpacked directory not being removed correctly.

* Minor fix to build command

* Allow users to change install location on windows.
Added AppImage for linux.

* Fix artifact naming
2020-02-07 13:20:40 +11:00
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>
2020-02-07 09:41:58 +11:00
Vince 1fefe81f02
Merge pull request #772 from Bilb/fix-global-shortcut-reload-multiple-window
use local shortcut instead of global shortcut
2020-01-31 13:17:09 +11:00
Audric Ackermann ddf1ca78ec
use local shortcut instead of global shortcut
otherwise, ctrl+r is only caught bu the last loaded instance
2020-01-31 11:07:40 +11:00
Maxim Shishmarev 3f58dea035 Remove mixpanel 2020-01-31 10:14:30 +11:00
Maxim Shishmarev 02320334f0 Remove P2P 2020-01-30 11:47:37 +11:00
Ryan Tharp df120e8e5f fix my yarn conflict/resolve 2020-01-28 00:55:41 -08:00
Ryan Tharp 11359fc037
Merge branch 'clearnet' into fileproxy 2020-01-27 22:46:44 -08:00
Ryan Tharp 6293cd468b bump form-data to 3.0 2020-01-23 03:31:14 -08:00
Audric Ackermann 52e782d3fd use cross-env to make build of release easier 2020-01-22 15:52:43 +11:00
Vincent c26097554f settings optimisations 2020-01-16 12:08:31 +11:00
Vincent 2ede557a74 Modal additions incl. QR fixup and Seed View 2020-01-06 15:46:49 +11:00
Vincent 2caffa9289 Dependencies resorted and modal adjustments 2020-01-06 09:30:29 +11:00
Vincent 53555c0133 Fixed wrt review @ Audric 2020-01-03 16:54:27 +11:00
Vincent 66911d6f06 Connect to server modal semi-complete 2019-12-30 13:09:52 +11:00
Vincent 659d4412bd QR code completion 2019-12-23 17:40:48 +11:00
Audric Ackermann 148210c390 lock dompurify in yarn.lock 2019-12-16 09:38:34 +11:00
Mikunj 6817d82b00 Upgrade electron-notarize 2019-11-14 11:28:47 +11:00
Mikunj 9a3aa2a5bc upgraded electron-builder. 2019-10-23 10:51:52 +11:00
Mikunj 1250d93252 Added electron-notarize 2019-10-23 09:24:56 +11:00
Ryan Tharp 88b44390bf Desktop Analytics 2019-09-17 01:14:29 -07:00