Entendendo pastas e arquivos importantes
Aprenda sobre a estrutura de pasta de código-fonte para localizar os componentes que você precisa customizar, onde salvar suas customizações, e o propósito de alguns arquivos. Essas pastas e arquivos serão importantes se você estiver customizando os aplicativos existentes
Diretório de código do Order Hub
- O local padrão é devtoolkit_docker/orderhub-code..
Depois de ter identificado o local do código-fonte do Order Hub em seu ambiente, esse local é denotado por < order_hub_code_directory>.
Entendendo os diferentes módulos
- buc-app-configurações
- Inclui o código para o menu Configurações O menu Configuration estará disponível se você estiver inscrito no Sterling™ Intelligent Promising.
- exceção do aplicativo bucal
- Inclui o código para o menu Exceções
- buc-app-atendimento
- Inclui código para o menu Cumprimento .
- buc-app-inventário
- Inclui o código para o menu Inventário
- nó de aplicação bucal
- Inclui o código para o menu Nós e capacidade
- buc-app-ordem
- Inclui código para os menus Pedidos e Remessas ..
- buc-app-configurações
- Inclui código para alguns itens no menu Configurações (Configurações de exibição, Funções de usuário, Grupos de distribuição, Customizações).
- espaço de trabalho buc-app
- Inclui código para Início, Áreas de Trabalho, Alertase menus Regras de Alerta .
Entendendo a pasta 'packages'
O diretório < order_hub_code_directory> / < module-name> /packages retém todo o código que renderiza as páginas e ações para um módulo específico
- < route-name>
- As rotas incluídas no módulo. Por exemplo, a rota < order_hub_code_directory> /buc-app-order/packages/create-order está correlacionada à página Criar pedido na interface com o usuário.
- < route-name> /node_modules
- Inclui dependências externas para a rota.. Não modifique esta Pasta.
- < route-name> /src
- Inclui o código original da IBM Não modifique esta Pasta. Essa pasta é sobrescrita com novas instalações ou atualizações da IBM
- < route-name> /src-customizado
- Inclua seu código customizado nesta pasta.. Copie a estrutura de pasta e os arquivos que você precisa modificar da pasta src para esta pasta src-custom .
- < route-name> /src-mesclado
- Inclui código compilado que está em execução no aplicativo. Não modifique esta Pasta. O processo de compilação mescla as pastas src e src-custom em src-merge
- <nome_abreviado_do_módulo>-compartilhado/ativos
- Inclui ativos que são compartilhados em todas as rotas no módulo, como:
- Arquivos de conversão (por exemplo, en.json para sequências em inglês e fr.json para sequências em francês)
- Arquivos de estilo (por exemplo, main.scss)
- Imagens
- Arquivos JSON para customização por configuração (por exemplo, buc-field-details.json, buc-table-config.json)
Entendendo a pasta 'src'
- Aplicativo
- Inclui os componentes de página (.html, .ts), módulos e definições de serviços.
- ambientes
- Inclui configurações de ambiente que determinam quais ativos usar em um ambiente específico Não modifique esta Pasta. Em vez disso, copie essa pasta para src-custom e, em seguida, modifique conforme necessário..
- app/features/*. module.ts
- A definição do módulo de roteamento do aplicativo de página para todas as rotas neste aplicativo Por padrão, a IBM define uma rota para permitir a customização granular sem assumir a propriedade de todas as outras rotas dentro do módulo pai No entanto, é possível introduzir rotas customizadas conforme necessário em seu arquivo src-custom/app/features/ext-NNNmodule.ts .
Entendendo e preenchendo a pasta 'src-custom'
- Os recursos no Order Hub são organizados no diretório src/app/features . Copie a pasta features que deseja customizar e cole na pasta src-custom . Edite conforme necessário.. Por exemplo, se desejar customizar o recurso search a partir da rota inventory-search-results, será necessário copiar a pasta search correspondente de src para src-custom. Assegure-se de seguir a mesma hierarquia de pastas no src.

- Os ativos predefinidos que são compartilhados entre rotas são organizados no diretório < module_short_name> -shared/assets . Copie a pasta < module_short_name> -shared/assets/ < module-name> para a pasta src-custom/assets para que suas customizações possam acessar os ativos predefinidos (como texto de rótulo). Por exemplo, se você estiver customizando o módulo buc-app-inventory , copie a pasta inventory-shared/assets/buc-app-inventory para src-custom/assets

- Se você precisar editar ou incluir ativos, crie uma pasta src-custom/assets/custom É possível editar ou incluir os arquivos de tradução customizados necessários, arquivos scss e arquivos de configuração JSON, conforme necessário.

- Ao implementar customizações, seu código de customização funciona em paralelo com o código Order Hub . Mas você também deseja assegurar que as atualizações futuras da IBM não entrem em conflito e substituam suas customizações. Portanto, copie a pasta src/Environments na pasta src-custom . Em cada arquivo src-custom/environments/* .ts , inclua o código a seguir para indicar ao Order Hub que você customizou essa rota. Ao configurar como true, você não obtém automaticamente atualizações para esta rota, o que assegura que suas customizações não sejam sobrescritas.. Para obter novas atualizações, é necessário ressincronizar suas mudanças de customização para a liberação de código mais recente
environment.customization = true;Nota: se você estiver usando exclusivamente a técnica de customização por configuração em que está apenas atualizando os arquivos de configuração JSON (buc-table-config.json, buc-field-details.json, search_fields.json, então não será necessário mudar os arquivos de ambiente..
Entendendo a pasta 'src-merge'
A pasta < order_hub_code_directory> / < module-name> /packages/ < route-name> /src-merge é gerada mesclando o código das pastas src e src-custom durante a compilação de códigos. Uma compilação ocorre sempre que você salva mudanças de código em sua máquina. Não modifique o código na pasta src-merge . Em vez disso, atualize a pasta src-custom , conforme necessário
Entendendo e modificando o arquivo angular.json
- No arquivo angular.json , localize o matriz.
- Substitua o conteúdo padrão pelo seguinte código para apontar para os ativos mesclados. Substitua < route-name> e < module-name>, conforme necessário
"assets": [ { "glob": "**", "input": "packages/<route-name>/src-merged/assets", "output": "assets" }, { "glob": "*.json", "input": "packages/<route-name>/src-merged/assets/<module-name>", "output": "assets/<route-name>" }, { "glob": "**", "input": "node_modules/@buc/svc-angular/assets", "output": "assets" }, { "glob": "**", "input": "node_modules/@buc/common-components/assets", "output": "assets" } ], - Além disso, substitua o conteúdo na matriz .