simple-squiggle

A restricted subset of Squiggle
Log | Files | Refs | README

ImportContextDependency.js (1068B)


      1 /*
      2 	MIT License http://www.opensource.org/licenses/mit-license.php
      3 	Author Tobias Koppers @sokra
      4 */
      5 
      6 "use strict";
      7 
      8 const makeSerializable = require("../util/makeSerializable");
      9 const ContextDependency = require("./ContextDependency");
     10 const ContextDependencyTemplateAsRequireCall = require("./ContextDependencyTemplateAsRequireCall");
     11 
     12 class 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 
     45 makeSerializable(
     46 	ImportContextDependency,
     47 	"webpack/lib/dependencies/ImportContextDependency"
     48 );
     49 
     50 ImportContextDependency.Template = ContextDependencyTemplateAsRequireCall;
     51 
     52 module.exports = ImportContextDependency;