@axzydev/axzy_ui_system 1.2.7 → 1.2.9
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/README.md +105 -53
- package/dist/index.cjs +576 -398
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +1463 -86
- package/dist/index.d.ts +1463 -86
- package/dist/index.js +597 -417
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/App.tsx +26 -54
- package/src/components/alert/alert.doc.mdx +48 -0
- package/src/components/alert/alert.props.ts +7 -0
- package/src/components/alert/alert.tsx +8 -0
- package/src/components/avatar/avatar.doc.mdx +48 -0
- package/src/components/avatar/avatar.props.ts +8 -0
- package/src/components/avatar/avatar.tsx +25 -5
- package/src/components/badget/badget.doc.mdx +46 -0
- package/src/components/badget/badget.props.ts +6 -0
- package/src/components/badget/badget.tsx +11 -0
- package/src/components/breadcrumbs/breadcrumbs.doc.mdx +57 -0
- package/src/components/breadcrumbs/breadcrumbs.props.ts +6 -0
- package/src/components/breadcrumbs/breadcrumbs.tsx +12 -0
- package/src/components/button/button.doc.mdx +59 -0
- package/src/components/button/button.props.ts +12 -0
- package/src/components/button/button.tsx +11 -0
- package/src/components/calendar/calendar.doc.mdx +75 -0
- package/src/components/calendar/calendar.props.ts +27 -7
- package/src/components/calendar/calendar.tsx +13 -0
- package/src/components/card/card.doc.mdx +54 -0
- package/src/components/card/card.props.ts +11 -0
- package/src/components/card/card.tsx +13 -0
- package/src/components/checkbox/checkbox.doc.mdx +54 -0
- package/src/components/checkbox/checkbox.props.ts +7 -0
- package/src/components/checkbox/checkbox.tsx +9 -0
- package/src/components/confirm-dialog/confirm-dialog.doc.mdx +60 -0
- package/src/components/confirm-dialog/confirm-dialog.props.ts +9 -0
- package/src/components/confirm-dialog/confirm-dialog.tsx +19 -0
- package/src/components/data-table/ITDataTable.doc.mdx +59 -0
- package/src/components/data-table/dataTable.props.ts +15 -0
- package/src/components/data-table/dataTable.tsx +178 -73
- package/src/components/date-picker/date-picker.doc.mdx +65 -0
- package/src/components/date-picker/date-picker.props.ts +17 -0
- package/src/components/date-picker/datePicker.tsx +31 -1
- package/src/components/dialog/dialog.doc.mdx +54 -0
- package/src/components/dialog/dialog.props.ts +7 -0
- package/src/components/dialog/dialog.tsx +26 -0
- package/src/components/divider/divider.doc.mdx +42 -0
- package/src/components/divider/divider.props.ts +5 -0
- package/src/components/divider/divider.tsx +16 -0
- package/src/components/drawer/drawer.doc.mdx +59 -0
- package/src/components/drawer/drawer.props.ts +9 -0
- package/src/components/drawer/drawer.tsx +20 -0
- package/src/components/dropfile/dropfile.doc.mdx +59 -0
- package/src/components/dropfile/dropfile.props.ts +41 -0
- package/src/components/dropfile/dropfile.tsx +21 -33
- package/src/components/empty-state/empty-state.doc.mdx +50 -0
- package/src/components/empty-state/empty-state.props.ts +5 -0
- package/src/components/empty-state/empty-state.tsx +16 -0
- package/src/components/flex/flex.doc.mdx +59 -0
- package/src/components/flex/flex.props.ts +13 -0
- package/src/components/flex/flex.tsx +15 -0
- package/src/components/form-builder/fieldRenderer.tsx +52 -2
- package/src/components/form-builder/formBuilder.doc.mdx +124 -0
- package/src/components/form-builder/formBuilder.props.ts +12 -2
- package/src/components/form-builder/formBuilder.tsx +31 -0
- package/src/components/form-header/form-header.doc.mdx +38 -0
- package/src/components/form-header/form-header.props.ts +3 -0
- package/src/components/form-header/form-header.stories.tsx +53 -0
- package/src/components/form-header/form-header.tsx +11 -0
- package/src/components/grid/grid.doc.mdx +54 -0
- package/src/components/grid/grid.props.ts +13 -0
- package/src/components/grid/grid.tsx +19 -0
- package/src/components/image/image.doc.mdx +44 -0
- package/src/components/image/image.props.ts +5 -0
- package/src/components/image/image.stories.tsx +49 -0
- package/src/components/image/image.tsx +19 -0
- package/src/components/input/input.doc.mdx +70 -0
- package/src/components/input/input.props.ts +34 -2
- package/src/components/input/input.tsx +29 -0
- package/src/components/layout/layout.doc.mdx +51 -0
- package/src/components/layout/layout.props.ts +5 -0
- package/src/components/layout/layout.tsx +29 -2
- package/src/components/loader/loader.doc.mdx +43 -0
- package/src/components/loader/loader.props.ts +4 -0
- package/src/components/loader/loader.tsx +17 -0
- package/src/components/navbar/navbar.doc.mdx +77 -0
- package/src/components/navbar/navbar.props.ts +37 -1
- package/src/components/navbar/navbar.stories.tsx +84 -0
- package/src/components/navbar/navbar.tsx +27 -0
- package/src/components/page/page.doc.mdx +80 -0
- package/src/components/page/page.props.ts +21 -0
- package/src/components/page/page.tsx +18 -0
- package/src/components/page-header/page-header.doc.mdx +54 -0
- package/src/components/page-header/page-header.props.ts +9 -0
- package/src/components/page-header/page-header.tsx +15 -0
- package/src/components/pagination/pagination.doc.mdx +62 -0
- package/src/components/pagination/pagination.props.ts +11 -32
- package/src/components/pagination/pagination.tsx +17 -0
- package/src/components/popover/popover.doc.mdx +53 -0
- package/src/components/popover/popover.props.ts +8 -0
- package/src/components/popover/popover.tsx +13 -0
- package/src/components/progress/progress.doc.mdx +48 -0
- package/src/components/progress/progress.props.ts +8 -0
- package/src/components/progress/progress.tsx +9 -0
- package/src/components/radio/radio.doc.mdx +62 -0
- package/src/components/radio/radio.props.ts +11 -0
- package/src/components/radio/radio.tsx +18 -0
- package/src/components/search-select/search-select.doc.mdx +72 -0
- package/src/components/search-select/search-select.props.ts +23 -18
- package/src/components/search-select/search-select.tsx +27 -2
- package/src/components/searchTable/searchTable.doc.mdx +79 -0
- package/src/components/searchTable/searchTable.props.ts +42 -3
- package/src/components/searchTable/searchTable.stories.tsx +74 -0
- package/src/components/searchTable/searchTable.tsx +23 -0
- package/src/components/segmented-control/segmented-control.doc.mdx +60 -0
- package/src/components/segmented-control/segmented-control.props.ts +12 -0
- package/src/components/segmented-control/segmented-control.tsx +15 -0
- package/src/components/select/select.doc.mdx +75 -0
- package/src/components/select/select.props.ts +22 -0
- package/src/components/select/select.tsx +2 -5
- package/src/components/sidebar/sidebar.doc.mdx +86 -0
- package/src/components/sidebar/sidebar.props.ts +22 -0
- package/src/components/sidebar/sidebar.tsx +22 -0
- package/src/components/skeleton/skeleton.doc.mdx +43 -0
- package/src/components/skeleton/skeleton.props.ts +8 -0
- package/src/components/skeleton/skeleton.tsx +10 -0
- package/src/components/slide/slide.doc.mdx +46 -0
- package/src/components/slide/slide.props.ts +11 -24
- package/src/components/slide/slide.tsx +10 -1
- package/src/components/slider/slider.doc.mdx +49 -0
- package/src/components/slider/slider.props.ts +9 -0
- package/src/components/slider/slider.tsx +15 -0
- package/src/components/stack/stack.doc.mdx +126 -0
- package/src/components/stack/stack.props.ts +18 -0
- package/src/components/stack/stack.stories.tsx +221 -16
- package/src/components/stack/stack.tsx +21 -0
- package/src/components/stat-card/stat-card.doc.mdx +48 -0
- package/src/components/stat-card/stat-card.props.ts +9 -0
- package/src/components/stat-card/stat-card.tsx +10 -0
- package/src/components/stepper/stepper.doc.mdx +54 -0
- package/src/components/stepper/stepper.props.ts +11 -1
- package/src/components/stepper/stepper.tsx +15 -0
- package/src/components/table/table.doc.mdx +58 -0
- package/src/components/table/table.props.ts +17 -0
- package/src/components/table/table.tsx +199 -84
- package/src/components/tabs/tabs.doc.mdx +52 -0
- package/src/components/tabs/tabs.props.ts +11 -0
- package/src/components/tabs/tabs.tsx +14 -0
- package/src/components/text/text.doc.mdx +41 -0
- package/src/components/text/text.props.ts +5 -0
- package/src/components/text/text.stories.tsx +67 -0
- package/src/components/text/text.tsx +10 -0
- package/src/components/textarea/textarea.doc.mdx +64 -0
- package/src/components/textarea/textarea.props.ts +11 -0
- package/src/components/textarea/textarea.tsx +16 -0
- package/src/components/theme-provider/themeProvider.doc.mdx +75 -0
- package/src/components/theme-provider/themeProvider.props.ts +3 -0
- package/src/components/theme-provider/themeProvider.stories.tsx +59 -0
- package/src/components/theme-provider/themeProvider.tsx +14 -0
- package/src/components/time-picker/timePicker.doc.mdx +68 -0
- package/src/components/time-picker/timePicker.props.ts +14 -0
- package/src/components/time-picker/timePicker.tsx +22 -1
- package/src/components/toast/toast.doc.mdx +50 -0
- package/src/components/toast/toast.props.ts +5 -0
- package/src/components/toast/toast.tsx +21 -0
- package/src/components/tooltip/tooltip.doc.mdx +47 -0
- package/src/components/tooltip/tooltip.props.ts +6 -0
- package/src/components/tooltip/tooltip.tsx +19 -0
- package/src/components/topbar/topbar.doc.mdx +69 -0
- package/src/components/topbar/topbar.props.ts +15 -0
- package/src/components/topbar/topbar.tsx +38 -0
- package/src/components/triple-filter/tripleFilter.doc.mdx +62 -0
- package/src/components/triple-filter/tripleFilter.props.ts +7 -0
- package/src/components/triple-filter/tripleFilter.tsx +32 -0
- package/src/index.css +2 -0
- package/src/showcases/DataShowcases.tsx +529 -45
- package/src/showcases/FormShowcases.tsx +399 -29
- package/src/showcases/GettingStartedShowcase.tsx +207 -0
- package/src/showcases/HomeShowcase.tsx +252 -272
- package/src/showcases/LayoutPrimitivesShowcases.tsx +1224 -248
- package/src/showcases/PageShowcases.tsx +688 -391
- package/src/showcases/ShowcaseLayout.tsx +237 -73
- package/src/showcases/StructureShowcases.tsx +846 -73
- package/src/types/table.types.ts +1 -1
- package/src/utils/styles.ts +2 -1
package/README.md
CHANGED
|
@@ -1,29 +1,28 @@
|
|
|
1
1
|
# AXZY UI System
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Librería de componentes React enterprise-ready con **Tailwind CSS v4**. Diseñada para aplicaciones de datos densos, dashboards y sistemas de gestión.
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
##
|
|
7
|
+
## Instalación en un proyecto nuevo
|
|
8
8
|
|
|
9
|
-
### 1. Crear
|
|
9
|
+
### 1. Crear proyecto Vite + React + TypeScript
|
|
10
10
|
|
|
11
11
|
```bash
|
|
12
12
|
npm create vite@latest mi-app -- --template react-ts
|
|
13
13
|
cd mi-app
|
|
14
|
-
npm install
|
|
15
14
|
```
|
|
16
15
|
|
|
17
|
-
### 2. Instalar
|
|
16
|
+
### 2. Instalar dependencias
|
|
18
17
|
|
|
19
18
|
```bash
|
|
20
19
|
npm install @axzydev/axzy_ui_system
|
|
21
|
-
npm install -D tailwindcss @tailwindcss/vite
|
|
20
|
+
npm install -D tailwindcss @tailwindcss/vite @vitejs/plugin-react-swc
|
|
22
21
|
```
|
|
23
22
|
|
|
24
|
-
### 3. Configurar Vite
|
|
23
|
+
### 3. Configurar Vite con Tailwind v4
|
|
25
24
|
|
|
26
|
-
|
|
25
|
+
`vite.config.ts`:
|
|
27
26
|
|
|
28
27
|
```ts
|
|
29
28
|
import { defineConfig } from "vite"
|
|
@@ -35,61 +34,51 @@ export default defineConfig({
|
|
|
35
34
|
})
|
|
36
35
|
```
|
|
37
36
|
|
|
38
|
-
### 4.
|
|
37
|
+
### 4. Importar Tailwind CSS
|
|
39
38
|
|
|
40
|
-
|
|
39
|
+
`src/index.css`:
|
|
41
40
|
|
|
42
41
|
```css
|
|
43
42
|
@import "tailwindcss";
|
|
44
43
|
```
|
|
45
44
|
|
|
46
|
-
### 5.
|
|
45
|
+
### 5. Importar el CSS de la librería
|
|
46
|
+
|
|
47
|
+
`src/main.tsx`:
|
|
48
|
+
|
|
49
|
+
```tsx
|
|
50
|
+
import "@axzydev/axzy_ui_system/dist/index.css"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### 6. Envolver con ITThemeProvider
|
|
54
|
+
|
|
55
|
+
`src/main.tsx`:
|
|
47
56
|
|
|
48
57
|
```tsx
|
|
49
|
-
// src/main.tsx
|
|
50
58
|
import React from "react"
|
|
51
59
|
import ReactDOM from "react-dom/client"
|
|
52
60
|
import { ITThemeProvider } from "@axzydev/axzy_ui_system"
|
|
53
61
|
import App from "./App"
|
|
54
62
|
import "./index.css"
|
|
55
63
|
|
|
56
|
-
const myTheme = {
|
|
57
|
-
colors: {
|
|
58
|
-
primary: {
|
|
59
|
-
50: "#fef2f2",
|
|
60
|
-
100: "#fee2e2",
|
|
61
|
-
200: "#fecaca",
|
|
62
|
-
300: "#fca5a5",
|
|
63
|
-
400: "#f87171",
|
|
64
|
-
500: "#ef4444",
|
|
65
|
-
600: "#dc2626",
|
|
66
|
-
700: "#b91c1c",
|
|
67
|
-
800: "#991b1b",
|
|
68
|
-
900: "#7f1d1d",
|
|
69
|
-
950: "#450a0a",
|
|
70
|
-
},
|
|
71
|
-
},
|
|
72
|
-
}
|
|
73
|
-
|
|
74
64
|
ReactDOM.createRoot(document.getElementById("root")!).render(
|
|
75
65
|
<React.StrictMode>
|
|
76
|
-
<ITThemeProvider
|
|
66
|
+
<ITThemeProvider>
|
|
77
67
|
<App />
|
|
78
68
|
</ITThemeProvider>
|
|
79
69
|
</React.StrictMode>
|
|
80
70
|
)
|
|
81
71
|
```
|
|
82
72
|
|
|
83
|
-
### 6.
|
|
73
|
+
### 6. Usar componentes
|
|
84
74
|
|
|
85
75
|
```tsx
|
|
86
|
-
// src/App.tsx
|
|
87
76
|
import { ITButton } from "@axzydev/axzy_ui_system"
|
|
88
77
|
|
|
89
78
|
export default function App() {
|
|
90
79
|
return (
|
|
91
80
|
<div className="p-8">
|
|
92
|
-
<ITButton
|
|
81
|
+
<ITButton>Hola Mundo</ITButton>
|
|
93
82
|
</div>
|
|
94
83
|
)
|
|
95
84
|
}
|
|
@@ -97,37 +86,99 @@ export default function App() {
|
|
|
97
86
|
|
|
98
87
|
---
|
|
99
88
|
|
|
89
|
+
## Desarrollo local (contribuir)
|
|
90
|
+
|
|
91
|
+
### 1. Clonar e instalar
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
git clone https://github.com/axzydev/axzy_ui_system.git
|
|
95
|
+
cd axzy_ui_system
|
|
96
|
+
pnpm install
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### 2. Iniciar servidor de desarrollo (sandbox interactivo)
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
pnpm dev
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Abre `http://localhost:5173` para ver el Interactive Sandbox con todos los componentes.
|
|
106
|
+
|
|
107
|
+
### 3. Storybook (documentación visual)
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
pnpm storybook
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### 4. Build de producción
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
pnpm build # TypeScript + Vite
|
|
117
|
+
pnpm bundle # tsup + CSS
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## Scripts
|
|
123
|
+
|
|
124
|
+
| Comando | Descripción |
|
|
125
|
+
|---------|-------------|
|
|
126
|
+
| `pnpm dev` | Sandbox interactivo (Vite) |
|
|
127
|
+
| `pnpm build` | TypeScript + Vite build |
|
|
128
|
+
| `pnpm build:app` | Build de la app sandbox |
|
|
129
|
+
| `pnpm bundle` | Bundle del paquete (tsup + CSS) |
|
|
130
|
+
| `pnpm watch` | Watch mode para desarrollo del paquete |
|
|
131
|
+
| `pnpm storybook` | Storybook local |
|
|
132
|
+
| `pnpm build-storybook` | Build estático de Storybook |
|
|
133
|
+
| `pnpm lint` | ESLint |
|
|
134
|
+
| `pnpm preview` | Preview del build |
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
100
138
|
## Theming
|
|
101
139
|
|
|
102
|
-
|
|
140
|
+
Personaliza la paleta de colores en runtime sin recompilar:
|
|
103
141
|
|
|
104
142
|
```tsx
|
|
105
143
|
const myTheme = {
|
|
106
144
|
colors: {
|
|
107
|
-
primary: { 50: "
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
danger: { 50: "...", 500: "#ef4444", ... },
|
|
111
|
-
warning: { 50: "...", 500: "#f59e0b", ... },
|
|
112
|
-
purple: { 50: "...", 500: "#a855f7", ... },
|
|
113
|
-
info: { 50: "...", 500: "#06b6d4", ... },
|
|
145
|
+
primary: { 50: "#fef2f2", 500: "#ef4444", 900: "#7f1d1d" },
|
|
146
|
+
success: { 50: "#f0fdf4", 500: "#22c55e" },
|
|
147
|
+
// solo necesitas los colores que quieras sobreescribir
|
|
114
148
|
},
|
|
115
149
|
}
|
|
116
|
-
```
|
|
117
150
|
|
|
118
|
-
|
|
151
|
+
<ITThemeProvider theme={myTheme}>
|
|
152
|
+
<App />
|
|
153
|
+
</ITThemeProvider>
|
|
154
|
+
```
|
|
119
155
|
|
|
120
156
|
---
|
|
121
157
|
|
|
122
|
-
##
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
158
|
+
## Componentes disponibles
|
|
159
|
+
|
|
160
|
+
- **ITButton** – Botón con variants (filled, outlined, raised, rounded, text, link, icon-only)
|
|
161
|
+
- **ITInput** – Input con soporte para texto, password, número, textarea, iconos
|
|
162
|
+
- **ITSelect** – Dropdown nativo estilizado
|
|
163
|
+
- **ITSearchSelect** – Select con búsqueda y opciones async
|
|
164
|
+
- **ITDatePicker** / **ITTimePicker** – Selectores de fecha y hora
|
|
165
|
+
- **ITCalendar** – Calendario con eventos y modos month/week/day
|
|
166
|
+
- **ITSlideToggle** – Switch toggle
|
|
167
|
+
- **ITDropfile** – Área de arrastrar y soltar archivos
|
|
168
|
+
- **ITFormBuilder** – Generador dinámico de formularios desde JSON
|
|
169
|
+
- **ITTable** / **ITDataTable** – Tablas con filtros, ordenamiento y paginación
|
|
170
|
+
- **ITCard** / **ITStatCard** – Tarjetas de contenido y métricas
|
|
171
|
+
- **ITLayout** / **ITNavbar** – Sistema de layout con sidebar colapsable
|
|
172
|
+
- **ITFlex** / **ITStack** / **ITGrid** – Layout helpers
|
|
173
|
+
- **ITText** – Tipografía con variants
|
|
174
|
+
- **ITAvatar** – Avatares con iniciales
|
|
175
|
+
- **ITBadget** – Badges de estado
|
|
176
|
+
- **ITDivider** – Divisores
|
|
177
|
+
- **ITProgress** – Barras de progreso
|
|
178
|
+
- **ITPagination** – Paginación
|
|
179
|
+
- **ITPageHeader** – Encabezados de página
|
|
180
|
+
- **ITPage** – Página completa con layout
|
|
181
|
+
- **ITThemeProvider** – Proveedor de tema
|
|
131
182
|
|
|
132
183
|
---
|
|
133
184
|
|
|
@@ -136,3 +187,4 @@ Solo debes proveer los colores que quieras cambiar — el resto usa los valores
|
|
|
136
187
|
- React 18+
|
|
137
188
|
- Tailwind CSS 4.x + `@tailwindcss/vite`
|
|
138
189
|
- Node.js 18+
|
|
190
|
+
- pnpm (para desarrollo local)
|