Commit Graph
1732 Commits
Author SHA1 Message Date
Kevin Gibbons c03fcfedb1 Address parentheses bugs for edge cases with call and new (#6148) 2019-05-24 11:09:17 -03:00
Georgii Dolzhykov b3adb46ba9 Keep parens around non-null assertions for new-expressions only (#6140) 2019-05-22 19:01:47 -03:00
Lucas Duailibe 7e47b4ea26 Preserve parens around expressions in default export declaration that start with function or class (#6133) 2019-05-20 09:31:38 -03:00
Rich Hong 906d33749b Add support for styled-jsx external styles (#6089) 2019-05-19 13:26:30 -03:00
Sosuke Suzuki 3b3c411642 TypeScript: Keep parentheses around a function called with non-null assertion. (#6136) 2019-05-19 13:15:02 -03:00
Sosuke Suzuki 4c64f13ef4 [TS] keep a pair of parentheses where there extra pairs. (#6131) 2019-05-17 18:13:40 -03:00
Lucas DuailibeandSimon Lydell eca23e111f Stop converting empty JSX elements to self-closing elements (#6127)
Co-Authored-By: Simon Lydell <simon.lydell@gmail.com>
2019-05-16 15:14:35 -03:00
Lucas Duailibe df258d6d7e Add parens in JSX spread element with expressions (#6130) 2019-05-16 15:06:41 -03:00
Evilebot Tnawi 7a76e5d08e fix(javascript): correctly handle comments in empty arrow function expressions (#6086) 2019-05-15 12:46:12 -03:00
Evilebot Tnawi 2cebeecb4f fix(javascript): do not hug sequence expression in object properties (#6088) 2019-05-15 12:29:45 -03:00
Lucas Duailibe 012b7a653e Prevent adding unnecessary quotes when a computed key exists (#6119) 2019-05-14 19:41:49 -03:00
Mykola Bilochub c95b81dd3d fix(markdown): correctly determine count of backticks in inline code (#6110) 2019-05-14 12:51:31 -03:00
Brian Kim 48d542ec1e TypeScript: Don’t breakup call expressions when the last argument is an arrow function with a simple return type (#6106) 2019-05-14 10:57:42 -03:00
Justin Ridgewell 4fda7af783 Fix closure type cast without spaces (#6116)
* Fix closure type cast without spaces

Closure typecasts don't require a space between the `@type` and opening `{`.

* More tests, and add a changelog entry
2019-05-14 10:14:52 -03:00
Sosuke Suzuki e3b2f4adb4 Keep a trailing comma in type parameter in .tsx files (#6115) 2019-05-13 14:53:45 -03:00
jwbay 6cee80b5b5 Don't break simple template literals (#5979)
A simple template literal is initially defined as a literal wherein all the expressions are identifiers or member access expressions where all parts are identifiers. We print these expressions into strings with infinite print width before printing the template.
2019-05-08 13:14:55 -03:00
Yang Su 54b7655dab Improved multiline closure comment detection (#6070) 2019-05-07 07:30:07 -03:00
mathieulj 26183e5be2 Use same print width for range formatting as normal formatting. (#6050)
* Use same print width for range formatting as normal formatting.

Fixes an issue were a file would end up formatted differently
with ranged formatting (--range-start & --range-end) versus
normal whole file formatting.

* Document range bugfix in changelog.
2019-05-04 10:18:55 -04:00
Cyrille David 84cc273c7d fix(glimmer): {{else}}{{#if}} into {{else if}} merging (#6080) 2019-05-02 16:26:26 +03:00
Evilebot Tnawi 157b020de6 fix(javascript): correctly handle comments in empty arrow function expressions (#6087) 2019-04-30 14:25:20 +03:00
Justin Ridgewell c085aeb152 Fix closure compiler type casts (#5947)
* Fix closure compiler type casts

This fixes casts when they are followed by a closing parenthesis, eg:

```js
foo( /** @type {!Array} */(arrOrString).length );
```

The old code would see the `CallExpresion`'s closing `)` and assume the typecast belonged to the `MemberExpression`, not the `arrOrString` `Identifier`.

This would be easier to accomplish if every AST would tell us if the expression were parenthesized. If they did, we could check that the node were parenthesized and either it or an ancestor has a typecast, stopping when we find an ancestor is itself parenthesized.

* More tests, and changelog

* Fix while loop

* Update changelog

* Update CHANGELOG.unreleased.md

* Use babel's parenthesized information

* Cleanup call
2019-04-26 13:05:57 -04:00
Lucas Duailibe ff79721397 Bump Prettier dependency to 1.17.0 2019-04-12 17:44:48 -03:00
Evilebot Tnawi dcaed91518 fix: respect newlines in parameters (#5836) 2019-04-04 09:50:07 -03:00
Adrian Zgorzałek 9cb50add5e graphql: Support variable directives. (#6020) 2019-04-04 09:47:05 -03:00
Adrian Zgorzałek 7c9823fcba Teach prettier/graphql about formatting fragment variables. (#6016)
Fragment variables are an experimental extension to GraphQL schema.
Formatting should follow the same rules as formatting an OperationDefinition node,
hence code is the same.
2019-04-04 09:44:52 -03:00
Noah Sugarman 0b07e10833 fix multiline dynamic import comments (#6025) 2019-04-02 12:35:03 -07:00
Kevin Gibbons 1e471a0079 Add parentheses for immediately-constructed fn/class (#5996) 2019-03-28 21:06:39 +03:00
Zaven Muradyan 887f800651 fix(angular): don't add unnecessary parentheses to pipes (#5929) 2019-03-13 09:02:36 +08:00
Lucas Azzola f32b289032 Support shared Prettier configuration (#5963)
* Support external configuration

* Document changes

* Update existing snapshots

* Update existing snapshots (2)

* Fix typo in docs

* Add example config repo
2019-03-13 09:34:51 +11:00
Hugo Alliaume b38319740a feat: autoload plugins that are located in `@*/prettier-plugin-* (#5945)
* add tests

* implement the feature

* update docs

* update changelog

* typo
2019-03-10 20:34:04 +11:00
Lucas Azzola f526c47b1e Add an option to modify when Prettier quotes object properties (#5934)
* Implement quote-props=preserve

* Implement quote-props=consistent

* Add tests

* Enable quoteProps in playground

* Add documentation

* Cache objectHasStringProp calculations

* Fixup changelog
2019-03-06 20:33:08 +11:00
Warren Seine 3a9006659e Fix trailing comment output when the printer returns a doc instead of a string. (#5930)
Previously, Prettier printed `[Object object]` in that situation.
2019-03-03 11:15:08 -08:00
fisker Cheung 9352331f1a Remove duplicated getLast (#5889) 2019-02-21 12:03:35 -03:00
Julien Marchand ed1db90c68 Honor stdin-filepath when outputting error messages. (#5878) 2019-02-20 08:39:25 -05:00
Yang Su 71b815f583 JavaScript: Fix parens logic for optional chaining expressions and closure type casts (#5843) 2019-02-11 13:33:56 -02:00
Maël Nison 9793154833 Tweak the plugin directory search (#5819)
* Update load-plugins.js

* Update load-plugins.js

* Adds a test

* Fixes lint
2019-02-05 07:47:55 -05:00
Lucas Azzola 2982dcd897 Fixup getSupportInfo for babylon parser prior to 1.16.0 (#5826)
This undoes an accidental breaking change where `prettier.getSupportInfo('1.0.0')` would report supporting the `babel` parser instead of `babylon`.

Fixes #5822
2019-02-03 21:57:59 +11:00
Nathan Totten a093bb3f7b Adds LWC Parser to support unquoted interop attributes (#5800)
This pull requests adds a new parser option `lwc`. This is the same as the HTML parser, but it adds support for unquoted HTML attributes per the needs of LWC. See: #5627
2019-02-01 13:58:50 +08:00
陈帅 a9d2c41464 feat(markdown): do not align table contents if it exceeds the print width and --prose-wrap never is set (#5701)
Fixes #5651
2019-01-30 12:24:21 -05:00
Yang Su 47da0804a9 JavaScript: fix edge cases in type cast comment detection regex (#5793)
Fix edge cases involving {...} ([record @type](http://usejsdoc.org/tags-type.html)) and newlines in prettier's detection code for type cast comments
2019-01-30 15:24:34 +08:00
Ika 847a78e8e9 fix(html): do not format non-normal whitespaces as normal whitespaces (#5797) 2019-01-30 14:30:10 +08:00
Alexander Kachkaev 36aeb4ce4f Fix CI detection to avoid unwanted TTY behavior (#5804) 2019-01-30 14:08:03 +08:00
James Henry 1143619600 chore: update typescript-estree to new package name (#5799) 2019-01-28 19:46:51 -05:00
Ika 153d2d0570 fix(typescript): stable parens for function type in arrow return type (#5790) 2019-01-22 21:07:10 +08:00
Ika 1061be0702 fix(mdx): correctly recognize inline JSX (#5783) 2019-01-22 12:02:30 +08:00
Ika 2002ce0453 fix(javascript): add necessary parentheses for decorators (#5785) 2019-01-22 00:54:41 +08:00
Simen Bekkhus 565731668f fix: do not format callbacks with arguments as React hooks (#5778)
Ref: https://github.com/prettier/prettier/pull/5608#issuecomment-455860396
2019-01-22 00:26:39 +08:00
Ika a9fd8e2cf4 fix(api): do not report the same deprecation warning more than once (#5774)
A quick fix for suppressing duplicate deprecation warnings.
2019-01-20 15:38:19 +08:00
Ika 42f7b6025e fix(javascript): remove unnecessary linebreaks from html templates (#5771) 2019-01-20 11:15:18 +08:00
Wenlu Wang 1dea4ef6f2 fix: allow plugin instance (#5760) (#5763) 2019-01-18 12:40:18 -02:00