Files
fn_registry/docs/templates/component.md
T
egutierrez cd7fcd8cca feat: setup frontend con pnpm, vite, react, tailwind y shadcn
Inicializa directorio frontend/ con stack React moderno:
pnpm + vite 8 + react 19 + tailwind v4 + shadcn v4 (base-nova).
Estructura functions/core (TS puro) y functions/ui (componentes React).
El indexer descubre frontend/functions/ y frontend/types/ automáticamente.
Elimina functions/components/ (legacy) y actualiza referencias en
CLAUDE.md y template de componentes.
2026-03-28 20:32:40 +01:00

49 lines
1.1 KiB
Markdown

---
name: DataTable
kind: component
lang: typescript
domain: core
version: "1.0.0"
purity: impure
signature: "DataTable<T>(props: { data: T[]; columns: ColumnDef<T>[]; onRowClick?: (row: T) => void }): JSX.Element"
description: "Tabla de datos generica con soporte para columnas configurables y click en fila."
tags: [table, component, generic, ui]
uses_functions: []
uses_types: []
returns: []
returns_optional: false
error_type: ""
imports: [react]
tested: false
tests: []
test_file_path: ""
file_path: "frontend/functions/ui/data_table.tsx"
props:
- name: data
type: "T[]"
required: true
description: "Array de datos a renderizar"
- name: columns
type: "ColumnDef<T>[]"
required: true
description: "Definicion de columnas"
- name: onRowClick
type: "(row: T) => void"
required: false
description: "Callback al hacer click en una fila"
emits: [onRowClick]
has_state: true
framework: react
variant: [default, compact, striped]
---
## Ejemplo
```tsx
<DataTable data={users} columns={cols} onRowClick={handleClick} />
```
## Notas
Componente con estado interno para manejar seleccion y scroll.