summaryrefslogtreecommitdiff
path: root/node_modules/enhanced-resolve/lib/MainFieldPlugin.js
diff options
context:
space:
mode:
authorlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:10:59 +0800
committerlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:41:44 +0800
commitfc87c009806dcc98867f6b58efe29b042aa01dee (patch)
tree8f59b3f4a5b66e9dfef2d40c8d318e258a521228 /node_modules/enhanced-resolve/lib/MainFieldPlugin.js
parent3336b2356ee6152d9c6ae59bd9b87ccbc0958407 (diff)
node: updatemain
Diffstat (limited to 'node_modules/enhanced-resolve/lib/MainFieldPlugin.js')
-rw-r--r--node_modules/enhanced-resolve/lib/MainFieldPlugin.js90
1 files changed, 0 insertions, 90 deletions
diff --git a/node_modules/enhanced-resolve/lib/MainFieldPlugin.js b/node_modules/enhanced-resolve/lib/MainFieldPlugin.js
deleted file mode 100644
index 645b7df2..00000000
--- a/node_modules/enhanced-resolve/lib/MainFieldPlugin.js
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- MIT License http://www.opensource.org/licenses/mit-license.php
- Author Tobias Koppers @sokra
-*/
-
-"use strict";
-
-const path = require("path");
-const DescriptionFileUtils = require("./DescriptionFileUtils");
-
-/** @typedef {import("./Resolver")} Resolver */
-/** @typedef {import("./Resolver").JsonObject} JsonObject */
-/** @typedef {import("./Resolver").ResolveRequest} ResolveRequest */
-/** @typedef {import("./Resolver").ResolveStepHook} ResolveStepHook */
-
-/** @typedef {{name: string|Array<string>, forceRelative: boolean}} MainFieldOptions */
-
-const alreadyTriedMainField = Symbol("alreadyTriedMainField");
-
-module.exports = class MainFieldPlugin {
- /**
- * @param {string | ResolveStepHook} source source
- * @param {MainFieldOptions} options options
- * @param {string | ResolveStepHook} target target
- */
- constructor(source, options, target) {
- this.source = source;
- this.options = options;
- this.target = target;
- }
-
- /**
- * @param {Resolver} resolver the resolver
- * @returns {void}
- */
- apply(resolver) {
- const target = resolver.ensureHook(this.target);
- resolver
- .getHook(this.source)
- .tapAsync("MainFieldPlugin", (request, resolveContext, callback) => {
- if (
- request.path !== request.descriptionFileRoot ||
- /** @type {ResolveRequest & { [alreadyTriedMainField]?: string }} */
- (request)[alreadyTriedMainField] === request.descriptionFilePath ||
- !request.descriptionFilePath
- )
- return callback();
- const filename = path.basename(request.descriptionFilePath);
- let mainModule =
- /** @type {string|null|undefined} */
- (
- DescriptionFileUtils.getField(
- /** @type {JsonObject} */ (request.descriptionFileData),
- this.options.name
- )
- );
-
- if (
- !mainModule ||
- typeof mainModule !== "string" ||
- mainModule === "." ||
- mainModule === "./"
- ) {
- return callback();
- }
- if (this.options.forceRelative && !/^\.\.?\//.test(mainModule))
- mainModule = "./" + mainModule;
- /** @type {ResolveRequest & { [alreadyTriedMainField]?: string }} */
- const obj = {
- ...request,
- request: mainModule,
- module: false,
- directory: mainModule.endsWith("/"),
- [alreadyTriedMainField]: request.descriptionFilePath
- };
- return resolver.doResolve(
- target,
- obj,
- "use " +
- mainModule +
- " from " +
- this.options.name +
- " in " +
- filename,
- resolveContext,
- callback
- );
- });
- }
-};