# E-i Streaming Pages

[Demo](https://staging--feedback-streaming-ei.netlify.app/) staging no netlify.
[Deploy em produção](https://feedback-streaming.einscricao.app/) no netlify.

Este app utilza o [design system](https://zeroheight.com/3ab83ef17/p/537a5a-drawer) da Raise.

Storybook disponível [aqui](http://ds-storybook.acts6.tech/).

Aplicativo react responsável por disponibilizar telas de feedback ao participante de eventos Streaming, que são renderizadas em htmls no microsserviço do projeto. Também contem a tela de CSAT que é fornecido em um deploy separado no netlify, feito automaticamente ao commitar nas branchs.

O pacote é importado em um html no microsserviço, que utilizará dados passados por dataset do html para determinar qual tela será renderizada e seu devido comportamento.

## Instalação

Para instalar as dependências é necessário usar uma versäo >=20.0.0 do Node (versäo utilizada em questäo: 22.3.0):

```bash
yarn
```

Para rodar o projeto, é necessário usar uma versäo 16 do Node (versäo utilizada em questäo: 16.20.2), caso contrário, dará erro de ERR_OSSL_EVP_UNSUPPORTED

Após concluir instalações, para rodar localmente:

```bash
yarn start
```

Caso utilize o windows, é necessário instalar uma dependência globalmente:
```bash
npm install -g win-node-env
```


Se tudo der certo, o app rodará no endereço http://localhost:8080/ em seu navegador (se nada já estiver rodando nessa porta). Caso der algum erro, as mensagens disponibilizadas pelo web-pack no terminal devem ajudar a encontrar o problema.

## Build e publicação

Após realizar alguma modificação, é necessário buildar o projeto para gerar um [umd](https://github.com/umdjs/umd) pronto para publicação. Antes de rodar o comando abaixo para gerar a build, certifique-se de atualizar a versão do projeto no package.json, para aparecer no rodapé do app a versão atual. Também é necessário usar uma versäo 16 do Node:

```bash
yarn build
```

Isso irá gerar um diretório /dist na raiz do projeto, contendo um bundle da aplicação, pronto para ser publicado no npm e disponibilizado em uma cdn, neste caso, no unpkg.

## Publicaçäo

Depois de fazer a build do projeto, acesse [Feedback Pages Dashboard](https://dash.cloudflare.com/e1c86987b1c3fc2613d68e8f2a307760/pages/view/feedback-pages) (caso näo tenha permissáo, contate alguém responsável), depois clique em "Criar implantaçäo", depois em "selecione no computador" e escolha a opçäo "Carregar pasta" e suba a pasta /dist gerada e pronto, depois de alguns instantes o site estará no ar.


## Publicaçäo depreciada (näo utilizada mais)

Para realizar a publicação, certifique-se de estar cadastrado na organização [@labz](https://www.npmjs.com/search?q=%40labz) da Raise no npm. A organização ou cdn podem mudar, portanto certifique-se de perguntar as pessoas responsáveis para informações sobre onde estão sendo publicados os apps da empresa.

Já cadastrado e logado no npm localmente, rode o comando abaixo:

```bash
yarn publish
```

Se tudo estiver certo, o terminal pedirá o número da versão nova a ser publicada. Verifique qual será acessando o [npm](https://www.npmjs.com/package/@e-inscricao/ei-streaming-pages) do pacote, insira e dê enter para realizar a publicação.

Com isso, será possível importar o aplicativo através do cdn em uso.

Projeto criado usando o padrão [webpack-boilerplat](https://3.basecamp.com/4279186/buckets/14094244/messages/3774911878#__recording_3774911878).
