Skip to content

Commit 27579ca

Browse files
committed
Release v2.0.7.
1 parent d1fe05e commit 27579ca

File tree

5 files changed

+42
-11
lines changed

5 files changed

+42
-11
lines changed

CHANGELOG.md

+11
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,14 @@
1+
v2.0.7 - Sun, 25 Jun 2017 17:43:35 UTC
2+
--------------------------------------
3+
4+
- [bb69a91](../../commit/bb69a91) [chore] improvements on readme testing section.
5+
- [c2f582f](../../commit/c2f582f) [chore] fix typo.
6+
- [f8edc2b](../../commit/f8edc2b) [fixed] improvements on setAppElement...
7+
- [5641f40](../../commit/5641f40) [chore] update installation section.
8+
- [ae258ec](../../commit/ae258ec) [chore] removing active development section.
9+
- [f5d95e2](../../commit/f5d95e2) Add codesandbox link to the ISSUE_TEMPLATE
10+
11+
112
v2.0.6 - Tue, 20 Jun 2017 11:22:57 UTC
213
--------------------------------------
314

bower.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-modal",
3-
"version": "2.0.6",
3+
"version": "2.0.7",
44
"homepage": "https://github.com/reactjs/react-modal",
55
"authors": [
66
"Ryan Florence",

dist/react-modal.js

+27-7
Original file line numberDiff line numberDiff line change
@@ -128,9 +128,6 @@ return /******/ (function(modules) { // webpackBootstrap
128128
var renderSubtreeIntoContainer = _reactDom2.default.unstable_renderSubtreeIntoContainer;
129129

130130
var SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};
131-
var AppElement = EE.canUseDOM ? document.body : {
132-
appendChild: function appendChild() {}
133-
};
134131

135132
function getParentElement(parentSelector) {
136133
return parentSelector();
@@ -249,7 +246,7 @@ return /******/ (function(modules) { // webpackBootstrap
249246
}], [{
250247
key: 'setAppElement',
251248
value: function setAppElement(element) {
252-
ariaAppHider.setElement(element || AppElement);
249+
ariaAppHider.setElement(element);
253250
}
254251

255252
/* eslint-disable no-console */
@@ -1809,27 +1806,46 @@ return /******/ (function(modules) { // webpackBootstrap
18091806
Object.defineProperty(exports, "__esModule", {
18101807
value: true
18111808
});
1809+
exports.assertNodeList = assertNodeList;
18121810
exports.setElement = setElement;
1811+
exports.tryForceFallback = tryForceFallback;
18131812
exports.validateElement = validateElement;
18141813
exports.hide = hide;
18151814
exports.show = show;
18161815
exports.toggle = toggle;
1816+
exports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;
18171817
exports.resetForTesting = resetForTesting;
1818-
var globalElement = typeof document !== 'undefined' ? document.body : null;
1818+
var globalElement = null;
1819+
1820+
function assertNodeList(nodeList, selector) {
1821+
if (!nodeList || !nodeList.length) {
1822+
throw new Error('react-modal: No elements were found for selector ' + selector + '.');
1823+
}
1824+
}
18191825

18201826
function setElement(element) {
18211827
var useElement = element;
18221828
if (typeof useElement === 'string') {
18231829
var el = document.querySelectorAll(useElement);
1830+
assertNodeList(el, useElement);
18241831
useElement = 'length' in el ? el[0] : el;
18251832
}
18261833
globalElement = useElement || globalElement;
18271834
return globalElement;
18281835
}
18291836

1837+
function tryForceFallback() {
1838+
if (document && document.body) {
1839+
// force fallback to document.body
1840+
setElement(document.body);
1841+
return true;
1842+
}
1843+
return false;
1844+
}
1845+
18301846
function validateElement(appElement) {
1831-
if (!appElement && !globalElement) {
1832-
throw new Error(['react-modal: You must set an element with', '`Modal.setAppElement(el)` to make this accessible']);
1847+
if (!appElement && !globalElement && !tryForceFallback()) {
1848+
throw new Error(['react-modal: Cannot fallback to `document.body`, because it\'s not ready or available.', 'If you are doing server-side rendering, use this function to defined an element.', '`Modal.setAppElement(el)` to make this accessible']);
18331849
}
18341850
}
18351851

@@ -1848,6 +1864,10 @@ return /******/ (function(modules) { // webpackBootstrap
18481864
apply(appElement);
18491865
}
18501866

1867+
function documentNotReadyOrSSRTesting() {
1868+
globalElement = null;
1869+
}
1870+
18511871
function resetForTesting() {
18521872
globalElement = document.body;
18531873
}

dist/react-modal.min.js

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-modal",
3-
"version": "2.0.6",
3+
"version": "2.0.7",
44
"description": "Accessible modal dialog component for React.JS",
55
"main": "./lib/index.js",
66
"repository": {

0 commit comments

Comments
 (0)