Commit graph

3162 commits

Author SHA1 Message Date
Juan Tejada
5dc07d68cf fix(build): Don't lint files inside node_modules, fix lint error 2016-06-02 14:45:51 -07:00
Evan Morikawa
57d0497788 fix(analyitcs): make sure to flush events before they close 2016-06-02 16:24:32 +01:00
Evan Morikawa
866f34162e fix(onboarding): use proper env 2016-06-02 15:00:02 +01:00
Evan Morikawa
d58bb4f07e fix(onboarding): properly base64 encode string 2016-06-02 14:45:48 +01:00
Evan Morikawa
b5a53a49ee fix(analytics): fix errors in onboarding flow 2016-06-02 11:16:41 +01:00
Evan Morikawa
7e0c513805 feat(analytics): update analytics libraries
Summary:
See
https://paper.dropbox.com/doc/Analytics-ID-Unification-oVDTkakFsiBBbk9aeuiA3

Test Plan: Manual

Reviewers: juan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2998
2016-06-02 03:38:51 -04:00
Jackie Luo
f5ab2ea322 feat(activity-list): Scope notifications by accounts 2016-06-01 18:02:52 -07:00
Juan Tejada
8197b2a96f fix(sidebar): Properly initialize sidebar accounts 2016-06-01 17:26:18 -07:00
Ben Gotow
3270ac48fc fix(tutorial): Incorrect strings 2016-06-01 17:25:08 -07:00
Juan Tejada
ac089c4d8d update(sidebar): Moves accounts in sidebar state to FocusedPerspectiveStore
Summary:
- FocusedPerspectiveStore now holds the state of the accounts that are currently being displayed in the sidebar, i.e. unified inbox or not, which makes it globally accessible state. The SidebarStore just reads this state directly off of the FocusedPerspectiveStore to decide which sections and items to display in the sidebar.
- Updates `Actions.focusDefaultMailboxPerspectiveForAccounts` to take an optional array of `sidebarAccountIds` to set in the sidebar. The default behavior is to show the accounts of the perspective that will be focused. E.g. when selecting an account via the account switcher, it will just show the sidebar items for the single account that was selected, but when adding a new account, we are setting the sidebar accounts to all account although we are still focusing the perspective for a single account.
- Will now show unified inbox sidebar with correctly focused account when new account added.
- Cleans up the code a little bit, but this package still needs major refactor

Test Plan: Missing!

Reviewers: jackie, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D3002
2016-06-01 17:13:46 -07:00
Jackie Luo
11d5b26548 🎨(participant-profile): Use UI variables 2016-06-01 16:08:10 -07:00
Ben Gotow
8860326065 fix(account-store): Update fake data import for screenshots 2016-06-01 15:55:44 -07:00
Jackie Luo
5055ba59a9 🎨(load): Update loading screen to new style 2016-06-01 15:43:24 -07:00
Ben Gotow
3615c7ea49 fix(undo): Improve messaging around label changes, modernize undo-redo-store
Summary: Just a small patch to address bad messaging

Test Plan: Run one new test!

Reviewers: jackie, juan

Reviewed By: jackie, juan

Differential Revision: https://phab.nylas.com/D3000
2016-06-01 14:36:57 -07:00
Jackie Luo
311e21e615 🎨(sidebar): Fix button to add folder/label 2016-06-01 13:54:23 -07:00
Jackie Luo
d40f9de330 fix(tracking): Add key and refactor code 2016-06-01 12:59:12 -07:00
Juan Tejada
839c60f5b5 fix(build): Fix open-tracking specs 2016-06-01 12:37:06 -07:00
Jackie Luo
58e1ed57ee fix(badge): Add option for total count 2016-06-01 11:42:21 -07:00
Jackie Luo
2f7d64b27a fix(emoji): Remove special casing for Outlook emoji 2016-06-01 11:11:51 -07:00
Jackie Luo
10ac3fcb30 feat(tracking): Add message history for open and link tracking
Summary: Message-specific history for opens and clicks will now be
available in popovers while viewing the message.

Test Plan: Tested locally.

