Instalação
Esta documentação está desatualizada e não deve ser seguida para o SDK atualmente.
Pré-Requisitos
Node.js
O Angular e, portanto, o Viasoft SDK requerem a instalação do Node.js versão 10.9.0 ou mais recente. Recomendamos que seja instalada a versão 10.16.3 LTS.
Se já possui o
Node.js, abra uma janela do terminal e digitenode -vpara verificar a versão instalada.Se você não possui o
Node.jsou deseja atualizá-lo, acesse o site do Node.js e siga as instruções de instalação da versão10.16.3 LTSpara seu sistema operacional.
npm
O Angular, suas ferramentas e o Viasoft SDK dependem de funcionalidades providenciadas por bibliotecas disponíveis no npm. Para baixar, instalar e utilizar pacotes do npm, é necessário um gerenciador de pacotes do npm.
Esse guia utilizará o npm client, que é instalado por padrão durante a instalação do Node.js. Para verificar que você possui o npm client instalado, abra uma janela do terminal e digite npm -v.
Angular
Para instalar o Angular CLI, abra uma janela do terminal e digite o seguinte comando:
💲️ npm i -G @angular/cli@7.3.9
É importante que seja utilizada a versão 7.3.9.
Criação do projeto
Para criar um novo projeto, navegue até o diretório onde deseja criar sua aplicação e digite os seguintes comandos:
💲️ ng new <NOME> --prefix=<PREFIXO> --style=scss --routing=false
💲️ cd <NOME>
Não se preocupe com o roteamento, iremos configurá-lo aqui.
Instalação do SDK
Para instalar os pacotes do Viasoft SDK, é necessário adicionar o registry da Viasoft ao seu projeto. Para isso, abra uma janela do terminal e digite o seguinte comando:
💲️ npm config set @viasoft:registry http://proget.korp.com.br/npm/viasoft-sdk-frontend/
Com o registry configurado, digite o seguinte comando para instalar os pacotes @viasoft:
💲️ npm i -S @viasoft/app-core @viasoft/http @viasoft/common @viasoft/components @viasoft/navigation @viasoft/theming @viasoft/view-template
Dependências
Os pacotes do Viasoft SDK requerem que as seguintes dependências sejam instaladas:
@agm/core@1.0.0-beta.7
@angular/cdk@7.3.7
@angular/flex-layout@7.0.0-beta.23
@angular/material@7.3.7
@aspnet/signalr@1.1.4
@asymmetrik/ngx-leaflet@5.0.1
@fortawesome/fontawesome-pro@5.10.2
@ngx-translate/core@11.0.1
angular-oauth2-oidc@8.0.4
angular2-query-builder@0.4.2
dateformat@3.0.3
hammerjs@2.0.8
jwt-decode@2.2.0
leaflet@1.4.0
ng2-date-picker@2.12.0
ngx-currency@1.5.1
ngx-mask@7.3.6
primeicons@1.0.0
primeng@7.0.5
Para isso, abra uma janela do terminal e digite o seguinte comando para cada dependência:
💲️ npm i -S <PACOTE>@<VERSÃO>
Para a instalação do FontAwesome, veja Autenticação do FontAwesome primeiro, depois instale o pacote normalmente.
Configurações adicionais
Autenticação do FontAwesome
Para que os ícones do FontAwesome apareçam, é necessária a autenticação com a chave do FontAwesome Pro. Abra e/ou crie o arquivo .npmrc no diretório raiz do seu projeto e adicione as seguintes linhas:
@fortawesome:registry=https://npm.fontawesome.com/
//npm.fontawesome.com/:_authToken=<INSIRA A CHAVE AQUI>
Para obter a chave de acesso, solicite-a aqui.
Assets
O @viasoft/navigation precisa de dois ícones para que funcione corretamente. Baixe os ícones aqui e coloque-os dentro da pasta src/assets.
Styles
Para o funcionamento correto dos componentes, é necessário que você importe algumas folhas de estilo adicionais.
No angular.json
No diretório raiz do seu projeto, abra o arquivo angular.json e navegue até projects.<NOME DO PROJETO>.architect.build.options.styles:
{
"projects": {
"<NOME DO PROJETO>": {
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"styles": [
"src/styles.scss"
// aqui!
],
},
},
}
},
},
}
Então, adicione as seguintes linhas:
"styles": [
"node_modules/primeicons/primeicons.css",
"node_modules/primeng/resources/primeng.css",
"node_modules/primeng/resources/themes/rhea/theme.css",
"node_modules/@fortawesome/fontawesome-pro/css/all.min.css",
"node_modules/@fortawesome/fontawesome-pro/css/light.min.css",
"src/styles.scss"
]
No styles.scss
Em sua aplicação, dentro de src/styles.scss, adicione as seguintes linhas:
@import '~@viasoft/theming/use-theme';
@include useTheme();