/*
|
MIT License http://www.opensource.org/licenses/mit-license.php
|
Author Tobias Koppers @sokra
|
*/
|
"use strict";
|
|
const util = require("util");
|
|
// TODO remove in enhanced-resolve 5
|
module.exports = util.deprecate(function createInnerCallback(
|
callback,
|
options,
|
message,
|
messageOptional
|
) {
|
const log = options.log;
|
if (!log) {
|
if (options.stack !== callback.stack) {
|
const callbackWrapper = function callbackWrapper() {
|
return callback.apply(this, arguments);
|
};
|
callbackWrapper.stack = options.stack;
|
callbackWrapper.missing = options.missing;
|
return callbackWrapper;
|
}
|
return callback;
|
}
|
|
function loggingCallbackWrapper() {
|
return callback.apply(this, arguments);
|
}
|
if (message) {
|
if (!messageOptional) {
|
log(message);
|
}
|
loggingCallbackWrapper.log = function writeLog(msg) {
|
if (messageOptional) {
|
log(message);
|
messageOptional = false;
|
}
|
log(" " + msg);
|
};
|
} else {
|
loggingCallbackWrapper.log = function writeLog(msg) {
|
log(msg);
|
};
|
}
|
loggingCallbackWrapper.stack = options.stack;
|
loggingCallbackWrapper.missing = options.missing;
|
return loggingCallbackWrapper;
|
},
|
"Pass resolveContext instead and use createInnerContext");
|