Este projeto foi gerado com Angular CLI versão 17.3.0.
Instalado o Prettier com o comando npm install --save-dev prettier
e configurado o arquivo .prettierrc
na raiz da aplicação com as seguintes configurações:
{
"singleQuote": true,
"useTabs": false,
"tabWidth": 4
}
Adicionado o script format
na seção de scripts no arquivo package.json
:
"format": "prettier --write ."
Executado o comando npm run format
para formatar todos os arquivos do projeto.
Removidos Jasmine e Karma:
npm uninstall jasmine-core @types/jasmine karma karma-chrome-launcher karma-coverage karma-jasmine karma-jasmine-html-reporter
Instalado Jest + pacotes necessários:
npm install --save-dev jest ts-jest ts-node @types/jest jest-preset-angular
Criado arquivo de configuração do Jest jest.config.js
na raiz do projeto com o seguinte conteúdo:
module.exports = {
preset: 'jest-preset-angular',
setupFilesAfterEnv: ['<rootDir>/setup-jest.ts'],
testPathIgnorePatterns: ['/node_modules/', '/dist/', '/src/test.ts'],
moduleFileExtensions: ['ts', 'html', 'js', 'json'],
transform: {
'^.+\\.(ts|html)$': [
'jest-preset-angular',
{
tsconfig: 'tsconfig.spec.json',
stringifyContentPathRegex: '\\.html$',
},
],
},
transformIgnorePatterns: ['node_modules/(?!.*\\.mjs$)'],
moduleNameMapper: {
'^@src/(.*)$': '<rootDir>/src/$1',
},
collectCoverage: true,
coverageReporters: ['html'],
};
Criado arquivo de configuração do Jest setup-jest.ts
na raiz do projeto com o seguinte conteúdo:
import 'jest-preset-angular/setup-jest';
No arquivo package.json
, alterada a seção de scripts de teste para:
"test": "jest",
"test:watch": "jest --watch",
Alterado arquivo tsconfig.spec.json
para:
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "./out-tsc/spec",
"types": ["jest", "node"],
"module": "commonjs"
},
"files": ["src/test.ts"],
"include": ["src/**/*.spec.ts", "src/**/*.d.ts"]
}
No arquivo angular.json
, remover a seção test
.
Adicionado Angular Material:
ng add @angular/material
Criada service que realiza os cálculos de IRRF, PIS, COFINS e CSLL. Escritos testes para os cálculos.
- Criada primeira versão de layout + implementação;
- Adicionado
ngx-currency
para máscaras de input, link aqui; - Customizadas fontes e cores;
- Atualizado favicon.
- Removido Angular Material e ngx-currency:
npm uninstall @angular/material @angular/cdk ngx-currency
- Removido estilo do Material do
angular.json
; - Removidas referências (fontes e ícones) do Material da
index.html
; - Instalado PrimeNG:
npm install primeng primeicons
- Alterado
input
parap-inputNumber
do PrimeNG; - Alterado
button
parap-button
do PrimeNG; - Importado tema no
styles.css
:
@import url('primeng/resources/themes/lara-light-teal/theme.css');
- Refeito layout.