MCPcopy
hub / github.com/webpack/webpack / handler

Method handler

lib/ExportsInfoApiPlugin.js:42–73  ·  view source on GitHub ↗
(parser)

Source from the content-addressed store, hash-verified

40 * @returns {void}
41 */
42 const handler = (parser) => {
43 parser.hooks.expressionMemberChain
44 .for("__webpack_exports_info__")
45 .tap(PLUGIN_NAME, (expr, members) => {
46 const dep =
47 members.length >= 2
48 ? new ExportsInfoDependency(
49 /** @type {Range} */ (expr.range),
50 members.slice(0, -1),
51 members[members.length - 1]
52 )
53 : new ExportsInfoDependency(
54 /** @type {Range} */ (expr.range),
55 null,
56 members[0]
57 );
58 dep.loc = /** @type {DependencyLocation} */ (expr.loc);
59 parser.state.module.addDependency(dep);
60 return true;
61 });
62 parser.hooks.expression
63 .for("__webpack_exports_info__")
64 .tap(PLUGIN_NAME, (expr) => {
65 const dep = new ConstDependency(
66 "true",
67 /** @type {Range} */ (expr.range)
68 );
69 dep.loc = /** @type {DependencyLocation} */ (expr.loc);
70 parser.state.module.addPresentationalDependency(dep);
71 return true;
72 });
73 };
74 normalModuleFactory.hooks.parser
75 .for(JAVASCRIPT_MODULE_TYPE_AUTO)
76 .tap(PLUGIN_NAME, handler);

Callers

nothing calls this directly

Calls 4

tapMethod · 0.80
sliceMethod · 0.80
addDependencyMethod · 0.65

Tested by

no test coverage detected