Commit Graph

63 Commits

Author SHA1 Message Date
Jim 61f7a5613b Removed unknown tag warning/whitelist. 2015-01-09 11:46:47 -08:00
Paul O’Shannessy f7f3df3acc Revert "Remove fbtransform/syntax.js" 2014-11-25 16:42:20 -08:00
Paul O’Shannessy 2a540b3fb7 Remove fbtransform/syntax.js
This was a file we probably never should have synced out in the first
place. We don't use it and it provides the same basic functionality that
bin/jsx provides.
2014-11-25 15:34:28 -08:00
Gabe Levi 0d308add09 Update stripTypes transform to use fixed up jstransform transform 2014-11-14 18:25:11 -08:00
Paul O’Shannessy a3509e5b42 Fixing some newline-preserving issues
Done internally as part of
https://github.com/facebook/jstransform/commit/f9836a39126675fd37b40a3598c539b50a1ec69b
2014-11-05 10:36:22 -08:00
Paul O’Shannessy 1fd187b994 Merge pull request #2224 from zertosh/remove-esprima-fb-dep
Remove esprima-fb and use Syntax from jstransform
2014-11-04 14:38:09 -08:00
Andres Suarez bf0a857a92 Remove esprima-fb and use Syntax from jstransform 2014-11-04 17:10:12 -05:00
Cheng Lou eddbb0cfef Use double quote for transformed displayName and data-*
JSX currently transforms everything to double quote except these two. This way, it's at least consistent and will satisfy half of the people who do put a strict quotation linting on their project.

Test: `jest`, check the double quoted transformed `data-bla="something"`.
2014-10-31 15:49:24 -04:00
Sebastian Markbage 8210beeef4 Hide Object.assign polyfill behind a module
Because the JS community's polyfilling infrastructure sucks and we'll
have to fix it for them before we require this.

JSX spread uses React.__spread
(which might get special behavior for key/ref, not sure yet)

This never uses the native implementation and throws for prototype chains.
Once the native implementations are faster, we'll start using them.
2014-10-16 09:21:10 -07:00
Paul O’Shannessy 4dcc1161fa Update @emails in react-displayName-test 2014-10-13 12:56:02 -07:00
Paul O’Shannessy dcf415c2b9 BSD + PATENTS 2014-10-10 13:34:07 -07:00
Sebastian Markbage c4658c1728 Update React JSX Transforms
* Extract JSXDOM into separate transform
* Rename lower case variables in JSX to upper case
* Drop React.DOM docblock, use string tags instead
2014-10-07 10:48:57 -07:00
Paul O’Shannessy 79ca0c7fd2 Merge pull request #1848 from fgnass/master
add picture element and related attributes
2014-09-08 16:23:39 -07:00
Paul O’Shannessy ea76f9bf63 Merge pull request #2116 from spicyj/nl-jsx-spread
Add newline before JSX spread when appropriate
2014-09-05 14:34:54 -07:00
jeffmo 808730df59 Add support for a --strip-types flag to bin/jsx 2014-09-05 16:28:46 -04:00
Paul O’Shannessy 59324ab6d5 Merge pull request #2117 from spicyj/jest-vendor
Include vendor/ when running jest tests
2014-08-30 12:55:20 -07:00
Ben Alpert 9f4ae415e2 Enable ES7 spread transform when using --harmony
Test Plan: `echo "var o = {...x};" | bin/jsx --harmony` outputs `var o = Object.assign({},x);`.
2014-08-30 01:10:21 -07:00
Ben Alpert 1ba022b1ea Include vendor/ when running jest tests
Now the two transform tests get run alongside the React core tests.

Test Plan: jest
2014-08-30 01:08:57 -07:00
Ben Alpert cc9735f889 Add newline before JSX spread when appropriate
Previously, we were losing the newline before a JSX spread attribute which would cause the lines to not match up; this fixes the problem.
2014-08-30 01:04:19 -07:00
Paul O’Shannessy 2058ad99be Sync out latest JSX transforms
The biggest change: instead of calling functions directly, we now use
React.createElement to wrap.

The other big change: this removes the need for the @jsx pragma.
Instead we'll parse everything, assume React is in scope,
and only look for the actual XJS parts in the AST (as opposed to only
runing the transform when @jsx was specified in the docblock).

Note: this is actually a series of commits internally and should have
been syned out in pieces over the past several weeks.
2014-08-20 00:27:38 -07:00
Felix Gnass 5f56f4ac36 add picture to xjs.knownTags 2014-07-16 19:57:19 +02:00
Ben Alpert f02264cf83 Add destructuring visitor to JSX harmony transform 2014-07-15 16:34:00 -07:00
Paul O’Shannessy 28d94d2dcf Fix react-dislayName-test
[skip ci]
2014-07-11 10:36:07 -07:00
Paul O'Shannessy 5b17e75707 Support more properties for image maps
Supporting the `<area>` tag is pretty useless if we don't support the necessary properties.
2014-06-30 20:54:44 -07:00
Paul O’Shannessy 5eb57fa51b Add support to JSX transform for <hyphenated-tags>
This only adds support for whitelisted tags, not arbitrary ones.

