First commit
This commit is contained in:
@@ -0,0 +1,87 @@
|
||||
# Instalación, consumo y theming
|
||||
|
||||
## Instalar localmente
|
||||
|
||||
Construye la librería:
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run build:lib
|
||||
```
|
||||
|
||||
Desde otra aplicación Vue:
|
||||
|
||||
```bash
|
||||
npm install ../design_system
|
||||
```
|
||||
|
||||
El paquete está configurado para publicarse en el registro npm de Gitea de `omararch48`. La publicación sigue siendo manual y requiere `GITEA_NPM_TOKEN`.
|
||||
|
||||
## Publicar en Gitea
|
||||
|
||||
Define un token personal con permiso de paquetes sin guardarlo en el repositorio:
|
||||
|
||||
```bash
|
||||
export GITEA_NPM_TOKEN="tu-token"
|
||||
npm publish
|
||||
```
|
||||
|
||||
El hook `prepublishOnly` ejecuta type-check, pruebas y build de la librería antes de subir el paquete. Gitea no permite reemplazar una combinación existente de nombre y versión; incrementa la versión antes de una publicación posterior:
|
||||
|
||||
```bash
|
||||
npm version patch
|
||||
npm publish
|
||||
```
|
||||
|
||||
El scope `@omaresquivel` apunta a:
|
||||
|
||||
```text
|
||||
https://gitea.autobyte.dev/api/packages/omararch48/npm/
|
||||
```
|
||||
|
||||
## Importar
|
||||
|
||||
```ts
|
||||
import { DsButton, DsPanel, DsTextInput } from "@omaresquivel/design-system";
|
||||
import "@omaresquivel/design-system/style.css";
|
||||
```
|
||||
|
||||
Vue `^3.5.0` es peer dependency. Tailwind, Vite y TypeScript no son dependencias runtime del consumidor.
|
||||
|
||||
## Registro global opcional
|
||||
|
||||
```ts
|
||||
import { DesignSystem } from "@omaresquivel/design-system";
|
||||
import "@omaresquivel/design-system/style.css";
|
||||
|
||||
app.use(DesignSystem);
|
||||
```
|
||||
|
||||
## Personalizar el tema
|
||||
|
||||
Carga las personalizaciones después del CSS del paquete:
|
||||
|
||||
```css
|
||||
:root {
|
||||
--ds-color-primary: #2563eb;
|
||||
--ds-color-primary-hover: #1d4ed8;
|
||||
--ds-color-focus-ring: #60a5fa;
|
||||
--ds-radius-lg: 1rem;
|
||||
}
|
||||
```
|
||||
|
||||
No es necesario configurar `@source`, copiar `@apply` ni exponer Tailwind al consumidor. Si una aplicación ya usa Tailwind, ambos pueden coexistir porque los selectores del sistema llevan el prefijo `ds-` y los tokens llevan `--ds-`.
|
||||
|
||||
## Enlace durante desarrollo
|
||||
|
||||
Puede usarse una dependencia local en `package.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"dependencies": {
|
||||
"@omaresquivel/design-system": "file:../design_system"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Después de modificar la librería ejecuta `npm run build:lib` y actualiza la instalación de la aplicación consumidora según el flujo de su gestor de paquetes.
|
||||
Reference in New Issue
Block a user