Fazendo upgrade para Angular versão 15
O Sterling Store Engagement foi atualizado para a versão 15 do Angular. Assegure-se de migrar suas extensões para Angular versão 15.
Antes de iniciar
- Deve-se ter a área de trabalho Angular versão 13 do DTK 23.1.3.2-10.0.2303.2 .
- Assegure-se de que você esteja na
node.jsversão 14.19.0.
Sobre esta tarefa
Procedimento
Execute todos os comandos da pasta <WORKSPACE>/store-frontend-src .
- Atualize Angular
coreeclipara a versão 14 executando o comando a seguir:ng update @angular/core@14 @angular/cli@14 --allow-dirty --force - Inclua a dependência,
@messageformat/corecom a versão 3.1.0 executando o comando a seguir:yarn add -W @messageformat/core@3.1.0Atualize a dependência,
single-spa-angularpara a versão 7.1.0 executando o comando a seguir:yarn upgrade single-spa-angular@7.1.0 - Atualizar
devDependency,@angular-builders/custom-webpackpara a versão 14.1.0 executando o comando a seguir:yarn upgrade @angular-builders/custom-webpack@14.1.0 --dev - Faça o download e instale a versão
node.js16.4.0.- Na variável de ambiente PATH, atualize /path/to/nodejs-16.14.0/bin.
- Verifique a versão do nó executando o comando a seguir:
node -v
- Instale a versão do yarn 1.22.5 globalmente executando o seguinte comando:
npm install --global yarn - Instale o Lerna como um módulo global executando o comando a seguir:
npm install -g lerna@4.0.0 - Crie o arquivo
test.tsa seguir e copie o arquivo para extensions/features/override-component/src/ O arquivotest.tsé importante para o script de upgrade angular ser executado com êxito./******************************************************************************* * IBM Confidential * IBM® Sterling Order Management System Software (5737-D18) * IBM Sterling Order Management System Software (5725-D10) * (C) Copyright IBM Corp. 2022 ******************************************************************************/ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, platformBrowserDynamicTesting(), { teardown: { destroyAfterEach: false } } ); - Substituir
devDependenciesda biblioteca de estilos que estão presentes em /extensions/libs/styles/package.json e /packages/libs/styles/package.json."devDependencies": { "@ng-bootstrap/ng-bootstrap": "12.1.1", "autoprefixer": "^9.0.0", "breakpoint-sass": "^2.7.1", "css-loader": "^2.0.0", "cssnano": "^4.0.5", "file-loader": "^6.2.0", "mini-css-extract-plugin": "^0.5.0", "node-sass": "^6.0.1", "postcss-loader": "^3.0.0", "resolve-url-loader": "^5.0.0", "sass-loader": "13.2.2", "style-loader": "^0.23.1", "url-loader": "^4.1.1", "webpack": "^5.51.1", "webpack-cli": "^4.9.2" }, - Excluir o arquivo
yarn.lockque está presente emstore-frontend-src. - Instalar
devDependenciesexecutando o comando a seguir:yarn bootstrap - Atualize Angular
coreeclipara a versão 15 executando o comando a seguir:ng update @angular/core@15 @angular/cli@15 --allow-dirty --force - Atualize as dependências a seguir executando o comando correspondente.
- Atualize
ngx-translate-messageformat-compilerpara 6.2.0 executando o comando a seguir:yarn upgrade ngx-translate-messageformat-compiler@6.2.0 - Atualize o
single-spa-angularpara 8.1.0 executando o comando a seguir:yarn upgrade single-spa-angular@8.1.0 - Atualize
@carbon/chartspara 1.7.6 executando o comando a seguir:yarn upgrade @carbon/charts@1.7.6 - Atualize
@carbon/charts-angularpara 1.7.6 executando o comando a seguir:yarn upgrade @carbon/charts-angular@1.7.6
- Atualize
- Atualize
devDependencye@angular-builders/custom-webpackpara a versão 15.0.0 executando o comando a seguir:yarn upgrade @angular-builders/custom-webpack@15.0.0 --dev - Inicie o aplicativo executando o seguinte comando e valide se as telas customizadas estão funcionando bem.
yarn start-appAo executar esse comando, se você vir erros relacionados a verificações de tipo, corrija o código de extensão para definir os tipos adequados para variáveis
- O comando
build-app:extensionpresente empackage.jsonde todos os aplicativos estendidos precisa ser modificado para considerar o argumento de configuração. Por exemplo,"build-app:extension": "ng build override-component --prod"deve ser alterado para"build-app:extension": "ng build override-component --configuration production" - Configure uma nova área de trabalho do 23.2.6.0-10.0.2306.0 DTK.
- Copiar
angular.jsonda área de trabalho anterior para a nova. - Copiar as extensões migradas da área de trabalho anterior para a nova área de trabalho.
- Execute novamente os comandos a seguir para testar extensões.
yarn bootstrapyarn start-app
Nota:- Copie ou substitua o conteúdo de src/app/app.component.ts de aplicativos override-component e override-modals em extensions/features/override-component e extensions/features/override-modals a partir do DTK mais recente.
- Como a versão angular 13 não é mais suportada, deve-se fazer upgrade das customizações da interface com o usuário para a versão Angular mais recente ou suportada. Para obter mais informações, consulte Controle de versão e versões do Angular.
- Se não for possível migrar para o Angular versão 15, mas desejar modificar suas extensões no Angular 13, será possível continuar construindo suas customizações com o DTK 23.1.3.1-10.0.2303.2 anterior. Para obter os recursos, aprimoramentos e correções mais recentes, deve-se fazer upgrade para o Angular versão 15
- Copiar