Commit graph

1862 commits

Author SHA1 Message Date
Ben Gotow f655ce9821 fix(auth): Hide title when long acct. err present 2016-10-20 16:26:52 -07:00
Ben Gotow 2b36e9d8a9 fix(overlaid): Preview button was just invisible? 2016-10-20 16:10:09 -07:00
Ben Gotow ccbd717c6e fix(search): Missed a .default 2016-10-20 12:21:15 -07:00
Ben Gotow fe82977574 fix(search): React warns, convert to ES2016 2016-10-20 12:09:53 -07:00
Ben Gotow 73c0ec500b fix(db): Return; preventing ThreadSearch indexing 2016-10-19 16:54:00 -07:00
Ben Gotow f71686b766 fix(beta): Add notif when on beta channel 2016-10-18 12:39:09 -07:00
Halla Moore 6b012cfb7a fix(thread-popout) Add missing packages to the 'thread-popout' window
Summary: Missed some non-composer packages that should be in the 'thread-popout' window

Test Plan: Tested locally

Reviewers: bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D3352
2016-10-18 11:02:30 -07:00
Ben Gotow c20238314d lint(*): Bump to ESLint 3.8 2016-10-17 18:07:35 -07:00
Ben Gotow 51f9001c21 cleanup(*): Remove dead .bowerrc, .gitignore files 2016-10-14 11:39:34 -07:00
Ben Gotow 6b75904e84 Add main window calendar package
Summary: Add tiny helper app for calendar goodness

Test Plan: No tests yet

Reviewers: juan, halla

Reviewed By: halla

Differential Revision: https://phab.nylas.com/D3346
2016-10-14 11:38:31 -07:00
Ben Gotow c7a85af843 feat(dock): Automatically add N1 to the OS X dock upon install
Note - you need to `killall Dock` to see this after it happens
2016-10-13 15:01:51 -07:00
Ben Gotow 8df4f6d744 feat(win32): Allow N1 to become the system-wide mailto: handler
Summary: This will address the longstanding concern in #417

Test Plan: No new tests

Reviewers: juan, evan

Reviewed By: juan, evan

Maniphest Tasks: T7065

Differential Revision: https://phab.nylas.com/D3322
2016-10-12 16:05:36 -07:00
Evan Morikawa a23931454d fix(analytics): Add pgp encryption events
Email Encrypted
Email Encryption Errored
Email Decrypted
Email Decryption Errored
2016-10-12 17:29:58 -04:00
Halla Moore 1c675935a7 feat(popout-threads) Add functionality to open threads in popout windows
Summary:
Threads can now be opened in separate windows. This can be done via the popout
icon next to the print icon, or by double-clicking the thread when in double-
pane mode. Note that the single-click action is still fired, which is why
double-clicking does not work in single-pane mode. The popout icon changes to a
pop-in icon while in the popout window, to allow users to collapse it back into
the main window.

Test Plan: Tested locally

Reviewers: evan, juan

Reviewed By: juan

Subscribers: sdw

Differential Revision: https://phab.nylas.com/D3332
2016-10-12 13:55:11 -07:00
Halla Moore 873c4be2da Switch spellcheck libaries
Summary:
Switch to electron-spellchecker, which will allow N1 to
spellcheck more intelligently across languages. It auto-
detects languages and downloads dictionaries on the fly.

Test Plan: Specs, manual testing

Reviewers: bengotow, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3319
2016-10-11 14:00:50 -07:00
Ben Gotow 21b93d2173 fix(onboarding): Fire event when user selects account type 2016-10-07 10:16:20 -07:00
Evan Morikawa e48b81d8de refator(notification): move base notification to nylas-component-kit 2016-10-06 10:53:22 -07:00
Ben Gotow e57fd2c678 fix(templates): Handle error when scanning dir (Sentry 44351)
https://sentry.nylas.com/sentry/edgehill/group/44351/
2016-10-04 14:15:52 -07:00
Ben Gotow 4160757c9e fix(phising): Handle scenarios where input is malformed (Sentry 51642)
https://sentry.nylas.com/sentry/edgehill/group/51642/
2016-10-04 14:15:52 -07:00
Juan Tejada de9e627924 fix(lint) 2016-10-04 12:06:43 -07:00
Halla Moore 9e3c3c14cd feat(sidebar-notifs) Create sidebar notifications to replace old bars
Summary:
Move the old bar notifications to the sidebar, and only display one notification
at a time using a priority-rating system. Remove all of the old notification
infrastructure.

Test Plan: Added specs, also reproduced notifications locally

