Commit Graph
5233 Commits
Author SHA1 Message Date
Joshua Ma a616742fce Configure todomvc-flux npm test to use jest 2014-05-23 12:36:38 -07:00
Joshua Ma f8d0291874 Fix doc typo and remove underscore from local var 2014-05-23 12:34:40 -07:00
Paul O'Shannessy c62c2c59bb Remove event listeners from native dom wrapper components
Not removing them resulted in leaks as we would hold on to removed nodes forever.

This really showed up with images and the load event where we would unmount and create a new img with the same react id as the old one. We properly cleared and primed the caches but we would handle the load event for both nodes. We would eventually hit an invariant in that path as we tried to handle the event for the removed node, which no longer matched the node we had in the cache.

By forcefully removing the listener, we'll avoid this problem entirely and we should leak fewer DOM nodes.
2014-05-23 11:30:19 -07:00
Ben Alpert 37f61c479e Handle className properly on SVG nodes
This strategy avoids a runtime check for every set (as opposed to using a mutation method).

Test Plan: Verify that changing className works on a div and a rect in latest Chrome, latest Firefox, IE9. Verify that the div works in IE8.
2014-05-22 20:31:04 -07:00
Ben Alpert e60a893d2f Bump esprima-fb and jstransform versions
Fixes #1584, fixes #1475.
2014-05-22 20:16:37 -07: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
Paul O’Shannessy f9ad17db65 Merge pull request #1363 from spicyj/batch-all
Batch subupdates caused by any state update
2014-05-22 15:28:48 -07:00
Ben Alpert 49652c8e20 Merge pull request #1575 from spicyj/dispatch-index
Make promise selection logic clearer
2014-05-21 15:39:53 -07:00
Paul O’Shannessy cccdc54b68 Merge pull request #1576 from spicyj/ex-shim
Add shims to examples
2014-05-21 15:16:51 -07:00
Ian Obermiller bf5dfc87dc Error in extractEvents
If the event is on the window object, topScroll, for instance, the topLevelTarget will not have getAttribute defined. Restore the previous `|| !topLevelTarget.attributes` check to avoid an error on every scroll.
2014-05-21 15:12:26 -07:00
Ben Alpert 696e556eae Merge pull request #1579 from gscottolson/master
Improve readability of multi-line nav items.
2014-05-21 12:30:28 -07:00
G Scott Olson c9bac95034 Fix nested UL spacing. 2014-05-21 15:26:01 -04:00
Nate Hunzaker 59a9251c90 Set executed after run 2014-05-21 15:09:52 -04:00
Nate Hunzaker b1247690d5 Load in parallel, evaluate linearly as they come in 2014-05-21 15:07:10 -04:00
Pete Hunt 6c34151588 Merge pull request #1577 from piranha/master
better talk in russian
2014-05-21 11:26:29 -07:00
G Scott Olson 7094737782 Improve readability of multi-line nav items. 2014-05-21 10:55:42 -04:00
Alexander Solovyov 4595dbdc7a better talk in russian 2014-05-21 11:52:24 +03:00
Ben Alpert 4cb4bd0220 Add shims to examples
I find myself often using (modified) examples to test in IE and it's a pain to have to add the shims in every time. Might as well just add them in always.
2014-05-21 00:07:18 -07:00
Ben Alpert e58899cdff Make promise selection logic clearer 2014-05-20 17:09:05 -07:00
Paul O’Shannessy c6309567c9 Merge pull request #1559 from spicyj/gh-1376
Allow unmounting title tag
2014-05-20 11:23:36 -07:00
Paul O’Shannessy e63eab111c Merge pull request #1553 from givingstage/invalid_checksum_warning_spacing
Fixed spacing of invalid checksum warning
2014-05-20 11:23:19 -07:00
Paul O’Shannessy 6c595d55dc Merge pull request #1571 from spicyj/style-test
Switch style test to pass in jsdom
2014-05-20 11:22:30 -07:00
remixz 765ee8e5d0 Merge upstream changes 2014-05-19 20:12:57 -07:00
Ben Alpert 2d26451821 Add configuration for running tests with Jest
Can be run with `node_modules/.bin/jest` for now; didn't want to disturb the grunt setup.

Right now one test fails with:

```
 FAIL  browser/ui/__tests__/ReactDOMComponent-test.js (1.423s)
● ReactDOMComponent › updateDOM › it should update styles when mutating style object
  - Expected: '0' toEqual: '0.5'
        at Spec.<anonymous> (src/browser/ui/__tests__/ReactDOMComponent-test.js:99:33)
```

which I can only assume is a jsdom problem -- no other asserts fail.
2014-05-19 16:58:33 -07:00
Ben Alpert 4e5ed8317b Switch style test to pass in jsdom
This should be testing approximately the same thing and passes in Jest.

