@esperanca-ui/componentes 2.1.3 → 2.1.4

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/COMPONENTS.md ADDED
@@ -0,0 +1,90 @@
1
+ # Components Guide
2
+
3
+ Guia rapido para quem instalou `@esperanca-ui/componentes` em outro projeto.
4
+
5
+ Este arquivo e empacotado junto com o pacote npm para facilitar leitura por desenvolvedores e IAs.
6
+
7
+ ## Onde Ler No Pacote Instalado
8
+
9
+ Depois de instalar:
10
+
11
+ ```bash
12
+ npm install @esperanca-ui/componentes
13
+ ```
14
+
15
+ voce pode consultar estes arquivos dentro de `node_modules/@esperanca-ui/componentes`:
16
+
17
+ - `README.md`: visao geral e instalacao
18
+ - `COMPONENTS.md`: este guia
19
+ - `dist/index.d.ts`: exports publicos reais
20
+ - `dist/components/**/*.d.ts`: assinatura detalhada por componente
21
+ - `dist/style.css`: estilos da biblioteca
22
+
23
+ ## Uso Basico
24
+
25
+ ```tsx
26
+ import { Button } from '@esperanca-ui/componentes';
27
+ import '@esperanca-ui/componentes/style.css';
28
+
29
+ export function Example() {
30
+ return <Button>Salvar</Button>;
31
+ }
32
+ ```
33
+
34
+ ## Componentes Publicos
35
+
36
+ | Componente | Import | Uso minimo |
37
+ | --- | --- | --- |
38
+ | `Background` | `import { Background } from '@esperanca-ui/componentes'` | `<Background pattern="dots" />` |
39
+ | `Button` | `import { Button } from '@esperanca-ui/componentes'` | `<Button>Salvar</Button>` |
40
+ | `Card` | `import { Card } from '@esperanca-ui/componentes'` | `<Card><Card.Body>Conteudo</Card.Body></Card>` |
41
+ | `MetricCard` | `import { MetricCard } from '@esperanca-ui/componentes'` | `<MetricCard value="42" title="Ativos" />` |
42
+ | `Checkbox` | `import { Checkbox } from '@esperanca-ui/componentes'` | `<Checkbox label="Aceito os termos" />` |
43
+ | `ComboBox` | `import { ComboBox } from '@esperanca-ui/componentes'` | `<ComboBox options={[...]} />` |
44
+ | `ConfirmDialog` | `import { ConfirmDialog } from '@esperanca-ui/componentes'` | `<ConfirmDialog isOpen={open} onClose={...} onConfirm={...} />` |
45
+ | `FormSidebar` | `import { FormSidebar } from '@esperanca-ui/componentes'` | `<FormSidebar isOpen={open} onClose={...}>...</FormSidebar>` |
46
+ | `Grid` | `import { Grid } from '@esperanca-ui/componentes'` | `<Grid columns={{ base: 1, md: 2 }} gap={4}>...</Grid>` |
47
+ | `Input` | `import { Input } from '@esperanca-ui/componentes'` | `<Input label="Email" placeholder="Digite" />` |
48
+ | `Loading` | `import { Loading } from '@esperanca-ui/componentes'` | `<Loading variant="spinner" />` |
49
+ | `Modal` | `import { Modal } from '@esperanca-ui/componentes'` | `<Modal isOpen={open} onClose={...}>...</Modal>` |
50
+ | `PageHeader` | `import { PageHeader } from '@esperanca-ui/componentes'` | `<PageHeader title="Clientes" />` |
51
+ | `Portal` | `import { Portal } from '@esperanca-ui/componentes'` | `<Portal><div>Overlay</div></Portal>` |
52
+ | `Radio` | `import { Radio } from '@esperanca-ui/componentes'` | `<Radio label="Opcao A" />` |
53
+ | `RadioGroup` | `import { RadioGroup } from '@esperanca-ui/componentes'` | `<RadioGroup name="status" options={[...]} />` |
54
+ | `Sidebar` | `import { Sidebar } from '@esperanca-ui/componentes'` | `<Sidebar sections={[...]} />` |
55
+ | `DataTable` | `import { DataTable } from '@esperanca-ui/componentes'` | `<DataTable columns={columns} data={data} />` |
56
+ | `Textarea` | `import { Textarea } from '@esperanca-ui/componentes'` | `<Textarea label="Descricao" />` |
57
+ | `ThemeProvider` | `import { ThemeProvider } from '@esperanca-ui/componentes'` | `<ThemeProvider defaultTheme="system"><App /></ThemeProvider>` |
58
+ | `ToastProvider` + `useToast` | `import { ToastProvider, useToast } from '@esperanca-ui/componentes'` | `<ToastProvider><App /></ToastProvider>` |
59
+ | `Tooltip` | `import { Tooltip } from '@esperanca-ui/componentes'` | `<Tooltip content="Ajuda"><Button>Hover</Button></Tooltip>` |
60
+
61
+ ## Hooks Publicos
62
+
63
+ | Hook | Uso |
64
+ | --- | --- |
65
+ | `useTheme` | ler/trocar tema atual |
66
+ | `useKeyboardNavigation` | atalhos e navegacao por teclado |
67
+ | `useFocusTrap` | prender foco em modal/dialog |
68
+ | `useAnnouncements` | acessibilidade e mensagens aria |
69
+ | `useMediaQuery` | responsividade por media query |
70
+ | `useBreakpoint` | breakpoint atual |
71
+
72
+ ## Utilitarios Publicos
73
+
74
+ | Utilitario | Uso |
75
+ | --- | --- |
76
+ | `mergeClasses` | juntar classes condicionais |
77
+ | `createComponentClasses` | gerar classes por variante/modificadores |
78
+
79
+ ## Como Outra IA Deve Ler
80
+
81
+ Se uma IA estiver trabalhando em um projeto consumidor:
82
+
83
+ 1. abrir `node_modules/@esperanca-ui/componentes/README.md`
84
+ 2. abrir `node_modules/@esperanca-ui/componentes/COMPONENTS.md`
85
+ 3. abrir `node_modules/@esperanca-ui/componentes/dist/index.d.ts`
86
+ 4. abrir os `d.ts` especificos do componente em `node_modules/@esperanca-ui/componentes/dist/components`
87
+
88
+ ## Regra Importante
89
+
90
+ Para API real, considere `dist/index.d.ts` e `dist/components/**/*.d.ts` como fonte de verdade do pacote instalado.
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # @esperanca-ui/componentes
2
2
 
3
+ Se voce estiver integrando esta biblioteca em outro projeto e quiser um indice rapido dos componentes publicos, leia tambem `COMPONENTS.md`.
4
+
3
5
  Biblioteca de componentes React (DataTable, Sidebar, FormSidebar, Input, ComboBox, Checkbox, Radio, RadioGroup, Textarea e Button) com estilos em CSS puro, build com Vite e documentação via Storybook.
4
6
 
5
7
  ## TL;DR
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "@esperanca-ui/componentes",
3
- "version": "2.1.3",
3
+ "version": "2.1.4",
4
4
  "type": "module",
5
5
  "files": [
6
- "dist"
6
+ "dist",
7
+ "COMPONENTS.md"
7
8
  ],
8
9
  "main": "./dist/componentes-esperanca.umd.js",
9
10
  "module": "./dist/componentes-esperanca.es.js",