Blame view

node_modules/webpack/lib/Entrypoint.js 891 Bytes
aaac7fed   liuqimichale   add
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
36
37
38
39
40
41
42
43
  /*
  	MIT License http://www.opensource.org/licenses/mit-license.php
  	Author Tobias Koppers @sokra
  */
  "use strict";
  
  class Entrypoint {
  	constructor(name) {
  		this.name = name;
  		this.chunks = [];
  	}
  
  	unshiftChunk(chunk) {
  		this.chunks.unshift(chunk);
  		chunk.entrypoints.push(this);
  	}
  
  	insertChunk(chunk, before) {
  		const idx = this.chunks.indexOf(before);
  		if(idx >= 0) {
  			this.chunks.splice(idx, 0, chunk);
  		} else {
  			throw new Error("before chunk not found");
  		}
  		chunk.entrypoints.push(this);
  	}
  
  	getFiles() {
  		const files = [];
  
  		for(let chunkIdx = 0; chunkIdx < this.chunks.length; chunkIdx++) {
  			for(let fileIdx = 0; fileIdx < this.chunks[chunkIdx].files.length; fileIdx++) {
  				if(files.indexOf(this.chunks[chunkIdx].files[fileIdx]) === -1) {
  					files.push(this.chunks[chunkIdx].files[fileIdx]);
  				}
  			}
  		}
  
  		return files;
  	}
  }
  
  module.exports = Entrypoint;