aboutsummaryrefslogtreecommitdiff
path: root/node_modules/hullabaloo-config-manager/lib/ResolvedConfig.js
blob: 07d5cd47434ade0b6bb1f1bdfb12cabbb62f186e (plain)
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
32
33
34
35
'use strict'

const codegen = require('./codegen')
const reduceChains = require('./reduceChains')
const Verifier = require('./Verifier')

class ResolvedConfig {
  constructor (chains, cache) {
    this.cache = cache
    this.babelrcDir = chains.babelrcDir

    const reduced = reduceChains(chains, cache)
    this.dependencies = reduced.dependencies
    this.envNames = reduced.envNames
    this.fixedSourceHashes = reduced.fixedSourceHashes
    this.sources = reduced.sources
    this.unflattenedDefaultOptions = reduced.unflattenedDefaultOptions
    this.unflattenedEnvOptions = reduced.unflattenedEnvOptions
  }

  createVerifier () {
    return Verifier.hashAndCreate(
      this.babelrcDir,
      this.envNames,
      this.dependencies,
      this.sources,
      this.fixedSourceHashes,
      this.cache)
  }

  generateModule () {
    return codegen(this)
  }
}
module.exports = ResolvedConfig