You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					222 lines
				
				7.2 KiB
			
		
		
			
		
	
	
					222 lines
				
				7.2 KiB
			| 
											3 years ago
										 | /** | ||
|  |  * @license React | ||
|  |  * 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'; | ||
|  | 
 | ||
|  | if (process.env.NODE_ENV !== "production") { | ||
|  |   (function() { | ||
|  | 'use strict'; | ||
|  | 
 | ||
|  | // ATTENTION
 | ||
|  | // When adding new symbols to this file,
 | ||
|  | // Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'
 | ||
|  | // The Symbol used to tag the ReactElement-like types.
 | ||
|  | var REACT_ELEMENT_TYPE = Symbol.for('react.element'); | ||
|  | var REACT_PORTAL_TYPE = Symbol.for('react.portal'); | ||
|  | var REACT_FRAGMENT_TYPE = Symbol.for('react.fragment'); | ||
|  | var REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode'); | ||
|  | var REACT_PROFILER_TYPE = Symbol.for('react.profiler'); | ||
|  | var REACT_PROVIDER_TYPE = Symbol.for('react.provider'); | ||
|  | var REACT_CONTEXT_TYPE = Symbol.for('react.context'); | ||
|  | var REACT_SERVER_CONTEXT_TYPE = Symbol.for('react.server_context'); | ||
|  | var REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref'); | ||
|  | var REACT_SUSPENSE_TYPE = Symbol.for('react.suspense'); | ||
|  | var REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list'); | ||
|  | var REACT_MEMO_TYPE = Symbol.for('react.memo'); | ||
|  | var REACT_LAZY_TYPE = Symbol.for('react.lazy'); | ||
|  | var REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen'); | ||
|  | 
 | ||
|  | // -----------------------------------------------------------------------------
 | ||
|  | 
 | ||
|  | var enableScopeAPI = false; // Experimental Create Event Handle API.
 | ||
|  | var enableCacheElement = false; | ||
|  | var enableTransitionTracing = false; // No known bugs, but needs performance testing
 | ||
|  | 
 | ||
|  | var enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber
 | ||
|  | // stuff. Intended to enable React core members to more easily debug scheduling
 | ||
|  | // issues in DEV builds.
 | ||
|  | 
 | ||
|  | var enableDebugTracing = false; // Track which Fiber(s) schedule render work.
 | ||
|  | 
 | ||
|  | var REACT_MODULE_REFERENCE; | ||
|  | 
 | ||
|  | { | ||
|  |   REACT_MODULE_REFERENCE = Symbol.for('react.module.reference'); | ||
|  | } | ||
|  | 
 | ||
|  | function isValidElementType(type) { | ||
|  |   if (typeof type === 'string' || typeof type === 'function') { | ||
|  |     return true; | ||
|  |   } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).
 | ||
|  | 
 | ||
|  | 
 | ||
|  |   if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing  || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden  || type === REACT_OFFSCREEN_TYPE || enableScopeAPI  || enableCacheElement  || enableTransitionTracing ) { | ||
|  |     return true; | ||
|  |   } | ||
|  | 
 | ||
|  |   if (typeof type === 'object' && type !== null) { | ||
|  |     if (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 || // This needs to include all possible module reference object
 | ||
|  |     // types supported by any Flight configuration anywhere since
 | ||
|  |     // we don't know which Flight build this will end up being used
 | ||
|  |     // with.
 | ||
|  |     type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) { | ||
|  |       return true; | ||
|  |     } | ||
|  |   } | ||
|  | 
 | ||
|  |   return false; | ||
|  | } | ||
|  | 
 | ||
|  | 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_FRAGMENT_TYPE: | ||
|  |           case REACT_PROFILER_TYPE: | ||
|  |           case REACT_STRICT_MODE_TYPE: | ||
|  |           case REACT_SUSPENSE_TYPE: | ||
|  |           case REACT_SUSPENSE_LIST_TYPE: | ||
|  |             return type; | ||
|  | 
 | ||
|  |           default: | ||
|  |             var $$typeofType = type && type.$$typeof; | ||
|  | 
 | ||
|  |             switch ($$typeofType) { | ||
|  |               case REACT_SERVER_CONTEXT_TYPE: | ||
|  |               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; | ||
|  | } | ||
|  | 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 SuspenseList = REACT_SUSPENSE_LIST_TYPE; | ||
|  | var hasWarnedAboutDeprecatedIsAsyncMode = false; | ||
|  | var hasWarnedAboutDeprecatedIsConcurrentMode = 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 18+.'); | ||
|  |     } | ||
|  |   } | ||
|  | 
 | ||
|  |   return false; | ||
|  | } | ||
|  | function isConcurrentMode(object) { | ||
|  |   { | ||
|  |     if (!hasWarnedAboutDeprecatedIsConcurrentMode) { | ||
|  |       hasWarnedAboutDeprecatedIsConcurrentMode = true; // Using console['warn'] to evade Babel and ESLint
 | ||
|  | 
 | ||
|  |       console['warn']('The ReactIs.isConcurrentMode() alias has been deprecated, ' + 'and will be removed in React 18+.'); | ||
|  |     } | ||
|  |   } | ||
|  | 
 | ||
|  |   return false; | ||
|  | } | ||
|  | 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; | ||
|  | } | ||
|  | function isSuspenseList(object) { | ||
|  |   return typeOf(object) === REACT_SUSPENSE_LIST_TYPE; | ||
|  | } | ||
|  | 
 | ||
|  | 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.SuspenseList = SuspenseList; | ||
|  | 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.isSuspenseList = isSuspenseList; | ||
|  | exports.isValidElementType = isValidElementType; | ||
|  | exports.typeOf = typeOf; | ||
|  |   })(); | ||
|  | } |