portalcash-shared
v1.3.59
Published
Librería compartida de componentes Vue.js para PortalCash - Componentes UI, stores Pinia, servicios y utilidades reutilizables
Maintainers
Readme
PortalCash Shared Library
Una librería de componentes Vue 3 reutilizables, servicios y utilidades para aplicaciones PortalCash.
🚀 Instalación
npm install portalcash-shared
# o
yarn add portalcash-shared
# o
bun add portalcash-shared📦 Características
- ✅ Componentes Vue 3 con TypeScript
- ✅ Stores Pinia integrados
- ✅ Servicios y utilidades reutilizables
- ✅ Composables para funcionalidades comunes
- ✅ Soporte completo para TypeScript
- ✅ Tree-shaking optimizado
- ✅ CSS incluido
🛠️ Uso Básico
Importar Componentes
import { CustomButton, CustomInput, MainCard } from 'portalcash-shared'Importar Stores
import { useAuthStore, useAccountsStore } from 'portalcash-shared'Importar Composables
import { useFeatureFlags, useFormatPrice } from 'portalcash-shared'Importar Utilidades
import { base64Transformer, validation } from 'portalcash-shared'📋 Componentes Disponibles
Componentes UI
CustomButton- Botón personalizadoCustomInput- Campo de entrada personalizadoCustomSelect- Selector personalizadoCustomCheckBox- Checkbox personalizadoCustomDatePicker- Selector de fechaCustomDialog- Modal de diálogoCustomFileUpload- Subida de archivosMainCard- Tarjeta principalMainTable- Tabla principal- Y muchos más...
Componentes de Operaciones
BalanceCard- Tarjeta de balanceDetailsCard- Tarjeta de detallesObservationCard- Tarjeta de observacionesPaymentDocument- Documento de pagoThirdPartyCard- Tarjeta de terceros
🏪 Stores Disponibles
useAuthStore- Gestión de autenticaciónuseAccountsStore- Gestión de cuentasuseClientTypeStore- Tipos de clienteuseCompanyStore- Gestión de empresasuseCurrencyTypeStore- Tipos de monedauseThemeStore- Gestión de temas
🔧 Configuración
Dependencias Peer
Esta librería requiere las siguientes dependencias peer:
{
"vue": "^3.4.0",
"pinia": "^2.1.0",
"primevue": "^4.0.0",
"@primevue/themes": "^4.0.0"
}Instalación de Dependencias Opcionales
# FontAwesome (opcional)
npm install @fortawesome/fontawesome-svg-core @fortawesome/vue-fontawesome @fortawesome/free-solid-svg-icons💡 Ejemplo de Uso Completo
<template>
<div>
<MainCard title="Mi Aplicación">
<CustomButton
label="Guardar"
@click="handleSave"
:loading="isLoading"
/>
<CustomInput
v-model="formData.name"
placeholder="Nombre"
/>
</MainCard>
</div>
</template>
<script setup lang="ts">
import { ref } from 'vue'
import { CustomButton, CustomInput, MainCard, useAuthStore } from 'portalcash-shared'
const authStore = useAuthStore()
const isLoading = ref(false)
const formData = ref({ name: '' })
const handleSave = () => {
isLoading.value = true
// Lógica de guardado
}
</script>🔨 Desarrollo
Requisitos
- Node.js 18+
- Bun (recomendado) o npm/yarn
Scripts Disponibles
# Instalar dependencias
bun install
# Desarrollo
bun dev
# Build de la librería
bun run build-lib
# Build para desarrollo
bun run build-dev
# Type checking
bun run type-check
# Tests
bun test:unit📄 Licencia
MIT
🤝 Contribución
Las contribuciones son bienvenidas. Por favor, abre un issue o pull request para sugerencias y mejoras.
📞 Soporte
Para soporte técnico, contacta al equipo de desarrollo de PortalCash.
