analytica-frontend-lib 1.0.27 → 1.0.28

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.
Files changed (107) hide show
  1. package/dist/Alert/{Alert.d.mts → index.d.mts} +1 -1
  2. package/dist/Alert/{Alert.d.ts → index.d.ts} +1 -1
  3. package/dist/Alert/{Alert.js → index.js} +6 -7
  4. package/dist/Alert/index.js.map +1 -0
  5. package/dist/Alert/{Alert.mjs → index.mjs} +67 -16
  6. package/dist/Alert/index.mjs.map +1 -0
  7. package/dist/Badge/{Badge.d.mts → index.d.mts} +1 -1
  8. package/dist/Badge/{Badge.d.ts → index.d.ts} +1 -1
  9. package/dist/Badge/{Badge.js → index.js} +3 -5
  10. package/dist/Badge/index.js.map +1 -0
  11. package/dist/Badge/{Badge.mjs → index.mjs} +3 -1
  12. package/dist/Badge/index.mjs.map +1 -0
  13. package/dist/Button/{Button.d.ts → index.d.mts} +1 -1
  14. package/dist/Button/{Button.d.mts → index.d.ts} +1 -1
  15. package/dist/Button/{Button.js → index.js} +3 -5
  16. package/dist/Button/index.js.map +1 -0
  17. package/dist/Button/{Button.mjs → index.mjs} +3 -1
  18. package/dist/Button/index.mjs.map +1 -0
  19. package/dist/CheckBox/{CheckBox.d.mts → index.d.mts} +1 -1
  20. package/dist/CheckBox/{CheckBox.d.ts → index.d.ts} +1 -1
  21. package/dist/CheckBox/{CheckBox.js → index.js} +7 -8
  22. package/dist/CheckBox/index.js.map +1 -0
  23. package/dist/CheckBox/{CheckBox.mjs → index.mjs} +68 -16
  24. package/dist/CheckBox/index.mjs.map +1 -0
  25. package/dist/DropdownMenu/{DropdownMenu.d.mts → index.d.mts} +1 -1
  26. package/dist/DropdownMenu/{DropdownMenu.d.ts → index.d.ts} +1 -1
  27. package/dist/DropdownMenu/{DropdownMenu.js → index.js} +4 -3
  28. package/dist/DropdownMenu/index.js.map +1 -0
  29. package/dist/DropdownMenu/{DropdownMenu.mjs → index.mjs} +4 -2
  30. package/dist/DropdownMenu/index.mjs.map +1 -0
  31. package/dist/IconButton/{IconButton.d.mts → index.d.mts} +1 -1
  32. package/dist/IconButton/{IconButton.d.ts → index.d.ts} +1 -1
  33. package/dist/IconButton/{IconButton.js → index.js} +3 -5
  34. package/dist/IconButton/index.js.map +1 -0
  35. package/dist/IconButton/{IconButton.mjs → index.mjs} +3 -1
  36. package/dist/IconButton/index.mjs.map +1 -0
  37. package/dist/IconRoundedButton/{IconRoundedButton.d.mts → index.d.mts} +1 -1
  38. package/dist/IconRoundedButton/{IconRoundedButton.d.ts → index.d.ts} +1 -1
  39. package/dist/IconRoundedButton/{IconRoundedButton.js → index.js} +3 -5
  40. package/dist/IconRoundedButton/index.js.map +1 -0
  41. package/dist/IconRoundedButton/{IconRoundedButton.mjs → index.mjs} +3 -1
  42. package/dist/IconRoundedButton/index.mjs.map +1 -0
  43. package/dist/NavButton/{NavButton.d.mts → index.d.mts} +1 -1
  44. package/dist/NavButton/{NavButton.d.ts → index.d.ts} +1 -1
  45. package/dist/NavButton/{NavButton.js → index.js} +3 -5
  46. package/dist/NavButton/index.js.map +1 -0
  47. package/dist/NavButton/{NavButton.mjs → index.mjs} +3 -1
  48. package/dist/NavButton/index.mjs.map +1 -0
  49. package/dist/SelectionButton/{SelectionButton.d.mts → index.d.mts} +1 -1
  50. package/dist/SelectionButton/{SelectionButton.d.ts → index.d.ts} +1 -1
  51. package/dist/SelectionButton/{SelectionButton.js → index.js} +3 -5
  52. package/dist/SelectionButton/index.js.map +1 -0
  53. package/dist/SelectionButton/{SelectionButton.mjs → index.mjs} +3 -1
  54. package/dist/SelectionButton/index.mjs.map +1 -0
  55. package/dist/Table/{Table.d.mts → index.d.mts} +1 -1
  56. package/dist/Table/{Table.d.ts → index.d.ts} +1 -1
  57. package/dist/Table/{Table.js → index.js} +4 -3
  58. package/dist/Table/index.js.map +1 -0
  59. package/dist/Table/{Table.mjs → index.mjs} +4 -2
  60. package/dist/Table/index.mjs.map +1 -0
  61. package/dist/Text/{Text.d.mts → index.d.mts} +1 -1
  62. package/dist/Text/{Text.d.ts → index.d.ts} +1 -1
  63. package/dist/Text/{Text.js → index.js} +3 -5
  64. package/dist/Text/index.js.map +1 -0
  65. package/dist/{chunk-TT3VCQGR.mjs → Text/index.mjs} +3 -2
  66. package/dist/Text/index.mjs.map +1 -0
  67. package/dist/TextArea/{TextArea.d.mts → index.d.mts} +1 -1
  68. package/dist/TextArea/{TextArea.d.ts → index.d.ts} +1 -1
  69. package/dist/TextArea/{TextArea.js → index.js} +7 -8
  70. package/dist/TextArea/index.js.map +1 -0
  71. package/dist/TextArea/{TextArea.mjs → index.mjs} +62 -10
  72. package/dist/TextArea/index.mjs.map +1 -0
  73. package/dist/Toast/{utils/ToastStore.d.mts → ToastStore/index.d.mts} +1 -1
  74. package/dist/Toast/{utils/ToastStore.d.ts → ToastStore/index.d.ts} +1 -1
  75. package/dist/Toast/{utils/ToastStore.js → ToastStore/index.js} +3 -5
  76. package/dist/Toast/ToastStore/index.js.map +1 -0
  77. package/dist/{chunk-WIOCQOM7.mjs → Toast/ToastStore/index.mjs} +3 -2
  78. package/dist/Toast/ToastStore/index.mjs.map +1 -0
  79. package/dist/Toast/{utils/Toaster.d.mts → Toaster/index.d.mts} +2 -2
  80. package/dist/Toast/{utils/Toaster.d.ts → Toaster/index.d.ts} +2 -2
  81. package/dist/Toast/{utils/Toaster.js → Toaster/index.js} +10 -7
  82. package/dist/Toast/Toaster/index.js.map +1 -0
  83. package/dist/Toast/Toaster/index.mjs +122 -0
  84. package/dist/Toast/Toaster/index.mjs.map +1 -0
  85. package/dist/Toast/{Toast.d.mts → index.d.mts} +1 -1
  86. package/dist/Toast/{Toast.d.ts → index.d.ts} +1 -1
  87. package/dist/Toast/{Toast.js → index.js} +3 -5
  88. package/dist/Toast/index.js.map +1 -0
  89. package/dist/{chunk-XJA5HF7B.mjs → Toast/index.mjs} +5 -2
  90. package/dist/Toast/index.mjs.map +1 -0
  91. package/dist/index.css +1 -3
  92. package/dist/index.css.map +1 -0
  93. package/dist/index.d.mts +18 -507
  94. package/dist/index.d.ts +18 -507
  95. package/dist/index.js +157 -141
  96. package/dist/index.js.map +1 -0
  97. package/dist/index.mjs +154 -138
  98. package/dist/index.mjs.map +1 -0
  99. package/dist/styles.css +1 -3
  100. package/dist/styles.css.map +1 -0
  101. package/dist/styles.d.mts +2 -0
  102. package/dist/styles.d.ts +2 -0
  103. package/package.json +26 -86
  104. package/dist/Text/Text.mjs +0 -6
  105. package/dist/Toast/Toast.mjs +0 -7
  106. package/dist/Toast/utils/ToastStore.mjs +0 -6
  107. package/dist/Toast/utils/Toaster.mjs +0 -35
