UNPKG

1.27 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 CommonJsRequireContextDependency extends ContextDependency {
13 constructor(options, range, valueRange, inShorthand) {
14 super(options);
15
16 this.range = range;
17 this.valueRange = valueRange;
18 // inShorthand must be serialized by subclasses that use it
19 this.inShorthand = inShorthand;
20 }
21
22 get type() {
23 return "cjs require context";
24 }
25
26 serialize(context) {
27 const { write } = context;
28
29 write(this.range);
30 write(this.valueRange);
31 write(this.inShorthand);
32
33 super.serialize(context);
34 }
35
36 deserialize(context) {
37 const { read } = context;
38
39 this.range = read();
40 this.valueRange = read();
41 this.inShorthand = read();
42
43 super.deserialize(context);
44 }
45}
46
47makeSerializable(
48 CommonJsRequireContextDependency,
49 "webpack/lib/dependencies/CommonJsRequireContextDependency"
50);
51
52CommonJsRequireContextDependency.Template =
53 ContextDependencyTemplateAsRequireCall;
54
55module.exports = CommonJsRequireContextDependency;