vue3-yuanma/packages/compiler-ssr/src/errors.ts

32 lines
1001 B
TypeScript
Raw Normal View History

2020-02-05 01:20:51 +08:00
import {
SourceLocation,
CompilerError,
createCompilerError,
DOMErrorCodes
} from '@vue/compiler-dom'
export interface SSRCompilerError extends CompilerError {
code: SSRErrorCodes
}
export function createSSRCompilerError(
code: SSRErrorCodes,
loc?: SourceLocation
2021-04-13 07:42:09 +08:00
) {
return createCompilerError(code, loc, SSRErrorMessages) as SSRCompilerError
2020-02-05 01:20:51 +08:00
}
export const enum SSRErrorCodes {
X_SSR_CUSTOM_DIRECTIVE_NO_TRANSFORM = DOMErrorCodes.__EXTEND_POINT__,
X_SSR_UNSAFE_ATTR_NAME,
X_SSR_NO_TELEPORT_TARGET,
X_SSR_INVALID_AST_NODE
2020-02-05 01:20:51 +08:00
}
export const SSRErrorMessages: { [code: number]: string } = {
[SSRErrorCodes.X_SSR_CUSTOM_DIRECTIVE_NO_TRANSFORM]: `Custom directive is missing corresponding SSR transform and will be ignored.`,
[SSRErrorCodes.X_SSR_UNSAFE_ATTR_NAME]: `Unsafe attribute name for SSR.`,
[SSRErrorCodes.X_SSR_NO_TELEPORT_TARGET]: `Missing the 'to' prop on teleport element.`,
[SSRErrorCodes.X_SSR_INVALID_AST_NODE]: `Invalid AST node during SSR transform.`
2020-02-05 01:20:51 +08:00
}