Files
2021-03-02 20:23:04 -08:00

43 lines
1.0 KiB
TypeScript

import dedent from 'ts-dedent';
// de-indents strings so multi-line string literals can be used
function cleanup(data: any[]) {
return data.map((d) => {
if (typeof d === 'string') {
return dedent(d);
}
return d;
});
}
export function error(...data: any): Error {
console.error(`[@nativescript/webpack]`, ...cleanup(data));
// we return the error - the caller can throw or ignore
if (typeof data[0] === 'string') {
return new Error(data[0]);
}
return new Error('@nativescript/webpack ran into a problem...');
}
export function warn(...data: any): void {
console.warn(`[@nativescript/webpack]`, ...cleanup(data));
}
export function info(...data: any): void {
console.info(`[@nativescript/webpack]`, ...cleanup(data));
}
// todo: refine
// export function error(message: string, info?: { possibleCauses?: string[] }) {
// console.error(`
// NativeScript Webpack encountered an error and cannot proceed with the build:
//
// ${message}
//
// Possible causes:
// ${info?.possibleCauses?.map((cause) => `- ${cause}`).join('\n')}
// `);
// }