@pakento/cms-sdk
v4.3.26
Published
SDK para conectar tiendas en línea con Pakento CMS
Maintainers
Readme
@pakento/cms-sdk
SDK para conectar tiendas en línea con Pakento CMS de forma rápida y sencilla.
Instalación
npm install @pakento/cms-sdk
# o
bun add @pakento/cms-sdkConfiguración
Agrega las siguientes variables de entorno a tu proyecto:
PAKENTO_CMS_BASE_URL=https://app.pakento.com
PAKENTO_API_KEY=tu-api-key-aquiUso
Hook useItems
import { useItems } from "@pakento/cms-sdk";
function ProductList() {
const { items, loading, error, totalDocs, refetch } = useItems({
page: 1,
limit: 10,
});
if (loading) return <div>Cargando...</div>;
if (error) return <div>Error: {error}</div>;
return (
<div>
<h2>Productos ({totalDocs})</h2>
{items.map((item) => (
<div key={item.id}>
<h3>{item.name}</h3>
<p>Precio: {item.price_text}</p>
<img src={item.cover_image_thumbnail_url} alt={item.name} />
</div>
))}
<button onClick={refetch}>Recargar</button>
</div>
);
}API Service
import { pakentoCMSAPI } from "@pakento/cms-sdk";
// Uso directo del servicio
async function getProducts() {
try {
const response = await pakentoCMSAPI.getItems(1, 20);
console.log(response.docs);
} catch (error) {
console.error("Error:", error.message);
}
}Tipos
import type { Item, ItemsResponse, UseItemsReturn } from "@pakento/cms-sdk";Desarrollo
Configuración inicial
# Instalar dependencias
bun install
# Desarrollo con watch mode
bun run dev
# Build
bun run build
# Linting
bun run lint
bun run lint:fixDesarrollo local con link
Para probar el SDK en tu aplicación local:
- En el directorio del SDK:
bun run build
bun link- En tu aplicación NextJS:
bun link @pakento/cms-sdk- Cuando hagas cambios en el SDK:
bun run buildLos cambios se reflejarán automáticamente en tu app.
Para desconectar el link:
# En tu aplicación
bun unlink @pakento/cms-sdk
# Reinstalar desde NPM
bun add @pakento/cms-sdkPublicación
Variables de entorno necesarias
NPM_TOKEN=tu-npm-token-aquiPublicación automática
bun run releaseEste comando te preguntará qué tipo de versión quieres publicar y ejecutará:
- Lint
- Build
- Commit
- Push
- Publish
Publicación manual
# Cambiar versión manualmente en package.json
# Luego:
bun run build
npm publish --access publicTipos de versión
- patch: 1.0.0 → 1.0.1 (bug fixes)
- minor: 1.0.0 → 1.1.0 (nuevas features)
- major: 1.0.0 → 2.0.0 (breaking changes)
- custom: Especificar versión manualmente
- skip: No cambiar versión
Estructura del proyecto
src/
├── hooks/
│ └── useItems.ts # Hook principal para obtener items
├── services/
│ └── api.ts # Cliente API con Axios
├── types/
│ └── index.ts # Definiciones de tipos TypeScript
└── index.ts # Exportaciones principalesManejo de errores
El SDK incluye manejo de errores para:
- API Key inválida (401)
- Endpoint no encontrado (404)
- Errores del servidor (5xx)
- Errores de conexión
- Errores de GraphQL
Licencia
MIT
.build
EJECUCION DE PREUBAS:
npx ts-node -P tsconfig.examples.json examples/testItems.ts
npx ts-node -P tsconfig.examples.json examples/testEntity.ts
