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.
- package/dist/Alert/{Alert.d.mts → index.d.mts} +1 -1
- package/dist/Alert/{Alert.d.ts → index.d.ts} +1 -1
- package/dist/Alert/{Alert.js → index.js} +6 -7
- package/dist/Alert/index.js.map +1 -0
- package/dist/Alert/{Alert.mjs → index.mjs} +67 -16
- package/dist/Alert/index.mjs.map +1 -0
- package/dist/Badge/{Badge.d.mts → index.d.mts} +1 -1
- package/dist/Badge/{Badge.d.ts → index.d.ts} +1 -1
- package/dist/Badge/{Badge.js → index.js} +3 -5
- package/dist/Badge/index.js.map +1 -0
- package/dist/Badge/{Badge.mjs → index.mjs} +3 -1
- package/dist/Badge/index.mjs.map +1 -0
- package/dist/Button/{Button.d.ts → index.d.mts} +1 -1
- package/dist/Button/{Button.d.mts → index.d.ts} +1 -1
- package/dist/Button/{Button.js → index.js} +3 -5
- package/dist/Button/index.js.map +1 -0
- package/dist/Button/{Button.mjs → index.mjs} +3 -1
- package/dist/Button/index.mjs.map +1 -0
- package/dist/CheckBox/{CheckBox.d.mts → index.d.mts} +1 -1
- package/dist/CheckBox/{CheckBox.d.ts → index.d.ts} +1 -1
- package/dist/CheckBox/{CheckBox.js → index.js} +7 -8
- package/dist/CheckBox/index.js.map +1 -0
- package/dist/CheckBox/{CheckBox.mjs → index.mjs} +68 -16
- package/dist/CheckBox/index.mjs.map +1 -0
- package/dist/DropdownMenu/{DropdownMenu.d.mts → index.d.mts} +1 -1
- package/dist/DropdownMenu/{DropdownMenu.d.ts → index.d.ts} +1 -1
- package/dist/DropdownMenu/{DropdownMenu.js → index.js} +4 -3
- package/dist/DropdownMenu/index.js.map +1 -0
- package/dist/DropdownMenu/{DropdownMenu.mjs → index.mjs} +4 -2
- package/dist/DropdownMenu/index.mjs.map +1 -0
- package/dist/IconButton/{IconButton.d.mts → index.d.mts} +1 -1
- package/dist/IconButton/{IconButton.d.ts → index.d.ts} +1 -1
- package/dist/IconButton/{IconButton.js → index.js} +3 -5
- package/dist/IconButton/index.js.map +1 -0
- package/dist/IconButton/{IconButton.mjs → index.mjs} +3 -1
- package/dist/IconButton/index.mjs.map +1 -0
- package/dist/IconRoundedButton/{IconRoundedButton.d.mts → index.d.mts} +1 -1
- package/dist/IconRoundedButton/{IconRoundedButton.d.ts → index.d.ts} +1 -1
- package/dist/IconRoundedButton/{IconRoundedButton.js → index.js} +3 -5
- package/dist/IconRoundedButton/index.js.map +1 -0
- package/dist/IconRoundedButton/{IconRoundedButton.mjs → index.mjs} +3 -1
- package/dist/IconRoundedButton/index.mjs.map +1 -0
- package/dist/NavButton/{NavButton.d.mts → index.d.mts} +1 -1
- package/dist/NavButton/{NavButton.d.ts → index.d.ts} +1 -1
- package/dist/NavButton/{NavButton.js → index.js} +3 -5
- package/dist/NavButton/index.js.map +1 -0
- package/dist/NavButton/{NavButton.mjs → index.mjs} +3 -1
- package/dist/NavButton/index.mjs.map +1 -0
- package/dist/SelectionButton/{SelectionButton.d.mts → index.d.mts} +1 -1
- package/dist/SelectionButton/{SelectionButton.d.ts → index.d.ts} +1 -1
- package/dist/SelectionButton/{SelectionButton.js → index.js} +3 -5
- package/dist/SelectionButton/index.js.map +1 -0
- package/dist/SelectionButton/{SelectionButton.mjs → index.mjs} +3 -1
- package/dist/SelectionButton/index.mjs.map +1 -0
- package/dist/Table/{Table.d.mts → index.d.mts} +1 -1
- package/dist/Table/{Table.d.ts → index.d.ts} +1 -1
- package/dist/Table/{Table.js → index.js} +4 -3
- package/dist/Table/index.js.map +1 -0
- package/dist/Table/{Table.mjs → index.mjs} +4 -2
- package/dist/Table/index.mjs.map +1 -0
- package/dist/Text/{Text.d.mts → index.d.mts} +1 -1
- package/dist/Text/{Text.d.ts → index.d.ts} +1 -1
- package/dist/Text/{Text.js → index.js} +3 -5
- package/dist/Text/index.js.map +1 -0
- package/dist/{chunk-TT3VCQGR.mjs → Text/index.mjs} +3 -2
- package/dist/Text/index.mjs.map +1 -0
- package/dist/TextArea/{TextArea.d.mts → index.d.mts} +1 -1
- package/dist/TextArea/{TextArea.d.ts → index.d.ts} +1 -1
- package/dist/TextArea/{TextArea.js → index.js} +7 -8
- package/dist/TextArea/index.js.map +1 -0
- package/dist/TextArea/{TextArea.mjs → index.mjs} +62 -10
- package/dist/TextArea/index.mjs.map +1 -0
- package/dist/Toast/{utils/ToastStore.d.mts → ToastStore/index.d.mts} +1 -1
- package/dist/Toast/{utils/ToastStore.d.ts → ToastStore/index.d.ts} +1 -1
- package/dist/Toast/{utils/ToastStore.js → ToastStore/index.js} +3 -5
- package/dist/Toast/ToastStore/index.js.map +1 -0
- package/dist/{chunk-WIOCQOM7.mjs → Toast/ToastStore/index.mjs} +3 -2
- package/dist/Toast/ToastStore/index.mjs.map +1 -0
- package/dist/Toast/{utils/Toaster.d.mts → Toaster/index.d.mts} +2 -2
- package/dist/Toast/{utils/Toaster.d.ts → Toaster/index.d.ts} +2 -2
- package/dist/Toast/{utils/Toaster.js → Toaster/index.js} +10 -7
- package/dist/Toast/Toaster/index.js.map +1 -0
- package/dist/Toast/Toaster/index.mjs +122 -0
- package/dist/Toast/Toaster/index.mjs.map +1 -0
- package/dist/Toast/{Toast.d.mts → index.d.mts} +1 -1
- package/dist/Toast/{Toast.d.ts → index.d.ts} +1 -1
- package/dist/Toast/{Toast.js → index.js} +3 -5
- package/dist/Toast/index.js.map +1 -0
- package/dist/{chunk-XJA5HF7B.mjs → Toast/index.mjs} +5 -2
- package/dist/Toast/index.mjs.map +1 -0
- package/dist/index.css +1 -3
- package/dist/index.css.map +1 -0
- package/dist/index.d.mts +18 -507
- package/dist/index.d.ts +18 -507
- package/dist/index.js +157 -141
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +154 -138
- package/dist/index.mjs.map +1 -0
- package/dist/styles.css +1 -3
- package/dist/styles.css.map +1 -0
- package/dist/styles.d.mts +2 -0
- package/dist/styles.d.ts +2 -0
- package/package.json +26 -86
- package/dist/Text/Text.mjs +0 -6
- package/dist/Toast/Toast.mjs +0 -7
- package/dist/Toast/utils/ToastStore.mjs +0 -6
- package/dist/Toast/utils/Toaster.mjs +0 -35
package/dist/index.d.mts
CHANGED
|
@@ -1,507 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
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';
|