import Vue , { VNode } from 'vue' ; import { PropValidator } from 'vue/types/options' ; interface options extends Vue { style ? : object ; } export default Vue . extend < options > ( ) . extend ( { name : 'w-modal' , props : { visible : Boolean , zIndex : Number , className : String , customStyle : Object as PropValidator < object > , } , computed : { style ( ) { return { zIndex : this . zIndex , ... this . customStyle , } ; } , } , render ( h ) { return ( < transition name = "wv-fade" > < div vShow = { this . visible } class = { [ 'wv-modal' , this . className , ] } style = { this . style } onClick = { ( event ) => { this . $emit ( 'click' , event ) ; } } / > < /transition>); } , } ) ;