Exibindo uma tela

Nesta seção, você encontra um exemplo prático de como exibir uma tela Server-Driven

Exibindo uma tela a partir de uma URL

Para renderizar uma tela server-driven, basta criar uma instância BeagleScreenViewController do tipo remote e fazer a inicialização com a URL do seu BFF, como no exemplo abaixo:

let beagleViewController = Beagle.screen(
    .remote(
        .init(url: "// URL AQUI")
    )
)

Feito isso, basta apresentá-la onde preferir. Neste caso, você deve seguir como no comando de exemplo.

present(beagleViewController, animated: true, completion: nil)

A resposta do seu BFF deve ser um JSON que representa um componente visual definido localmente na aplicação.

Por fim, execute a aplicação e veja uma tela definida em uma URL remota renderizada na sua aplicação local.

Exibindo uma tela a partir de um JSON

Para renderizar uma tela de um JSON, basta criar uma instância BeagleScreenViewController do tipo declarativeText e fazer a inicialização com o JSON, como no exemplo abaixo:

let beagleViewController = Beagle.screen(
    .declarativeText(
        .init(text: "// JSON HERE")
    )
)

Feito isso, basta apresentá-la onde preferir. Neste caso, você deve seguir como no comando de exemplo.

present(beagleViewController, animated: true, completion: nil)