Commit Graph

22 Commits (884bc9333de8fa26f9fa1b7c10e11d41317b35e5)

Author SHA1 Message Date
Scott Nonnenberg cd60bdd08a Move conversations to SQLCipher
Scott Nonnenberg 61f7b8360b Conversation: store lastMessage/lastMessageStatus in memory only
Scott Nonnenberg f39a96bc76 Move to centralized message/cache data layer
Also, ensure that conversation.messageCollection has nothing in it
unless it has an associated ConversationView.
Scott Nonnenberg cfe0bd0e79 Move to npm for several dependencies
mustache
jQuery
underscore
backbone
mocha
chai
intl-tel-input
Daniel Gasienica 95321e5d3e Remove Vim mode lines
Daniel Gasienica 1dd87ad197 Format all source code using Prettier
Scott Nonnenberg f0aaa7a1c5
Introduce intl-friendly sort order for contact lists ()
lilia 173e037fa6 Fix minor style errors
And keep it that way, by making jscs config more opinionated.

// FREEBIE
lilia 11cedcce6e Add model-level search tests
// FREEBIE
lilia a258f1a66b Refactor number parsing and validation
Refactor libphonenumber.validateNumber into libphonenumber.parseNumber,
which encapsulates the try-catch pattern used in number parsing and
returns an object of info about the input number rather tha throwing
since we expect to get some invalid number inputs the user is typing.

In the conversation model,
  * Separate phone number validation from search token updating.
  * Perform token update before save if the number was valid.
  * Stop storing unneeded number variants as conversation properties.

// FREEBIE
lilia 0b95606eff Display nicely formatted phone numbers
In conversation headers and as titles for contacts with no name. Updated
tests accordingly.

// FREEBIE
lilia 69bbaac3b9 Fix conversation model test
// FREEBIE
lilia f764445c86 Remove erroneous license file and headers
We only use GPLV3 around here.

// FREEBIE
lilia 9a4a91b5b5 Fix avatar test
lilia d0e262d7cb AxolotlStore stores groups in indexeddb
Tara Vancil d65e0e5eda Add tests for message and conversation models
Closes 
lilia 90140556e4 Fix tests
lilia d107c3b839 Fix tests
lilia 1a4811fcef Fix tests
lilia bf22da209f Fix tests
lilia 470346c9c4 Save incoming messages and pass to frontend asynchronously
After a message is saved asynchronsly, fire an event and pass the
message attributes to frontend listeners via the chrome-runtime API.

This behavior is similar to the 'storage' event fired by localStorage.
lilia ced295a630 Move message and conversation storage to IndexedDB
Getting up and running with IndexedDB was pretty easy, thanks to
backbone. The tricky part was making reads and writes asynchronous.
In that process I did some refactoring on Whisper.Threads, which
has been renamed Conversations for consistency with the view names.

This change also adds the unlimitedStorage permission.