/ * * @ l i c e n s e R e a c t v 1 6 . 1 3 . 1
* react - is . development . js
*
* Copyright ( c ) Facebook , Inc . and its affiliates .
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree .
* /
'use strict' ;
( function ( global , factory ) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory ( exports ) :
typeof define === 'function' && define . amd ? define ( [ 'exports' ] , factory ) :
( global = global || self , factory ( global . ReactIs = { } ) ) ;
} ( this , ( function ( exports ) { 'use strict' ;
// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
// nor polyfill, then a plain number is used for performance.
var hasSymbol = typeof Symbol === 'function' && Symbol . for ;
var REACT _ELEMENT _TYPE = hasSymbol ? Symbol . for ( 'react.element' ) : 0xeac7 ;
var REACT _PORTAL _TYPE = hasSymbol ? Symbol . for ( 'react.portal' ) : 0xeaca ;
var REACT _FRAGMENT _TYPE = hasSymbol ? Symbol . for ( 'react.fragment' ) : 0xeacb ;
var REACT _STRICT _MODE _TYPE = hasSymbol ? Symbol . for ( 'react.strict_mode' ) : 0xeacc ;
var REACT _PROFILER _TYPE = hasSymbol ? Symbol . for ( 'react.profiler' ) : 0xead2 ;
var REACT _PROVIDER _TYPE = hasSymbol ? Symbol . for ( 'react.provider' ) : 0xeacd ;
var REACT _CONTEXT _TYPE = hasSymbol ? Symbol . for ( 'react.context' ) : 0xeace ; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
// (unstable) APIs that have been removed. Can we remove the symbols?
var REACT _ASYNC _MODE _TYPE = hasSymbol ? Symbol . for ( 'react.async_mode' ) : 0xeacf ;
var REACT _CONCURRENT _MODE _TYPE = hasSymbol ? Symbol . for ( 'react.concurrent_mode' ) : 0xeacf ;
var REACT _FORWARD _REF _TYPE = hasSymbol ? Symbol . for ( 'react.forward_ref' ) : 0xead0 ;
var REACT _SUSPENSE _TYPE = hasSymbol ? Symbol . for ( 'react.suspense' ) : 0xead1 ;
var REACT _SUSPENSE _LIST _TYPE = hasSymbol ? Symbol . for ( 'react.suspense_list' ) : 0xead8 ;
var REACT _MEMO _TYPE = hasSymbol ? Symbol . for ( 'react.memo' ) : 0xead3 ;
var REACT _LAZY _TYPE = hasSymbol ? Symbol . for ( 'react.lazy' ) : 0xead4 ;
var REACT _BLOCK _TYPE = hasSymbol ? Symbol . for ( 'react.block' ) : 0xead9 ;
var REACT _FUNDAMENTAL _TYPE = hasSymbol ? Symbol . for ( 'react.fundamental' ) : 0xead5 ;
var REACT _RESPONDER _TYPE = hasSymbol ? Symbol . for ( 'react.responder' ) : 0xead6 ;
var REACT _SCOPE _TYPE = hasSymbol ? Symbol . for ( 'react.scope' ) : 0xead7 ;
function isValidElementType ( type ) {
return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
type === REACT _FRAGMENT _TYPE || type === REACT _CONCURRENT _MODE _TYPE || type === REACT _PROFILER _TYPE || type === REACT _STRICT _MODE _TYPE || type === REACT _SUSPENSE _TYPE || type === REACT _SUSPENSE _LIST _TYPE || typeof type === 'object' && type !== null && ( type . $$typeof === REACT _LAZY _TYPE || type . $$typeof === REACT _MEMO _TYPE || type . $$typeof === REACT _PROVIDER _TYPE || type . $$typeof === REACT _CONTEXT _TYPE || type . $$typeof === REACT _FORWARD _REF _TYPE || type . $$typeof === REACT _FUNDAMENTAL _TYPE || type . $$typeof === REACT _RESPONDER _TYPE || type . $$typeof === REACT _SCOPE _TYPE || type . $$typeof === REACT _BLOCK _TYPE ) ;
}
function typeOf ( object ) {
if ( typeof object === 'object' && object !== null ) {
var $$typeof = object . $$typeof ;
switch ( $$typeof ) {
case REACT _ELEMENT _TYPE :
var type = object . type ;
switch ( type ) {
case REACT _ASYNC _MODE _TYPE :
case REACT _CONCURRENT _MODE _TYPE :
case REACT _FRAGMENT _TYPE :
case REACT _PROFILER _TYPE :
case REACT _STRICT _MODE _TYPE :
case REACT _SUSPENSE _TYPE :
return type ;
default :
var $$typeofType = type && type . $$typeof ;
switch ( $$typeofType ) {
case REACT _CONTEXT _TYPE :
case REACT _FORWARD _REF _TYPE :
case REACT _LAZY _TYPE :
case REACT _MEMO _TYPE :
case REACT _PROVIDER _TYPE :
return $$typeofType ;
default :
return $$typeof ;
}
}
case REACT _PORTAL _TYPE :
return $$typeof ;
}
}
return undefined ;
} // AsyncMode is deprecated along with isAsyncMode
var AsyncMode = REACT _ASYNC _MODE _TYPE ;
var ConcurrentMode = REACT _CONCURRENT _MODE _TYPE ;
var ContextConsumer = REACT _CONTEXT _TYPE ;
var ContextProvider = REACT _PROVIDER _TYPE ;
var Element = REACT _ELEMENT _TYPE ;
var ForwardRef = REACT _FORWARD _REF _TYPE ;
var Fragment = REACT _FRAGMENT _TYPE ;
var Lazy = REACT _LAZY _TYPE ;
var Memo = REACT _MEMO _TYPE ;
var Portal = REACT _PORTAL _TYPE ;
var Profiler = REACT _PROFILER _TYPE ;
var StrictMode = REACT _STRICT _MODE _TYPE ;
var Suspense = REACT _SUSPENSE _TYPE ;
var hasWarnedAboutDeprecatedIsAsyncMode = false ; // AsyncMode should be deprecated
function isAsyncMode ( object ) {
{
if ( ! hasWarnedAboutDeprecatedIsAsyncMode ) {
hasWarnedAboutDeprecatedIsAsyncMode = true ; // Using console['warn'] to evade Babel and ESLint
console [ 'warn' ] ( 'The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.' ) ;
}
}
return isConcurrentMode ( object ) || typeOf ( object ) === REACT _ASYNC _MODE _TYPE ;
}
function isConcurrentMode ( object ) {
return typeOf ( object ) === REACT _CONCURRENT _MODE _TYPE ;
}
function isContextConsumer ( object ) {
return typeOf ( object ) === REACT _CONTEXT _TYPE ;
}
function isContextProvider ( object ) {
return typeOf ( object ) === REACT _PROVIDER _TYPE ;
}
function isElement ( object ) {
return typeof object === 'object' && object !== null && object . $$typeof === REACT _ELEMENT _TYPE ;
}
function isForwardRef ( object ) {
return typeOf ( object ) === REACT _FORWARD _REF _TYPE ;
}
function isFragment ( object ) {
return typeOf ( object ) === REACT _FRAGMENT _TYPE ;
}
function isLazy ( object ) {
return typeOf ( object ) === REACT _LAZY _TYPE ;
}
function isMemo ( object ) {
return typeOf ( object ) === REACT _MEMO _TYPE ;
}
function isPortal ( object ) {
return typeOf ( object ) === REACT _PORTAL _TYPE ;
}
function isProfiler ( object ) {
return typeOf ( object ) === REACT _PROFILER _TYPE ;
}
function isStrictMode ( object ) {
return typeOf ( object ) === REACT _STRICT _MODE _TYPE ;
}
function isSuspense ( object ) {
return typeOf ( object ) === REACT _SUSPENSE _TYPE ;
}
exports . AsyncMode = AsyncMode ;
exports . ConcurrentMode = ConcurrentMode ;
exports . ContextConsumer = ContextConsumer ;
exports . ContextProvider = ContextProvider ;
exports . Element = Element ;
exports . ForwardRef = ForwardRef ;
exports . Fragment = Fragment ;
exports . Lazy = Lazy ;
exports . Memo = Memo ;
exports . Portal = Portal ;
exports . Profiler = Profiler ;
exports . StrictMode = StrictMode ;
exports . Suspense = Suspense ;
exports . isAsyncMode = isAsyncMode ;
exports . isConcurrentMode = isConcurrentMode ;
exports . isContextConsumer = isContextConsumer ;
exports . isContextProvider = isContextProvider ;
exports . isElement = isElement ;
exports . isForwardRef = isForwardRef ;
exports . isFragment = isFragment ;
exports . isLazy = isLazy ;
exports . isMemo = isMemo ;
exports . isPortal = isPortal ;
exports . isProfiler = isProfiler ;
exports . isStrictMode = isStrictMode ;
exports . isSuspense = isSuspense ;
exports . isValidElementType = isValidElementType ;
exports . typeOf = typeOf ;
} ) ) ) ;