eee5095692
BREAKING CHANGE: `<portal>` has been renamed to `<teleport>`. `target` prop is also renmaed to `to`, so the new usage will be: ```html <Teleport to="#modal-layer" :disabled="isMobile"> <div class="modal"> hello </div> </Teleport> ``` The primary reason for the renaming is to avoid potential naming conflict with [native portals](https://wicg.github.io/portals/).
30 lines
882 B
TypeScript
30 lines
882 B
TypeScript
import {
|
|
SourceLocation,
|
|
CompilerError,
|
|
createCompilerError,
|
|
DOMErrorCodes
|
|
} from '@vue/compiler-dom'
|
|
|
|
export interface SSRCompilerError extends CompilerError {
|
|
code: SSRErrorCodes
|
|
}
|
|
|
|
export function createSSRCompilerError(
|
|
code: SSRErrorCodes,
|
|
loc?: SourceLocation
|
|
): SSRCompilerError {
|
|
return createCompilerError(code, loc, SSRErrorMessages)
|
|
}
|
|
|
|
export const enum SSRErrorCodes {
|
|
X_SSR_CUSTOM_DIRECTIVE_NO_TRANSFORM = DOMErrorCodes.__EXTEND_POINT__,
|
|
X_SSR_UNSAFE_ATTR_NAME,
|
|
X_SSR_NO_TELEPORT_TARGET
|
|
}
|
|
|
|
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]: `No target prop on teleport element.`
|
|
}
|