Reviewers: bengotow

Reviewed By: bengotow

Subscribers: juan

Differential Revision: https://phab.nylas.com/D3310
2016-10-04 08:08:23 -07:00
Ben Gotow aa7ef91b0b fix(files): When download mode is “manual” prompt about inline attachments
Summary:
When you have your "Download attachments for new mail" setting set
to "manually", inline images always appear broken with no explanation.

This patch listens for the image load to fail and displays a button which
queues the fetchFile task on click. This seemed like the best approach because
it doesn't slow down the loading of the message with more fstats / lookups.
(Seeing if the file has already been downloaded is an async operation)

Test Plan: No specs atm

Reviewers: evan, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3313
2016-10-03 11:22:44 -07:00
Evan Morikawa 83f455f031 fix(composer): fix margin when editing contact chip 2016-10-02 12:05:25 -04:00
Evan Morikawa 8e3b436ba3 fix(composer): enable click regions on margins of composer
Change padding, margins, and borders to allow you to click on the left
margin of to, cc, bcc, from, subject fields as well as the composer
margins both above, left, and to the right of the composer.

Ensured attachments and other assets show up in correct spots

Ensure subject looks correct for mail merge
2016-10-02 12:04:55 -04:00
Juan Tejada 3d69ebbabb fix+🎨(notifs): Cleanup, handle nonexistent thread when opening notification
Notifications now check to see the thread they are supposed to open
exists.

Also, clean up FocusedContentStore._onFocus so that it doesn't have the side
effect of dispatching another action and messay logic.
Instead, added Actions.ensureCategoryFocused, to focus any category, and which
should be used separately from focusing content (notifications now use
this action for "opening" the thread)
Also, convert FocusedPerspectiveStore to ES6
2016-10-01 00:08:19 -07:00
Ben Gotow 0af15efae4 fix(specs): Minor spec fixes 2016-09-30 11:58:57 -07:00
Ben Gotow 7236b9e47f fix(spellcheck): Do not spellcheck <code>, <a>, <pre> tags
This fixes #2877. The templates feature becomes broken when variable names contain misspellings.
2016-09-30 11:53:52 -07:00
Ben Gotow 2dc779c5be fix(participants): When copying, include space #2871 2016-09-30 10:48:34 -07:00
Halla Moore 3264175b54 feat(self-hosting) Add onboarding page about self-hosting plugin restrictions 2016-09-29 12:12:05 -07:00
Ben Gotow 56285ad6c4 feat(bios): Linkify twitter hashtags and mentions in bios 2016-09-29 11:25:08 -07:00
Juan Tejada b23c55d5b4 fix(dev): Pretty print deltas 2016-09-28 16:51:50 -07:00
Juan Tejada b14d52b482 fix(draft-list): Don't render html string in draft subject 2016-09-28 16:02:47 -07:00
Ben Gotow 2739cc822e fix(identity): Always refresh accounts after identity
This fixes an issue where changing your Nylas ID didn’t refresh your accounts, and N1 would still think they were invalid.
2016-09-28 11:29:26 -07:00
Ben Gotow 60d0d94b1b fix(react): React refuses to add partition attr to webview 2016-09-28 11:29:26 -07:00
Juan Tejada 4f8ad70d60 fix(search): Update local search syntax to include more results
Add prefix search. Previously, if searching for a thread with a specific
subject, you had to type the entire subject. Searching for just a prefix
wouldn't return the result.
This should not affect any of the current search results, only add more results
2016-09-28 11:06:10 -07:00
Jackie Luo e10a0668ed fix(lint): Change variable to const 2016-09-27 23:39:10 -07:00
Ben Gotow 109fb21dc7 fix(thread-list): Use interaction handlers, don’t update selection directly 2016-09-27 16:31:28 -07:00
Ben Gotow 3cfd16fc1b fix(composer): No need for overlaid z-index: 10, appearing over menus 2016-09-27 14:40:58 -07:00
Ben Gotow a0ab700ca6 💄(mail-merge): Fix alignment and height of tokens 2016-09-27 14:36:58 -07:00
Ben Gotow 8fada3b9da fix(sidebar): Command-click + href to open in background
Global window event handler should work when clicking elements /inside/ of an a tag with an href.
2016-09-27 14:36:58 -07:00
Ben Gotow 53fcbfc00e 💄(sidebar): Github repos should not wrap 2016-09-27 14:36:58 -07:00
Jackie Luo 42274b656c fix(install-location): Update language and remove buggy regex 2016-09-27 10:35:50 -07:00
Juan Tejada fc87ae5ef1 fix(lint) 2016-09-26 17:22:08 -07:00
Ben Gotow 039d9bea61 feat(inline-images): Drag & drop or paste inline images
Summary: Initial support for inline images. Tests still forthcoming!

