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 🙏

© 2024 – Pkg Stats / Ryan Hefner

suiteecommerce

v1.4.0

Published

Paquete de npm para uso en proyectos privados de Existaya. El mismo pretende estandarizar la programción asociada a proyetos de e-commerce facilitando módulos/librerías en javascript para su uso en diversos frameworks.

Downloads

159

Readme

Suite Ecommerce (Frontend)

Paquete de npm para uso en proyectos privados de Existaya. El mismo pretende estandarizar la programción asociada a proyetos de e-commerce facilitando módulos/librerías en javascript para su uso en diversos frameworks.

Versionamiento

Este paquete, al ser npm, utiliza un sistema de versión semántica (más información en About Semantic Versioning).

| Estado del código | Contexto | Reglas | Ejemplo | |--|--|--|--| | Primer lanzamiento | Nuevo producto | Comienza con 1.0.0 | 1.0.0 | | Solución de errores (bugs) con Rétrocompatibilidad | Parche | Se suma uno (1) al tercer dígito | 1.0.1 | | Nuevos aditamentos con Rétrocompatibilidad | Lanzamiento menor | Se suma uno (1) al segundo dígito | 1.1.0 | | Cambios no Rétrocompatibles | Lanzamiento mayor | Se suma uno (1) al primer dígito | 2.0.0 |

Relación entre versión del paquete y versión de Suite Ecommerce (Backend)

Por cada versión del Suite Ecommerce (Backend) se pueden utilizar las siguientes versiones:

| Versión Backend | Versiones Frontend | |--|--| | 1.0.0 | 1x |

Mantenimiento del paquete

Descripción: Suite Ecommerce es un proyecto Javascript/NPM que usa TypeScript (más información relacionada en página oficial de TypeScript) como compilador de Javascript.

Estructura

| Fichero | Descripción | Observaciones | |--|--|--| | package.json | Json usado para configurar el paquete NPM. Se configuran las dependencias entre otras cosas. | Importante en este fichero en el poder actualizar la versión del paquete con base en las reglas de versionamiento semántico. | | tsconfig.json | Json usado para configurar TypeScript y su proceso de compilación. | | | src/main.ts | Fichero TypeScript principal donde comunmente se exportarán los módulos que se requeiran sean públicos para su uso en los proyectos donde se instale el paquete. | También sirve para exponer pruebas corriendo el comando npm run tsandplay | | src/lib/ | Directorio donde vivirán los ficheros con sus respectivos módulos a exportar. | |

Configuraciones más notables en tscongif.json

| Propiedad | Descripción | Valor | |--|--|--| | | | |

Dependencias del paquete

| Dependencia | Descripción | |--|--| | typscript | Más información en typesscript - npm | | @types/node | Más información en @types/node - npm | | axios | Más información en axios - npm | | axios-observable | Más información en axios-observable - npm | | rxjs | Más información en rxjs - npm |

Comandos disponibles en ./package.json

| Comando | Descripción | Observaciones | |--|--|--| | npm run tscInit | Inicia TypeScript en el proyecto | | npm run tsc | Corre el proceso de compilación de TypeScript | Este compando sólo compila mas no corre el proyecto. | npm run tscAndPlay | Corre el proceso de compilación de TypeScript y luego corre el proyecto para validar inputs/outputs | Compila y corre el código en el paquete | | npm login | Inicia una sesión remota con el sistema de NPM para publicación del proyecto | Credenciales???? | | npm publish | Publica el paquete en NPM conbase en la versión configurada en el fichero package.json | Cada cambio requiere un cambio de versión para su publicación y actualización en NPM |

Publicación/Actualización del paquete Pasos para la publicación del paquete y actualización del mismo en NPM:

  1. Correr el comando npm login y seguir los pasos indicados durante el proceso. Este comando es sólo necesario la primera vez que se publique el paquete.
  2. Editar la versión del paquete en el fichero ./package.json siguiendo las indicaciones del sitema versionamiento semántico.
  3. Correr el comando npm publish y esperar el resultado.

