in packages-error-prompt/console-base-error-prompt/src/util/convert-to-queue-item.ts [27:57]
export default function convertToQueueItem(o?: TErrorPromptArg, extra?: IErrorPromptExtra | IFnErrorPromptExtra, detailedMode?: boolean): IErrorQueueItem | null {
if (shouldIgnore(o)) {
return null;
}
const error = convertToErrorPlain(o);
const predefinedExtra = getPredefinedExtra(error);
let {
title = error.title,
message = error.message,
messageExtra,
button
} = parseExtra(error, extra);
if (predefinedExtra) {
title = predefinedExtra.title || title;
message = predefinedExtra.message || message;
messageExtra = predefinedExtra.messageExtra || messageExtra;
button = predefinedExtra.button || button;
}
return {
error,
title: title || defaultTitle,
message,
messageExtra,
button,
detailedMode,
resolve: _noop // 由主方法负责填充成正式的 resolve 方法
};
}