Test Plan: WIP

Reviewers: mark, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3295
2016-09-26 17:01:19 -07:00
Mark Hahnenberg dde4738363 Fix broken test
Summary:
Fixes a test that was broken due to my unfamiliarity with
CoffeeScript :-/

Test Plan: Tests

Reviewers: bengotow

Reviewed By: bengotow

Subscribers: juan

Differential Revision: https://phab.nylas.com/D3302
2016-09-26 16:49:22 -07:00
Juan Tejada 6051512276 fix(contact-sidebar): Correctly update selected contact
Sometimes, when selecting a contact (with name, email) inside a thread,
the dropdown (`<select>`) did not correctly reflect the selected
contact.

This was because when focusing a contact, the FocusedContactStore
queried that contact from the database just by email, and the contact
retured from the database became the focused one. However, sometimes the
returned contact might have the same email but different email, and
given that the `<select>` component is keyed by both name,email, it
couldn't find the appropriate <option> to render, so it could not update
to reflect the newly selected contact

Now, the FocusedContactStore queries by email and name to prevent this
2016-09-26 16:34:29 -07:00
Mark Hahnenberg 0319528988 Add jitter to BackoffTimer
Summary:
This should help us avoid the thundering herd problem if we have some
kind of API outage affecting a wide number of clients.

Test Plan: Tests

Reviewers: bengotow

Reviewed By: bengotow

Subscribers: juan

Differential Revision: https://phab.nylas.com/D3297
2016-09-26 13:36:49 -07:00
Juan Tejada 6e7495fe91 fix(mail-merge): Add test coverage 2016-09-26 11:20:10 -07:00
Ben Gotow 18d294c42f feat(transforms): Replace regexp body transforms with DOM approach
Summary:
We originally didn't do this because creating a DOM tree was loading images.
Using range.createContextualFragment seems to do it without the tree ever
being attached.

Accompanying changes to src/pro are here:
https://phab.nylas.com/D3300
https://github.com/nylas/edgehill/compare/bengotow/draft-dom-transformations?expand=1

Also rename applyTransformsToDraft => applyTransformsForSending. Needed
a new name because the function signature has changed. AFAIK there are no
open source plugins using the old functions.

Test Plan: All specs updated

Reviewers: evan, juan

Reviewed By: evan, juan