Instalación del paquete en proyectos

Instalación

npm i suiteecommerce --save

Actualización

npm update --save

Uso del paquete en proyectos

Configuración/Uso para Angular, Ionic-Angular y proyectos TypeScript En el fichero src/app/app.module.ts importar la siguiente dependencia:

import { Config } from 'suiteecommerce/dist/main';
// Configurar las propiedades necesarias.
Config.urlBase = 'my web service url';

Para usarlo en un componente de Angular o Ionic-Angular se debe importar el módulo deseado. Por ejemplo:

import { Productos, ...otros módulos... } from 'suiteecommerce/dist/main';
...
ngOnInit() {
    Productos.listar().then((res: any) => {}).catch((error: any) => {});
}

Configuración/Uso para jQuery En el ./index.html del proyecto se debe incluir en el header el siguiente script:

<script src="./node_modules/suiteecommerce/dist/main.map.js"></script>

Para usarlo se debe llamar directamente al módulo deseado y su respectivo método. Por ejemplo:

$(document).ready(() => {
    // Configurar las propiedades necesarias.
    Config.urlBase = 'my web service url';
    Productos.listar().then((res: any) => {}).catch((error: any) => {});
});

Configuración/Uso para en Nodejs (backend side) Requerir el paquete de configuración:

var SuiteEcommerceConfig = require('suiteecommerce').Config;
// Configurar las propiedades necesarias.
SuiteEcommerceConfig.urlBase = 'my web service url';

Requerir los modulos necesarios. Por ejemplo:

var SuiteEcommerceProductos = require('suiteecommerce').Productos;
SuiteEcommerceProductos.listar().then((res: any) => {}).catch((error: any) => {});

API

Listado descriptivo de los módulos/objetos (propiedades/métodos) que se manejan en el paquete para uso en los proyectos.

Configuración

| Tipo | Nombre | Descripción | |--|--|--| | Módulo | Config | Módulo con el cual se puede configurar el comportamiento de otros módulos. |

Objetos/Métodos/Propiedades

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Propiedad | string | urlBase | Url del servicio web a consumir. |



Usuarios

| Tipo | Nombre | Descripción | |--|--|--| | Módulo | Usuarios | Módulo que se encarga de todo lo relacionado al manejo de usuarios. |

Objetos/Métodos/Propiedades

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Clase | IUsuario | Usuarios | ??? |



Productos

| Tipo | Nombre | Descripción | |--|--|--| | Módulo | Productos | Módulo que se encarga de todo lo relacionado al manejo de productos. Por ejemplo, listar productos, filtrar productos, comparar productos, editar objeto de producto, etc. |

Objetos/Métodos/Propiedades

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Clase | IProductos | Productos | ??? |



Carro de compra

| Tipo | Nombre | Descripción | |--|--|--| | Módulo | Carro | Módulo que se encarga de todo lo relacionado al manejo del carro de compra. |

Objetos/Métodos/Propiedades

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Clase | ICarro | Carro | ??? |



Direcciones

| Tipo | Nombre | Descripción | |--|--|--| | Módulo | Direcciones | Módulo que se encarga de todo lo relacionado al manejo de direcciones. |

Objetos/Métodos/Propiedades

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Clase | IDireccion | Direcciones | ??? |



Métodos de pago

| Tipo | Nombre | Descripción | |--|--|--| | Módulo | MétodosDePago | Módulo que se encarga de todo lo relacionado al manejo de métodos de pago. |

Objetos/Métodos/Propiedades

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Clase | IMetodosDePago | MetodosDePago | ??? |



Interfaces

| Tipo | Nombre | Descripción | |--|--|--| | Módulo | Interfaces | Módulo que se encarga de todo lo relacionado al manejo de métodos de pago. |

