feature(dom) add Dialog