-
Para criar a pasta para colocar a lib rode o seguinte comando
ng new project-name --create-aplication=false
, dessa forma teremos um projeto angular vazio (sem estrutura). -
Entre na pasta que foi criada no passo anterior e rode o seguinte comando
ng g library @pan-example/lib-example
para criar em si. -
Modifique e adicione da forma que vc desejar, mas nao esqueça de organizar o arquivo
project-name/projects/pan-example/src/lib/lib-example.module.ts
corretamente com seus respectivos exports. Faça o mesmo com o arquivo public-api, organize as referencias. -
Para testar a lib que vc esta desenvolvendo, crie uma aplicacão dentro do seu projeto com o seguinte comando
ng g aplication example-app
. Ele criará a aplicação no diretorio projects/exempla-app. -
Para que o build da lib seja executado a cada modificação basta rodar o comando
npm run watch
. -
E agora para rodar a aplição que vc criou para testar a sua lib rode o comando
npm start
. -
Para adicionar a lib criada no projeto de examplo basta importar o modulo da lib no seu app.module.ts, o import deve ficar parecido com
import { LibExampleModule } from @pan-example/lib-example
. Com isso vc ja pode utilizar as tags dos componentes criados na lib.
-
Na raiz do projeto rode o comando
ng build --prod
para compilar a aplicação. -
Acesse o diretorio
dist/pan-example/lib-example
e use o comandonpm login
para logar no npm. -
Apos logar rode o comando
npm publish
, ele ira compilar e tentar enviar o pacote para o npm. Note que dara um erro, isso ocorre por que estamos usando o @pan-example e ele entende que se torna de uma dependencia privada e solicita pagamento. -
Para tornar sua lib publica no npm rode o comando
npm publish --access public
indicando que sua lib será publica.
Adicionando o storybook no projeto: angular storybook get started