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
Chris Brody
6ae41067cf
Test generics in object methods in TypeScript ( #5989 )
2019-04-08 16:56:39 -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
Ika
f4bcb13d41
feat(typescript): support TS 3.4 ( #6027 )
...
- add support for `readonly` operator
- `as const` was already supported, added tests to ensure no regression
2019-04-04 15:32:54 +08: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
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
Yang Su
71b815f583
JavaScript: Fix parens logic for optional chaining expressions and closure type casts ( #5843 )
2019-02-11 13:33:56 -02: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
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
42f7b6025e
fix(javascript): remove unnecessary linebreaks from html templates ( #5771 )
2019-01-20 11:15:18 +08:00
James Henry
ef6386015d
fix: update typescript and typescript-estree to latest ( #5728 )
2019-01-12 11:10:52 +08:00
makepost
94eab666c4
fix(javascript): skip .connect() method when composing fun ( #5739 )
2019-01-10 12:20:15 -07:00
Jarda Snajdr
5847c168e4
Fix formatting of lists in SCSS property/variable values ( #5710 )
2019-01-10 00:08:34 +08:00
Phil
30979ed104
typescript: remove unneeded parentheses around type annotation ( #5724 )
...
* Remove unnecessary parentheses from annotations
* add test for ts parentheses bug
2019-01-07 09:19:41 -03:00
Ika
63999c74eb
fix(mdx): handle inline html correctly ( #5704 )
2019-01-03 10:46:11 +08:00
Ika
3de36e3a2b
fix(ng,vue): add parens to avoid unexpected `}}` in interpolations ( #5657 )
2018-12-30 23:03:42 +08:00
Ika
7c4cebeaa5
feat: add babel-flow ( #5685 )
2018-12-29 21:35:47 +08:00
Wei-Wei Wu
91c20f7fbe
Rename "babylon" with "babel" ( #5647 )
2018-12-27 21:05:19 +08:00
Ika
65a9d3b8cc
fix(flow,ts): format `/* HTML */` templates ( #5658 )
2018-12-19 23:00:18 +08:00
lhchavez
911d6c88e5
Fix formatting with --range-start / --range-end ( #5632 )
...
This change avoids collapsing an already-formatted range into a single
overlong line when --range-start / --range-end are provided.
Fixes : #4923
2018-12-17 10:59:20 -02:00
Dmitriy Sharshakov aka. sh7dm
6a45924379
fix(printer-postcss): ignore escape \ and escaped / in Less ( #5597 )
...
Avoid messing up Less files containing \\/ (escaped /).
Ignore escape \ and escaped / in Less.
2018-12-17 08:28:48 +08:00
Ika
cbf06bf388
feat(html): format script with "application/ld+json" ( #5642 )
2018-12-16 16:21:10 +08:00
Brian Ng
8e612f05a0
Add support for class private methods ( #5637 )
2018-12-14 09:45:26 -06:00
Ika
ffc8482458
fix(vue): tag names are case-sensitive ( #5606 )
2018-12-13 10:31:48 +08:00
Ika
419559e964
fix(javascript): correct indentation for expression in root template ( #5607 )
2018-12-12 09:52:23 +08:00
Ika
5e89969a9e
test: update snapshots
2018-12-11 16:18:29 +08:00
Ika
d97fe0a1e0
feat(html): preserve surrounding linebreaks ( #5596 )
2018-12-11 12:43:53 +08:00
Jed Fox
fa7eafaa6d
Add support for the React `useEffect` hook ( #5608 )
...
* Add support for the React `useEffect` hook
* Format
* Format
* [Refactor] remove unnecessary condition
`canHaveTrailingComma` is defined as `I(lastElem && ...)`, which will always be true when `lastElem === null`.
* Use a hacky method to allow the array to break
* Revert "[Refactor] remove unnecessary condition"
This reverts commit 91906ba22438afa0fe5e10c64a1fcf3cfa484ff3.
* Add tests for `React.useEffect` form
2018-12-10 06:09:20 -05:00
Ika
952bc0cc03
fix: get rid of CRLF ( #5494 )
2018-12-08 18:28:29 +08:00
Lipis
7c1758de86
Update example for *.vue ( #5605 )
2018-12-07 16:34:26 +01:00
Laurin Quast
9d1fb93e86
feat: add mjml extension to html language ( #5505 )
2018-12-07 21:01:40 +08:00
Ika
cd28c22dbe
feat(html): smart quote for attributes ( #5590 )
2018-12-05 11:15:09 +08:00
Ika
3cd1d003c0
fix(typescript): do not throw errors on bigint keyword ( #5577 )
...
- fix `Error: unknown type: "TSBigIntKeyword"`
- bump typescript to stable version
2018-11-30 10:12:32 +08:00
Ika
2247ce1aab
feat(angular): support interpolation in attributes ( #5573 )
2018-11-30 09:28:54 +08:00