Scott Nonnenberg
8f934251ae
Fix a few types: relax contact, Email->Phone
2018-05-10 11:54:58 -07:00
Scott Nonnenberg
80b069e9b6
Move phone number format/parse into ts/types/PhoneNumber
2018-05-10 11:54:58 -07:00
Scott Nonnenberg
8cb1f1f532
Fall back on givenName/familyName if no displayName/organization
2018-05-10 11:54:58 -07:00
Daniel Gasienica
3bf8a8966a
Notification improvements
...
- Remove on read, on focus, and on exit.
- Show multi-message notifications like '5 new messages'.
2018-05-10 14:45:56 -04:00
Daniel Gasienica
16bc1d34c6
Message schema 6: Change classification of media and documents
...
For an easier implementation, we change our original definition of
`initializeAttachmentMetadata`. This means we have to re-run it marked as
version 6 and mark schema version 5 as deprecated as its definition has changed.
2018-05-08 16:41:07 -04:00
Daniel Gasienica
f4a5bc9907
Add new MIME types
2018-05-08 16:41:06 -04:00
Daniel Gasienica
53918d68de
Add Attachment.isFile definition
2018-05-08 16:41:06 -04:00
Daniel Gasienica
20246c4d07
Classify all images and videos as visual media
...
Even if we can’t play it back. Handle that in the lightbox.
Also: Exclude voice messages.
2018-05-08 16:41:06 -04:00
Scott Nonnenberg
0282635142
Remove Object.assign still hanging around in typescript
2018-05-08 09:57:51 -07:00
Scott Nonnenberg
8beeef4d10
Show contact name when you reply to message with a contact
2018-05-07 19:30:50 -07:00
Scott Nonnenberg
37821e5a1b
Wire up all contact behaviors, refactor Contact type/selector
2018-05-07 19:11:35 -07:00
Daniel Gasienica
15759f0db5
Normalize package naming
2018-05-07 21:53:40 -04:00
Daniel Gasienica
5789b3eb75
Add Attachment.isVoiceMessage
2018-05-07 21:53:39 -04:00
Daniel Gasienica
fa4c3fda2b
Extract common MIME types
2018-05-07 21:53:39 -04:00
Daniel Gasienica
8a4f062120
Add MIME.APPLICATION_OCTET_STREAM
2018-05-07 21:53:39 -04:00
Daniel Gasienica
5d230d3778
Add Settings.isNotificationGroupingSupported
...
See: https://github.com/electron/electron/issues/11189
2018-05-04 15:37:46 -04:00
Daniel Gasienica
ecf23b6b2e
Disable audio notifications on Windows 7 and lower
2018-05-02 20:01:57 -04:00
Daniel Gasienica
a102016ed8
Port Settings and OS to TypeScript
2018-05-02 20:01:57 -04:00
Daniel Gasienica
87d374ea78
Remove @prettier pragmas
2018-04-30 16:53:34 -04:00
Daniel Gasienica
110b58230b
Only revoke object URLs we created
2018-04-30 11:01:57 -04:00
Daniel Gasienica
e1b620602d
Display attachments from disk
2018-04-27 16:31:43 -04:00
Daniel Gasienica
9451dc5e41
Define AttachmentSchemaVersion3
2018-04-27 16:31:43 -04:00
Daniel Gasienica
21db2e7182
Use saveURLAsFile
2018-04-27 16:31:43 -04:00
Daniel Gasienica
6ee56b8445
Remove newlines
2018-04-27 16:31:42 -04:00
Daniel Gasienica
4a5e61eaf4
Implement Attachment.save
2018-04-27 16:31:42 -04:00
Daniel Gasienica
f36f206a01
Use IndexablePresence for hasFileAttachments and hasVisualMediaAttachments
...
Reduces index size, makes it easier to debug using IndexedDB inspector, and
hopefully improves lookup performance.
2018-04-25 15:25:12 -04:00
Daniel Gasienica
74582de2d1
Clarify naming
2018-04-25 15:24:52 -04:00
Daniel Gasienica
c6904476f4
Improve IndexableBoolean type
2018-04-25 15:24:51 -04:00
Daniel Gasienica
45d89d1e44
Create UserMessage type
...
Describes user visible messages that can have attachments.
2018-04-25 15:24:51 -04:00
Daniel Gasienica
e5d90775d0
Add MapAsync type definition
2018-04-25 15:24:51 -04:00
Daniel Gasienica
648a7ab1bb
Autoformat using Prettier
2018-04-25 15:24:51 -04:00
Daniel Gasienica
e07458d886
Add basic Backbone type definitions
2018-04-25 15:24:51 -04:00
Daniel Gasienica
9d84b2f420
Index messages with attachments using a boolean
...
When indexing message attachment metadata using numeric indexes such as:
```javascript
{
conversationId: '+12223334455',
received_at: 123,
attachments: […],
numAttachments: 2,
},
{
conversationId: '+12223334455',
received_at: 456,
attachments: [],
numAttachments: 0,
}
{
conversationId: '+12223334455',
received_at: 789,
attachments: [],
numAttachments: 1,
}
```
It creates an index as follows:
```
[conversationId, received_at, numAttachments]
['+12223334455', 123, 2]
['+12223334455', 456, 0]
['+12223334455', 789, 1]
```
This means a query such as…
```
lowerBound: ['+12223334455', 0, 1 ]
upperBound: ['+12223334455', Number.MAX_VALUE, Number.MAX_VALUE]
```
…will return all three original entries because they span the `received_at`
from `0` through `Number.MAX_VALUE`. One workaround is to index booleans using
`1 | undefined` where `1` is included in the index and `undefined` is not, but
that way we lose the ability to query for the `false` value. Instead, we flip
adjust the index to `[conversationId, hasAttachments, received_at]` and can
then query messages with attachments using
```
[conversationId, 1 /* hasAttachments */, 0 /* received_at */]
[conversationId, 1 /* hasAttachments */, Number.MAX_VALUE /* received_at */]
```
2018-04-25 15:24:51 -04:00
Daniel Gasienica
c46e1a1519
Move top-level functions to Signal.Util
2018-04-25 15:24:51 -04:00
Daniel Gasienica
ae4c74dd5b
Skip metadata initialization for verified-change messages
2018-04-25 15:24:51 -04:00
Daniel Gasienica
424965f876
🎨 Autoformat code
2018-04-25 15:24:51 -04:00
Daniel Gasienica
fc1c3aabf5
Add scaffolding for media gallery
2018-04-25 15:24:51 -04:00
Daniel Gasienica
867bece952
Add Message.initializeAttachmentMetadata
2018-04-25 15:24:50 -04:00
Daniel Gasienica
c5352cf26c
Separate required from optional Message keys
2018-04-25 15:24:50 -04:00
Daniel Gasienica
fc12353bb8
Add Attachment.isVisualMedia
2018-04-25 15:24:50 -04:00
Daniel Gasienica
6ff82adf0a
Add MIME.isImage and MIME.isVideo
2018-04-25 15:24:50 -04:00
Daniel Gasienica
df2e6e7864
Port MIME module to TypeScript
2018-04-25 15:24:50 -04:00
Daniel Gasienica
44debd123d
Add basic implementation of Conversation.updateFromLastMessage
2018-04-11 19:34:21 -04:00
Daniel Gasienica
cca5db3237
Remove unused import
2018-04-11 19:25:38 -04:00
Daniel Gasienica
1659354f51
Expand Message type definitions
2018-04-11 19:25:38 -04:00
Daniel Gasienica
b50c55172d
Add MIME type
2018-04-11 19:25:38 -04:00
Daniel Gasienica
65bf34d1b8
Add basic Attachment type definition
2018-04-11 19:25:38 -04:00
Daniel Gasienica
f25a579f32
Add basic Message type definition
2018-04-11 19:25:38 -04:00