package/dist/index.d.mts CHANGED
@@ -1,507 +1,18 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as react from 'react';
3
- import react__default, { ElementType, ReactNode, ComponentPropsWithoutRef, ButtonHTMLAttributes, HTMLAttributes, InputHTMLAttributes } from 'react';
4
- import * as zustand from 'zustand';
5
-
6
- /**
7
- * Base text component props
8
- */
9
- type BaseTextProps = {
10
- /** Content to be displayed */
11
- children?: ReactNode;
12
- /** Text size variant */
13
- size?: '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl';
14
- /** Font weight variant */
15
- weight?: 'hairline' | 'light' | 'normal' | 'medium' | 'semibold' | 'bold' | 'extrabold' | 'black';
16
- /** Color variant - white for light backgrounds, black for dark backgrounds */
17
- color?: string;
18
- /** Additional CSS classes to apply */
19
- className?: string;
20
- };
21
- /**
22
- * Polymorphic text component props that ensures type safety based on the 'as' prop
23
- */
24
- type TextProps<T extends ElementType = 'p'> = BaseTextProps & {
25
- /** HTML tag to render */
26
- as?: T;
27
- } & Omit<ComponentPropsWithoutRef<T>, keyof BaseTextProps>;
28
- /**
29
- * Text component for Analytica Ensino platforms
30
- *
31
- * A flexible polymorphic text component with multiple sizes, weights, and colors.
32
- * Automatically adapts to dark and light themes with full type safety.
33
- * Fully compatible with Next.js 15 and React 19.
34
- *
35
- * @param children - The content to display
36
- * @param size - The text size variant (2xs, xs, sm, md, lg, xl, 2xl, 3xl, 4xl, 5xl, 6xl)
37
- * @param weight - The font weight variant (hairline, light, normal, medium, semibold, bold, extrabold, black)
38
- * @param color - The color variant - adapts to theme
39
- * @param as - The HTML tag to render - determines allowed attributes via TypeScript
40
- * @param className - Additional CSS classes
41
- * @param props - HTML attributes valid for the chosen tag only
42
- * @returns A styled text element with type-safe attributes
43
- *
44
- * @example
45
- * ```tsx
46
- * <Text size="lg" weight="bold" color="text-info-800">
47
- * This is a large, bold text
48
- * </Text>
49
- *
50
- * <Text as="a" href="/link" target="_blank">
51
- * Link with type-safe anchor attributes
52
- * </Text>
53
- *
54
- * <Text as="button" onClick={handleClick} disabled>
55
- * Button with type-safe button attributes
56
- * </Text>
57
- * ```
58
- */
59
- declare const Text: <T extends ElementType = "p">({ children, size, weight, color, as, className, ...props }: TextProps<T>) => react_jsx_runtime.JSX.Element;
60
-
61
- /**
62
- * Button component props interface
63
- */
64
- type ButtonProps = {
65
- /** Content to be displayed inside the button */
66
- children: ReactNode;
67
- /** Ícone à esquerda do texto */
68
- iconLeft?: ReactNode;
69
- /** Ícone à direita do texto */
70
- iconRight?: ReactNode;
71
- /** Size of the button */
72
- size?: 'extra-small' | 'small' | 'medium' | 'large' | 'extra-large';
73
- /** Visual variant of the button */
74
- variant?: 'solid' | 'outline' | 'link';
75
- /** Action type of the button */
76
- action?: 'primary' | 'positive' | 'negative';
77
- /** Additional CSS classes to apply */
78
- className?: string;
79
- } & ButtonHTMLAttributes<HTMLButtonElement>;
80
- /**
81
- * Button component for Analytica Ensino platforms
82
- *
83
- * A flexible button component with multiple variants, sizes and actions.
84
- * Fully compatible with Next.js 15 and React 19.
85
- *
86
- * @param children - The content to display inside the button
87
- * @param size - The size variant (extra-small, small, medium, large, extra-large)
88
- * @param variant - The visual style variant (solid, outline, link)
89
- * @param action - The action type (primary, positive, negative)
90
- * @param className - Additional CSS classes
91
- * @param props - All other standard button HTML attributes
92
- * @returns A styled button element
93
- *
94
- * @example
95
- * ```tsx
96
- * <Button variant="solid" action="primary" size="medium" onClick={() => console.log('clicked')}>
97
- * Click me
98
- * </Button>
99
- * ```
100
- */
101
- declare const Button: ({ children, iconLeft, iconRight, size, variant, action, className, disabled, type, ...props }: ButtonProps) => react_jsx_runtime.JSX.Element;
102
-
103
- /**
104
- * Badge component props interface
105
- */
106
- type BadgeProps = {
107
- /** Content to be displayed inside the badge */
108
- children?: ReactNode;
109
- /** Ícone à direita do texto */
110
- iconRight?: ReactNode;
111
- /** Ícone à esquerda do texto */
112
- iconLeft?: ReactNode;
113
- /** Size of the badge */
114
- size?: 'small' | 'medium' | 'large';
115
- /** Visual variant of the badge */
116
- variant?: 'solid' | 'outlined' | 'exams' | 'resultStatus' | 'notification';
117
- /** Action type of the badge */
118
- action?: 'error' | 'warning' | 'success' | 'info' | 'muted' | 'exam1' | 'exam2' | 'exam3' | 'exam4' | 'positive' | 'negative';
119
- /** Additional CSS classes to apply */
120
- className?: string;
121
- notificationActive?: boolean;
122
- } & HTMLAttributes<HTMLDivElement>;
123
- /**
124
- * Badge component for Analytica Ensino platforms
125
- *
126
- * A flexible button component with multiple variants, sizes and actions.
127
- * Fully compatible with Next.js 15 and React 19.
128
- *
129
- * @param children - The content to display inside the badge
130
- * @param size - The size variant (extra-small, small, medium, large, extra-large)
131
- * @param variant - The visual style variant (solid, outline, link)
132
- * @param action - The action type (primary, positive, negative)
133
- * @param className - Additional CSS classes
134
- * @param props - All other standard div HTML attributes
135
- * @returns A styled badge element
136
- *
137
- * @example
138
- * ```tsx
139
- * <Badge variant="solid" action="info" size="medium">
140
- * Information
141
- * </Badge>
142
- * ```
143
- */
144
- declare const Badge: ({ children, iconLeft, iconRight, size, variant, action, className, notificationActive, ...props }: BadgeProps) => react_jsx_runtime.JSX.Element;
145
-
146
- type AlertProps = {
147
- title?: string;
148
- description: string;
149
- variant?: 'solid' | 'outline';
150
- action?: 'default' | 'info' | 'success' | 'warning' | 'error';
151
- className?: string;
152
- } & HTMLAttributes<HTMLDivElement>;
153
- declare const Alert: ({ variant, title, description, action, className, ...props }: AlertProps) => react_jsx_runtime.JSX.Element;
154
-
155
- /**
156
- * IconButton component for Analytica Ensino platforms
157
- *
158
- * Um botão compacto apenas com ícone, ideal para menus dropdown,
159
- * barras de ferramentas e ações secundárias.
160
- * Oferece dois tamanhos com estilo consistente.
161
- * Estado ativo permanece até ser clicado novamente ou outro botão ser ativado.
162
- * Compatível com Next.js 15 e React 19.
163
- * Suporta forwardRef para acesso programático ao elemento DOM.
164
- *
165
- * @param icon - O ícone a ser exibido no botão
166
- * @param size - Tamanho do botão (sm, md)
167
- * @param active - Estado ativo/selecionado do botão
168
- * @param className - Classes CSS adicionais
169
- * @param props - Todos os outros atributos HTML padrão de button
170
- * @returns Um elemento button compacto estilizado apenas com ícone
171
- *
172
- * @example
173
- * ```tsx
174
- * <IconButton
175
- * icon={<MoreVerticalIcon />}
176
- * size="sm"
177
- * onClick={() => openMenu()}
178
- * />
179
- * ```
180
- *
181
- * @example
182
- * ```tsx
183
- * // Botão ativo em uma barra de ferramentas - permanece ativo até outro clique
184
- * <IconButton
185
- * icon={<BoldIcon />}
186
- * active={isBold}
187
- * onClick={toggleBold}
188
- * />
189
- * ```
190
- *
191
- * @example
192
- * ```tsx
193
- * // Usando ref para controle programático
194
- * const buttonRef = useRef<HTMLButtonElement>(null);
195
- *
196
- * <IconButton
197
- * ref={buttonRef}
198
- * icon={<EditIcon />}
199
- * size="md"
200
- * onClick={() => startEditing()}
201
- * />
202
- * ```
203
- */
204
- declare const IconButton: react.ForwardRefExoticComponent<{
205
- /** Ícone a ser exibido no botão */
206
- icon: ReactNode;
207
- /** Tamanho do botão */
208
- size?: "sm" | "md";
209
- /** Estado de seleção/ativo do botão - permanece ativo até ser clicado novamente ou outro botão ser ativado */
210
- active?: boolean;
211
- /** Additional CSS classes to apply */
212
- className?: string;
213
- } & ButtonHTMLAttributes<HTMLButtonElement> & react.RefAttributes<HTMLButtonElement>>;
214
-
215
- /**
216
- * IconRoundedButton component props interface
217
- */
218
- type IconRoundedButtonProps = {
219
- /** Ícone a ser exibido no botão */
220
- icon: ReactNode;
221
- /** Additional CSS classes to apply */
222
- className?: string;
223
- } & ButtonHTMLAttributes<HTMLButtonElement>;
224
- /**
225
- * IconRoundedButton component for Analytica Ensino platforms
226
- *
227
- * Um botão redondo simples que exibe apenas um ícone.
228
- * Ideal para ações como navegação, fechar, editar, etc.
229
- * Compatível com Next.js 15 e React 19.
230
- *
231
- * @param icon - O ícone a ser exibido no botão
232
- * @param className - Classes CSS adicionais
233
- * @param props - Todos os outros atributos HTML padrão de button
234
- * @returns Um elemento button estilizado e redondo
235
- *
236
- * @example
237
- * ```tsx
238
- * <IconRoundedButton
239
- * icon={<ChevronRightIcon />}
240
- * onClick={() => console.log('clicked')}
241
- * />
242
- * ```
243
- */
244
- declare const IconRoundedButton: ({ icon, className, disabled, ...props }: IconRoundedButtonProps) => react_jsx_runtime.JSX.Element;
245
-
246
- /**
247
- * NavButton component for Analytica Ensino platforms
248
- *
249
- * Um botão de navegação com ícone e texto para navegação principal.
250
- * Ideal para menus de navegação, sidebar, tabs de navegação, etc.
251
- * Compatível com Next.js 15 e React 19.
252
- * Suporta forwardRef para acesso programático ao elemento DOM.
253
- *
254
- * @param icon - O ícone a ser exibido no botão
255
- * @param label - O texto/label a ser exibido
256
- * @param selected - Estado de seleção do botão
257
- * @param className - Classes CSS adicionais
258
- * @param props - Todos os outros atributos HTML padrão de button
259
- * @returns Um elemento button estilizado para navegação
260
- *
261
- * @example
262
- * ```tsx
263
- * <NavButton
264
- * icon={<HomeIcon />}
265
- * label="Início"
266
- * selected={false}
267
- * onClick={() => navigate('/')}
268
- * />
269
- * ```
270
- *
271
- * @example
272
- * ```tsx
273
- * // Usando ref para foco programático
274
- * const buttonRef = useRef<HTMLButtonElement>(null);
275
- *
276
- * const handleFocus = () => {
277
- * buttonRef.current?.focus();
278
- * };
279
- *
280
- * <NavButton
281
- * ref={buttonRef}
282
- * icon={<HomeIcon />}
283
- * label="Dashboard"
284
- * selected={isActive}
285
- * onClick={() => setActiveTab('dashboard')}
286
- * />
287
- * ```
288
- */
289
- declare const NavButton: react.ForwardRefExoticComponent<{
290
- /** Ícone a ser exibido no botão */
291
- icon: ReactNode;
292
- /** Texto/label a ser exibido ao lado do ícone */
293
- label: string;
294
- /** Estado de seleção do botão */
295
- selected?: boolean;
296
- /** Additional CSS classes to apply */
297
- className?: string;
298
- } & ButtonHTMLAttributes<HTMLButtonElement> & react.RefAttributes<HTMLButtonElement>>;
299
-
300
- /**
301
- * SelectionButton component for Analytica Ensino platforms
302
- *
303
- * Um botão com ícone e texto para ações e navegação com estado de seleção.
304
- * Ideal para filtros, tags, categorias, seleção de tipos, etc.
305
- * Compatível com Next.js 15 e React 19.
306
- * Suporta forwardRef para acesso programático ao elemento DOM.
307
- *
308
- * @param icon - O ícone a ser exibido no botão
309
- * @param label - O texto/label a ser exibido
310
- * @param selected - Estado de seleção do botão
311
- * @param className - Classes CSS adicionais
312
- * @param props - Todos os outros atributos HTML padrão de button
313
- * @returns Um elemento button estilizado
314
- *
315
- * @example
316
- * ```tsx
317
- * <SelectionButton
318
- * icon={<TagIcon />}
319
- * label="Categoria"
320
- * selected={false}
321
- * onClick={() => handleSelection()}
322
- * />
323
- * ```
324
- *
325
- * @example
326
- * ```tsx
327
- * // Usando ref para foco programático
328
- * const buttonRef = useRef<HTMLButtonElement>(null);
329
- *
330
- * const handleFocus = () => {
331
- * buttonRef.current?.focus();
332
- * };
333
- *
334
- * <SelectionButton
335
- * ref={buttonRef}
336
- * icon={<TagIcon />}
337
- * label="Categoria"
338
- * selected={isSelected}
339
- * onClick={() => setSelected(!isSelected)}
340
- * />
341
- * ```
342
- */
343
- declare const SelectionButton: react.ForwardRefExoticComponent<{
344
- /** Ícone a ser exibido no botão */
345
- icon: ReactNode;
346
- /** Texto/label a ser exibido ao lado do ícone */
347
- label: string;
348
- /** Estado de seleção do botão */
349
- selected?: boolean;
350
- /** Additional CSS classes to apply */
351
- className?: string;
352
- } & ButtonHTMLAttributes<HTMLButtonElement> & react.RefAttributes<HTMLButtonElement>>;
353
-
354
- declare const Table: react.ForwardRefExoticComponent<HTMLAttributes<HTMLTableElement> & react.RefAttributes<HTMLTableElement>>;
355
-
356
- /**
357
- * CheckBox size variants
358
- */
359
- type CheckBoxSize = 'small' | 'medium' | 'large';
360
- /**
361
- * CheckBox visual state
362
- */
363
- type CheckBoxState = 'default' | 'hovered' | 'focused' | 'invalid' | 'disabled';
364
- /**
365
- * CheckBox component for Analytica Ensino platforms
366
- *
367
- * A checkbox component with essential states, sizes and themes.
368
- * Uses the Analytica Ensino Design System colors from styles.css with automatic
369
- * light/dark mode support. Includes Text component integration for consistent typography.
370
- *
371
- * @example
372
- * ```tsx
373
- * // Basic checkbox
374
- * <CheckBox label="Option" />
375
- *
376
- * // Small size
377
- * <CheckBox size="small" label="Small option" />
378
- *
379
- * // Invalid state
380
- * <CheckBox state="invalid" label="Required field" />
381
- *
382
- * // Disabled state
383
- * <CheckBox disabled label="Disabled option" />
384
- * ```
385
- */
386
- declare const CheckBox: react.ForwardRefExoticComponent<{
387
- /** Label text to display next to the checkbox */
388
- label?: ReactNode;
389
- /** Size variant of the checkbox */
390
- size?: CheckBoxSize;
391
- /** Visual state of the checkbox */
392
- state?: CheckBoxState;
393
- /** Indeterminate state for partial selections */
394
- indeterminate?: boolean;
395
- /** Error message to display */
396
- errorMessage?: string;
397
- /** Helper text to display */
398
- helperText?: string;
399
- /** Additional CSS classes */
400
- className?: string;
401
- /** Label CSS classes */
402
- labelClassName?: string;
403
- } & Omit<InputHTMLAttributes<HTMLInputElement>, "size" | "type"> & react.RefAttributes<HTMLInputElement>>;
404
-
405
- /**
406
- * TextArea size variants
407
- */
408
- type TextAreaSize = 'small' | 'medium' | 'large' | 'extraLarge';
409
- /**
410
- * TextArea visual state
411
- */
412
- type TextAreaState = 'default' | 'hovered' | 'focused' | 'invalid' | 'disabled';
413
- /**
414
- * TextArea component for Analytica Ensino platforms
415
- *
416
- * A textarea component with essential states, sizes and themes.
417
- * Uses exact design specifications with 288px width, 96px height, and specific
418
- * color values. Includes Text component integration for consistent typography.
419
- *
420
- * @example
421
- * ```tsx
422
- * // Basic textarea
423
- * <TextArea label="Description" placeholder="Enter description..." />
424
- *
425
- * // Small size
426
- * <TextArea size="small" label="Comment" />
427
- *
428
- * // Invalid state
429
- * <TextArea state="invalid" label="Required field" errorMessage="This field is required" />
430
- *
431
- * // Disabled state
432
- * <TextArea disabled label="Read-only field" />
433
- * ```
434
- */
435
- declare const TextArea: react__default.ForwardRefExoticComponent<{
436
- /** Label text to display above the textarea */
437
- label?: ReactNode;
438
- /** Size variant of the textarea */
439
- size?: TextAreaSize;
440
- /** Visual state of the textarea */
441
- state?: TextAreaState;
442
- /** Error message to display */
443
- errorMessage?: string;
444
- /** Helper text to display */
445
- helperMessage?: string;
446
- /** Additional CSS classes */
447
- className?: string;
448
- /** Label CSS classes */
449
- labelClassName?: string;
450
- } & Omit<react__default.TextareaHTMLAttributes<HTMLTextAreaElement>, "size"> & react__default.RefAttributes<HTMLTextAreaElement>>;
451
-
452
- interface DropdownMenuProps {
453
- children: ReactNode;
454
- open?: boolean;
455
- onOpenChange?: (open: boolean) => void;
456
- }
457
- declare const DropdownMenu: ({ children, open, onOpenChange }: DropdownMenuProps) => react_jsx_runtime.JSX.Element;
458
- declare const DropdownMenuTrigger: react.ForwardRefExoticComponent<ButtonHTMLAttributes<HTMLButtonElement> & react.RefAttributes<HTMLButtonElement>>;
459
- declare const MenuLabel: react.ForwardRefExoticComponent<HTMLAttributes<HTMLFieldSetElement> & {
460
- inset?: boolean;
461
- } & react.RefAttributes<HTMLFieldSetElement>>;
462
- declare const MenuContent: react.ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & {
463
- align?: "start" | "center" | "end";
464
- side?: "top" | "right" | "bottom" | "left";
465
- sideOffset?: number;
466
- } & react.RefAttributes<HTMLDivElement>>;
467
- declare const MenuItem: react.ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & {
468
- inset?: boolean;
469
- size?: "small" | "medium";
470
- iconLeft?: ReactNode;
471
- iconRight?: ReactNode;
472
- disabled?: boolean;
473
- } & react.RefAttributes<HTMLDivElement>>;
474
- declare const MenuSeparator: react.ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & react.RefAttributes<HTMLDivElement>>;
475
-
476
- type ToastPosition$1 = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' | 'default';
477
- type ToastProps = {
478
- title: string;
479
- description?: string;
480
- onClose: () => void;
481
- /** Visual variant of the badge */
482
- variant?: 'solid' | 'outlined';
483
- /** Action type of the badge */
484
- action?: 'warning' | 'success' | 'info';
485
- position?: ToastPosition$1;
486
- } & HTMLAttributes<HTMLDivElement>;
487
- declare const Toast: ({ variant, action, className, onClose, title, description, position, ...props }: ToastProps) => react_jsx_runtime.JSX.Element;
488
-
489
- declare const Toaster: () => react_jsx_runtime.JSX.Element;
490
-
491
- type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' | 'default';
492
- type ToastData = {
493
- id: string;
494
- title: string;
495
- description?: string;
496
- variant?: 'solid' | 'outlined';
497
- action?: 'warning' | 'success' | 'info';
498
- position?: ToastPosition;
499
- };
500
- type ToastStore = {
501
- toasts: ToastData[];
502
- addToast: (toast: Omit<ToastData, 'id'>) => void;
503
- removeToast: (id: string) => void;
504
- };
505
- declare const useToastStore: zustand.UseBoundStore<zustand.StoreApi<ToastStore>>;
506
-
507
- export { Alert, Badge, Button, CheckBox, DropdownMenu, MenuContent as DropdownMenuContent, MenuItem as DropdownMenuItem, MenuLabel as DropdownMenuLabel, MenuSeparator as DropdownMenuSeparator, DropdownMenuTrigger, IconButton, IconRoundedButton, NavButton, SelectionButton, Table, Text, TextArea, Toast, Toaster, useToastStore };
1
+ export { default as Text } from './Text/index.mjs';
2
+ export { default as Button } from './Button/index.mjs';
3
+ export { default as Badge } from './Badge/index.mjs';
4
+ export { default as Alert } from './Alert/index.mjs';
5
+ export { default as IconButton } from './IconButton/index.mjs';
6
+ export { default as IconRoundedButton } from './IconRoundedButton/index.mjs';
7
+ export { default as NavButton } from './NavButton/index.mjs';
8
+ export { default as SelectionButton } from './SelectionButton/index.mjs';
9
+ export { default as Table } from './Table/index.mjs';
10
+ export { default as CheckBox } from './CheckBox/index.mjs';
11
+ export { default as TextArea } from './TextArea/index.mjs';
12
+ export { default as Toast } from './Toast/index.mjs';
13
+ export { default as Toaster } from './Toast/Toaster/index.mjs';
14
+ export { default as useToastStore } from './Toast/ToastStore/index.mjs';
15
+ export { default as DropdownMenu, MenuContent as DropdownMenuContent, MenuItem as DropdownMenuItem, MenuLabel as DropdownMenuLabel, MenuSeparator as DropdownMenuSeparator, DropdownMenuTrigger } from './DropdownMenu/index.mjs';
16
+ import 'react/jsx-runtime';
17
+ import 'react';
18
+ import 'zustand';