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.
		
		
		
		
		
			
		
			
				
					
					
						
							45 lines
						
					
					
						
							1.7 KiB
						
					
					
				
			
		
		
	
	
							45 lines
						
					
					
						
							1.7 KiB
						
					
					
				var isBrowser = "object" !== 'undefined';
 | 
						|
function getRegisteredStyles(registered, registeredStyles, classNames) {
 | 
						|
  var rawClassName = '';
 | 
						|
  classNames.split(' ').forEach(function (className) {
 | 
						|
    if (registered[className] !== undefined) {
 | 
						|
      registeredStyles.push(registered[className] + ";");
 | 
						|
    } else {
 | 
						|
      rawClassName += className + " ";
 | 
						|
    }
 | 
						|
  });
 | 
						|
  return rawClassName;
 | 
						|
}
 | 
						|
var registerStyles = function registerStyles(cache, serialized, isStringTag) {
 | 
						|
  var className = cache.key + "-" + serialized.name;
 | 
						|
 | 
						|
  if ( // we only need to add the styles to the registered cache if the
 | 
						|
  // class name could be used further down
 | 
						|
  // the tree but if it's a string tag, we know it won't
 | 
						|
  // so we don't have to add it to registered cache.
 | 
						|
  // this improves memory usage since we can avoid storing the whole style string
 | 
						|
  (isStringTag === false || // we need to always store it if we're in compat mode and
 | 
						|
  // in node since emotion-server relies on whether a style is in
 | 
						|
  // the registered cache to know whether a style is global or not
 | 
						|
  // also, note that this check will be dead code eliminated in the browser
 | 
						|
  isBrowser === false ) && cache.registered[className] === undefined) {
 | 
						|
    cache.registered[className] = serialized.styles;
 | 
						|
  }
 | 
						|
};
 | 
						|
var insertStyles = function insertStyles(cache, serialized, isStringTag) {
 | 
						|
  registerStyles(cache, serialized, isStringTag);
 | 
						|
  var className = cache.key + "-" + serialized.name;
 | 
						|
 | 
						|
  if (cache.inserted[serialized.name] === undefined) {
 | 
						|
    var current = serialized;
 | 
						|
 | 
						|
    do {
 | 
						|
      var maybeStyles = cache.insert(serialized === current ? "." + className : '', current, cache.sheet, true);
 | 
						|
 | 
						|
      current = current.next;
 | 
						|
    } while (current !== undefined);
 | 
						|
  }
 | 
						|
};
 | 
						|
 | 
						|
export { getRegisteredStyles, insertStyles, registerStyles };
 |