Commit graph

155 commits

Author SHA1 Message Date
Ben Gotow
3ed9ca6058 fix(onboarding): Switch images into appropriate places 2016-06-08 14:10:09 -07:00
Ben Gotow
5ff40f989a fix(onboarding): Final tutorial screenshot 2016-06-08 14:05:18 -07:00
Ben Gotow
7d52bb0d3c fix(onboarding): Don't allow going back into N1 signin 2016-06-08 13:48:56 -07:00
Evan Morikawa
5214294e6f fix(analytics): fix identify 2016-06-07 18:19:41 -07:00
Ben Gotow
c35e9a564d fix(keybase): Disable by default, remove duplicate dependencies 2016-06-07 14:15:54 -07:00
Evan Morikawa
c7e2beee8b fix(analytics): improved analytics 2016-06-07 13:38:47 -07:00
Jackie Luo
0387f613e9 fix(onboarding): Add notice about cloud sync 2016-06-07 13:07:12 -07:00
Ben Gotow
c61fdfb317 fix(css): Fix CSS regression, remove unused assets 2016-06-03 17:01:48 -07:00
Ben Gotow
cf9941fe5a fix(onboarding): Message for 400+ server error codes 2016-06-03 16:38:59 -07:00
Ben Gotow
1f27e00069 fix(onboarding): Only show the welcome page if not already seen 2016-06-03 16:09:25 -07:00
Ben Gotow
c1bbec25cd fix(identity): deprecate updaterId, provide safe access to identity.id 2016-06-02 18:56:09 -07:00
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
Ben Gotow
3270ac48fc fix(tutorial): Incorrect strings 2016-06-01 17:25:08 -07:00
Ben Gotow
8860326065 fix(account-store): Update fake data import for screenshots 2016-06-01 15:55:44 -07:00
Ben Gotow
eb3b26deb7 fix(auth): Wait 150s for Exchange autodiscovery to complete 2016-05-31 14:04:22 -07:00
Ben Gotow
147bb38c6a fix(pro): Don't refresh identity unless one is present 2016-05-27 15:37:49 -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
Ben Gotow
3559f5e419 fix(config): Move all reads / writes to the main process
Summary:
Moves all reading / writing of config file to the main process,
to avoid needing to write code to lock across processes. This should also
be more efficient than re-loading the file in all processes when it's
saved.

Test Plan: Run tests

Reviewers: evan, jackie

Reviewed By: evan, jackie

Differential Revision: https://phab.nylas.com/D2963
2016-05-16 16:38:46 -05:00
Ben Gotow
7de7c53ee2 fix(auth): Revert imap => custom, bump package.json 0.4.37 2016-05-15 11:14:16 -05:00
Ben Gotow
8f29e1cfbe fix(401/403): Unify error bars, query /account, improve reconnect flow
Summary: See https://paper.dropbox.com/doc/Sync-disabling-for-N1-URZmjVpSSxWFvjC62TiFI

Test Plan: Tests incoming

Reviewers: juan, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D2959
2016-05-13 14:16:54 -07:00
Ben Gotow
4fd66e194f feat(mail-merge): Import CSV button 2016-04-29 13:55:11 -07:00
Evan Morikawa
e2dcc7b435 fix(onboarding): pass along accountId too 2016-04-29 10:20:59 -07:00
Karim Hamidou
b82e47ba34 [N1] Changes to allow running edgehill-server locally
Summary: This is mostly config changes.

Test Plan: Tested the Google OAuth flow.

Reviewers: bengotow, drew

Reviewed By: bengotow, drew

Differential Revision: https://phab.nylas.com/D2907
2016-04-29 10:18:51 -07:00
Evan Morikawa
687ecbfcc3 fix(onboarding): encode welcome page info 2016-04-28 17:06:47 -07:00
Evan Morikawa
b3ea335345 feat(onboardin): fix win closing & nav to welcome page 2016-04-28 15:29:13 -07:00
Evan Morikawa
e90735ed6e feat(win): faster popout windows
Summary:
This diff is designed to dramatically speed up new window load time for
all window types and reduce memory consumption of our hot windows.

Before this diff, windows loaded in ~3 seconds. They now boot in a couple
hundred milliseconds without requiring to keep hot windows around for
each and every type of popout window we want to load quickly.

One of the largest bottlenecks was the `require`ing and initializing of
everything in `NylasExports`.

I changed `NylasExports` to be entirely lazily-loaded. Drafts and tasks
now register their constructors with a `StoreRegistry` and the
`TaskRegistry`. This lets us explicitly choose a time to activate these
stores in the window initalization instead of whenever nylas-exports
happens to be required first.

Before, NylasExports was required first when components were first
rendering. This made initial render extremely slow and made the proposed
time picker popout slow.

By moving require into the very initial window boot, we can create a new
scheme of hot windows that are "half loaded". All of the expensive
require-ing and store initialization is done. All we need to do is
activate the packages for just the one window.

This means that the hot window scheme needs to fundamentally change from
have fully pre-loaded windows, to having half-loaded empty hot windows
that can get their window props overridden again.

This led to a major refactor of the WindowManager to support this new
window scheme.