Reviewers: bengotow, evan, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D2995
2016-06-01 11:10:17 -07:00
Ben Gotow
1df70e14f1 fix(es6): Converstion broke file uploads by adding body: {} 2016-05-31 21:11:01 -07:00
Ben Gotow
6602087910 fix(specs): Empty parameter list 2016-05-31 19:10:11 -07:00
Ben Gotow
9892473513 fix(category-picker): Update specs for sorting 2016-05-31 17:05:17 -07:00
Ben Gotow
04f5d2968f fix(category-picker): Sort categories displayed in picker 2016-05-31 17:01:02 -07:00
Ben Gotow
b160f6d181 fix(mail-rules): Fix re-ordering of mail rules 2016-05-31 16:42:03 -07:00
Ben Gotow
856334c088 fix(tasks): Call super.isDependent, wrap model lookup in transaction
Summary:
ChangeFolder/ChangeLabel still need to call super.isDependentOnTask!

Formalize "retrieve latest models" part of the performLocal process, ensure that it's always /inside/ the transaction that is going to write the changes. This ensures that queueing two tasks for the same thread at the same time don't cause a race...

...condition between the two tasks (end result is currently arbitrary!)

Add "move to label" mail rule to go alongside "Add Label"

Test Plan: All broken... willfix.

Reviewers: juan, evan, jackie

Reviewed By: evan, jackie

