¡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:
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
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.140.120/api/v4/projects/133/packages/npm/ //10.1.140.120/api/v4/projects/133/packages/npm/:_authToken=<your-token <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 publish --registry http://10.1.140.120/api/v4/projects/133/packages/npm/
Paso 3: Instalar la Librería usando npm link Crear un enlace simbólico global:
sh 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 GitLab Instalar la Librería desde el Registro de GitLab:
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 Descargar el Archivo del Paquete:
Usa curl para descargar el archivo .tgz:
$ mkdir -p ./mflibs && curl -H "Authorization: Bearer jwPyfnRVxbD2ihgVPByN" http://10.1.140.120/api/v4/projects/133/packages/npm/@mflibs/encryption-lib/-/@mflibs/my-library.tgz -o ./mflibs/encryption-lib.tgz
npm install ./@mflibs/my-library.tgz
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 GitLab. 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 GitLab.