UNPKG

1.07 kBJavaScriptView Raw
1/*
2 MIT License http://www.opensource.org/licenses/mit-license.php
3 Author Tobias Koppers @sokra
4*/
5
6"use strict";
7
8const makeSerializable = require("../util/makeSerializable");
9const ContextDependency = require("./ContextDependency");
10const ContextDependencyTemplateAsRequireCall = require("./ContextDependencyTemplateAsRequireCall");
11
12class ImportContextDependency extends ContextDependency {
13 constructor(options, range, valueRange) {
14 super(options);
15
16 this.range = range;
17 this.valueRange = valueRange;
18 }
19
20 get type() {
21 return `import() context ${this.options.mode}`;
22 }
23
24 get category() {
25 return "esm";
26 }
27
28 serialize(context) {
29 const { write } = context;
30
31 write(this.valueRange);
32
33 super.serialize(context);
34 }
35
36 deserialize(context) {
37 const { read } = context;
38
39 this.valueRange = read();
40
41 super.deserialize(context);
42 }
43}
44
45makeSerializable(
46 ImportContextDependency,
47 "webpack/lib/dependencies/ImportContextDependency"
48);
49
50ImportContextDependency.Template = ContextDependencyTemplateAsRequireCall;
51
52module.exports = ImportContextDependency;