feature(dom) add window