make drawer its own component