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();
|
|
}
|
|
}
|
|
}
|