ImportMetaContextDependency.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. MIT License http://www.opensource.org/licenses/mit-license.php
  3. Author Ivan Kopeykin @vankop
  4. */
  5. "use strict";
  6. const makeSerializable = require("../util/makeSerializable");
  7. const ContextDependency = require("./ContextDependency");
  8. const ModuleDependencyTemplateAsRequireId = require("./ModuleDependencyTemplateAsRequireId");
  9. /** @typedef {import("../javascript/JavascriptParser").Range} Range */
  10. /** @typedef {import("./ContextDependency").ContextDependencyOptions} ContextDependencyOptions */
  11. class ImportMetaContextDependency extends ContextDependency {
  12. /**
  13. * Creates an instance of ImportMetaContextDependency.
  14. * @param {ContextDependencyOptions} options options
  15. * @param {Range} range range
  16. */
  17. constructor(options, range) {
  18. super(options);
  19. this.range = range;
  20. }
  21. get category() {
  22. return "esm";
  23. }
  24. get type() {
  25. return `import.meta.webpackContext ${this.options.mode}`;
  26. }
  27. }
  28. makeSerializable(
  29. ImportMetaContextDependency,
  30. "webpack/lib/dependencies/ImportMetaContextDependency"
  31. );
  32. ImportMetaContextDependency.Template = ModuleDependencyTemplateAsRequireId;
  33. module.exports = ImportMetaContextDependency;