1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- /*
- 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;
|