Along the way the API of WindowManager was significantly simplifed.
Instead of a bunch of special-cased windows, there are now consistent
interfaces to get and `ensure` windows are created and displayed. This
DRYed up a lot of repeated logic around showing or creating core windows.

This also allowed the consolidation of the core window configurations into
one place for much easier reasoning about what's getting booted up.

When a hot window goes "live" and gets populated, we simply change the
`windowType`. This now re-triggers the loading of all of the packages for
the window. All of the loading time is now just for the packages that
window requires since core Nylas is there thanks to the hot window
mechanism.

Unfortunately loading all of the packages for the composer was still
unnaceptably slow. The major issue was that all of the composer plugins
were taking a long time to process and initialize. The solution was to
have the main composer load first, then trigger another window load
settings change to change the `windowType` that loads in all of the
plugins.

Another major bottleneck was the `RetinaImg` name lookup on disk. This
requires traversing the entire static folder synchronously on boot. This
is now done once when the main window loads and saved in a cache in the
browser process. Any secondary windows simply ask the backend for this
cache and save the filesystem access time.

The Paper Doc below is the current set of manual tests I'm doing to make
sure no window interactions (there are a lot of them!) regressed.

Test Plan: https://paper.dropbox.com/doc/Window-Refactor-UYsgvjgdXgVlTw8nXTr9h

Reviewers: juan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2916
2016-04-22 13:30:42 -07:00
Drew Regitsky
b0fbdf7469 fix(onboarding): Add missing return statement when changing endpoints 2016-04-13 17:41:31 -07:00
Drew Regitsky
d098c96653 fix(onboarding): Change error notification for endpoint changes 2016-04-13 16:13:25 -07:00
Ben Gotow
7183918ab2 fix(auth): Fix missing var. This is why we should go ES6! 2016-04-11 10:48:16 -07:00
Drew Regitsky
2edc2e5c32 feat(auth): Provide reauth param to handle changed server endpoints
Summary:
Notify the backend when auth is a reauth of an existing account by
providing the `accountId`. This lets the backend differentiate between
a new auth (where a new account will be created if the server endpoints
don't match) and a re-auth (where the auth will fail on server endpoint
mismatch, prompting the user).

Test Plan: manual

Reviewers: juan, evan, bengotow

Reviewed By: bengotow

Subscribers: mg, spang, kav-ya

Differential Revision: https://phab.nylas.com/D2833
2016-04-08 12:00:03 -07:00
Ben Gotow
886328ff7a bump(react): 0.13.2 => 0.14.7
Great breakdown of React changes here:
https://github.com/facebook/react/blob/master/CHANGELOG.md#0140-october-7-2015

Due to deprecation warnings, I don't think this will break third-party extensions unless they were doing really bad things.
2016-03-29 01:43:12 -07:00
Ben Gotow
9aba847a92 fix(onboarding): Focus first field when showing settings #1696 2016-03-18 14:03:37 -07:00
Ben Gotow
306440dd38 fix(onboarding): We should accept IPs for servers during auth 2016-03-10 12:08:05 -08:00
Ben Gotow
12b1609206 fix(onboarding): Make links in error messages clickable 2016-03-10 12:08:05 -08:00
Ben Gotow
80942db92b 💄(onboarding): Minor style changes to account choose page 2016-03-09 11:40:56 -08:00
Evan Morikawa
b1c6527990 feat(onboarding): update account-choose page 2016-03-04 16:53:26 -05:00
Evan Morikawa
ec187ab63f feat(onboarding): restyle step 3 2016-03-04 16:48:16 -05:00
Evan Morikawa
1b69adb1bb feat(onboarding): style page 2 2016-03-04 16:48:16 -05:00
Evan Morikawa
6a690723ae feat(onboarding): style page 1 2016-03-04 16:48:16 -05:00
Ben Gotow
5a3f7ad26c fix(auth): re-enable ssl_required checkbox with backend support 2016-03-04 13:29:18 -08:00
Evan Morikawa
11c119393e fix(account): re-add token if a new one comes in
Summary: fix(account): allow users to reconnect accounts if auth has failed

Test Plan: manual

Reviewers: bengotow, juan

Differential Revision: https://phab.nylas.com/D2663
2016-03-01 16:02:20 -08:00
Ben Gotow
cae9feaff7 temp(onboarding): Remove checkbox for option not yet on prod 2016-02-26 16:49:46 -08:00
logandavis
79b800c2a3 Re-add SSL checkboxes with name ssl_required
Summary:
Now that IMAP auth without SSL is enabled,
those checkboxes that weren't doing anything can come
back.

Test Plan:
This change isn't fully tested and should be thoroughly
inspected (on staging?) before rollout. The N1 end works and sends
parameters correctly, but a 401 prevented local testing of the
interface between N1 auth and sync-engine auth.

Reviewers: bengotow, drew

Reviewed By: drew

Subscribers: kav-ya

Maniphest Tasks: T6666

Differential Revision: https://phab.nylas.com/D2632
2016-02-25 14:38:49 -08:00
Evan Morikawa
dd6cefc3f8 fix(read-receipts): Style fixes to link tracking and read receipts 2016-02-23 18:58:07 -08:00
Ben Gotow
9541343835 💄(send-later): Lots of styling of send-later 2016-02-23 13:52:18 -08:00