Closes #1539
2014-06-30 20:54:41 -07:00
Sebastian Markbage e6134c307e [react jsx transform] Spread attribute -> Object.assign
Add support for spread attributes. Transforms into an Object.assign just
like jstransform does for spread properties in object literals.

Depends on https://github.com/facebook/esprima/pull/22
2014-06-26 15:40:02 -07:00
Paul O’Shannessy af1af19d39 Sync out transform tests 2014-06-19 15:14:54 -04:00
Paul O’Shannessy 2c85658c69 [jsx] Make sure we throw when we get XML namespaces
https://github.com/facebook/esprima/commit/aad8a2b798ca80342a744aac2869fc1feb0065dd
replaced XJSIdentifer with XJSNamespacedName for namespaced items, so we
need to adjust here accordingly.
2014-06-19 15:07:08 -04:00
Jeff Morrison 9ef6156d5c Merge pull request #760 from syranide/jsxns
Support for JSX tag namespaces <React:DOM:div />
2014-05-22 15:51:49 -07:00
Jon Beebe c50dbb0ec1 Adds svg pattern and mask components 2014-05-08 07:16:28 -05:00
Andreas Svensson aa044c6b61 Add support for JSX member expressions <React.DOM.div /> 2014-05-08 00:10:10 +02:00
Sven Helmberger 8e0d17c756 Add tspan to JSX transform 2014-04-24 19:13:01 +02:00
Paul O’Shannessy 4ed9e22a44 Upgrade jstransform to 4.0
Also enables the object-concise-method transform for --harmony

closes #1438
2014-04-23 16:36:45 -07:00
Jeff Morrison 9c2b9b1eb6 Merge pull request #970 from syranide/jsxws
Normalize whitespace for transformed JSX code
2014-04-04 10:20:43 -07:00
Paul O’Shannessy d88d479685 Merge pull request #1193 from spicyj/jsx-polygon
Add polygon tag to transform
2014-03-17 10:07:23 -07:00
Andreas Svensson 60d7a02d44 Normalize whitespace for transformed JSX code 2014-03-12 10:03:16 +01:00
Andreas Svensson 280ff2e5a7 Unbreak JSX comment comma fix 2014-03-11 00:31:59 +01:00
Andreas Svensson aa70419f9d Fix empty JSX expressions sometimes emitting erroneous commas 2014-03-06 13:01:03 +01:00
Ben Alpert 42444f6bb9 Add polygon tag to transform
Fixes #1144.
2014-02-27 12:32:24 -08:00
Paul O’Shannessy 7b773a6b3d make <hasOwnProperty/> transform correctly 2014-02-24 18:03:02 -08:00
Ben Alpert 472be09ff6 Make JSX transform not break on 'constructor' attr 2014-02-20 21:44:58 -08:00
Paul O’Shannessy 8a47813baa Update copyrights for 2014.
grep -rl 'Copyright 2013 Facebook' static_upstream | xargs perl -pi -w -e s/Copyright 2013 Facebook/Copyright 2013-2014 Facebook/g;'

Not going to check in a script to do this since it will just change every year.
Closes #1006
2014-02-18 17:06:43 -08:00
JeffMo adcbf0806c Sync out transforms from fb internal 2014-02-15 12:35:32 -08:00
Andreas Svensson c16b5659a0 Implement stricter whitespace rules 2014-01-22 21:00:10 +01:00
cpojer 8dbc530d1c Add --harmony option to jsx. 2014-01-09 15:21:48 -08:00
Jeff Morrison 33fe8eebda Merge pull request #799 from spicyj/display-name
Add display name in more cases
2014-01-07 12:58:23 -08:00
Ben Alpert f0fdabae7b Add display name in more cases 2014-01-07 09:36:47 -08:00
Matt Harrison c4d918aca0 Added support for 4 extra SVG tags: stop, defs, linearGradient, radialGradient 2014-01-05 11:17:04 +00:00
Nick Thompson d270e2b1c7 Don't add displayName in transform if already defined
This ensures we don't add displayName in the transform if it's already been
defined. This is especially important when in strict mode, where duplicate
properties in an object is an exception.
2014-01-03 16:07:10 -08:00
cpojer 31359e9962 Add more useful ES6 transforms to jsx-internal. 2013-12-05 10:20:24 -08:00