Commit graph

1734 commits

Author SHA1 Message Date
Evan Morikawa
6695de4187 feat(tasks): add Create, Update, Destroy tasks plus spec & lint fixes
Summary:
1. **Generic CUD Tasks**: There is now a generic `CreateModelTask`,
`UpdateModelTask`, and `DestroyModelTask`. These can either be used as-is
or trivially overridden to easily update simple objects. Hopefully all of
the boilerplate rollback, error handling, and undo logic won't have to be
re-duplicated on every task. There are also tests for these tasks. We use
them to perform mutating actions on `Metadata` objects.

1. **Failing on Promise Rejects**: Turns out that if a Promise rejected
due to an error or `Promise.reject` we were ignoring it and letting tests
pass. Now, tests will Fail if any unhandled promise rejects. This
uncovered a variety of errors throughout the test suite that had to be
fixed. The most significant one was during the `theme-manager` tests when
all packages (and their stores with async DB requests) was loaded. Long
after the `theme-manager` specs finished, those DB requests were
(somtimes) silently failing.

1. **Globally stub `DatabaseStore._query`**: All tests shouldn't actually
make queries on the database. Furthremore, the `inTransaction` block
doesn't resolve at all unless `_query` is stubbed. Instead of manually
remembering to do this in every test that touches the DB, it's now mocked
in `spec_helper`. This broke a handful of tests that needed to be manually
fixed.

1. **ESLint Fixes**: Some minor fixes to the linter config to prevent
yelling about minor ES6 things and ensuring we have the correct parser.

Test Plan: new tests

Reviewers: bengotow, juan, drew

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

Remove cloudState and N1-Send-Later
2016-01-15 15:16:21 -05:00
Karim Hamidou
da54fa7e29 [N1] Validate input in the signup dialog
Summary:
This diff bundles a number of small usability fixes to the "Create account" window. It notably:
- forces users to enter required fields before moving on to the next step
- validates email addresses and domain names

Test Plan: Tested manually by going through all the possible auth flows.

Reviewers: evan, juan, bengotow

Reviewed By: bengotow

Subscribers: bengotow

Projects: #edgehill

Differential Revision: https://phab.nylas.com/D2377
2016-01-15 11:27:14 -08:00
Drew Regitsky
fc20b60b61 fix(mail-rules): tiny CSS fix to "+" button in mail rules 2016-01-15 11:01:59 -08:00
Ben Gotow
8cd3176574 build(linux): Ensure that target files are not group writable
Should fix #710. Will move all 0775 => 0755 and 0664 => 0644
2016-01-13 16:09:53 -08:00
Drew Regitsky
f469fd29d8 fix(templates): rewritten "welcome" file / example template 2016-01-13 12:08:41 -08:00
Ben Gotow
70c3c18ca5 fix(newsletter): Checkbox refreshes properly when switching accounts 2016-01-13 11:45:48 -08:00
Ben Gotow
ad9242a387 Merge pull request #998 from nylas/set_s3_content_type
set the ContentType when uploading packages to S3.
2016-01-13 11:39:35 -08:00
Karim Hamidou
4ba827fc48 set the ContentType when uploading packages to S3. 2016-01-13 11:12:39 -08:00
Ben Gotow
7c749468e5 bump(version): 0.3.43 and changelog 2016-01-12 19:19:16 -08:00
Ben Gotow
fb41a8184e fix(specs): Spec fixes for 37e1f6bb 2016-01-12 19:11:47 -08:00
Ben Gotow
d78db0169c fix(contenteditable): exportedSelection isn't always an inst of ExportedSelection
This is a temporary fix that makes this function more robust to @innerState.exportedSelection not being an ExportedSelection instance.
2016-01-12 19:09:57 -08:00
Ben Gotow
e8997b0944 fix(spellcheck): Unwrap nodes with simpler code with less side effects 2016-01-12 19:03:04 -08:00
Juan Tejada
0dd87c80d7 fix(warnings): Don't issue a warning for attachments when word attach in
signature