Differential Revision: https://phab.nylas.com/D2999
2016-05-31 16:31:24 -07:00
Jackie Luo
9c04be3e20 fix(themes): Add Less is More to list ordering 2016-05-31 14:35:49 -07:00
Ben Gotow
eb3b26deb7 fix(auth): Wait 150s for Exchange autodiscovery to complete 2016-05-31 14:04:22 -07:00
Ben Gotow
94b59f2562 fix(unified-inbox): If a Gmail account is present, show Important 2016-05-31 12:24:38 -07:00
Ben Gotow
2dac16f9ca fix(pro): Upgrade buttons go to /payment 2016-05-31 12:24:38 -07:00
Ben Gotow
cabc052c18 fix(config): When resetting config, use template file 2016-05-31 12:24:38 -07:00
Ollie Ford
3b42b2d03b warns suspicious message only on differing domain (#2343)
For example, the following is *not* suspicious:
```
From: foo@example.org
Reply-To: bar@example.org
```

While the following remains suspicious:
```
From: foo@example.org
Reply-To: foo@example.com
``` 

This commit fixes #2342.
2016-05-31 12:08:18 -07:00
Juan Tejada
0cf8ccc0c2 fix(mail-merge): Add missing method in mail-merge decorator 2016-05-31 11:42:20 -07:00
Ben Gotow
147bb38c6a fix(pro): Don't refresh identity unless one is present 2016-05-27 15:37:49 -07:00
Jackie Luo
cf0ad099e1 fix(email-frame): Allow events to bubble correctly and pass iframe 2016-05-27 15:18:12 -07:00
Ben Gotow
4a738602ab feat(pro): New Nylas identity provider, onboarding and auth
commit 50d0cfb87c
Author: Ben Gotow <bengotow@gmail.com>
Date:   Fri May 27 14:01:49 2016 -0700

    IdentityStore conveniene methods for subscription state

commit 80c3c7b956
Author: Ben Gotow <bengotow@gmail.com>
Date:   Fri May 27 12:03:53 2016 -0700

    Periodically refresh identity, show expired notice in top bar

commit 5dc39efe98
Merge: 4c4f463 906ea74
Author: Juan Tejada <juans.tejada@gmail.com>
Date:   Thu May 26 15:17:46 2016 -0700

    Merge branch 'bengotow/n1-pro' of github.com:nylas/N1 into bengotow/n1-pro

commit 4c4f463f4b
Author: Juan Tejada <juans.tejada@gmail.com>
Date:   Thu May 26 15:16:48 2016 -0700

    Hijack links inside email that go to billing site and add SSO to them

commit 906ea74807
Author: Ben Gotow <bengotow@gmail.com>
Date:   Thu May 26 12:02:29 2016 -0700

    Add custom welcome page for upgrading users

commit 2ba9aedfe9
Author: Juan Tejada <juans.tejada@gmail.com>
Date:   Wed May 25 17:27:12 2016 -0700

    Add styling to Subscription tab in prefs

commit 384433a338
Author: Ben Gotow <bengotow@gmail.com>
Date:   Wed May 25 16:21:18 2016 -0700

    Add better style reset, more IdentityStore changes

commit c4f9dfb4e4
Author: Ben Gotow <bengotow@gmail.com>
Date:   Wed May 25 15:29:41 2016 -0700

    Add subscription tab

commit bd4c25405a
Author: Ben Gotow <bengotow@gmail.com>
Date:   Wed May 25 14:18:40 2016 -0700

    Point to billing-staging for now

commit 578e808bfc
Author: Ben Gotow <bengotow@gmail.com>
Date:   Wed May 25 13:30:13 2016 -0700

    Rename account helpers > onboarding helpers

commit dfea0a9861
Author: Ben Gotow <bengotow@gmail.com>
Date:   Wed May 25 13:26:46 2016 -0700

    A few minor fixes

commit 7110217fd4
Author: Ben Gotow <bengotow@gmail.com>
Date:   Wed May 25 12:58:21 2016 -0700

    feat(onboarding): Nylas Pro onboarding overhaul

    Summary:
    Rip out all invite-related code

    Enable Templates and Translate by default

    Scrub packages page, unused code in onboarding pkg

    Remove resizing

    New onboarding screens

    IMAP provider list, validation

    Call success with response object as well

    Renaming and tweaks

    Test Plan: No tests yet

    Reviewers: evan, juan, jackie

    Differential Revision: https://phab.nylas.com/D2985

commit dc9ea45ca9
Author: Ben Gotow <bengotow@gmail.com>
Date:   Wed May 25 12:52:39 2016 -0700

    Renaming and tweaks

commit 5ca4cd31ce
Author: Ben Gotow <bengotow@gmail.com>
Date:   Wed May 25 11:03:57 2016 -0700

    Call success with response object as well

commit 45f14f9b00
Author: Ben Gotow <bengotow@gmail.com>
Date:   Tue May 24 18:26:38 2016 -0700

    IMAP provider list, validation

commit c6ca124e6e
Author: Ben Gotow <bengotow@gmail.com>
Date:   Sat May 21 11:14:44 2016 -0700

    New onboarding screens

commit dad918d926
Author: Ben Gotow <bengotow@gmail.com>
Date:   Thu May 19 16:37:31 2016 -0700

    Remove resizing

commit ecb1a569e2
Author: Ben Gotow <bengotow@gmail.com>
Date:   Thu May 19 16:36:04 2016 -0700

    Scrub packages page, unused code in onboarding pkg

commit 3e0a44156c
Author: Ben Gotow <bengotow@gmail.com>
Date:   Thu May 19 16:33:12 2016 -0700

    Enable Templates and Translate by default

commit 0d218bc86f
Author: Ben Gotow <bengotow@gmail.com>
Date:   Thu May 19 16:30:47 2016 -0700

    Rip out all invite-related code
2016-05-27 14:21:19 -07:00
Juan Tejada
3398640e86 fix(mail-merge): Switch to using new overlaid components api
Summary:
- Fixes several selection and focus issues along the way
- Can now preview what tokens will look like when not editing
- Adds decorator to listen to mail merge session changes and removes a bunch of duplicated code
- Gets rid of all imperative code (and specs) that had to imperatively
reach into the dom to update the tokens

Test Plan: - Unit tests

Reviewers: bengotow, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D2989
2016-05-27 11:02:44 -07:00
Jackie Luo
6ba667daa2 fix(draft): Return transformed draft correctly 2016-05-26 12:27:25 -07:00
Jackie Luo
e3b112030a Revert "🎨(ui-dark): Remove iframe inversion" 2016-05-25 23:46:36 -07:00
Ben Gotow
3d5b21e4b2 fix(packages): Show version numbr of 3rd party plugins 2016-05-25 14:13:42 -07:00
Ben Gotow
7bdcde7f3a fix(ubuntu): Update theme, fix a few strange glitches 2016-05-25 14:03:09 -07:00
Ben Gotow
3fdffb4b81 fix(config): removeAtKeyPath => undo, guard with assertions 2016-05-25 14:03:09 -07:00
Juan Tejada
48556bef98 fix(build): Fix remaining specs (composer-view, send-draft-task) 2016-05-25 10:25:36 -07:00
Juan Tejada
78d27bc62a fix(specs): Fix merge conflicts and some specs 2016-05-24 19:04:20 -07:00
Juan Tejada
771ba62baa fix(nylas-exports): Remove nonexistent module 2016-05-24 17:56:15 -07:00
Juan Tejada
f3be415a7f fix(build): Fix lint error 2016-05-24 17:53:15 -07:00
Juan Tejada
0ec108c906 fix(mail-merge): Refactor mass sending procedure
Summary:
This diff introduces several updates to mail merge to improve the procedure for sending a list of drafts.
Specifically, sending mass email will now:

- Clear mail merge metadata on the drafts that will actually be sent
- Upload attached files only /once/, and reuse those files on the drafts that will actually be sent
- Minimize database writes for new drafts being created
- Will queue a SendManyDraftsTask that will subsequently queue the necessary SendDraftTasks and keep track of them, and notify of any failed tasks

TODO:
- Add state to MailMerge plugin for failed sends and ability to attempt to re send them

Test Plan: - TODO

Reviewers: evan, bengotow, jackie

Reviewed By: bengotow, jackie

Subscribers: jackie

Differential Revision: https://phab.nylas.com/D2973
2016-05-24 17:22:09 -07:00
Evan Morikawa
8799215048 feat(scheduler): Add Overlaid Components
Summary:
SEE ASSOCIATED SUBMODULE DIFF

This enables rich React components (like the Scheduler's `NewEventCard`)
to be used in contenteditables.

We introduce the concept of an "Overlaid Component". These are rendered
React components that are absolutely positioned on top of an equivalent
"Anchor" in a contenteditable.

Inside the contenteditable are special `<img />` tags that have an
id corresponding to a particular rich overlaid component. This way, even
if those img tags are cut and pasted or moved, they'll have a mapping to a
  particular component stored in the `OverlaidComponentStore`. Img tags
  are fairly well handled natively by contenteditable and allow you to
  maniuplate these overlaid components as normal text elements.

The `OverlaidComponentStore` is responsible for listening to and managing
the state of the Anchors and their equivalent OverlaidComponents.

We use a decorator called `ListenToChanges` that allows us to wrap
components to update their corresponding anchor. Since we need to know
about ALL changes that could affect rendered height and width, we need to
use a `MuatationListener` instead of the React render cycle.

This is only the initial diff. There are several TODOs here:
https://paper.dropbox.com/doc/Composer-Overlaid-Components-FoZrF0cFggzSUZirZ9MNo

Test Plan: TODO. Manual

Reviewers: juan, bengotow

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D2946
2016-05-24 15:47:49 -07:00
Ben Gotow
bf955891d9 fix(undo): Move undo/redo to session, properly undo all changes
Summary:
- Simplify undoManager to just maintain the undo/redo history items
- DraftEditingSession manages snapshotting state of draft, hack allows it to also save selection (still hoping to eventually put selection in body HTML as markers)
- Switch from `debounce` to `throttle` style behavior so typing for along time followed by undo doesn't undo away your entire block.

This resolves two issues:
+ Changes to participant fields are no longer undoable because they go straight to the session.
+ Changes to metadata weren't undoable.

Test Plan: Tests WIP

Reviewers: evan, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D2956
2016-05-24 11:48:33 -07:00
Jackie Luo
eabdd78935 feat(multi-send): Allow multi-send for non-Exchange accounts
Summary:
Updates the send task to use multi-send for emails with link/open tracking metadata sent via SMTP. Places an email without link/open tracking in the sent folder.

TODO: Override send button (i.e., mail merge) and move all of the multi-send tasks to package.

Test Plan: Tested locally.

Reviewers: evan, bengotow, juan

Reviewed By: bengotow, juan

Differential Revision: https://phab.nylas.com/D2974
2016-05-24 11:24:57 -07:00