create component dialog