Sé varias widgets precisam das mesmas bibliotecas ou scripst, uma boa solução e criar uma widget “repositório” contendo todos os fontes e códigos necessários dentro dela.
tente separar os css, js, imagens nas respectivas pastas da widget.
dentro do arquivo application.info altere a linha abaixo.
application.uiwidget=false
isso fara com que seu componente não seja listada nas widgets dentro do fluig
Fiz isso pra ter os arquivos disponíveis em vários locais, mas não pensei em utilizar referenciando como dependência nas Widgets. Sempre colocava direto no HTML e FTL.
@Daniel_Sales e se o meu repositório for para o BPM?
As vezes utilizo alguns css e js que são comuns a outros projetos. Como seguir essa mesma lógica? Tem como?
@Cassius dá pra por na pasta /resources do Fluig também - ela não é apagada durante as atualizações e ficaria exposta globalmente. Em um projeto usamos esse recurso pra compartilhar artefatos com todos os processos, formulários e widgets.
Tudo que for acessado pelo navegador bastaria você declarar com a tag script e/ou link/style apontando o endereço do arquivo igual ao declarado na widget pelo Daniel.
Eu criei alguns scripts e estilos que uso em vários formulários e pra facilitar fiz essa tática de usar uma widget.
O complicado é compartilhar js utilizado nos eventos de servidor (eventos de formulário e processo). Quase todo processo/formulário preciso criar algumas funções exatamente iguais. Muito chato.
Valeu aí pelas dicas @daniel.cabral e @Bruno_Gasparetto.
Confesso que soy muito, mas muito fraco em Widgets, mas fuçarei mais nesse assunto pra utilizar essa otimização.
Obrigado.
Você cria a Widget no Eclipse (Fluig Studio). O nome que você der pra sua widget será a URL dela e todos os arquivos resource ficarão disponíveis.
Por exemplo, eu criei a Widget fluighelpers pra ter algumas correções de estilo do formulário e outras padronizações. Também coloquei scripts que utilizo pra gerar PDF e pra encapsular a DatasetFactory.getDataset em uma Promise.
Sensacional!!! Já vou fazer umas “brincadeiras” aqui agora com isso aí.
Vai me poupar um trabalhão de ficar copiando e colando js e css de um projeto pro outro.
Obrigado também @daniel.cabral pela dica.