Commit graph

3534 commits

Author SHA1 Message Date
Jackie Luo
0362849b22 🎨(onboarding): Fix clipped gears in onboarding 2016-07-27 20:08:18 -07:00
Halla Moore
925c30a390 Make sure draft has enough time to save before composer is closed
If the composer is closed too quickly, the DatabaseStore doesn't have enough
time to trigger the necessary ActionBridge events that will properly save the draft.
These events are triggered every 10 ms, so to be safe, we wait 15.
2016-07-27 19:52:08 -07:00
Jackie Luo
7d809b7824 🎨(ubuntu): Unhide toolbar for popout composer 2016-07-27 19:32:32 -07:00
Ask Brean
8dd619f593 Enables showing/hiding of menubar (#2648)
* Enables showing/hiding of menubar as per #1181

* Updates to new setting name
2016-07-27 18:35:32 -07:00
Juan Tejada
4427f5eda1 fix(deltas): Update latest cursor, address comments
- Add test to make sure that latest cursor is updated
2016-07-27 14:30:12 -07:00
Ben Gotow
dd2240ee80 fix(packages): Don’t look for package in top level directory
Fixes issue with Keybase.io installing a folder at the top level of the filesystem called `keybase`
2016-07-27 11:52:55 -07:00
Juan Tejada
27f4f5fc9b fix(long-connection): Close connection on 'end' event 2016-07-27 03:12:55 -07:00
Juan Tejada
aaeda2e5ac fix(deltas): Consolidate nylas-long-connection code
- Completely remove nylas-long-connection.coffee file and consolidate all logic into
nylas-long-connection.es6 and worker-sync/delta-streaming-connection.es6:
  - Separate it into DeltaStreamingConnection which is specific to the worker-sync
    package for handling deltas
  - NylasLongConnection is a "reusable" persistent connection to our API
    which is also used by the search package
  - This is a basically a fixed revision of https://phab.nylas.com/D2875,
    see difff for more info
- Makes it so delta streaming does not retry so aggressively on 403s, which
  happens whenever a user’s trial has expired
2016-07-27 02:56:55 -07:00
Juan Tejada
00099cd202 bump(submodule): Revert submodule bump revert 2016-07-26 19:21:39 -07:00
Annie
b061bf079f build(preferences): Add two buttons to the bottom of the general preferences page that clear email and clear all .nylas
Summary:
Wanted a way to reset configuration settings. I added button in N1 general preferences to remove `.nylas` folder and reboot titled 'Reset Accounts and Settings' as well as one to exclusively remove `.nylas/edgehill.db` titled 'Reset Email Cache'.

Not sure about the wording of the button descriptions.

Test Plan: Tested with different file paths on my machine. Was going to write tests, but the two buttons just call previously tested functions onClick -- rimraf and fs.unlink. Testing might be excessive?

Reviewers: bengotow, juan

Reviewed By: juan

Subscribers: juan

Differential Revision: https://phab.nylas.com/D3127
2016-07-26 16:53:45 -07:00
Annie
3da5c31cdd build(onboarding): Add input with gmail auth url
Summary:
Added animation and input with url of gmail auth for users where the broswer redirect doesnt work.
Still need to finish up some minor styling.

style(onboarding): add input with link for gmail auth if browser redirect doesnt work

Test Plan: testing on my local install

Reviewers: juan

Reviewed By: juan

Subscribers: sdw

Differential Revision: https://phab.nylas.com/D3119
2016-07-26 15:55:45 -07:00
Juan Tejada
20fa2ec3f5 build(tools): Add eslint_d package for faster linting in text editor 2016-07-26 15:54:23 -07:00
Jackie Luo
50f9a91270 fix(identity): Modify language around subscribing 2016-07-26 15:46:50 -07:00
Annie
630c71f10d bump(submodule) 2016-07-26 15:31:44 -07:00
Annie
bff998e1f5 fix(downloads): Add a check to see if last download directory is different, only show item in folder if true
Summary:
Each file downloaded would open finder and show the path to the file. Users were reporting that this felt excessive when downloading multiple files all to the same location #1044. I added a check to see if the path was the same as the previous file path, and only showed the item in the folder if these differed.

Also added tests for this in file download store.

test(downloads): Add tests for showing item in folder only if lastDownloadDirectory differs

Test Plan: Added tests to file-download-store-spec

Reviewers: bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D3121
2016-07-26 15:02:09 -07:00
Halla Moore
2843f3c5f9 Ignore thread labels that aren't listed in the account's labels
Summary:
An "important" label has been showing up for some users, rather than the usual
important markers. We generally have a list of labels that are hidden, including
the important label, but this list starts with the labels for the entire account.
In these cases, we believe gmail stopped returning the important label for the
accounts, while we still had threads marked as important. This resulted in the
important label not being properly hidden. To fix this, we added a clause that
ignores labels if they are not in the account's list of labels.

Test Plan: Tested locally

Reviewers: annie, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D3123
2016-07-26 14:00:36 -07:00
Michael Grinich
7523e660a9 Update ISSUE_TEMPLATE.md 2016-07-23 13:03:38 -07:00
jathpala
d9ece35ac6 Re-enable all tests by unfocusing the test suite (#2667)
A previous commit (ad04775) added an fdescribe() to one of the tests in
draft-helpers-spec. This changes that to a regular describe() so that
all tests will be run when running ./N1 --test.
2016-07-23 06:32:12 -07:00
Juan Tejada
b9e6ef8739 fix(mail-merge): Bump submodule 2016-07-22 14:26:28 -07:00
Juan Tejada
f77cbc02f5 fix(mail-merge): Keep column links state properly in sync #2493
Summary:
See https://phab.nylas.com/D3112 for full description
- Update EditorAPI.insertCustomComponent to take a pre-generated
anchorId

Test Plan: Unit tests + manual

Reviewers: bengotow, halla, jackie

Reviewed By: jackie

Differential Revision: https://phab.nylas.com/D3113
2016-07-22 14:25:31 -07:00
Pablo Niklas
79d879ff79 Linux Mint 18 support. (#2659)
Allows the deb package to be installed on Linux Mint 18.
2016-07-22 11:25:38 -07:00
Jackie Luo
e40b5781c2 fix(self-hosting): Check for env properly 2016-07-22 11:00:11 -07:00
Jackie Luo
5c7dd2cc59 fix(lint): Fix linter issues 2016-07-21 22:53:19 -07:00
Jackie Luo
5877ebf85a update(readme): Fix typo 2016-07-21 22:45:52 -07:00
Jackie Luo
25f77f0269 fix(quoted-text): Check that message is reply 2016-07-21 17:45:47 -07:00
Jackie Luo
9bda66c081 spec(quoted-text): Fix broken tests 😞 2016-07-21 15:47:54 -07:00
Jackie Luo
49fd61d347 fix(self-hosting): Set identity correctly 2016-07-21 15:46:37 -07:00
Jackie Luo
6a628102ba feat(self-hosting): Add onboarding flow for self-hosted sync engine
Summary:
Adds a fun new UI for adding accounts to the sync engine. After creating your sync engine instance, all you have to do is auth your accounts on the command line and then enter the URL/port number in this flow. That pulls all of your accounts from the `/accounts` endpoint, mocks an identity token, and edits your `config.json` properly.

TODO: Update the docs in the repo and revert the PR with the temporary fix.

Test Plan: Tested locally.

Reviewers: bengotow, halla, juan

Reviewed By: halla, juan

Differential Revision: https://phab.nylas.com/D3114
2016-07-21 14:25:30 -07:00
Ben Gotow
3299789530 fix(message-body): Sanitize contenteditable attrs out of message bodies 2016-07-21 11:56:44 -07:00
Ben Gotow
5107bc06de fix(dev): Tiny script that allows you to install eslint packages into main node_modules folder (for Atom) 2016-07-21 11:56:44 -07:00
Halla Moore
5ff0dcc94c Implement a participant cap for multi-send, add multi-send unit tests
Summary:
Prevent hitting SMTP rate limit with multi-send
Some users were hitting the SMTP rate limit when sending messages
with multi-send to too many recipients. There is a backend patch
to help with this, but we decided it would be useful to limit it
on the client side as well.

Test Plan: Added unit tests

Reviewers: jackie, juan

Reviewed By: jackie, juan

Differential Revision: https://phab.nylas.com/D3109
2016-07-21 11:36:45 -07:00
Annie
848b4ef8a1 fix(signatures): Added alias to accounts rendered in dropdown
Summary:
Extended default signatures to also be associated with aliases in the signature
preference page. Also fixed some styling with the signature dropdown button in its blurred
state on the popout composer.
fix(signatures): Fixed styling for signature compuser button on popout when blurred

test(signatures): Updated tests to support and cover extending signatures to alias

Test Plan: Modified existing tests to work with these changes

Reviewers: juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3111
2016-07-21 11:33:15 -07:00
Jackie Luo
b323275d24 fix(composer): Stop parsing quoted text on each keystroke to prevent composer lag
Summary: We used to parse the quoted text on each keystroke in the composer for a reply so that we could continue to determine what was quoted text. However, that resulted in dramatically slow typing for replies to complex HTML emails. Now, the quoted text isn't a part of the reply until `prepareDraftForSyncback`, after all of the extensions have run their transformations—we use a marker to determine whether quoted text should be appended or not. The quoted text control is now a one-way operation—you can't hide the quoted text after showing it (Gmail-style).

Test Plan: Tested locally (but didn't run unit tests because they won't run on my machine...)

Reviewers: bengotow, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3106
2016-07-21 11:11:14 -07:00
Ben Gotow
547228b52a fix(readme): Add Kleinstein description 2016-07-20 14:59:07 -07:00
Ben Gotow
3f6415c119 fix(specs): Misc fixes 2016-07-20 12:33:52 -07:00
Annie
36771f4b92 fix(image): Prepend file:// to image paths to solve #621
Summary:
refactor(test): Fix file paths in message item body tests to be prepended with file://

Some inline images were not rendering as seen on (#621). The images were being correctly added to the
downloads folder, however, their path was being prepended with an unrelated base url. I hardcoded
file:// into the image paths so that they would always point to the local downloads folder.

Test Plan: Ran the specific tests for message item body and message item. Also checked in my email.

Reviewers: juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3105
2016-07-19 16:48:24 -07:00
Annie
8a0345152c fix(email): Fix email body height bug #1280
Summary: Some emails were having their body height set to 0 if their height was dependent upon the iframe height -- e.g. body.height equals 100% or inherit. Added a check to see if height computed to 0px and if so, set the height to auto.

Test Plan: Tested with emails on my computer

Reviewers: juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3100
2016-07-19 16:38:59 -07:00
David Klein
632c3e6bc7 Update README to include Kleinstein theme (#2645)
This theme hides the account list sidebar.
2016-07-18 20:31:06 -07:00
Jackie Luo
460972ecf5 🎨(composer): Add newline for replies 2016-07-18 17:48:26 -07:00
Ben Gotow
0aeebbf380 fix(menus): Adopt new pasteandmatchstyle menu role 2016-07-18 16:57:31 -07:00
Ben Gotow
c9244d5163 fix(linux): Support unread counts in Unity #408 2016-07-18 16:53:25 -07:00
Ben Gotow
67ed1a3266 bump(version): 0.4.46 and Electron 1.2.7 2016-07-18 16:51:49 -07:00
Ben Gotow
5ba2ce29e5 Merge branch 'master' of ssh://github.com/nylas/N1 2016-07-18 14:25:09 -07:00
Ben Gotow
1e59ee6900 fix(contacts): Support unicode characters in domains #1920 2016-07-18 14:25:00 -07:00
jathpala
14e0f15892 Pasting into a participant field now preserves any text already there (Issue #2410) (#2635)
This modifies the behavious when pasting into the to, cc or bcc fields of a new draft.
Any text already in the input field is not automatically deleted. Rather the pasted
text is added to the already existing text. If the new contents of the email field now
matches as an email address (based on RegExpUtils.emailRegex().test()), then the address
is immediately tokenized. If the new input text doesn't match as an email, just append
the new text and wait for further input.
2016-07-18 12:32:46 -07:00
Evan Morikawa
27bfd91e32 fix(delta): add N1 token to delta stream connection 2016-07-13 22:02:48 -07:00
Evan Morikawa
9686361ce4 fix(login): fix error thrown when login fails for IMAP 2016-07-13 15:55:45 -07:00
Carson Ip
a3874ce1de Fix incorrect port number when using https (#2600)
When APIRoot is using https, the port will forced to be 443 even when APIRoot
indicates another port. This is because of the line options.port = 443
overwriting the correct options.port extracted by url.parse. This is fixed by
removing the problematic line. The default port is still 443 if you look into
https.js. In case we want a different default port in the future, we can do
options.port = options.port || 443.
2016-07-12 12:03:13 -07:00
Evan Morikawa
c86f8aa387 feat(analytics): add Sidebar Opened & Sidebar Closed events 2016-07-11 18:16:08 -07:00
Evan Morikawa
2474b0e7d3 fix(onboarding): Fix Rx.Observable.fromQuery not defined bug 2016-07-11 18:07:45 -07:00