Test Plan: Cherry-pick Jest config from #1528 and verify that running `jest`.
2014-05-19 16:56:30 -07:00
Ben Alpert e17086e5df Add componentWillReceiveProps setState test 2014-05-19 15:58:40 -07:00
Paul O’Shannessy 5933d97cb6 Merge pull request #1563 from spicyj/travis-no-sauce
Don't fail Travis on sauce failures
2014-05-19 13:28:09 -07:00
Ben Alpert 8db8e60a38 Don't fail Travis on sauce failures
Fixes #1496.
2014-05-19 13:23:07 -07:00
Paul O’Shannessy ab58ecefa7 Merge pull request #1564 from spicyj/hop-ie8
Use Object.prototype.hasOwnProperty for doc in IE8
2014-05-19 13:15:25 -07:00
Ben Alpert 550795445e Use Object.prototype.hasOwnProperty for doc in IE8
Test Plan: Loaded ballmer-peak example in IE8 without errors and interacted with the text field.
2014-05-19 13:09:47 -07:00
Paul O’Shannessy 0c6bee049e Merge pull request #1189 from spicyj/hasown
Add hasOwnProperty checks where appropriate
2014-05-19 09:38:56 -07:00
Ben Alpert 4935d04d50 Allow unmounting title tag
cf. #1376.

This is useful for SVG. Dynamically adding and removing `<title>` elements in SVG still won't work properly because of getMarkupWrap but this at least lets you include it in initial render and then unmount the entire `<svg>` without problems.
2014-05-18 23:19:51 -07:00
Nate Hunzaker 0614cfa43e Load scripts in parallel 2014-05-18 16:34:40 -04:00
Ben Alpert 66291d2761 Merge pull request #1558 from nhunzaker/fix-1530
Fix 1530 - Asynchronously load scripts with JSX transformer
2014-05-18 13:04:11 -07:00
Nate Hunzaker bc79f623a1 Asynchronously load scripts with JSX transformer. 2014-05-18 15:41:41 -04:00
Andrew Davey 2b38795769 Rebased on master 2014-05-18 17:51:14 +01:00
Andrew Davey fc5bb9c9b2 Add sourceMap option to react-tools transform
Allow tools like grunt-react to include inline source maps in the
generated JavaScript. Browserify can then combine these source maps when
bundling everything together.

Usage:

```
var transform = require('react-tools').transform;
var output = transform(jsxContent, {
  sourceMap: true,
  sourceFilename: 'source.jsx'
});
```

The `output` will have an inline source map comment appended.
2014-05-18 17:42:35 +01:00
Mark IJbema 59616672d7 Make sure it works when we have no css transitions 2014-05-18 11:31:24 +02:00
Mark IJbema cd7b8aa0b1 Added event parameter 2014-05-18 11:29:29 +02:00
Ben Alpert 1baca43391 Mention PropTypes in top-level API
cf. #449
2014-05-18 00:15:35 -07:00
Ben Alpert f1a5a4c58e Be more specific with createClass, renderComponent
Closes #371.
2014-05-18 00:15:35 -07:00
Ben Alpert 566af16e64 Tweak getting started wording 2014-05-18 00:15:35 -07:00
Joshua Ma de1f783188 Update todomvc dispatcher to match docs, add AppDispatcher test 2014-05-17 22:01:18 -07:00
Joshua Ma f12a376f34 Update Flux Dispatcher.dispatch and waitFor examples
The previous examples didn't properly work when 1) a Store callback does
waitFor on Stores that haven't been reached yet and 2) a Store callback
waits on another Store that is already waiting.

The updated example uses constructs Promises up front and then
asynchronously resolves them.
2014-05-17 21:17:08 -07:00
Thomas Shafer 0a7128c70f Fixed spacing of invalid checksum warning 2014-05-17 20:04:52 -07:00
Ben Alpert e9653aad6a Merge pull request #1552 from t3chnoboy/master
Update Jasmine link
2014-05-17 18:33:51 -07:00
Dmitry Mazuro 8192b8c27f Update Jasmine link 2014-05-18 04:30:02 +03:00
Ben Alpert 78958fe0f5 Remove references to autoflow
Most references were removed in 6e59561; this should be the last.
2014-05-17 15:15:26 -07:00
Ben Alpert 6c331fba07 Add hasOwnProperty checks where appropriate
For boolean-like objects, I've added hasOwnProperty checks in addition to the existing truthiness check even though for most of these dicts, we leave out false keys instead of setting them explicitly to false.

In DOMPropertyOperations, we don't need to check hasOwnProperty if the property is in isStandardName because (with the exception of getPossibleStandardName) the dicts on DOMProperty will now be consistently populated with every valid attribute.
2014-05-16 10:59:51 -07:00
Paul O’Shannessy 4558e2c4bc Merge pull request #1491 from naturalatlas/itemscope
Added support for itemscope, itemtype, itemprop attributes.
2014-05-15 14:48:51 -07:00