Objetos/Métodos/Propiedades

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Interfaz | IUsuario | IUsuario | Establece las propiedades/métodos para manejo de Usuarios | | Interfaz | IProducto | IProducto | Establece las propiedades/métodos para manejo de Productos | | Interfaz | ICarro | ICarro | Establece las propiedades/métodos para manejo del Carro de compra. | | Interfaz | IDirecciones| IDireccion | Establece las propiedades/métodos para manejo de Direcciones. | | Interfaz | IMetodosDePago| IMetodosDePago | Establece las propiedades/métodos para manejo de Métodos de Pago. |



IUsuario

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Propiedad | string | nombre | El nombre del usuario. | | Método | IUsuario | login | Método para inicio de sesión. | | ??? | ??? | ??? | ? |



IProducto

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Propiedad | string | id | | | Propiedad | string | name | | | Propiedad | number | price | | | Propiedad | number | dcto_ambiental | | | Propiedad | number | price_dcto | | | Propiedad | number | dcto_porcentaje | | | Propiedad | IProducto_Type | type | | | Propiedad | string | slug | | | Propiedad | string | nombre_front | | | Propiedad | number | garantia_meses | | | Propiedad | number | garantia_meses_publico | | | Propiedad | IProducto_Imagenes | imagenes |, | Propiedad | string | imagen | | | Propiedad | string | publicado | | | Propiedad | string | descatalogado | | | Propiedad | string | deleted | | | Propiedad | number | rc_prom_calificacion | | | Propiedad | number | rc_cant_calificacion | | | Propiedad | string | stock | | | Propiedad | string | eb_preventa | | | Propiedad | string | lib_preventa | | | Propiedad | string | plu_sku_erp_code | | | Propiedad | string | categoria_producto_id | | | Propiedad | string | categoria_producto | | | Propiedad | true | disponible_venta_web |, | Propiedad | [] | promociones | | | Propiedad | number | dcto_valor | | | Propiedad | string | descripcion | | | Propiedad | string | lib_eb_isbn | | | Propiedad | IProducto_LibFormato | lib_formato | | | Propiedad | IProducto_LibPresentacion | lib_presentacion | | | Propiedad | string | marca_producto_id | | | Propiedad | string | marca_producto | | | Propiedad | IAutor[] | autores | | | Propiedad | string | meta_title | | | Propiedad | string | meta_keywords | | | Propiedad | string | meta_description | | | Propiedad | string | dim_x_centimetros | | | Propiedad | string | dim_y_centimetros | | | Propiedad | string | dim_z_centimetros | | | Propiedad | string | peso_gramos | | | Propiedad | string | descripcion_corta | | | Propiedad | string | descripcion_2 | | | Propiedad | string | ficha_tecnica_imagen | | | Propiedad | [] | galeria | | | Propiedad | string[] | slugs | | | Propiedad | string | url | | | Propiedad | [] | categorias_secundarias | | | Propiedad | IProducto_LibEbLenguaje | lib_eb_lenguaje | | | Propiedad | IProducto_LibEbEdicionNub | lib_eb_edicion_num | | | Propiedad | string | lib_eb_edicion_fecha | | | Propiedad | string | lib_eb_indice | | | Propiedad | string | lib_eb_prologo | | | Propiedad | string | lib_eb_publicacion_fecha | | | Propiedad | string | lib_eb_traducido_por_id | | | Propiedad | string | lib_eb_traducido_por | | | Propiedad | string | lib_num_pagina | | | Propiedad | string | eb_proteccion_digital | | | Propiedad | string | eb_tipo | | | Propiedad | string | eb_fecha_fin_preventa | | | Propiedad | string | lib_fecha_fin_preventa | |



IDireccion

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Propiedad | string | nombre | El nombre de la dirección. | | ??? | ??? | ??? | ? |



IMetodosDePago

| Tipo | Tipo de campo | Nombre | Descripción | |--|--|--|--| | Propiedad | string | nombre | El nombre del método de pago. | | ??? | ??? | ??? | ? |