Commit Graph
5233 Commits
Author SHA1 Message Date
Miorel Palii 335e91df71 Fix console warning in LegacyImmutableObject
It does check `hasOwnProperty`, but *after* accessing the field and therefore triggering enumerable getters in modified prototypes.
2014-08-29 14:32:50 -07:00
Ben Alpert 944f49c264 Merge pull request #2080 from fisherwebdev/master
[docs] Update Flux TodoMVC Tutorial
2014-08-28 12:11:28 -07:00
Thomas Aylott 755cc9671f Combine displayName using underscore 2014-08-28 14:58:59 -04:00
Thomas Aylott a6116b31e5 Improve debugging for methods using ReactPerf 2014-08-28 13:49:51 -04:00
Jeff Chan ef9c9c81d0 Fix typo 2014-08-27 21:17:10 -07:00
Cheng Lou 74ff6fb6b8 Merge pull request #2039 from crm416/return-false
Deprecate 'return false' in event handlers
2014-08-27 13:33:40 -07:00
Cheng Lou 95de877dce Merge pull request #2036 from crm416/static-functions
Throw an error when functions on `statics` clash due to duplicate keys
2014-08-27 11:36:53 -07:00
Julen Ruiz Aizpuru ca66baee83 Docs: renamed input's state to message
Readers might feel confused with the actual input's `value` attribute.
2014-08-27 13:02:00 +02:00
Ben Alpert f7c7676a98 Merge pull request #2083 from chenglou/docs-retina-icon
[Docs] Make retina react logo work
2014-08-24 23:19:41 -07:00
Cheng Lou 2920473ea1 [Docs] Make retina react logo work
Bourbon now takes *_2x instead of *@2x.
2014-08-23 18:09:20 -07:00
Charles Marsh eb36b57079 Use warning module 2014-08-23 09:46:32 +08:00
Cheng Lou 174e67564c Merge pull request #2078 from michaelrp/patch-1
Including missing validation check
2014-08-22 11:36:47 -07:00
fisherwebdev 9fe36e591b [docs] remove redundant paragraph 2014-08-22 09:50:05 -07:00
fisherwebdev 149cadd664 [docs] fix nits 2014-08-22 09:46:34 -07:00
Michael Randers-Pehrson c999785fa0 Adding e.preventDefault() to handleSubmit,
Also added plain `return`, updated text.
2014-08-22 08:27:23 -04:00
fisherwebdev bc4d935cb0 [docs] Update Flux TodoMVC Tutorial 2014-08-22 02:21:04 -07:00
Charles Marsh 979a93a70a Removed monitorCodeUse call 2014-08-22 13:09:38 +08:00
Michael Randers-Pehrson 6c926094c3 Including missing validation check
The validation check was removed from the update to the CommentForm handleSubmit function.
2014-08-21 23:00:05 -04:00
Felix Gnass 942d358ace use attribute for media, srcSet and sizes 2014-08-22 00:37:32 +02:00
Charles Marsh f01246d6bb Indentation for eventHandlerName 2014-08-21 09:13:35 +08:00
Cheng Lou 72e690ecfb Merge pull request #2037 from crm416/duplicate-key
More informative error message for mergeObjectsWithNoDuplicateKeys
2014-08-20 17:27:07 -07:00
Cheng Lou b8ab95aaa7 Merge pull request #2054 from chenglou/accum
[RFC] Use `accumulateInto` to save even more allocation
2014-08-20 13:36:45 -07:00
Cheng Lou 48e901f8ae [RFC] Use accumulateInto to save even more allocation
Trying to make the event a bit more performant for events.

Feel free to reject this because the API inevitably isn't great. It's good for perf though, and since we're only using `accumulate` in very restrained places, I think we're fine.

`accumulateInto` is `accumulate` that mutates more and allocates less. I kept `accumulate` in case we want that in the future.
2014-08-20 13:10:50 -07:00
Paul O’Shannessy ef47bb753c Merge pull request #2076 from whatasunnyday/master
Add example to if else in JSX.
2014-08-20 12:45:04 -07:00
Sunny Juneja b9cf0d2bdd Add example to if else in JSX. 2014-08-20 12:29:21 -07:00
Paul O’Shannessy 4d9a2c4a29 Make npm run-script jest available
This is slightly shorter than typing `./node_modules/.bin/jest`.
2014-08-20 11:48:01 -07:00
Paul O’Shannessy 417678310c Update Object.assign polyfill
The spec changed to allow null & undefined sources without throwing.
Now our code depends on this new behavior. The only browser that
implements Object.assign has also updated its native implementation to
this behavior (Firefox Nightly).
2014-08-20 11:44:24 -07:00
IvanVergiliev f627ddfb74 Add 2048-react to open-source demos
Nothing too complicated, but I think it could be a fun beginner demo.
2014-08-20 15:17:27 +03: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
Sebastian Markbage aae31ae24c ReactMount calls a legacy factory use createDescriptor instead
This fixes some log spew since this pattern is deprecated. This doesn't use
the validator in the descriptor creation so there's no prop type checks here.
I guess that's fine because we still have the second prop type checks.