Differential Revision: https://phab.nylas.com/D3299
2016-09-23 16:36:08 -07:00
Juan Tejada 3dccb374b3 fix(search/long-conn): Process results buffer before ending connection (#750)
NylasLongConnection ends the connection when the 'end' event is emitted
by the `request` object. When this happens, the global connection buffer is cleared.
Also, the global buffer holds the data we've received from the connection, and
whenever we receive new data, we accumulate it in the buffer and call a processBuffer function
which is throttled to 400ms.

Given that the buffer is global state, and processing occurs
asynchronously with a delay of up to 400ms, if the 'end' event on the connection is
fired before we actually get to process the buffer, we would clear it and show no results.

This scenario currently only affected search because if we accidentally
threw away some data when streaming deltas, we will get that data again
when we reopen the delta streaming connection.
2016-09-22 12:08:59 -07:00
Ben Gotow ec5092c2f5 fix(specs): attribute conversion fixed bugs, broke specs 2016-09-21 11:56:54 -07:00
Ben Gotow c6d8bde6fd fix(accounts): Restore account re-ordering 2016-09-21 11:23:38 -07:00
Ben Gotow 7d7edb65bb hack(channel-picker): Hide Salesforce for now 2016-09-21 10:45:04 -07:00
Ben Gotow 298cb55054 bump(react): 15.3.x, warning removal, thread-sharing tweaks 2016-09-20 17:28:50 -07:00
Ben Gotow cfc23b729e lint(*): Fix issue breaking the build 2016-09-20 16:34:30 -07:00
Ben Gotow dc2590a834 fix(tooltips): Position relative to custom container for composer 2016-09-20 16:21:31 -07:00
Ben Gotow 3a975a0e73 fix(auth): Update autofill for Fastmail.fm 2016-09-20 15:52:36 -07:00
Ben Gotow 9e3d864962 fix(drag-drop): Restore support for thread dragging 2016-09-20 15:48:15 -07:00
Ben Gotow e533d063d0 fix(specs): Fix tests that were console.logging, bump coffee-react 2016-09-20 15:17:48 -07:00
Ben Gotow dfbde8b0cc fix(darkside): script/grunt lint requires explicit LESS includes 2016-09-20 10:26:44 -07:00
Jamie Wilson f14cb2e853 design tweaks, breaking css up into files, update readme (#2858) 2016-09-20 10:20:15 -07:00
Juan Tejada 5fc1b7de40 feat(msg-list): Don't make participants mailto links, add context menu 2016-09-19 19:33:52 -07:00
Evan Morikawa a7da53e51e fix(lint): import ui-variables for linter 2016-09-19 21:07:43 -04:00
Ben Gotow 8bc3f04b70 fix(trial): Move”days left” bar to the sidebar, new design 2016-09-19 17:21:55 -07:00
Ben Gotow 190e2713ce feat(channels): Choose an update channel! Limited time only!
Summary: Just a small select input.

Test Plan: Run tests

Reviewers: evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3282
2016-09-19 12:41:16 -07:00
Ben Gotow 664943354e bump(electron): Electron 1.4, node-sqlite 3.1.4+fts 2016-09-16 08:59:36 -07:00
Jackie Luo b6b3512639 fix(subscription): Remove hardcoded trial length 2016-09-14 11:21:48 -07:00
Ben Gotow 4ecbcdd074 fix(copy): Updating language for onboarding tour 2016-09-14 14:16:19 -04:00
Juan Tejada d383d3e637 fix(build): Fix lint errors 2016-09-14 10:14:50 -07:00
Juan Tejada ca54227f06 Add thread-sharing plugin
Summary:
Add thread-sharing plugin:

- Add popover to enable sharing
- Register custom nylas:// protocol to open a thread via protocol is thread exists

Test Plan: Manual

Reviewers: jackie, bengotow

Reviewed By: jackie, bengotow

Subscribers: jackie, halla

Differential Revision: https://phab.nylas.com/D3265
2016-09-14 00:04:20 -07:00
Ben Gotow 7533c7ae81 feat(tutorial): Overlay bubbles that guide you through initial features
Summary:
Add header to show how many trial days remain

More rendering out of Store, consolidate registry and store and expose via new serviceRegistry

WIP

Merge branch 'master' into hallamoore/feature-walkthrough-tutorial

Switch to using observable instead of AbortablePromise

Update submodule

WIP

WIP

Remove annotations

Remove changes

WIP

Test Plan: No tests

Reviewers: evan, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3260
2016-09-13 02:29:38 -04:00
Ben Gotow 59ac291ec0 Remove bad .jsx extension 2016-09-02 11:15:25 -07:00
Juan Tejada 7ed3e472dd fix(markdown): Update editor height 2016-09-01 20:21:13 -07:00
Juan Tejada 477e5f8c2c fix(markdown): Fix textarea bug (use our fork of simplemde)
- Textarea bug prevented us from typing in the markdown editor, almost
consistently. Seems to be a chrome bug
- Stop using textarea and use contenteditable instead via codemirror's
inputStyle option. Had to use our fork of simplemde to be able to pass that option
- Disable spellchecker also
2016-09-01 19:43:10 -07:00
Juan Tejada ae506d88f9 fix(markdown): Add setSelection method 2016-09-01 18:27:39 -07:00
Ben Gotow 263eb1349e Markdown support for quoted text / signatures 2016-09-01 17:31:59 -07:00
Juan Tejada 96e5c696a7 fix(markdown): Fix focusAbsoluteEnd 2016-09-01 16:52:55 -07:00
Juan Tejada 6b1b38a88c fix(markdown): Fix tabbing into composer 2016-09-01 16:44:53 -07:00
Evan Morikawa 2e86fe81ac fix(size): remove unused docs & screenshots 2016-09-01 11:32:52 -07:00
Evan Morikawa cfb47e95bd fix(size): Losslessly compress package images via ImageOptim 2016-09-01 11:32:52 -07:00
Ben Gotow 08c9bc19ea fix(onboarding): Fix React warnings, no back button to auth 2016-09-01 11:11:25 -07:00
Juan Tejada e4d808d19a plugins(*): Add identifying css classes to composer plugin buttons 2016-08-31 09:56:23 -07:00
Jackie Luo cbf40f50c0 feat(markdown): Add Markdown composer 2016-08-30 19:23:01 -07:00
Jackie Luo 5eeaddbb70 fix(onboarding): Receive user info correctly 2016-08-30 19:20:51 -07:00
Evan Morikawa c3826fa972 fix(onboarding): no longer show welcome page 2016-08-30 14:52:19 -07:00
Evan Morikawa ef8108efd1 fix(onboarding): fix injected js error and pass N1 version 2016-08-30 10:41:31 -07:00
Evan Morikawa 05cba2b6d1 feat(webview): can add .open-external class in webview 2016-08-29 19:07:44 -07:00
Jackie Luo 5a3456c5f8 fix(lint): Remove unused variable 2016-08-25 14:18:06 -07:00
Jackie Luo 379d11b31a feat(oauth): Add new component for OAuth sign-in
Summary: Future services that require OAuth get a cute new component that lets them connect more easily.

Test Plan: Tested manually.

Reviewers: juan, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3186
2016-08-25 10:44:32 -07:00
Evan Morikawa 5668444839 fix(dev): don't show tokens in developer api bar
Fixes #2756
2016-08-23 17:45:46 -04:00
Jackie Luo cb229485c3 feat(onboarding): Allow HTTPS in self-hosted sync engine onboarding 2016-08-23 10:46:44 -07:00
Juan Tejada 6c00098861 fix(msg-timestamp): Fix incorrect date var / convert to es6
- Typo in cjsx code broke the message timestamp
- Converted to es6 so this doesn't happen again!
2016-08-18 18:11:52 -07:00
Evan Morikawa b33ca08585 feat(app): dialog box prompting to move to Applications folder 2016-08-18 09:58:13 -07:00
Juan Tejada 43d02da5d9 fix(build): Fix specs and lint errors
Summary: Fix specs and lint errors

Test Plan: Unit

Reviewers: evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3168
2016-08-16 17:37:02 -07:00
Jackie Luo 4aa4a0eed9 fix(submodule): Remove submodule commit 2016-08-16 17:30:09 -07:00
Jackie Luo daaf4336d2 fix(tracking): Check for specific plugin before transforming body 2016-08-16 17:22:30 -07:00
Evan Morikawa e14812956c feat(install): add a checker for the install location
Summary:
Adds a new notification bar for mac users only that warns you if N1 is not
in your /Applications folder. Gives you the option to move it to your
/Applications folder.

Test Plan: manual

Reviewers: juan, jackie

Reviewed By: juan, jackie

Differential Revision: https://phab.nylas.com/D3166
2016-08-16 16:58:13 -07:00
Juan Tejada 05bb03bae1 fix(mail-merge/preview): Don't unmount components when toggling preview
Summary:
See edgehill revision: https://phab.nylas.com/D3160

- CustomContenteditableComponents.get now takes a single component to register as an overlaid component, and this component will be passed a prop `{isPreview: true}` when it is meant to be rendered as a preview. Update scheduler and mail-merge to use this new api.

- This prevents the mail merge state from being incorrectly updated when we toggled preview mode -- previously, it believed that the tokens had been unmounted when toggling preview, so they were incorrectly removed from the mail merge state.

- Additionally, makes sure that tokens are correctly added to the mail merge state whenever a token is rendered via componentDidMount -- previously, we only added the token to state when a token was dropped on the contenteditable, however, a token might be pasted or an anchor node might be added by any other means, in which case we want the mail merge state to reflect that. (Adds docs about this)

Test Plan: Manual

Reviewers: jackie, evan

Reviewed By: jackie, evan

Differential Revision: https://phab.nylas.com/D3161
2016-08-16 13:21:41 -07:00
Annie d57cca64d0 add(composer): Turn emails into mailto for debugging purposes
Summary:
fix(subject-field): Fix subject text field focus
Before, if you clicked a mailto link, once the composer loaded, the subject field (which was focused in composer-preload) blurred. This was not ideal as users would want to type once the popout loaded and instead they would have to click first. We identified that this was coming from the composer header _renderSubject injected component. We fixed the focus within mail merge subject text field and additionally added the onComponentDidChange method to injected component. This allowed us to only update the component when the header field changed.

Test Plan: tested on my machine for mailto links

Reviewers: juan

Reviewed By: juan

Subscribers: juan

Differential Revision: https://phab.nylas.com/D3150
2016-08-12 16:06:22 -07:00
Annie 1e6ea1dd07 fix(cursor): Make cursor focus at the top of email
Summary: When you would click outside the contenteditable in the composer, it would focus to the absolute end. Not ideal. I added a check if the click is above the top of the content editable -- if you click the top padding of it -- then focus at the beginning.

Test Plan: is this something i should test?

Reviewers: juan

Reviewed By: juan

Subscribers: juan

Differential Revision: https://phab.nylas.com/D3139
2016-08-12 14:27:31 -07:00