¡Esta es una revisión vieja del documento!
Paso 1: Crear la Librería en Angular Instalar Angular CLI si no lo tienes:
npm install -g @angular/cli
Crear el Workspace y la Librería: (Opcional puedes crear la libreria en cualquier parte sin vincularla al workspace)
ng new my-workspace --create-application=false cd my-workspace ng generate library my-library
Agregar Código a la Librería:
Modifica los archivos en projects/my-library/src/public-api.ts para exportar tu funcionalidad. Por ejemplo, puedes agregar un servicio:
// projects/my-library/src/lib/my-library.service.ts import { Injectable } from '@angular/core'; @Injectable({ providedIn: 'root', }) export class MyLibraryService { constructor() { } public sayHello(): string { return 'Hello from MyLibraryService!'; } } // projects/my-library/src/public-api.ts export * from './lib/my-library.service'; Construir la Librería:
ng build my-library </code>
2. Configurar Nexus.
3. Para publicar librería es necesario configurar Nexus local con credenciales, entonces en una consola dentro del proyecto.
npm login --registry=http://10.1.40.130:8081/repository/npm-hosted/ Ingresa usuario y contraseña de Nexus En el archivo C:\Users\{usuario}\.npmrc se genera la credencial como el siguiente ejemplo; //10.1.40.130:8081/repository/npm-hosted/:_authToken=NpmToken.963f3fcd-2bb5-3570-aa39-acb05c1fe44f
Paso 2: Publicar la Librería en GitLab Configurar el Registro de GitLab en .npmrc:
Crea o modifica el archivo .npmrc en tu directorio de usuario (C:\Users\<tu_usuario>\.npmrc en Windows o ~/.npmrc en Linux/Mac):
@mflibs:registry=http://10.1.40.130:8081/repository/npm-hosted/ //10.1.40.130:8081/repository/npm-hosted/:_authToken=NpmToken.963f3fcd-2bb5-3570-aa39-acb05c1fe44f <code> 2. **Publicar la Librería**: Primero, asegúrate de estar en el directorio del workspace (donde está el archivo `package.json` principal) y luego publica la librería: <code> cd dist/my-library npm install @mflibs/encryption-lib@1.0.15 --registry=http://10.1.40.130:8081/repository/npm-hosted/
Paso 3: Instalar la Librería usando npm link Crear un enlace simbólico global:
Copy code cd dist/my-library npm link
Enlazar la Librería en tu Proyecto Angular:
En el directorio de tu proyecto Angular:
npm link my-library
Paso 4: Importar la Librería desde Nexus Instalar la Librería desde el Registro de Nexus:
En el directorio de tu proyecto Angular, ejecuta:
npm install @mflibs/my-library --registry http://10.1.140.120/api/v4/projects/133/packages/npm/
Paso 5: Descargar la Librería usando curl
Consideraciones Finales
Asegúrate de tener correctamente configurado tu archivo .npmrc y de utilizar el token de acceso adecuado para autenticarte en el registro de Nexus. Además, asegúrate de que la URL del registro sea accesible desde tu red.
Si sigues estos pasos, deberías poder crear, publicar, y consumir tu librería Angular de manera efectiva utilizando tanto npm link como el registro privado de Nexus.