- Fixes #912
2016-01-12 18:45:27 -08:00
Ben Gotow
5ad35cf4d0 fix(unread): Mark as read twice without visiting another unread thread 2016-01-12 17:14:17 -08:00
Ben Gotow
3edf4854cd bump(version): 0.3.42 (testing Windows autorestart) 2016-01-12 15:58:37 -08:00
Ben Gotow
f0bc344f0d bump(version): 0.3.41 2016-01-12 15:46:00 -08:00
Evan Morikawa
2f5a4f93bf fix(squirrel): remove apm from path 2016-01-12 18:36:44 -05:00
Evan Morikawa
ef8759dd62 fix(lint): fix linter issues in template store 2016-01-12 18:33:01 -05:00
Evan Morikawa
9726618069 fix(squirrel): fix win32 update to enable restart and launch from path 2016-01-12 18:17:30 -05:00
Ben Gotow
ba9af70b16 fix(accounts): Spec fixes for a03e8f70 2016-01-12 15:16:59 -08:00
Juan Tejada
c10d22f163 fix(fullscreen): Restore fullscreen if app was closed in fullscreen
Fixes #671
2016-01-12 15:12:43 -08:00
Ben Gotow
84a0125260 fix(accounts): Load accounts before adding a new one 2016-01-12 15:08:56 -08:00
Ben Gotow
cc2537b141 fix(sp): illegial => illegal 🙏 2016-01-12 14:39:16 -08:00
Ben Gotow
33d7cf5973 fix(paste): Keep <div> tags so pate between N1 emails works 2016-01-12 14:31:34 -08:00
Drew Regitsky
6cc0e6ca0d fix(templates): insert template no longer overwrites signature 2016-01-12 14:09:37 -08:00
Ben Gotow
5a12dde49c fix(drag): Drag and drop files with illegial path characters 2016-01-12 13:52:01 -08:00
Ben Gotow
8f45633fea fix(downloads): Escape all illegial path chars, don't make regex from path.sep 2016-01-12 13:52:01 -08:00
Ben Gotow
97d49256bd fix(packages): Default icon for third-party packages 2016-01-12 13:52:01 -08:00
Ben Gotow
c72e5099aa fix(composer): whilePreservingSelection should not call select if not activeElement 2016-01-12 13:52:01 -08:00
Ben Gotow
67a448db5d fix(selection): ExportedSelection must properly represent "None" 2016-01-12 13:52:01 -08:00
Juan Tejada
646785e182 fix(styles): Add bottom margin to templates plugin message 2016-01-12 13:46:50 -08:00
Drew Regitsky
c91a0c6062 fix(templates): fix several bugs in templates plugin
Fixes behavior when there are no template files, prevents renaming/creating
with an empty name, fixes yet another way to accidentally make yellow text,
misc small style fixes
2016-01-12 12:44:38 -08:00
Juan Tejada
57aee26256 fix(composer): Fix focus behavior when signature present and when
clicking outside:

- When focusing the composer via click inside the contenteditable region or via
tabbing, last text node before the signature (or blockquotes) will be focused.
- When focusing composer by clicking outside contenteditable region, it
  will default to default contenteditable focus behavior via new method:
  `nativeFocus`
2016-01-12 12:36:19 -08:00
Ben Gotow
c7ebbb189b fix(indicators): Remove duplicate description key 2016-01-12 10:28:34 -08:00
Ben Gotow
69ca8cf0e6 fix(readme): Remove link to plugins repo 2016-01-12 10:18:41 -08:00
Ben Gotow
5961adc505 bump(version): 0.3.40 2016-01-12 08:13:43 -08:00
Ben Gotow
b6d20ce88c fix(composer): Fix tabbing from body to subject 2016-01-11 18:13:42 -08:00
Ben Gotow
fa01a31631 fix(composer): 30px area would focus wrap instead of contenteditable. Fixes #935 2016-01-11 17:44:55 -08:00
Ben Gotow
893e26dfc6 fix(composer): Focus last element, not just text node 2016-01-11 17:44:17 -08:00
Ben Gotow
d06b235edf fix(spellcheck): Redo node creation each time, optimize findSimilarNodes
findSimilarNodes was taking 20% of total execution time because my test email was a jenkins error report with thousands of text nodes.
2016-01-11 17:31:03 -08:00
Drew Regitsky
f212752c1c fix(templates): fix two bugs breaking templates plugin rename and search 2016-01-11 15:28:31 -08:00
Ben Gotow
356365dc42 fix(rsvp): Check that you are a participant, support aliases. Fixes #962 2016-01-11 12:20:26 -08:00
Ben Gotow
3160520017 fix(downloads): Replace path.sep when saving files - Sentry 8749 2016-01-11 11:49:05 -08:00
Evan Morikawa
92cd752284 feat(composer): can outdent blockquotes allowing you to reply inline
Summary:
You can now break up blockquotes (as in quoted text areas) by pressing
"delete" at the start of a line. This allows you to reply inline.

Test Plan: new tests

Reviewers: bengotow, juan

Reviewed By: bengotow, juan

Differential Revision: https://phab.nylas.com/D2421
2016-01-11 14:46:20 -05:00
Ben Gotow
db7bc9e81c fix(quoted-text): Fix + test case for Sentry 8323, body el is quoted text 2016-01-11 11:14:34 -08:00
Ben Gotow
65ee221bc9 fix(notifications): Fix notification removal [Sentry 8957] 2016-01-11 10:56:17 -08:00
Ben Gotow
f6e3b1e907 fix(readme): Fix broken links to examples #943 2016-01-11 10:29:57 -08:00
Ben Gotow
a80fc028f8 bump(version): 0.3.39 2016-01-11 09:59:05 -08:00
Juan Tejada
f779b61dd5 fix(injected-component): Correctly call methods to the injected instance
- Adds check to `_runInnerDOMMethod` to check if inner is an UnsafeComponent and
relay the call appropriately
- Removes duplicated logic from `_setRequiredMethods`
2016-01-10 16:25:31 -08:00
Ben Gotow
b3841d79e6 fix(composer): Temporary patch for broken focus
Long term, we need to refactor this so that it's either entirely controlled or uncontrolled. Potentially use focusin?
2016-01-08 18:45:26 -08:00