lkd-web-kit 0.10.6 → 0.10.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/scripts/install-agent-skills.mjs +2 -2
- package/src/distributed-skills/lkd-create-modal-component/SKILL.md +168 -0
- package/src/distributed-skills/lkd-create-modal-component/agents/openai.yaml +4 -0
- package/src/distributed-skills/lkd-create-nextjs-page/SKILL.md +84 -0
- package/src/distributed-skills/lkd-create-nextjs-page/agents/openai.yaml +3 -0
- package/src/distributed-skills/lkd-create-svg-icon/SKILL.md +41 -0
- package/src/distributed-skills/lkd-create-svg-icon/agents/openai.yaml +3 -0
- package/src/distributed-skills/lkd-create-table-component/SKILL.md +189 -0
- package/src/distributed-skills/lkd-create-table-component/agents/openai.yaml +3 -0
- package/src/distributed-skills/lkd-layout-mantine-tailwind/SKILL.md +99 -0
- package/src/distributed-skills/lkd-layout-mantine-tailwind/agents/openai.yaml +4 -0
- package/src/distributed-skills/lkd-rhf-lkd-forms/SKILL.md +186 -0
- package/.agents/skills/create-nextjs-page/SKILL.md +0 -104
- package/.agents/skills/create-nextjs-page/agents/openai.yaml +0 -3
- package/.agents/skills/mantine-combobox/SKILL.md +0 -73
- package/.agents/skills/mantine-combobox/references/api.md +0 -199
- package/.agents/skills/mantine-combobox/references/patterns.md +0 -279
- package/.agents/skills/mantine-custom-components/SKILL.md +0 -112
- package/.agents/skills/mantine-custom-components/references/api.md +0 -407
- package/.agents/skills/mantine-custom-components/references/patterns.md +0 -431
- package/.agents/skills/publish-lkd-web-kit/SKILL.md +0 -165
- package/.agents/skills/publish-lkd-web-kit/agents/openai.yaml +0 -4
- package/.agents/skills/publish-lkd-web-kit/references/npm-trusted-publishing.md +0 -82
- package/.agents/skills/update-lkd-dependencies/SKILL.md +0 -88
- package/.agents/skills/update-lkd-dependencies/agents/openai.yaml +0 -4
- package/.agents/skills/update-lkd-dependencies/scripts/collect-npm-metadata.mjs +0 -73
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: update-lkd-dependencies
|
|
3
|
-
description: Audita y actualiza con cautela solo las peerDependencies de lkd-web-kit. Usar cuando el usuario pida revisar versiones disponibles, actualizar peers del paquete, evaluar breaking changes de React/Mantine/Next/Zod/React Hook Form/TanStack/Ky, sincronizar package-lock o preparar una recomendacion SemVer sin publicar.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Actualizar dependencias LKD
|
|
7
|
-
|
|
8
|
-
## Principio
|
|
9
|
-
|
|
10
|
-
Trabaja como auditor de compatibilidad de una libreria React corporativa. No actualices a ciegas: primero descubre versiones, peers, engines y riesgos; despues edita de forma acotada y valida el paquete.
|
|
11
|
-
|
|
12
|
-
Esta skill no sube la version de `lkd-web-kit`, no crea tags y no publica en npm. Para publicar usa `$publish-lkd-web-kit`.
|
|
13
|
-
|
|
14
|
-
Esta skill es solo para `peerDependencies`. No actualices `devDependencies`, `dependencies` ni tooling interno salvo que sea estrictamente necesario para que el lockfile resuelva los peers actualizados y el usuario lo haya pedido.
|
|
15
|
-
|
|
16
|
-
## Contexto obligatorio
|
|
17
|
-
|
|
18
|
-
Antes de proponer o editar dependencias, lee:
|
|
19
|
-
|
|
20
|
-
- `AGENTS.md`
|
|
21
|
-
- `package.json`
|
|
22
|
-
- `package-lock.json`
|
|
23
|
-
- `docs/generated/lkd-web-kit.md`
|
|
24
|
-
|
|
25
|
-
Usa `docs/generated/lkd-web-kit.md` como fuente de verdad del catalogo publico de componentes. Si un cambio de dependencia puede afectar props, wrappers Mantine, formularios o hooks publicos, tratalo como riesgo de compatibilidad.
|
|
26
|
-
|
|
27
|
-
## Auditoria de versiones
|
|
28
|
-
|
|
29
|
-
1. Identifica todas las entradas de `peerDependencies`.
|
|
30
|
-
2. Consulta metadata de npm para cada paquete relevante:
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
npm view <pkg> version peerDependencies dependencies engines --json
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
3. Para un reporte inicial no mutante, puedes ejecutar:
|
|
37
|
-
|
|
38
|
-
```bash
|
|
39
|
-
node .agents/skills/update-lkd-dependencies/scripts/collect-npm-metadata.mjs
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
4. Actualiza solo a versiones estables publicadas. Evita prereleases, canary, alpha, beta, rc y next salvo instruccion explicita.
|
|
43
|
-
5. Mantiene alineadas familias peer que deben avanzar juntas: `react`/`react-dom`, paquetes `@mantine/*` y paquetes `@tanstack/*` cuando compartan contrato.
|
|
44
|
-
|
|
45
|
-
## Politica de riesgo
|
|
46
|
-
|
|
47
|
-
Detente y reporta antes de aplicar si encuentras:
|
|
48
|
-
|
|
49
|
-
- Cambio major en React, Mantine, Next, Zod, React Hook Form, TanStack Query o Ky.
|
|
50
|
-
- Cambio de `engines.node` que exceda el `>=22.12.0` actual o reduzca compatibilidad razonable.
|
|
51
|
-
- Peer ranges incompatibles entre dependencias del kit.
|
|
52
|
-
- Migraciones que obliguen a cambiar APIs publicas, props exportadas, tipos o comportamiento de componentes.
|
|
53
|
-
|
|
54
|
-
Puedes aplicar patch/minor compatibles cuando las pruebas y peers lo respalden. Para majors, aplica solo si el usuario pidio explicitamente aceptar el breaking change o si el analisis demuestra que el rango actual ya era incompatible.
|
|
55
|
-
|
|
56
|
-
Si por un breaking change tuviste que modificar props, componentes, formularios, hooks exportados o utilidades documentadas, regenera `docs/generated/lkd-web-kit.md` siguiendo estrictamente `docs/generate-lkd-web-kit-docs.md`. No edites el documento generado a mano salvo correcciones mecanicas posteriores al diff.
|
|
57
|
-
|
|
58
|
-
## Edicion y validacion
|
|
59
|
-
|
|
60
|
-
Cuando edites:
|
|
61
|
-
|
|
62
|
-
- Actualiza solo `peerDependencies` en `package.json` y sincroniza `package-lock.json`.
|
|
63
|
-
- Corrige drift de version entre `package.json` y `package-lock.json`; en este repo se ha visto `package.json` en `0.8.4` y lockfile en `0.8.3`.
|
|
64
|
-
- No cambies `version` del paquete salvo que el usuario lo pida explicitamente fuera de esta skill.
|
|
65
|
-
- No ejecutes `npm publish`, no crees tags y no automatices login.
|
|
66
|
-
|
|
67
|
-
Validacion minima:
|
|
68
|
-
|
|
69
|
-
```bash
|
|
70
|
-
npm install --package-lock-only
|
|
71
|
-
npm run lint
|
|
72
|
-
npm run test
|
|
73
|
-
npm run build
|
|
74
|
-
npm pack --dry-run
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
Si una validacion falla, arregla solo lo necesario para la actualizacion o reporta el bloqueo con el paquete responsable.
|
|
78
|
-
|
|
79
|
-
## Reporte final
|
|
80
|
-
|
|
81
|
-
Termina siempre con un resumen en espanol:
|
|
82
|
-
|
|
83
|
-
- Peer dependencies actualizadas.
|
|
84
|
-
- Peer dependencies retenidas y motivo.
|
|
85
|
-
- Breaking changes o riesgos detectados.
|
|
86
|
-
- Si se regenero `docs/generated/lkd-web-kit.md`, indica por que cambio la superficie publica.
|
|
87
|
-
- Validaciones ejecutadas y resultado.
|
|
88
|
-
- Recomendacion SemVer para una futura publicacion: `major`, `minor` o `patch`, con una frase de justificacion.
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import { execFile } from 'node:child_process'
|
|
3
|
-
import { readFile } from 'node:fs/promises'
|
|
4
|
-
import { promisify } from 'node:util'
|
|
5
|
-
|
|
6
|
-
const execFileAsync = promisify(execFile)
|
|
7
|
-
const packageJsonPath = new URL('../../../../package.json', import.meta.url)
|
|
8
|
-
const npmCommand = process.platform === 'win32' ? 'npm.cmd' : 'npm'
|
|
9
|
-
|
|
10
|
-
function parseMaybeJson(value) {
|
|
11
|
-
try {
|
|
12
|
-
return JSON.parse(value)
|
|
13
|
-
} catch {
|
|
14
|
-
return value.trim()
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
async function npmView(packageName) {
|
|
19
|
-
const { stdout } = await execFileAsync(
|
|
20
|
-
npmCommand,
|
|
21
|
-
['view', packageName, 'version', 'peerDependencies', 'dependencies', 'engines', '--json'],
|
|
22
|
-
{ shell: process.platform === 'win32', windowsHide: true },
|
|
23
|
-
)
|
|
24
|
-
|
|
25
|
-
return parseMaybeJson(stdout)
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
async function main() {
|
|
29
|
-
const packageJson = JSON.parse(await readFile(packageJsonPath, 'utf8'))
|
|
30
|
-
const names = Object.keys(packageJson.peerDependencies ?? {}).sort()
|
|
31
|
-
const results = []
|
|
32
|
-
|
|
33
|
-
for (const name of names) {
|
|
34
|
-
const currentRange = packageJson.peerDependencies?.[name] ?? null
|
|
35
|
-
|
|
36
|
-
try {
|
|
37
|
-
results.push({
|
|
38
|
-
name,
|
|
39
|
-
section: 'peerDependencies',
|
|
40
|
-
currentRange,
|
|
41
|
-
npm: await npmView(name),
|
|
42
|
-
})
|
|
43
|
-
} catch (error) {
|
|
44
|
-
results.push({
|
|
45
|
-
name,
|
|
46
|
-
section: 'peerDependencies',
|
|
47
|
-
currentRange,
|
|
48
|
-
error: error instanceof Error ? error.message : String(error),
|
|
49
|
-
})
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
console.log(
|
|
54
|
-
JSON.stringify(
|
|
55
|
-
{
|
|
56
|
-
package: {
|
|
57
|
-
name: packageJson.name,
|
|
58
|
-
version: packageJson.version,
|
|
59
|
-
engines: packageJson.engines ?? {},
|
|
60
|
-
},
|
|
61
|
-
generatedAt: new Date().toISOString(),
|
|
62
|
-
dependencies: results,
|
|
63
|
-
},
|
|
64
|
-
null,
|
|
65
|
-
2,
|
|
66
|
-
),
|
|
67
|
-
)
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
main().catch((error) => {
|
|
71
|
-
console.error(error instanceof Error ? error.message : String(error))
|
|
72
|
-
process.exitCode = 1
|
|
73
|
-
})
|