@wmoney/ui-kit 1.0.0
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 +132 -0
- package/dist/components/Badge.d.ts +19 -0
- package/dist/components/Badge.d.ts.map +1 -0
- package/dist/components/Button.d.ts +22 -0
- package/dist/components/Button.d.ts.map +1 -0
- package/dist/components/Calendar.d.ts +19 -0
- package/dist/components/Calendar.d.ts.map +1 -0
- package/dist/components/Card.d.ts +35 -0
- package/dist/components/Card.d.ts.map +1 -0
- package/dist/components/Checkbox.d.ts +8 -0
- package/dist/components/Checkbox.d.ts.map +1 -0
- package/dist/components/Command.d.ts +55 -0
- package/dist/components/Command.d.ts.map +1 -0
- package/dist/components/DatePicker.d.ts +37 -0
- package/dist/components/DatePicker.d.ts.map +1 -0
- package/dist/components/Dialog.d.ts +41 -0
- package/dist/components/Dialog.d.ts.map +1 -0
- package/dist/components/DropdownMenu.d.ts +80 -0
- package/dist/components/DropdownMenu.d.ts.map +1 -0
- package/dist/components/FileDropzone.d.ts +29 -0
- package/dist/components/FileDropzone.d.ts.map +1 -0
- package/dist/components/FormSection.d.ts +16 -0
- package/dist/components/FormSection.d.ts.map +1 -0
- package/dist/components/Input.d.ts +7 -0
- package/dist/components/Input.d.ts.map +1 -0
- package/dist/components/InputGroup.d.ts +52 -0
- package/dist/components/InputGroup.d.ts.map +1 -0
- package/dist/components/InputOtp.d.ts +48 -0
- package/dist/components/InputOtp.d.ts.map +1 -0
- package/dist/components/Label.d.ts +8 -0
- package/dist/components/Label.d.ts.map +1 -0
- package/dist/components/MultiSelect.d.ts +230 -0
- package/dist/components/MultiSelect.d.ts.map +1 -0
- package/dist/components/Pagination.d.ts +35 -0
- package/dist/components/Pagination.d.ts.map +1 -0
- package/dist/components/Paginator.d.ts +15 -0
- package/dist/components/Paginator.d.ts.map +1 -0
- package/dist/components/Popover.d.ts +33 -0
- package/dist/components/Popover.d.ts.map +1 -0
- package/dist/components/RadioGroup.d.ts +13 -0
- package/dist/components/RadioGroup.d.ts.map +1 -0
- package/dist/components/RoundedButton.d.ts +7 -0
- package/dist/components/RoundedButton.d.ts.map +1 -0
- package/dist/components/Select.d.ts +61 -0
- package/dist/components/Select.d.ts.map +1 -0
- package/dist/components/Separator.d.ts +9 -0
- package/dist/components/Separator.d.ts.map +1 -0
- package/dist/components/Skeleton.d.ts +8 -0
- package/dist/components/Skeleton.d.ts.map +1 -0
- package/dist/components/Spinner.d.ts +8 -0
- package/dist/components/Spinner.d.ts.map +1 -0
- package/dist/components/Switch.d.ts +8 -0
- package/dist/components/Switch.d.ts.map +1 -0
- package/dist/components/Table.d.ts +35 -0
- package/dist/components/Table.d.ts.map +1 -0
- package/dist/components/Tabs.d.ts +30 -0
- package/dist/components/Tabs.d.ts.map +1 -0
- package/dist/components/Textarea.d.ts +8 -0
- package/dist/components/Textarea.d.ts.map +1 -0
- package/dist/components/Tooltip.d.ts +22 -0
- package/dist/components/Tooltip.d.ts.map +1 -0
- package/dist/components/ValidatePassword.d.ts +15 -0
- package/dist/components/ValidatePassword.d.ts.map +1 -0
- package/dist/favicon.svg +1 -0
- package/dist/icons.svg +24 -0
- package/dist/index.cjs +65 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.css +3 -0
- package/dist/index.d.ts +34 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12937 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/ThemeTokensProvider.d.ts +38 -0
- package/dist/lib/ThemeTokensProvider.d.ts.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/package.json +81 -0
package/README.md
ADDED
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
# WMoney UI Kit
|
|
2
|
+
|
|
3
|
+
Um kit de componentes React reutilizáveis para aplicações web, construído com TypeScript, Tailwind CSS e Radix UI.
|
|
4
|
+
|
|
5
|
+
## Instalação
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install wmoney-ui-kit
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Uso Básico
|
|
12
|
+
|
|
13
|
+
Importe os componentes que você precisa:
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { Button, Card, ThemeTokensProvider } from '@wmoney/ui-kit';
|
|
17
|
+
import '@wmoney/ui-kit/index.css';
|
|
18
|
+
|
|
19
|
+
function App() {
|
|
20
|
+
return (
|
|
21
|
+
<ThemeTokensProvider>
|
|
22
|
+
<Card>
|
|
23
|
+
<Button>Olá Mundo</Button>
|
|
24
|
+
</Card>
|
|
25
|
+
</ThemeTokensProvider>
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Personalização de Temas
|
|
31
|
+
|
|
32
|
+
O UI Kit suporta personalização de tokens de cores através do `ThemeTokensProvider`. Você pode passar tokens alternativos para personalizar as cores:
|
|
33
|
+
|
|
34
|
+
```tsx
|
|
35
|
+
import { ThemeTokensProvider } from '@wmoney/ui-kit';
|
|
36
|
+
|
|
37
|
+
const customTokens = {
|
|
38
|
+
primary: '#ff0000',
|
|
39
|
+
secondary: '#00ff00',
|
|
40
|
+
accent: '#0000ff',
|
|
41
|
+
// Adicione outros tokens conforme necessário
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
function App() {
|
|
45
|
+
return (
|
|
46
|
+
<ThemeTokensProvider tokens={customTokens}>
|
|
47
|
+
{/* Seus componentes aqui */}
|
|
48
|
+
</ThemeTokensProvider>
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Os tokens disponíveis incluem: `primary`, `secondary`, `accent`, `foreground`, `background`, `muted`, `border`, `destructive`, `success`, `warning`, etc.
|
|
54
|
+
|
|
55
|
+
## Componentes Disponíveis
|
|
56
|
+
|
|
57
|
+
- Badge
|
|
58
|
+
- Button
|
|
59
|
+
- Calendar
|
|
60
|
+
- Card
|
|
61
|
+
- Checkbox
|
|
62
|
+
- Command
|
|
63
|
+
- DatePicker
|
|
64
|
+
- Dialog
|
|
65
|
+
- DropdownMenu
|
|
66
|
+
- FileDropzone
|
|
67
|
+
- FormSection
|
|
68
|
+
- Input
|
|
69
|
+
- InputGroup
|
|
70
|
+
- InputOtp
|
|
71
|
+
- Label
|
|
72
|
+
- MultiSelect
|
|
73
|
+
- Pagination
|
|
74
|
+
- Paginator
|
|
75
|
+
- Popover
|
|
76
|
+
- RadioGroup
|
|
77
|
+
- RoundedButton
|
|
78
|
+
- Select
|
|
79
|
+
- Separator
|
|
80
|
+
- Skeleton
|
|
81
|
+
- Spinner
|
|
82
|
+
- Switch
|
|
83
|
+
- Table
|
|
84
|
+
- Tabs
|
|
85
|
+
- Textarea
|
|
86
|
+
- Tooltip
|
|
87
|
+
- ValidatePassword
|
|
88
|
+
|
|
89
|
+
## Desenvolvimento
|
|
90
|
+
|
|
91
|
+
Para desenvolvimento local:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
npm install
|
|
95
|
+
npm run dev # Inicia o Storybook
|
|
96
|
+
npm run build # Build do pacote
|
|
97
|
+
npm run build:storybook # Build do Storybook
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## Publicação no NPM
|
|
101
|
+
|
|
102
|
+
Após fazer as alterações e testar:
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
npm run build
|
|
106
|
+
npm publish
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Certifique-se de que você está logado no NPM (`npm login`) e que a versão no `package.json` foi atualizada.
|
|
110
|
+
import reactDom from 'eslint-plugin-react-dom'
|
|
111
|
+
|
|
112
|
+
export default defineConfig([
|
|
113
|
+
globalIgnores(['dist']),
|
|
114
|
+
{
|
|
115
|
+
files: ['**/*.{ts,tsx}'],
|
|
116
|
+
extends: [
|
|
117
|
+
// Other configs...
|
|
118
|
+
// Enable lint rules for React
|
|
119
|
+
reactX.configs['recommended-typescript'],
|
|
120
|
+
// Enable lint rules for React DOM
|
|
121
|
+
reactDom.configs.recommended,
|
|
122
|
+
],
|
|
123
|
+
languageOptions: {
|
|
124
|
+
parserOptions: {
|
|
125
|
+
project: ['./tsconfig.node.json', './tsconfig.app.json'],
|
|
126
|
+
tsconfigRootDir: import.meta.dirname,
|
|
127
|
+
},
|
|
128
|
+
// other options...
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
])
|
|
132
|
+
```
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import { ComponentProps } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Variantes do componente Badge para diferentes estilos visuais.
|
|
5
|
+
* Usa class-variance-authority (cva) para definir estilos com base na prop "variant".
|
|
6
|
+
*/
|
|
7
|
+
declare const badgeVariants: (props?: ({
|
|
8
|
+
variant?: "default" | "secondary" | "outline" | "ghost" | "success" | "destructive" | "warning" | null | undefined;
|
|
9
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
10
|
+
/**
|
|
11
|
+
* Componente Badge para exibir etiquetas informativas com diferentes estilos visuais.
|
|
12
|
+
* Suporta renderização polimórfica via prop `asChild`.
|
|
13
|
+
*/
|
|
14
|
+
declare function Badge({ className, variant, asChild, ...props }: ComponentProps<'span'> & VariantProps<typeof badgeVariants> & {
|
|
15
|
+
/** Se true, renderiza o componente como filho de outro componente. */
|
|
16
|
+
asChild?: boolean;
|
|
17
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export { Badge, badgeVariants };
|
|
19
|
+
//# sourceMappingURL=Badge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../src/components/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAK5C;;;GAGG;AACH,QAAA,MAAM,aAAa;;8EAyBlB,CAAC;AAEF;;;GAGG;AACH,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,OAAmB,EACnB,OAAe,EACf,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,MAAM,CAAC,GACvB,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG;IACnC,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,2CAWF;AAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import { ComponentProps } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Variantes do componente Button para diferentes estilos, tamanhos e estados.
|
|
5
|
+
* Usa class-variance-authority (cva) para definir estilos com base nas props.
|
|
6
|
+
*/
|
|
7
|
+
export declare const buttonVariants: (props?: ({
|
|
8
|
+
variant?: "default" | "secondary" | "outline" | "ghost" | "success" | "destructive" | "link" | null | undefined;
|
|
9
|
+
size?: "default" | "link" | "sm" | "lg" | "icon" | "icon-xs" | "icon-sm" | "icon-lg" | null | undefined;
|
|
10
|
+
loading?: boolean | null | undefined;
|
|
11
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
12
|
+
/**
|
|
13
|
+
* Componente Button com suporte a variantes visuais, tamanhos e estado de loading.
|
|
14
|
+
* Suporta renderização polimórfica via prop `asChild`.
|
|
15
|
+
*/
|
|
16
|
+
export declare function Button({ className, variant, size, asChild, loading, disabled, type, children, ...props }: ComponentProps<'button'> & VariantProps<typeof buttonVariants> & {
|
|
17
|
+
/** Se true, renderiza o componente como filho de outro componente. */
|
|
18
|
+
asChild?: boolean;
|
|
19
|
+
/** Se true, exibe um spinner de carregamento e desabilita o botão. */
|
|
20
|
+
loading?: boolean;
|
|
21
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/components/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAO5C;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;8EAqC1B,CAAC;AAgCF;;;GAGG;AACH,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAe,EACf,OAAe,EACf,QAAQ,EACR,IAAe,EACf,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,QAAQ,CAAC,GACzB,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,2CA2BF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { DayButton, DayPicker } from 'react-day-picker';
|
|
2
|
+
import { Button } from './Button';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
/**
|
|
5
|
+
* Componente Calendar baseado em react-day-picker com localização para pt-BR.
|
|
6
|
+
* Suporta seleção de data única, intervalo e múltiplas datas.
|
|
7
|
+
* Inclui layouts de legenda como label e dropdown para navegação por mês/ano.
|
|
8
|
+
*/
|
|
9
|
+
declare function Calendar({ className, classNames, showOutsideDays, captionLayout, buttonVariant, formatters, components, ...props }: React.ComponentProps<typeof DayPicker> & {
|
|
10
|
+
/** Variante visual dos botões de navegação. Padrão: 'ghost'. */
|
|
11
|
+
buttonVariant?: React.ComponentProps<typeof Button>['variant'];
|
|
12
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
/**
|
|
14
|
+
* Botão de dia individual dentro do Calendar.
|
|
15
|
+
* Aplica estilos de seleção única, início/meio/fim de intervalo e foco.
|
|
16
|
+
*/
|
|
17
|
+
declare function CalendarDayButton({ className, day, modifiers, ...props }: React.ComponentProps<typeof DayButton>): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export { Calendar, CalendarDayButton };
|
|
19
|
+
//# sourceMappingURL=Calendar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../../src/components/Calendar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,EACL,KAAK,SAAS,EACd,SAAS,EAEV,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAkB,MAAM,qBAAqB,CAAC;AAI7D;;;;GAIG;AACH,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,UAAU,EACV,eAAsB,EACtB,aAAuB,EACvB,aAAuB,EACvB,UAAU,EACV,UAAU,EACV,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,GAAG;IAC1C,gEAAgE;IAChE,aAAa,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;CAChE,2CA8JA;AAED;;;GAGG;AACH,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,EACH,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,2CA+BxC;AAED,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { ComponentProps } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Componente raiz do Card. Contêiner principal com sombra, borda e padding padrão.
|
|
4
|
+
*/
|
|
5
|
+
declare function Card({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
/**
|
|
7
|
+
* Cabeçalho do Card. Exibe ícone e título em layout de grid de duas colunas.
|
|
8
|
+
*/
|
|
9
|
+
declare function CardHeader({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
/**
|
|
11
|
+
* Área de ícone do Card. Exibe um ícone centralizado com fundo arredondado.
|
|
12
|
+
*/
|
|
13
|
+
declare function CardIcon({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
/**
|
|
15
|
+
* Título do Card. Exibe o título em negrito sem margens verticais.
|
|
16
|
+
*/
|
|
17
|
+
declare function CardTitle({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
/**
|
|
19
|
+
* Descrição do Card. Exibe texto secundário em estilo mais discreto.
|
|
20
|
+
*/
|
|
21
|
+
declare function CardDescription({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
/**
|
|
23
|
+
* Área de ação do Card. Posicionada no canto superior direito do cabeçalho.
|
|
24
|
+
*/
|
|
25
|
+
declare function CardAction({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
26
|
+
/**
|
|
27
|
+
* Conteúdo principal do Card. Área flexível para o corpo do card.
|
|
28
|
+
*/
|
|
29
|
+
declare function CardContent({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
30
|
+
/**
|
|
31
|
+
* Rodapé do Card. Área inferior com alinhamento horizontal de itens.
|
|
32
|
+
*/
|
|
33
|
+
declare function CardFooter({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardIcon, CardTitle, };
|
|
35
|
+
//# sourceMappingURL=Card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../src/components/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAI5C;;GAEG;AACH,iBAAS,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAW3D;AAED;;GAEG;AACH,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAQjE;AAED;;GAEG;AACH,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAW/D;AAED;;GAEG;AACH,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAQhE;AAED;;GAEG;AACH,iBAAS,eAAe,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAQtE;AAED;;GAEG;AACH,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAWjE;AAED;;GAEG;AACH,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAElE;AAED;;GAEG;AACH,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAQjE;AAED,OAAO,EACL,IAAI,EACJ,UAAU,EACV,WAAW,EACX,eAAe,EACf,UAAU,EACV,UAAU,EACV,QAAQ,EACR,SAAS,GACV,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ComponentProps } from 'react';
|
|
2
|
+
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
3
|
+
/**
|
|
4
|
+
* Componente Checkbox baseado em @radix-ui/react-checkbox.
|
|
5
|
+
* Exibe um indicador de seleção com ícone de check quando marcado.
|
|
6
|
+
*/
|
|
7
|
+
export declare function Checkbox({ className, ...props }: ComponentProps<typeof CheckboxPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=Checkbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../src/components/Checkbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,iBAAiB,MAAM,0BAA0B,CAAC;AAI9D;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,iBAAiB,CAAC,IAAI,CAAC,2CAkB/C"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Command as CommandPrimitive } from 'cmdk';
|
|
2
|
+
import { ComponentProps } from 'react';
|
|
3
|
+
import { Dialog } from './Dialog';
|
|
4
|
+
/**
|
|
5
|
+
* Componente raiz do Command (paleta de comandos).
|
|
6
|
+
* Baseado em cmdk com layout de coluna e overflow oculto.
|
|
7
|
+
*/
|
|
8
|
+
declare function Command({ className, ...props }: ComponentProps<typeof CommandPrimitive>): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
/**
|
|
10
|
+
* Versão modal do Command, renderizada dentro de um Dialog.
|
|
11
|
+
* Inclui título e descrição acessíveis para leitores de tela.
|
|
12
|
+
*/
|
|
13
|
+
declare function CommandDialog({ title, description, children, className, showCloseButton, ...props }: ComponentProps<typeof Dialog> & {
|
|
14
|
+
/** Título acessível do dialog. Padrão: 'Command Palette'. */
|
|
15
|
+
title?: string;
|
|
16
|
+
/** Descrição acessível do dialog. */
|
|
17
|
+
description?: string;
|
|
18
|
+
/** Classes CSS adicionais para o conteúdo do dialog. */
|
|
19
|
+
className?: string;
|
|
20
|
+
/** Se false, oculta o botão de fechar. Padrão: true. */
|
|
21
|
+
showCloseButton?: boolean;
|
|
22
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
/**
|
|
24
|
+
* Campo de busca do Command com ícone de lupa.
|
|
25
|
+
* Filtra os itens da lista em tempo real conforme o usuário digita.
|
|
26
|
+
*/
|
|
27
|
+
declare function CommandInput({ className, ...props }: ComponentProps<typeof CommandPrimitive.Input>): import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
/**
|
|
29
|
+
* Lista de resultados do Command com scroll automático.
|
|
30
|
+
*/
|
|
31
|
+
declare function CommandList({ className, ...props }: ComponentProps<typeof CommandPrimitive.List>): import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
/**
|
|
33
|
+
* Mensagem exibida quando nenhum resultado é encontrado na busca.
|
|
34
|
+
*/
|
|
35
|
+
declare function CommandEmpty({ ...props }: ComponentProps<typeof CommandPrimitive.Empty>): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
/**
|
|
37
|
+
* Grupo de itens relacionados dentro da lista do Command.
|
|
38
|
+
* Exibe um cabeçalho de seção acima dos itens agrupados.
|
|
39
|
+
*/
|
|
40
|
+
declare function CommandGroup({ className, ...props }: ComponentProps<typeof CommandPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
/**
|
|
42
|
+
* Separador visual entre grupos de itens na lista do Command.
|
|
43
|
+
*/
|
|
44
|
+
declare function CommandSeparator({ className, ...props }: ComponentProps<typeof CommandPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
|
|
45
|
+
/**
|
|
46
|
+
* Item individual dentro da lista do Command.
|
|
47
|
+
* Fica destacado ao ser selecionado via teclado ou mouse.
|
|
48
|
+
*/
|
|
49
|
+
declare function CommandItem({ className, ...props }: ComponentProps<typeof CommandPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
|
|
50
|
+
/**
|
|
51
|
+
* Atalho de teclado exibido à direita de um item do Command.
|
|
52
|
+
*/
|
|
53
|
+
declare function CommandShortcut({ className, ...props }: ComponentProps<'span'>): import("react/jsx-runtime").JSX.Element;
|
|
54
|
+
export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, };
|
|
55
|
+
//# sourceMappingURL=Command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../src/components/Command.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,MAAM,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EACL,MAAM,EAKP,MAAM,qBAAqB,CAAC;AAI7B;;;GAGG;AACH,iBAAS,OAAO,CAAC,EACf,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,2CAWzC;AAED;;;GAGG;AACH,iBAAS,aAAa,CAAC,EACrB,KAAyB,EACzB,WAA8C,EAC9C,QAAQ,EACR,SAAS,EACT,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,MAAM,CAAC,GAAG;IACjC,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,2CAiBA;AAED;;;GAGG;AACH,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAiB/C;AAED;;GAEG;AACH,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAW9C;AAED;;GAEG;AACH,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAQ/C;AAED;;;GAGG;AACH,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAW/C;AAED;;GAEG;AACH,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,SAAS,CAAC,2CAQnD;AAED;;;GAGG;AACH,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAW9C;AAED;;GAEG;AACH,iBAAS,eAAe,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,MAAM,CAAC,2CAWvE;AAED,OAAO,EACL,OAAO,EACP,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,eAAe,GAChB,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { DateRange } from 'react-day-picker';
|
|
2
|
+
/**
|
|
3
|
+
* Props do componente DatePicker para seleção de data única.
|
|
4
|
+
*/
|
|
5
|
+
interface DatePickerProps {
|
|
6
|
+
/** Texto do rótulo exibido acima do campo. */
|
|
7
|
+
label: string;
|
|
8
|
+
/** Se true, exibe um asterisco indicando campo obrigatório. */
|
|
9
|
+
required?: boolean;
|
|
10
|
+
/** Valor controlado da data selecionada. */
|
|
11
|
+
value?: Date | undefined;
|
|
12
|
+
/** Callback chamado quando a data selecionada muda. */
|
|
13
|
+
onChange?: (date: Date | undefined) => void;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Componente DatePicker para seleção de data única.
|
|
17
|
+
* Suporta modo controlado (via `value` e `onChange`) e não controlado (estado interno).
|
|
18
|
+
*/
|
|
19
|
+
export declare function DatePicker({ label, required, value, onChange, }: DatePickerProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
/**
|
|
21
|
+
* Props do componente DatePickerWithRange para seleção de intervalo de datas.
|
|
22
|
+
*/
|
|
23
|
+
interface DatePickerWithRangeProps {
|
|
24
|
+
/** Texto do rótulo exibido acima do campo. */
|
|
25
|
+
label: string;
|
|
26
|
+
/** Valor controlado do intervalo de datas selecionado. */
|
|
27
|
+
value?: DateRange | undefined;
|
|
28
|
+
/** Callback chamado quando o intervalo de datas selecionado muda. */
|
|
29
|
+
onChange?: (date: DateRange | undefined) => void;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Componente DatePicker para seleção de intervalo de datas (data inicial e final).
|
|
33
|
+
* Suporta modo controlado (via `value` e `onChange`) e não controlado (estado interno).
|
|
34
|
+
*/
|
|
35
|
+
export declare function DatePickerWithRange({ label, value: controlledValue, onChange, }: DatePickerWithRangeProps): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
export {};
|
|
37
|
+
//# sourceMappingURL=DatePicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../src/components/DatePicker.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAOlD;;GAEG;AACH,UAAU,eAAe;IACvB,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IACzB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;CAC7C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,GACT,EAAE,eAAe,2CA8CjB;AAED;;GAEG;AACH,UAAU,wBAAwB;IAChC,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B,qEAAqE;IACrE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,KAAK,IAAI,CAAC;CAClD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,KAAK,EAAE,eAAe,EACtB,QAAQ,GACT,EAAE,wBAAwB,2CAsD1B"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { ComponentProps } from 'react';
|
|
2
|
+
import * as DialogPrimitive from '@radix-ui/react-dialog';
|
|
3
|
+
/** Componente raiz do Dialog. Controla o estado aberto/fechado do modal. */
|
|
4
|
+
declare const Dialog: import('react').FC<DialogPrimitive.DialogProps>;
|
|
5
|
+
/** Elemento que aciona a abertura do Dialog ao ser clicado. */
|
|
6
|
+
declare const DialogTrigger: import('react').ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & import('react').RefAttributes<HTMLButtonElement>>;
|
|
7
|
+
/** Portal onde o conteúdo do Dialog é renderizado fora da árvore DOM principal. */
|
|
8
|
+
declare const DialogPortal: import('react').FC<DialogPrimitive.DialogPortalProps>;
|
|
9
|
+
/** Botão para fechar o Dialog. */
|
|
10
|
+
declare const DialogClose: import('react').ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & import('react').RefAttributes<HTMLButtonElement>>;
|
|
11
|
+
/**
|
|
12
|
+
* Overlay semitransparente exibido atrás do Dialog.
|
|
13
|
+
* Bloqueia a interação com o conteúdo subjacente enquanto o modal está aberto.
|
|
14
|
+
*/
|
|
15
|
+
declare function DialogOverlay({ className, ...props }: ComponentProps<typeof DialogPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
/**
|
|
17
|
+
* Conteúdo principal do Dialog.
|
|
18
|
+
* Renderizado em um Portal com overlay, animações e botão de fechar opcional.
|
|
19
|
+
*/
|
|
20
|
+
declare function DialogContent({ className, children, showCloseButton, ...props }: ComponentProps<typeof DialogPrimitive.Content> & {
|
|
21
|
+
/** Se false, oculta o botão de fechar no canto superior direito. Padrão: true. */
|
|
22
|
+
showCloseButton?: boolean;
|
|
23
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
24
|
+
/**
|
|
25
|
+
* Cabeçalho do Dialog. Agrupa título e descrição em layout de coluna.
|
|
26
|
+
*/
|
|
27
|
+
declare function DialogHeader({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
/**
|
|
29
|
+
* Rodapé do Dialog. Agrupa botões de ação em layout horizontal.
|
|
30
|
+
*/
|
|
31
|
+
declare function DialogFooter({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
/**
|
|
33
|
+
* Título do Dialog. Exibe o título principal em negrito e sem margens verticais.
|
|
34
|
+
*/
|
|
35
|
+
declare function DialogTitle({ className, ...props }: ComponentProps<typeof DialogPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
/**
|
|
37
|
+
* Descrição do Dialog. Exibe texto secundário em estilo discreto.
|
|
38
|
+
*/
|
|
39
|
+
declare function DialogDescription({ className, ...props }: ComponentProps<typeof DialogPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
|
|
40
|
+
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, };
|
|
41
|
+
//# sourceMappingURL=Dialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../src/components/Dialog.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAI1D,4EAA4E;AAC5E,QAAA,MAAM,MAAM,iDAAuB,CAAC;AAEpC,+DAA+D;AAC/D,QAAA,MAAM,aAAa,kIAA0B,CAAC;AAE9C,mFAAmF;AACnF,QAAA,MAAM,YAAY,uDAAyB,CAAC;AAE5C,kCAAkC;AAClC,QAAA,MAAM,WAAW,gIAAwB,CAAC;AAE1C;;;GAGG;AACH,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAWhD;AAED;;;GAGG;AACH,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IAClD,kFAAkF;IAClF,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,2CAyBA;AAED;;GAEG;AACH,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAWnE;AAED;;GAEG;AACH,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAWnE;AAED;;GAEG;AACH,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAW9C;AAED;;GAEG;AACH,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,2CAQpD;AAED,OAAO,EACL,MAAM,EACN,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,aAAa,GACd,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { ComponentProps } from 'react';
|
|
2
|
+
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
3
|
+
/**
|
|
4
|
+
* Componente raiz do DropdownMenu. Controla o estado aberto/fechado do menu.
|
|
5
|
+
*/
|
|
6
|
+
declare function DropdownMenu({ ...props }: ComponentProps<typeof DropdownMenuPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
/**
|
|
8
|
+
* Portal onde o conteúdo do DropdownMenu é renderizado fora da árvore DOM principal.
|
|
9
|
+
*/
|
|
10
|
+
declare function DropdownMenuPortal({ ...props }: ComponentProps<typeof DropdownMenuPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
/**
|
|
12
|
+
* Elemento que aciona a abertura do DropdownMenu ao ser clicado.
|
|
13
|
+
*/
|
|
14
|
+
declare function DropdownMenuTrigger({ ...props }: ComponentProps<typeof DropdownMenuPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
/**
|
|
16
|
+
* Painel de itens do DropdownMenu.
|
|
17
|
+
* Renderizado em um Portal com animações de entrada e saída.
|
|
18
|
+
*/
|
|
19
|
+
declare function DropdownMenuContent({ className, sideOffset, ...props }: ComponentProps<typeof DropdownMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
/**
|
|
21
|
+
* Agrupa itens relacionados dentro do DropdownMenu.
|
|
22
|
+
*/
|
|
23
|
+
declare function DropdownMenuGroup({ ...props }: ComponentProps<typeof DropdownMenuPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
|
|
24
|
+
/**
|
|
25
|
+
* Item individual clicável dentro do DropdownMenu.
|
|
26
|
+
* Suporta variante destrutiva para ações críticas.
|
|
27
|
+
*/
|
|
28
|
+
declare function DropdownMenuItem({ className, inset, variant, ...props }: ComponentProps<typeof DropdownMenuPrimitive.Item> & {
|
|
29
|
+
/** Se true, adiciona recuo à esquerda para alinhar com itens que têm ícone. */
|
|
30
|
+
inset?: boolean;
|
|
31
|
+
/** Variante visual do item. 'destructive' destaca ações de risco. */
|
|
32
|
+
variant?: 'default' | 'destructive';
|
|
33
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
/**
|
|
35
|
+
* Item de checkbox dentro do DropdownMenu.
|
|
36
|
+
* Exibe um indicador de seleção quando marcado.
|
|
37
|
+
*/
|
|
38
|
+
declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): import("react/jsx-runtime").JSX.Element;
|
|
39
|
+
/**
|
|
40
|
+
* Grupo de itens de radio dentro do DropdownMenu.
|
|
41
|
+
* Permite seleção exclusiva entre as opções do grupo.
|
|
42
|
+
*/
|
|
43
|
+
declare function DropdownMenuRadioGroup({ ...props }: ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): import("react/jsx-runtime").JSX.Element;
|
|
44
|
+
/**
|
|
45
|
+
* Item de radio individual dentro do DropdownMenu.
|
|
46
|
+
* Exibe um indicador circular quando selecionado.
|
|
47
|
+
*/
|
|
48
|
+
declare function DropdownMenuRadioItem({ className, children, ...props }: ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): import("react/jsx-runtime").JSX.Element;
|
|
49
|
+
/**
|
|
50
|
+
* Rótulo de seção dentro do DropdownMenu. Não é clicável.
|
|
51
|
+
*/
|
|
52
|
+
declare function DropdownMenuLabel({ className, inset, ...props }: ComponentProps<typeof DropdownMenuPrimitive.Label> & {
|
|
53
|
+
/** Se true, adiciona recuo à esquerda para alinhar com itens que têm ícone. */
|
|
54
|
+
inset?: boolean;
|
|
55
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
56
|
+
/**
|
|
57
|
+
* Separador visual entre grupos de itens no DropdownMenu.
|
|
58
|
+
*/
|
|
59
|
+
declare function DropdownMenuSeparator({ className, ...props }: ComponentProps<typeof DropdownMenuPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
|
|
60
|
+
/**
|
|
61
|
+
* Atalho de teclado exibido à direita de um item do DropdownMenu.
|
|
62
|
+
*/
|
|
63
|
+
declare function DropdownMenuShortcut({ className, ...props }: ComponentProps<'span'>): import("react/jsx-runtime").JSX.Element;
|
|
64
|
+
/**
|
|
65
|
+
* Componente raiz de submenu dentro do DropdownMenu.
|
|
66
|
+
*/
|
|
67
|
+
declare function DropdownMenuSub({ ...props }: ComponentProps<typeof DropdownMenuPrimitive.Sub>): import("react/jsx-runtime").JSX.Element;
|
|
68
|
+
/**
|
|
69
|
+
* Trigger que abre o submenu ao receber hover ou foco.
|
|
70
|
+
*/
|
|
71
|
+
declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
|
|
72
|
+
/** Se true, adiciona recuo à esquerda para alinhar com itens que têm ícone. */
|
|
73
|
+
inset?: boolean;
|
|
74
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
75
|
+
/**
|
|
76
|
+
* Painel de conteúdo do submenu do DropdownMenu.
|
|
77
|
+
*/
|
|
78
|
+
declare function DropdownMenuSubContent({ className, ...props }: ComponentProps<typeof DropdownMenuPrimitive.SubContent>): import("react/jsx-runtime").JSX.Element;
|
|
79
|
+
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, };
|
|
80
|
+
//# sourceMappingURL=DropdownMenu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DropdownMenu.d.ts","sourceRoot":"","sources":["../../src/components/DropdownMenu.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Props do componente FileDropzone.
|
|
3
|
+
*/
|
|
4
|
+
type FileDropzoneProps = {
|
|
5
|
+
/** Texto do rótulo exibido para o campo de arquivo. Padrão: 'Arquivo'. */
|
|
6
|
+
label?: string;
|
|
7
|
+
/** Se true, exibe um asterisco indicando campo obrigatório. */
|
|
8
|
+
required?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Tipos de arquivo aceitos no formato de atributo HTML accept.
|
|
11
|
+
* Padrão: '.pdf,.xml,.png,.jpg,.jpeg'.
|
|
12
|
+
*/
|
|
13
|
+
accept?: string;
|
|
14
|
+
/** Se true, permite seleção de múltiplos arquivos. Padrão: false. */
|
|
15
|
+
multiple?: boolean;
|
|
16
|
+
/** Se true, desabilita o componente completamente. */
|
|
17
|
+
disabled?: boolean;
|
|
18
|
+
/** Classes CSS adicionais para o contêiner externo. */
|
|
19
|
+
className?: string;
|
|
20
|
+
/** Callback chamado quando arquivos são selecionados ou soltos na área. */
|
|
21
|
+
onFilesChange?: (files: FileList) => void;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Componente FileDropzone para upload de arquivos via drag-and-drop ou seleção manual.
|
|
25
|
+
* Exibe os arquivos selecionados e fornece feedback visual durante o arrasto.
|
|
26
|
+
*/
|
|
27
|
+
export declare function FileDropzone({ label, accept, multiple, disabled, className, onFilesChange, }: FileDropzoneProps): import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=FileDropzone.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileDropzone.d.ts","sourceRoot":"","sources":["../../src/components/FileDropzone.tsx"],"names":[],"mappings":"AAYA;;GAEG;AACH,KAAK,iBAAiB,GAAG;IACvB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;CAC3C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAiB,EACjB,MAAoC,EACpC,QAAgB,EAChB,QAAQ,EACR,SAAS,EACT,aAAa,GACd,EAAE,iBAAiB,2CAuJnB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { LucideIcon } from 'lucide-react';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
interface FormSectionProps {
|
|
4
|
+
icon: LucideIcon;
|
|
5
|
+
title: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
children: ReactNode;
|
|
8
|
+
className?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Seção de formulário com ícone, título, descrição opcional e conteúdo.
|
|
12
|
+
* Estrutura organizada em um card com separador visual entre cabeçalho e conteúdo.
|
|
13
|
+
*/
|
|
14
|
+
export declare function FormSection({ icon: Icon, title, description, children, className, }: FormSectionProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=FormSection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormSection.d.ts","sourceRoot":"","sources":["../../src/components/FormSection.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAYvC,UAAU,gBAAgB;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EAAE,IAAI,EACV,KAAK,EACL,WAAW,EACX,QAAQ,EACR,SAAS,GACV,EAAE,gBAAgB,2CAkBlB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ComponentProps } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Componente Input para campos de texto.
|
|
4
|
+
* Inclui estilos de foco, erro e estado desabilitado, além de suporte a arquivos.
|
|
5
|
+
*/
|
|
6
|
+
export declare function Input({ className, type, ...props }: ComponentProps<'input'>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
//# sourceMappingURL=Input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../src/components/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAI5C;;;GAGG;AACH,wBAAgB,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,2CAkB3E"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import { ComponentProps, HTMLAttributes } from 'react';
|
|
3
|
+
import { Button } from './Button';
|
|
4
|
+
/**
|
|
5
|
+
* Contêiner do InputGroup. Agrupa inputs com addons, botões e ícones em um único campo visual.
|
|
6
|
+
* Gerencia estados de foco e erro de forma unificada para todos os elementos filhos.
|
|
7
|
+
*/
|
|
8
|
+
declare function InputGroup({ className, ...props }: ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
/**
|
|
10
|
+
* Variantes do InputGroupAddon para diferentes posições de alinhamento.
|
|
11
|
+
* Define o posicionamento do addon em relação ao campo de input.
|
|
12
|
+
*/
|
|
13
|
+
declare const inputGroupAddonVariants: (props?: ({
|
|
14
|
+
align?: "inline-start" | "inline-end" | "block-start" | "block-end" | null | undefined;
|
|
15
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
16
|
+
/**
|
|
17
|
+
* Addon do InputGroup para exibir ícones, textos ou botões ao redor do campo.
|
|
18
|
+
* Foca o input ao ser clicado (exceto quando o clique é em um botão interno).
|
|
19
|
+
*/
|
|
20
|
+
declare function InputGroupAddon({ className, align, ...props }: ComponentProps<'div'> & VariantProps<typeof inputGroupAddonVariants>): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
/**
|
|
22
|
+
* Variantes do InputGroupButton para diferentes tamanhos de botão interno.
|
|
23
|
+
*/
|
|
24
|
+
declare const inputGroupButtonVariants: (props?: ({
|
|
25
|
+
size?: "sm" | "icon-xs" | "icon-sm" | "xs" | null | undefined;
|
|
26
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
27
|
+
/**
|
|
28
|
+
* Botão interno do InputGroup. Baseado no componente Button com estilos reduzidos.
|
|
29
|
+
*/
|
|
30
|
+
declare function InputGroupButton({ className, type, variant, size, ...props }: Omit<ComponentProps<typeof Button>, 'size'> & VariantProps<typeof inputGroupButtonVariants>): import("react/jsx-runtime").JSX.Element;
|
|
31
|
+
/**
|
|
32
|
+
* Slot genérico do InputGroup para renderizar elementos sem comportamento de botão.
|
|
33
|
+
*/
|
|
34
|
+
declare function InputGroupSlot({ className, size, ...props }: HTMLAttributes<HTMLDivElement> & VariantProps<typeof inputGroupButtonVariants> & {
|
|
35
|
+
size?: NonNullable<VariantProps<typeof inputGroupButtonVariants>['size']>;
|
|
36
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
37
|
+
/**
|
|
38
|
+
* Texto informativo dentro do InputGroup. Usado para prefixos e sufixos textuais.
|
|
39
|
+
*/
|
|
40
|
+
declare function InputGroupText({ className, ...props }: ComponentProps<'span'>): import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
/**
|
|
42
|
+
* Input integrado ao InputGroup. Remove bordas e estilos de foco próprios
|
|
43
|
+
* para delegar o gerenciamento de estado ao contêiner pai.
|
|
44
|
+
*/
|
|
45
|
+
declare function InputGroupInput({ className, ...props }: ComponentProps<'input'>): import("react/jsx-runtime").JSX.Element;
|
|
46
|
+
/**
|
|
47
|
+
* Textarea integrada ao InputGroup. Remove bordas e estilos de foco próprios
|
|
48
|
+
* para delegar o gerenciamento de estado ao contêiner pai.
|
|
49
|
+
*/
|
|
50
|
+
declare function InputGroupTextarea({ className, ...props }: ComponentProps<'textarea'>): import("react/jsx-runtime").JSX.Element;
|
|
51
|
+
export { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupSlot, InputGroupText, InputGroupTextarea, };
|
|
52
|
+
//# sourceMappingURL=InputGroup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InputGroup.d.ts","sourceRoot":"","sources":["../../src/components/InputGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAM7C;;;GAGG;AACH,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CA6BjE;AAED;;;GAGG;AACH,QAAA,MAAM,uBAAuB;;8EAuB5B,CAAC;AAEF;;;GAGG;AACH,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,KAAsB,EACtB,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,OAAO,uBAAuB,CAAC,2CAgBtE;AAED;;GAEG;AACH,QAAA,MAAM,wBAAwB;;8EAgB7B,CAAC;AAEF;;GAEG;AACH,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,IAAe,EACf,OAAiB,EACjB,IAAW,EACX,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,MAAM,CAAC,GAC5C,YAAY,CAAC,OAAO,wBAAwB,CAAC,2CAU9C;AAED;;GAEG;AACH,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,IAAW,EACX,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,cAAc,CAAC,GAC/B,YAAY,CAAC,OAAO,wBAAwB,CAAC,GAAG;IAC9C,IAAI,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;CAC3E,2CASF;AAED;;GAEG;AACH,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,MAAM,CAAC,2CAUtE;AAED;;;GAGG;AACH,iBAAS,eAAe,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,2CAWxE;AAED;;;GAGG;AACH,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,UAAU,CAAC,2CAW5B;AAED,OAAO,EACL,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,cAAc,EACd,kBAAkB,GACnB,CAAC"}
|