Criando uma língua construída com preguiça

Você está criando uma língua construída chamada Eadibitan. Mas tem preguiça demais para criar sua própria fonologia, gramática e ortografia. Então decidiu automatizar o processo.

Escreva uma função que traduza uma palavra do inglês para Eadibitan.

As sílabas do inglês devem ser analisadas de acordo com as seguintes regras:

  • As sílabas seguirão o padrão (C)(C)V(V(V))(C), em que C é uma consoante e V é uma vogal. Os parênteses indicam que um elemento é opcional.
  • O padrão CVCV será analisado como CV-CV.
  • O padrão CVCCV será analisado como CVC-CV
  • O padrão CVCCCV será analisado como CVC-CCV
  • Duas ou três vogais consecutivas sempre formarão um ditongo e um tritongo, respectivamente. Isso significa que serão agrupadas na mesma sílaba.
  • A letra y deve ser analisada como consoante quando for seguida por uma vogal e como vogal caso contrário.

A ordem das letras de cada sílaba deve ser alterada de acordo com a tabela a seguir:

InglêsEadibitan
c1 v1v1 c1
c1 v1 v2v1 c1 v2
c1 v1 v2 v3v1 c1 v2 v3
c1 v1 c2v1 c1 c2
c1 v1 v2 c2v1 c1 v2 c2
c1 v1 v2 v3 c2v1 c1 v2 v3 c2
c1 c2 v1c2 v1 c1
c1 c2 v1 v2c2 v1 c1 v2
c1 c2 v1 v2 v3c2 v1 c1 v2 v3
c1 c2 v1 c3c2 v1 c1 c3
c1 c2 v1 v2 c3c2 v1 c1 v2 c3
c1 c2 v1 v2 v3 c3c2 v1 c1 v2 v3 c3

Qualquer outro padrão deve ser deixado inalterado.

Exemplos

eadibitan("edabitian") ➞ "eadibitan"

eadibitan("star") ➞ "tasr"

eadibitan("beautiful") ➞ "ebauitufl"

eadibitan("statistically") ➞ "tasitsitaclyl"

Observações

  • Você pode esperar apenas argumentos que sejam palavras isoladas, em minúsculas.
  • Óbvio Bônus: Tente resolvê-lo usando RegEx.