File size: 750 Bytes
56fda74
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import { addDefault, addNamed } from '@babel/helper-module-imports'

export function addImport(
  state,
  importSource /*: string */,
  importedSpecifier /*: string */,
  nameHint /* ?: string */
) {
  let cacheKey = ['import', importSource, importedSpecifier].join(':')
  if (state[cacheKey] === undefined) {
    let importIdentifier
    if (importedSpecifier === 'default') {
      importIdentifier = addDefault(state.file.path, importSource, { nameHint })
    } else {
      importIdentifier = addNamed(
        state.file.path,
        importedSpecifier,
        importSource,
        {
          nameHint
        }
      )
    }
    state[cacheKey] = importIdentifier.name
  }
  return {
    type: 'Identifier',
    name: state[cacheKey]
  }
}