He will join the Premiership side for the next five seasons, with an option to extend the contract for one more year, reports Efe news.
Neither of the clubs has revealed the financial details but local media estimated it was a 15 million pounds ($19.1 million) deal.
"The 21-year-old Wales international made his professional debut for Swansea City in February 2018 and his senior Wales debut in November 2018, having previously represented the nation at various youth levels."
"This is one of the best days of my life and a challenge I am really looking forward to," he said after the signing.
He made a total of 38 appearances for Swansea across all competitions in the 2018/2019 season, notching five goals and making 10 assists.
(This story has not been edited by Business Standard staff and is auto-generated from a syndicated feed.)