Skip to content

Instantly share code, notes, and snippets.

@talyssonoc
Last active May 20, 2022 20:26
Show Gist options
  • Save talyssonoc/34dfd46ecd2a45485d4410dc7704312b to your computer and use it in GitHub Desktop.
Save talyssonoc/34dfd46ecd2a45485d4410dc7704312b to your computer and use it in GitHub Desktop.

Implemente uma função que recebe como parâmetro uma string contendo um texto que deverá ser quebrado em múltiplos tweets que serão postados em forma de thread no Twitter.

Regras

  1. Cada tweet deve conter, no máximo, 280 caracteres.

  1. Caso o texto tenha que ser quebrado em múltiplos tweets, o final de cada tweet deve exibir a contagem do progresso da thread. Isto influencia na contagem total de caracteres do tweet. Por exemplo:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas lacinia aliquet dui sit amet tempor. Fusce eget molestie nibh. Pellentesque posuere dignissim erat eget tempor. Nam eget viverra massa, ac placerat arcu. Vestibulum pharetra sapien odio, id elementum lacus ac. 1/42


  1. Nenhuma palavra deve ser cortada ao meio. Ou seja, caso uma palavra for ser cortada ao meio o tweet onde a primeira metade dela estaria contido deverá ter um cumprimento menor e a palavra inteira deve ser colocada no próximo tweet. Esta regra também se aplica para pontuações como: vírgula (,), ponto final (.), ponto de exclamação (!) e ponto de interrogação (?).

Exemplo:

Texto original

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi rutrum arcu est, at scelerisque elit auctor ac. Aenean felis orci, volutpat at metus vel, viverra gravida nulla. Pellentesque dictum semper ipsum eget fringilla. Sed id suscipit nisi, ac semper dolor. Praesent massa nunc.

Errado:

Primeiro tweet:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi rutrum arcu est, at scelerisque elit auctor ac. Aenean felis orci, volutpat at metus vel, viverra gravida nulla. Pellentesque dictum semper ipsum eget fringilla. Sed id suscipit nisi, ac semper dolor. Praesent mas 1/2

Segundo tweet:

sa nunc. 2/2

Correto:

Primeiro tweet:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi rutrum arcu est, at scelerisque elit auctor ac. Aenean felis orci, volutpat at metus vel, viverra gravida nulla. Pellentesque dictum semper ipsum eget fringilla. Sed id suscipit nisi, ac semper dolor. Praesent 1/2

Segundo tweet:

massa nunc. 2/2


  1. Nenhum tweet deve começar com espaço nem pontuação.

  1. O retorno desta função deverá ter o seguinte formato:
{
  tweets: [], // array de strings
  count: 10, // quantidade total de tweets
  isThread: true // se o texto precisou realmente ser quebrado em mais de um tweet
}

  1. Não é necessário considerar o encurtamento automático de links feito pelo twitter.

  1. Escreva testes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment