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.
		
		
		
		
		
			
		
			
				
					38 lines
				
				856 B
			
		
		
			
		
	
	
					38 lines
				
				856 B
			| 
								 
											3 years ago
										 
									 | 
							
								/*!
							 | 
						||
| 
								 | 
							
								 * is-plain-object <https://github.com/jonschlinkert/is-plain-object>
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * Copyright (c) 2014-2017, Jon Schlinkert.
							 | 
						||
| 
								 | 
							
								 * Released under the MIT License.
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								'use strict';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var isObject = require('isobject');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								function isObjectObject(o) {
							 | 
						||
| 
								 | 
							
								  return isObject(o) === true
							 | 
						||
| 
								 | 
							
								    && Object.prototype.toString.call(o) === '[object Object]';
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								module.exports = function isPlainObject(o) {
							 | 
						||
| 
								 | 
							
								  var ctor,prot;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  if (isObjectObject(o) === false) return false;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  // If has modified constructor
							 | 
						||
| 
								 | 
							
								  ctor = o.constructor;
							 | 
						||
| 
								 | 
							
								  if (typeof ctor !== 'function') return false;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  // If has modified prototype
							 | 
						||
| 
								 | 
							
								  prot = ctor.prototype;
							 | 
						||
| 
								 | 
							
								  if (isObjectObject(prot) === false) return false;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  // If constructor does not have an Object-specific method
							 | 
						||
| 
								 | 
							
								  if (prot.hasOwnProperty('isPrototypeOf') === false) {
							 | 
						||
| 
								 | 
							
								    return false;
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  // Most likely a plain Object
							 | 
						||
| 
								 | 
							
								  return true;
							 | 
						||
| 
								 | 
							
								};
							 |