npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@zabalit/zabal-core-app

v6.1.4

Published

@zabalit/zabal-core-app ===============

Readme

@zabalit/zabal-core-app

Subir nuevo tag

Una vez actualizada la documentación con los últimos cambios en el CHANGELOD.md ejecutaremos

Actualizar tag antiguo

En caso de que queramos modificar un tag especifico ejecutamos

Quitar tag obsoleto

Para borrar un tag que no nos interesa mantener en git

Realizar link para testear

Ponemos en modo watch la librería para recompilar y realizar el enlace simbólico cada vez que se detecta un cambio

Desde el proyecto que queremos testearlo ejecutamos

Instalar en local

Realizamos el empaquetado del módulo

Desde el proyecto que queremos utilizarlo ejecutamos

Instalar desde Repo NPM

Realizamos el empaquetado y la subida al servidor NPM

Desde el proyecto que queremos utilizarlo ejecutamos

Estrctura de ficheros

├── assets
│   ├── i18n 
│   ├── imgs
│   └── svg
├── dist
├── node_modules
├── scripts
├── src
│   ├── components 
│   │   ├── presentation
│   │   └── smart
│   ├── constants
│   ├── directives
│   ├── enums
│   ├── guards
│   ├── helpers
│   ├── i18n
│   ├── interfaces
│   ├── resolvers
│   ├── services
│   │   └── base
│   ├── styles
│   └── utils
└── styles
  • assets: contiene todos los estáticos comunes (Traducciones comunes. imágenes, svgs...)
  • dist: Contiene los ficheros compilados mediante el comando tsc necesarios para utilizar el módulo común desde la aplicación
  • node_modules: Contiene las dependencias del módulo común
  • scripts: Contiene los scripts para automatizar las funcionalidades de creación de tags en git
  • src:: Contiene el código fuente en typescript del módulo común. Esta carpeta se compilará en la carpeta dist. Se organiza de la siguiente manera:
    • components.modals: Componentes de tipo modal
    • components.presentation: Todos los componentes que no tengan dependencias de servicios y solo sirvan para presentar información.
    • components.smart: Componentes que tengan funcionalidades especificas y requieran de servicios comunes para poder funcionar
    • constants: Constantes comunes
    • guards: Servicios de tipo guard
    • helpers: Servicios especiales como por ejemplo los HttpInterceptors, los TranslateLoaders o Los servicios para menajear errores
    • i18n: Ficheros json con las traducciones comunes. Esta carpeta se copiará a la carpeta assets a la hora de realizar el build de la librería
  • styles:: Contiene el código fuente de los css del módulo común. Esta carpeta se copiará a la carpeta assets a la hora de realizar el build de la librería

Usar el módulo

Añadir las peerDependencies del módulo común en la aplicación

Por cada módulo listado en zabal-core-app/package.json en la propiedad peerDependencies, ejecutar el comando de instalación en el directorio de la app. La versión instalada en la app deberá cumplir con la numeración definida en la librería, ya sea numeración variable, fija o por intervalos:

// En el Módulo App
import {ZabalCoreModule} from '@zabalit/zabal-core-app'; 

@NgModule({
  declarations: [
      // Declaraciones de la APP
  ],
  imports: [
        // Configuración del módulo
        BrowserModule,
        ZabalCoreModule.forRoot({
            ...
            ...ZABAL_CORE_MODULES,
            traduccionesApp: [
                {
                    clave: 'zabalComun',
                    ruta: 'zabal-core/i18n'
                }
            ],
            ...
        }),,
        AppRoutingModule
    ],
    bootstrap: [AppComponent],
    entryComponents: [
    ],
    providers: [
        ...ZABAL_CORE_PROVIDERS
    ]   
})
export class AppModule {}

// En el Módulo Shared
@NgModule({
    declarations: [
      // Declaraciones Compartidas
    ],
    imports: [
        ZabalCoreModule
    ],
    exports: [
        ZabalCoreModule
    ],
    providers: [
    ]
})
export class SharedModule {}

Añadimos los estilos CSS comunes en el fichero app.scss

@import "~@zabalit/zabal-core-app/styles/styles.css";

Añadimos los ficheros estáticos del módulo común (Traducciones, imágenes SVGs...).

En el fichero angular.json (Apartado assets) añadimos lo siguiente

{
    "glob": "**/*",
    "input": "node_modules/@zabalit/zabal-core-app/assets",
    "output": "zabal-core"
}

Utilizar recursos comunes

Para utilizar los recursos comunes desde cada aplicación

<!-- Utilizar una imágen -->
<img src="zabal-core/img/image.png">
<!-- Utilizar un SVG- -->
<ion-icon src="zabal-core/svg/prueba.svg"></ion-icon>

Utilizar traducciones comunes

Para utilizar las traducciones desde la aplicación tenemos que utilizar el prefijo 'zabalComun' seguido de la ruta del literal en el json

<div>{{'zabalComun.acciones.LOGIN' | translate}}</div>