add component variation to ui