30 lines
		
	
	
		
			627 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			627 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import {TokenType as tt} from "../parser/tokenizer/types";
 | 
						|
 | 
						|
 | 
						|
export default function elideImportEquals(tokens) {
 | 
						|
  // import
 | 
						|
  tokens.removeInitialToken();
 | 
						|
  // name
 | 
						|
  tokens.removeToken();
 | 
						|
  // =
 | 
						|
  tokens.removeToken();
 | 
						|
  // name or require
 | 
						|
  tokens.removeToken();
 | 
						|
  // Handle either `import A = require('A')` or `import A = B.C.D`.
 | 
						|
  if (tokens.matches1(tt.parenL)) {
 | 
						|
    // (
 | 
						|
    tokens.removeToken();
 | 
						|
    // path string
 | 
						|
    tokens.removeToken();
 | 
						|
    // )
 | 
						|
    tokens.removeToken();
 | 
						|
  } else {
 | 
						|
    while (tokens.matches1(tt.dot)) {
 | 
						|
      // .
 | 
						|
      tokens.removeToken();
 | 
						|
      // name
 | 
						|
      tokens.removeToken();
 | 
						|
    }
 | 
						|
  }
 | 
						|
}
 |