We need to use ReactLegacyDescriptor because the constructor here will be a
legacy factory that we need to unwrap.

constructAndRenderComponent should be deprecated.
2014-08-20 00:15:43 -07:00
Sebastian Markbage 5c51f2fe46 Check if a function has a prototype first
Because somehow someone used a prototype less function with JSX.
2014-08-20 00:15:32 -07:00
Sebastian Markbage 68b7b82145 Start warning when calling a legacy factory
Let's start warning when a legacy factory is called as a plain function call.
2014-08-20 00:15:11 -07:00
Sebastian Markbage 989e6b618e Drop usage of plain functions to create descriptors
Replace plain function calls to legacy factories with createFactory or
createElement. For ReactDOMComponents the type should be replaced with
strings.

Because we don't have easy access to ReactLegacyDescriptor from within
React, we need to use the .type property to extract the real class.
This will go away later and is covered by unit tests.
2014-08-20 00:14:59 -07:00
Sebastian Markbage c901b1005e Make createDescriptor return a descriptor for components
This moves all logic around legacy descriptors to ReactLegacyDescriptor. This
is responsible for the layer that knows that createClass exports a legacy
factory. When passed one of these classes, it unwraps it to be a real class.

If it is passed a non legacy factory, it is assumed to be a non-react component
that needs to be invoked as a plain function.

The semantic change is that a descriptor is now always returned if passed a
legacy factory. Even if that factory is a mock. A mock would previously return
undefined.

For mocks, I treat the factory as the authoritative function. I call it to extract
the instance or fill it with an empty component placeholder.

Additionally, I make the classes take props as the first argument to the
constructor. This is what the new class system will do.

We currently need to set up some internals by calling the internal construct
method. Instead of doing that automatically in the constructor, I now move that
to a second pass so that mocks can get the plain props.

This means that we can assert that a mock has been called once it's mounted
with it's final props. Instead of the descriptor factory being called.
2014-08-20 00:14:32 -07:00
Paul O’Shannessy 182379305a Update vendored modules 2014-08-20 00:14:28 -07:00
Cheng Lou 25c9d6d578 Merge pull request #2068 from ChrisSki/patch-1
Update 09.1-animation.md
2014-08-19 18:10:31 -07:00
Chris Sciolla 99ed64387d Update 09.1-animation.md 2014-08-19 20:59:13 -04:00
Charles Marsh 0ecc7e5a7f Look on __reactBoundContext for displayName 2014-08-20 08:44:33 +08:00
Chris Sciolla 65e1938708 Update 09.1-animation.md
The reason I chose to submit this is because it was initially unclear from the docs that the transition group needed to already be mounted in order for it to work properly.
2014-08-19 15:11:07 -04:00
Charles Marsh cf45a40bb8 More info in monitorCodeUse call 2014-08-18 22:57:02 -04:00
Josh Duck 5b4e2be867 Iterate over expectedFeatures correctly
This fails if Array.prototype is extended.
2014-08-18 18:18:05 -07:00
Paul O’Shannessy 326be2faa6 Merge pull request #2053 from zpao/jsx-transformer-optional-sourcemaps
Don't force sourcemaps on for JSXTransformer APIs
2014-08-18 18:10:57 -07:00
Paul O’Shannessy ea17506f6a Merge pull request #2062 from dmitriiabramov/patch-1
remove doubled whitespace chars in jsDoc
2014-08-18 16:54:06 -07:00
Paul O’Shannessy 32d3f79dc5 Upgrade Commoner
It no longer parses @providesModule directives by default.

Fixes #1145
2014-08-18 15:12:39 -07:00
Dmitrii Abramov d50278997c remove doubled whitespace chars in jsDoc 2014-08-18 14:26:26 -07:00
Cheng Lou a43d8c588b Fix bad merge from 04c9820694
Didn't sync out correctly.
2014-08-18 10:37:18 -07:00
Cheng Lou 196030aeb5 Merge pull request #2058 from chantastic/patch-2
docs(flux-todo-list): fix TodoStore syntax
2014-08-17 19:52:54 -07:00
Michael Chan aaeb107e00 docs(flux-todo-list): fix TodoStore syntax
Add missing semicolon behind `TodoStore#addChangeListener'
2014-08-17 19:37:10 -07:00
Lee Byron 04c9820694 Merge pull request #1601 from gaearon/apply-component-and-mixin-spec-deterministically
Apply component and mixins specs deterministically
2014-08-15 18:08:03 -07:00
Paul O’Shannessy d9a053d287 Don't force sourcemaps on for JSXTransformer APIs
In case somebody doesn't want sourcemaps (eg, react-rails) or r.js
2014-08-15 17:51:41 -07:00