@iclips/ui 1.0.0 → 1.0.1
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/{LICENSE/Code-component-19-1703.tsx → LICENSE} +1 -1
- package/README.md +14 -14
- package/dist/index.cjs +4794 -7316
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +8973 -0
- package/dist/index.d.cts +548 -1307
- package/dist/index.d.ts +548 -1307
- package/dist/index.js +4785 -7278
- package/dist/index.js.map +1 -1
- package/package.json +13 -42
- package/LICENSE/Code-component-19-1719.tsx +0 -21
- package/styles/globals.css +0 -694
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as React$1 from 'react';
|
|
3
|
+
import React__default, { RefObject } from 'react';
|
|
3
4
|
import * as AccordionPrimitive from '@radix-ui/react-accordion';
|
|
4
5
|
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
5
6
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
6
7
|
import { VariantProps } from 'class-variance-authority';
|
|
8
|
+
import { LucideIcon } from 'lucide-react';
|
|
7
9
|
import * as AspectRatioPrimitive from '@radix-ui/react-aspect-ratio';
|
|
8
10
|
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
9
11
|
import { DayPicker, DateRange } from 'react-day-picker';
|
|
10
12
|
import useEmblaCarousel, { UseEmblaCarouselType } from 'embla-carousel-react';
|
|
13
|
+
import * as RechartsPrimitive from 'recharts';
|
|
11
14
|
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
12
15
|
import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
|
|
13
16
|
import { Command as Command$1 } from 'cmdk';
|
|
@@ -30,14 +33,14 @@ import * as ResizablePrimitive from 'react-resizable-panels';
|
|
|
30
33
|
import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
|
|
31
34
|
import * as SelectPrimitive from '@radix-ui/react-select';
|
|
32
35
|
import * as SeparatorPrimitive from '@radix-ui/react-separator';
|
|
36
|
+
import * as TooltipPrimitive from '@radix-ui/react-tooltip';
|
|
33
37
|
import * as SliderPrimitive from '@radix-ui/react-slider';
|
|
34
38
|
import { ToasterProps } from 'sonner';
|
|
39
|
+
export { toast } from 'sonner';
|
|
35
40
|
import * as SwitchPrimitive from '@radix-ui/react-switch';
|
|
36
41
|
import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
37
|
-
import * as TogglePrimitive from '@radix-ui/react-toggle';
|
|
38
42
|
import * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group';
|
|
39
|
-
import * as
|
|
40
|
-
import * as RechartsPrimitive from 'recharts';
|
|
43
|
+
import * as TogglePrimitive from '@radix-ui/react-toggle';
|
|
41
44
|
import { ClassValue } from 'clsx';
|
|
42
45
|
|
|
43
46
|
declare function Accordion({ ...props }: React$1.ComponentProps<typeof AccordionPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
@@ -47,8 +50,6 @@ declare function AccordionContent({ className, children, ...props }: React$1.Com
|
|
|
47
50
|
|
|
48
51
|
declare function AlertDialog({ ...props }: React$1.ComponentProps<typeof AlertDialogPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
49
52
|
declare function AlertDialogTrigger({ ...props }: React$1.ComponentProps<typeof AlertDialogPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
50
|
-
declare function AlertDialogPortal({ ...props }: React$1.ComponentProps<typeof AlertDialogPrimitive.Portal>): react_jsx_runtime.JSX.Element;
|
|
51
|
-
declare const AlertDialogOverlay: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
52
53
|
declare function AlertDialogContent({ className, ...props }: React$1.ComponentProps<typeof AlertDialogPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
53
54
|
declare function AlertDialogHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
54
55
|
declare function AlertDialogFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
@@ -64,6 +65,35 @@ declare function Alert({ className, variant, ...props }: React$1.ComponentProps<
|
|
|
64
65
|
declare function AlertTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
65
66
|
declare function AlertDescription({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
66
67
|
|
|
68
|
+
interface PrimaryNavItem {
|
|
69
|
+
id: string;
|
|
70
|
+
label: string;
|
|
71
|
+
icon: LucideIcon;
|
|
72
|
+
}
|
|
73
|
+
interface SecondaryNavItem {
|
|
74
|
+
label: string;
|
|
75
|
+
icon: LucideIcon;
|
|
76
|
+
badge?: string | number;
|
|
77
|
+
chevron?: boolean;
|
|
78
|
+
highlighted?: boolean;
|
|
79
|
+
}
|
|
80
|
+
interface AppLayoutProps {
|
|
81
|
+
children: React$1.ReactNode;
|
|
82
|
+
title?: string;
|
|
83
|
+
theme?: "light" | "dark";
|
|
84
|
+
onThemeToggle?: () => void;
|
|
85
|
+
primaryNavItems?: PrimaryNavItem[];
|
|
86
|
+
secondaryNavItems?: SecondaryNavItem[];
|
|
87
|
+
secondaryNavTitle?: string;
|
|
88
|
+
activePrimaryItem?: string;
|
|
89
|
+
onPrimaryItemClick?: (id: string) => void;
|
|
90
|
+
logoComponent?: React$1.ReactNode;
|
|
91
|
+
hideSecondaryNav?: boolean;
|
|
92
|
+
defaultPrimaryNavPinned?: boolean;
|
|
93
|
+
defaultSecondaryNavOpen?: boolean;
|
|
94
|
+
}
|
|
95
|
+
declare function AppLayout({ children, title, theme, onThemeToggle, primaryNavItems, secondaryNavItems, secondaryNavTitle, activePrimaryItem, onPrimaryItemClick, logoComponent, hideSecondaryNav, defaultPrimaryNavPinned, defaultSecondaryNavOpen }: AppLayoutProps): react_jsx_runtime.JSX.Element;
|
|
96
|
+
|
|
67
97
|
declare function AspectRatio({ ...props }: React.ComponentProps<typeof AspectRatioPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
68
98
|
|
|
69
99
|
declare function Avatar({ className, ...props }: React$1.ComponentProps<typeof AvatarPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
@@ -100,256 +130,145 @@ declare const Button: React$1.ForwardRefExoticComponent<Omit<React$1.ClassAttrib
|
|
|
100
130
|
asChild?: boolean;
|
|
101
131
|
}, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
102
132
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
* Props for the CardTitle component.
|
|
148
|
-
*
|
|
149
|
-
* Renders as an <h4> element by default.
|
|
150
|
-
* Use the className prop to adjust text size for different contexts.
|
|
151
|
-
*
|
|
152
|
-
* @example
|
|
153
|
-
* ```tsx
|
|
154
|
-
* <CardTitle className="text-lg">Large Title</CardTitle>
|
|
155
|
-
* <CardTitle className="text-sm">Small Title</CardTitle>
|
|
156
|
-
* ```
|
|
157
|
-
*/
|
|
158
|
-
interface CardTitleProps extends React$1.ComponentProps<"h4"> {
|
|
159
|
-
}
|
|
133
|
+
interface DadosContrato {
|
|
134
|
+
numeroContrato: string;
|
|
135
|
+
dataEmissao: string;
|
|
136
|
+
dataInicio: string;
|
|
137
|
+
dataTermino: string;
|
|
138
|
+
cliente: {
|
|
139
|
+
nome: string;
|
|
140
|
+
cnpj?: string;
|
|
141
|
+
endereco?: string;
|
|
142
|
+
representante?: string;
|
|
143
|
+
email?: string;
|
|
144
|
+
telefone?: string;
|
|
145
|
+
};
|
|
146
|
+
agencia: {
|
|
147
|
+
nome: string;
|
|
148
|
+
cnpj?: string;
|
|
149
|
+
endereco?: string;
|
|
150
|
+
representante?: string;
|
|
151
|
+
email?: string;
|
|
152
|
+
telefone?: string;
|
|
153
|
+
};
|
|
154
|
+
valorFee: number;
|
|
155
|
+
totalHoras: number;
|
|
156
|
+
valorHora?: number;
|
|
157
|
+
condicoesPagamento: string;
|
|
158
|
+
formaPagamento?: string;
|
|
159
|
+
servicos?: Array<{
|
|
160
|
+
nome: string;
|
|
161
|
+
descricao?: string;
|
|
162
|
+
horasEstimadas?: number;
|
|
163
|
+
}>;
|
|
164
|
+
clausulas?: Array<{
|
|
165
|
+
titulo: string;
|
|
166
|
+
conteudo: string;
|
|
167
|
+
}>;
|
|
168
|
+
observacoes?: string;
|
|
169
|
+
}
|
|
170
|
+
interface ContractTemplateProps {
|
|
171
|
+
data: DadosContrato;
|
|
172
|
+
showPreview?: boolean;
|
|
173
|
+
logo?: string;
|
|
174
|
+
showServices?: boolean;
|
|
175
|
+
}
|
|
176
|
+
declare function ContractTemplate({ data, showPreview, logo, showServices, }: ContractTemplateProps): react_jsx_runtime.JSX.Element;
|
|
160
177
|
/**
|
|
161
|
-
*
|
|
162
|
-
*
|
|
163
|
-
* Secondary text that provides additional context.
|
|
164
|
-
* Rendered with muted foreground color.
|
|
165
|
-
*
|
|
166
|
-
* @example
|
|
167
|
-
* ```tsx
|
|
168
|
-
* <CardDescription>This is a description</CardDescription>
|
|
169
|
-
* ```
|
|
178
|
+
* Dados de exemplo para o contrato
|
|
179
|
+
* Use este objeto para testar o componente ContractTemplate
|
|
170
180
|
*/
|
|
171
|
-
|
|
181
|
+
declare const dadosContratoExemplo: DadosContrato;
|
|
182
|
+
|
|
183
|
+
interface ContractPrintProps {
|
|
184
|
+
/** Dados do contrato */
|
|
185
|
+
data: DadosContrato;
|
|
186
|
+
/** URL ou caminho do logo da empresa */
|
|
187
|
+
logo?: string;
|
|
188
|
+
/** Mostrar barra de ações (imprimir/download) */
|
|
189
|
+
showActions?: boolean;
|
|
190
|
+
/** Mostrar informações resumidas do contrato */
|
|
191
|
+
showSummary?: boolean;
|
|
192
|
+
/** Mostrar seção de serviços */
|
|
193
|
+
showServices?: boolean;
|
|
194
|
+
/** Mostrar informações sobre o template */
|
|
195
|
+
showInfo?: boolean;
|
|
196
|
+
/** Classe CSS adicional */
|
|
197
|
+
className?: string;
|
|
198
|
+
/** Callbacks de impressão */
|
|
199
|
+
onPrintStart?: () => void;
|
|
200
|
+
onPrintSuccess?: () => void;
|
|
201
|
+
onPrintError?: (error: Error) => void;
|
|
202
|
+
/** Callbacks de download */
|
|
203
|
+
onDownloadStart?: () => void;
|
|
204
|
+
onDownloadSuccess?: () => void;
|
|
205
|
+
onDownloadError?: (error: Error) => void;
|
|
172
206
|
}
|
|
173
207
|
/**
|
|
174
|
-
*
|
|
208
|
+
* Componente wrapper completo para exibir e imprimir contratos
|
|
175
209
|
*
|
|
176
|
-
*
|
|
177
|
-
*
|
|
178
|
-
*
|
|
179
|
-
*
|
|
180
|
-
* -
|
|
181
|
-
* - Percentage changes
|
|
182
|
-
* - Action buttons
|
|
183
|
-
* - Status badges
|
|
210
|
+
* Inclui:
|
|
211
|
+
* - Preview do contrato
|
|
212
|
+
* - Botões de ação (Imprimir/Download PDF)
|
|
213
|
+
* - Informações resumidas
|
|
214
|
+
* - Todas as funcionalidades prontas
|
|
184
215
|
*
|
|
185
216
|
* @example
|
|
186
217
|
* ```tsx
|
|
187
|
-
*
|
|
188
|
-
* <CardHeader>
|
|
189
|
-
* <CardTitle>Total Revenue</CardTitle>
|
|
190
|
-
* <CardDescription>$45,231.89</CardDescription>
|
|
191
|
-
* <CardAction>
|
|
192
|
-
* <Badge variant="secondary" className="bg-green-50">
|
|
193
|
-
* <TrendingUp className="h-3 w-3 mr-1" />
|
|
194
|
-
* +20.1%
|
|
195
|
-
* </Badge>
|
|
196
|
-
* </CardAction>
|
|
197
|
-
* </CardHeader>
|
|
218
|
+
* import { ContractPrint, dadosContratoExemplo } from '@iclips/design-system';
|
|
198
219
|
*
|
|
199
|
-
*
|
|
200
|
-
*
|
|
201
|
-
*
|
|
202
|
-
*
|
|
203
|
-
*
|
|
204
|
-
*
|
|
205
|
-
*
|
|
206
|
-
*
|
|
207
|
-
*
|
|
220
|
+
* function MinhaPage() {
|
|
221
|
+
* return (
|
|
222
|
+
* <ContractPrint
|
|
223
|
+
* data={dadosContratoExemplo}
|
|
224
|
+
* logo="/logo.png"
|
|
225
|
+
* showActions
|
|
226
|
+
* showSummary
|
|
227
|
+
* />
|
|
228
|
+
* );
|
|
229
|
+
* }
|
|
208
230
|
* ```
|
|
209
231
|
*/
|
|
210
|
-
|
|
211
|
-
}
|
|
232
|
+
declare function ContractPrint({ data, logo, showActions, showSummary, showServices, showInfo, className, onPrintStart, onPrintSuccess, onPrintError, onDownloadStart, onDownloadSuccess, onDownloadError, }: ContractPrintProps): react_jsx_runtime.JSX.Element;
|
|
212
233
|
/**
|
|
213
|
-
*
|
|
214
|
-
*
|
|
215
|
-
* Main content area of the card.
|
|
216
|
-
* Includes horizontal padding and conditional bottom padding.
|
|
234
|
+
* Componente simplificado apenas com o preview do contrato
|
|
235
|
+
* Útil quando você quer construir sua própria UI de ações
|
|
217
236
|
*
|
|
218
237
|
* @example
|
|
219
238
|
* ```tsx
|
|
220
|
-
*
|
|
221
|
-
* <p>Your content here</p>
|
|
222
|
-
* </CardContent>
|
|
223
|
-
* ```
|
|
224
|
-
*/
|
|
225
|
-
interface CardContentProps extends React$1.ComponentProps<"div"> {
|
|
226
|
-
}
|
|
227
|
-
/**
|
|
228
|
-
* Props for the CardFooter component.
|
|
239
|
+
* import { ContractPrintPreview, dadosContratoExemplo } from '@iclips/design-system';
|
|
229
240
|
*
|
|
230
|
-
*
|
|
231
|
-
*
|
|
241
|
+
* function MinhaPage() {
|
|
242
|
+
* const printRef = useRef<HTMLDivElement>(null);
|
|
232
243
|
*
|
|
233
|
-
*
|
|
234
|
-
*
|
|
235
|
-
*
|
|
236
|
-
*
|
|
237
|
-
*
|
|
238
|
-
*
|
|
244
|
+
* return (
|
|
245
|
+
* <div>
|
|
246
|
+
* <MeusPropriosBotoes printRef={printRef} />
|
|
247
|
+
* <ContractPrintPreview
|
|
248
|
+
* ref={printRef}
|
|
249
|
+
* data={dadosContratoExemplo}
|
|
250
|
+
* />
|
|
251
|
+
* </div>
|
|
252
|
+
* );
|
|
253
|
+
* }
|
|
239
254
|
* ```
|
|
240
255
|
*/
|
|
241
|
-
|
|
242
|
-
|
|
256
|
+
declare const ContractPrintPreview: React$1.ForwardRefExoticComponent<{
|
|
257
|
+
data: DadosContrato;
|
|
258
|
+
logo?: string;
|
|
259
|
+
showServices?: boolean;
|
|
260
|
+
className?: string;
|
|
261
|
+
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
243
262
|
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
* <CardHeader>
|
|
254
|
-
* <CardTitle>Title</CardTitle>
|
|
255
|
-
* <CardDescription>Description</CardDescription>
|
|
256
|
-
* </CardHeader>
|
|
257
|
-
* <CardContent>Content here</CardContent>
|
|
258
|
-
* </Card>
|
|
259
|
-
* ```
|
|
260
|
-
*/
|
|
261
|
-
declare const Card: React$1.ForwardRefExoticComponent<Omit<CardProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
262
|
-
/**
|
|
263
|
-
* CardHeader
|
|
264
|
-
*
|
|
265
|
-
* Header section of the card containing title, description, and optional action.
|
|
266
|
-
* Uses CSS Grid for automatic layout when CardAction is present.
|
|
267
|
-
*
|
|
268
|
-
* @example
|
|
269
|
-
* ```tsx
|
|
270
|
-
* <CardHeader>
|
|
271
|
-
* <CardTitle>Analytics</CardTitle>
|
|
272
|
-
* <CardDescription>Your metrics</CardDescription>
|
|
273
|
-
* <CardAction>
|
|
274
|
-
* <Badge>+12%</Badge>
|
|
275
|
-
* </CardAction>
|
|
276
|
-
* </CardHeader>
|
|
277
|
-
* ```
|
|
278
|
-
*/
|
|
279
|
-
declare const CardHeader: React$1.ForwardRefExoticComponent<Omit<CardHeaderProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
280
|
-
/**
|
|
281
|
-
* CardTitle
|
|
282
|
-
*
|
|
283
|
-
* Title element for the card, rendered as h4 by default.
|
|
284
|
-
*
|
|
285
|
-
* @example
|
|
286
|
-
* ```tsx
|
|
287
|
-
* <CardTitle>Total Revenue</CardTitle>
|
|
288
|
-
* <CardTitle className="text-sm">Small Title</CardTitle>
|
|
289
|
-
* ```
|
|
290
|
-
*/
|
|
291
|
-
declare const CardTitle: React$1.ForwardRefExoticComponent<Omit<CardTitleProps, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
|
|
292
|
-
/**
|
|
293
|
-
* CardDescription
|
|
294
|
-
*
|
|
295
|
-
* Descriptive text for the card with muted styling.
|
|
296
|
-
*
|
|
297
|
-
* @example
|
|
298
|
-
* ```tsx
|
|
299
|
-
* <CardDescription>Last 30 days of activity</CardDescription>
|
|
300
|
-
* ```
|
|
301
|
-
*/
|
|
302
|
-
declare const CardDescription: React$1.ForwardRefExoticComponent<Omit<CardDescriptionProps, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
303
|
-
/**
|
|
304
|
-
* CardAction
|
|
305
|
-
*
|
|
306
|
-
* Action or indicator placed in the top-right of the card header.
|
|
307
|
-
* Ideal for trend indicators, badges, or action buttons in dashboard KPI cards.
|
|
308
|
-
*
|
|
309
|
-
* @example
|
|
310
|
-
* ```tsx
|
|
311
|
-
* // Trend indicator
|
|
312
|
-
* <CardAction>
|
|
313
|
-
* <Badge className="bg-green-50">
|
|
314
|
-
* <TrendingUp className="h-3 w-3" /> +12%
|
|
315
|
-
* </Badge>
|
|
316
|
-
* </CardAction>
|
|
317
|
-
*
|
|
318
|
-
* // Action button
|
|
319
|
-
* <CardAction>
|
|
320
|
-
* <Button variant="ghost" size="icon">
|
|
321
|
-
* <MoreVertical className="h-4 w-4" />
|
|
322
|
-
* </Button>
|
|
323
|
-
* </CardAction>
|
|
324
|
-
* ```
|
|
325
|
-
*/
|
|
326
|
-
declare const CardAction: React$1.ForwardRefExoticComponent<Omit<CardActionProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
327
|
-
/**
|
|
328
|
-
* CardContent
|
|
329
|
-
*
|
|
330
|
-
* Main content area of the card.
|
|
331
|
-
*
|
|
332
|
-
* @example
|
|
333
|
-
* ```tsx
|
|
334
|
-
* <CardContent>
|
|
335
|
-
* <p>Your content here</p>
|
|
336
|
-
* </CardContent>
|
|
337
|
-
* ```
|
|
338
|
-
*/
|
|
339
|
-
declare const CardContent: React$1.ForwardRefExoticComponent<Omit<CardContentProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
340
|
-
/**
|
|
341
|
-
* CardFooter
|
|
342
|
-
*
|
|
343
|
-
* Footer section for actions or additional information.
|
|
344
|
-
*
|
|
345
|
-
* @example
|
|
346
|
-
* ```tsx
|
|
347
|
-
* <CardFooter>
|
|
348
|
-
* <Button>Action</Button>
|
|
349
|
-
* </CardFooter>
|
|
350
|
-
* ```
|
|
351
|
-
*/
|
|
352
|
-
declare const CardFooter: React$1.ForwardRefExoticComponent<Omit<CardFooterProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
263
|
+
declare function Calendar({ className, classNames, showOutsideDays, ...props }: React$1.ComponentProps<typeof DayPicker>): react_jsx_runtime.JSX.Element;
|
|
264
|
+
|
|
265
|
+
declare function Card({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
266
|
+
declare function CardHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
267
|
+
declare function CardTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
268
|
+
declare function CardDescription({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
269
|
+
declare function CardAction({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
270
|
+
declare function CardContent({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
271
|
+
declare function CardFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
353
272
|
|
|
354
273
|
type CarouselApi = UseEmblaCarouselType[1];
|
|
355
274
|
type UseCarouselParameters = Parameters<typeof useEmblaCarousel>;
|
|
@@ -367,17 +286,131 @@ declare function CarouselItem({ className, ...props }: React$1.ComponentProps<"d
|
|
|
367
286
|
declare function CarouselPrevious({ className, variant, size, ...props }: React$1.ComponentProps<typeof Button>): react_jsx_runtime.JSX.Element;
|
|
368
287
|
declare function CarouselNext({ className, variant, size, ...props }: React$1.ComponentProps<typeof Button>): react_jsx_runtime.JSX.Element;
|
|
369
288
|
|
|
289
|
+
declare const THEMES: {
|
|
290
|
+
readonly light: "";
|
|
291
|
+
readonly dark: ".dark";
|
|
292
|
+
};
|
|
293
|
+
type ChartConfig = {
|
|
294
|
+
[k in string]: {
|
|
295
|
+
label?: React$1.ReactNode;
|
|
296
|
+
icon?: React$1.ComponentType;
|
|
297
|
+
} & ({
|
|
298
|
+
color?: string;
|
|
299
|
+
theme?: never;
|
|
300
|
+
} | {
|
|
301
|
+
color?: never;
|
|
302
|
+
theme: Record<keyof typeof THEMES, string>;
|
|
303
|
+
});
|
|
304
|
+
};
|
|
305
|
+
declare function ChartContainer({ id, className, children, config, ...props }: React$1.ComponentProps<"div"> & {
|
|
306
|
+
config: ChartConfig;
|
|
307
|
+
children: React$1.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>["children"];
|
|
308
|
+
}): react_jsx_runtime.JSX.Element;
|
|
309
|
+
declare const ChartTooltip: typeof RechartsPrimitive.Tooltip;
|
|
310
|
+
declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }: React$1.ComponentProps<typeof RechartsPrimitive.Tooltip> & React$1.ComponentProps<"div"> & {
|
|
311
|
+
hideLabel?: boolean;
|
|
312
|
+
hideIndicator?: boolean;
|
|
313
|
+
indicator?: "line" | "dot" | "dashed";
|
|
314
|
+
nameKey?: string;
|
|
315
|
+
labelKey?: string;
|
|
316
|
+
payload?: any[];
|
|
317
|
+
label?: string;
|
|
318
|
+
}): react_jsx_runtime.JSX.Element | null;
|
|
319
|
+
declare const ChartLegend: typeof RechartsPrimitive.Legend;
|
|
320
|
+
declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: React$1.ComponentProps<"div"> & {
|
|
321
|
+
hideIcon?: boolean;
|
|
322
|
+
nameKey?: string;
|
|
323
|
+
payload?: any[];
|
|
324
|
+
verticalAlign?: "top" | "bottom";
|
|
325
|
+
}): react_jsx_runtime.JSX.Element | null;
|
|
326
|
+
|
|
370
327
|
declare function Checkbox({ className, ...props }: React$1.ComponentProps<typeof CheckboxPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
371
328
|
|
|
329
|
+
interface ColorPickerProps {
|
|
330
|
+
value?: string;
|
|
331
|
+
onChange?: (color: string) => void;
|
|
332
|
+
label?: string;
|
|
333
|
+
className?: string;
|
|
334
|
+
disabled?: boolean;
|
|
335
|
+
}
|
|
336
|
+
declare function ColorPicker({ value, onChange, label, className, disabled, }: ColorPickerProps): react_jsx_runtime.JSX.Element;
|
|
337
|
+
|
|
372
338
|
declare function Collapsible({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
373
339
|
declare function CollapsibleTrigger({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): react_jsx_runtime.JSX.Element;
|
|
374
340
|
declare function CollapsibleContent({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): react_jsx_runtime.JSX.Element;
|
|
375
341
|
|
|
342
|
+
interface DateTimePickerProps {
|
|
343
|
+
date?: Date;
|
|
344
|
+
onChange?: (date: Date | undefined) => void;
|
|
345
|
+
label?: string;
|
|
346
|
+
placeholder?: string;
|
|
347
|
+
className?: string;
|
|
348
|
+
disabled?: boolean;
|
|
349
|
+
}
|
|
350
|
+
declare function DateTimePicker({ date, onChange, label, placeholder, className, disabled, }: DateTimePickerProps): react_jsx_runtime.JSX.Element;
|
|
351
|
+
|
|
352
|
+
interface DateRangePickerProps {
|
|
353
|
+
dateRange?: DateRange;
|
|
354
|
+
onChange?: (range: DateRange | undefined) => void;
|
|
355
|
+
label?: string;
|
|
356
|
+
placeholder?: string;
|
|
357
|
+
className?: string;
|
|
358
|
+
disabled?: boolean;
|
|
359
|
+
withTime?: boolean;
|
|
360
|
+
}
|
|
361
|
+
declare function DateRangePicker({ dateRange, onChange, label, placeholder, className, disabled, withTime, }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
|
|
362
|
+
|
|
363
|
+
interface TimePickerProps {
|
|
364
|
+
date?: Date;
|
|
365
|
+
onChange?: (date: Date | undefined) => void;
|
|
366
|
+
label?: string;
|
|
367
|
+
className?: string;
|
|
368
|
+
disabled?: boolean;
|
|
369
|
+
}
|
|
370
|
+
declare function TimePicker({ date, onChange, label, className, disabled, }: TimePickerProps): react_jsx_runtime.JSX.Element;
|
|
371
|
+
|
|
372
|
+
interface KanbanCardTag {
|
|
373
|
+
id: string;
|
|
374
|
+
label: string;
|
|
375
|
+
color?: string;
|
|
376
|
+
}
|
|
377
|
+
interface KanbanCardAssignee {
|
|
378
|
+
id: string;
|
|
379
|
+
name: string;
|
|
380
|
+
avatar?: string;
|
|
381
|
+
initials?: string;
|
|
382
|
+
}
|
|
383
|
+
interface KanbanCardProps {
|
|
384
|
+
id: string;
|
|
385
|
+
title: string;
|
|
386
|
+
description?: string;
|
|
387
|
+
coverImage?: string;
|
|
388
|
+
thumbnailImage?: string;
|
|
389
|
+
tags?: KanbanCardTag[];
|
|
390
|
+
assignees?: KanbanCardAssignee[];
|
|
391
|
+
priority?: "low" | "medium" | "high" | "urgent";
|
|
392
|
+
dueDate?: Date;
|
|
393
|
+
comments?: number;
|
|
394
|
+
attachments?: number;
|
|
395
|
+
checklist?: {
|
|
396
|
+
completed: number;
|
|
397
|
+
total: number;
|
|
398
|
+
};
|
|
399
|
+
progress?: number;
|
|
400
|
+
status?: string;
|
|
401
|
+
variant?: "default" | "compact" | "detailed";
|
|
402
|
+
isDragging?: boolean;
|
|
403
|
+
onClick?: () => void;
|
|
404
|
+
onEdit?: () => void;
|
|
405
|
+
onDelete?: () => void;
|
|
406
|
+
onDuplicate?: () => void;
|
|
407
|
+
className?: string;
|
|
408
|
+
}
|
|
409
|
+
declare const KanbanCard: React$1.ForwardRefExoticComponent<KanbanCardProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
410
|
+
|
|
376
411
|
declare function Dialog({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
377
412
|
declare function DialogTrigger({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
378
|
-
declare function DialogPortal({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Portal>): react_jsx_runtime.JSX.Element;
|
|
379
413
|
declare function DialogClose({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Close>): react_jsx_runtime.JSX.Element;
|
|
380
|
-
declare const DialogOverlay: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
381
414
|
declare function DialogContent({ className, children, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
382
415
|
declare function DialogHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
383
416
|
declare function DialogFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
@@ -422,9 +455,7 @@ declare function ContextMenuShortcut({ className, ...props }: React$1.ComponentP
|
|
|
422
455
|
|
|
423
456
|
declare function Drawer({ ...props }: React$1.ComponentProps<typeof Drawer$1.Root>): react_jsx_runtime.JSX.Element;
|
|
424
457
|
declare const DrawerTrigger: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
425
|
-
declare function DrawerPortal({ ...props }: React$1.ComponentProps<typeof Drawer$1.Portal>): react_jsx_runtime.JSX.Element;
|
|
426
458
|
declare const DrawerClose: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogCloseProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
427
|
-
declare const DrawerOverlay: React$1.ForwardRefExoticComponent<Omit<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
428
459
|
declare const DrawerContent: React$1.ForwardRefExoticComponent<Omit<Omit<DialogPrimitive.DialogContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
429
460
|
declare function DrawerHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
430
461
|
declare function DrawerFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
@@ -523,9 +554,7 @@ declare function NavigationMenuItem({ className, ...props }: React$1.ComponentPr
|
|
|
523
554
|
declare const navigationMenuTriggerStyle: (props?: class_variance_authority_types.ClassProp | undefined) => string;
|
|
524
555
|
declare function NavigationMenuTrigger({ className, children, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
525
556
|
declare function NavigationMenuContent({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
526
|
-
declare function NavigationMenuViewport({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Viewport>): react_jsx_runtime.JSX.Element;
|
|
527
557
|
declare function NavigationMenuLink({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Link>): react_jsx_runtime.JSX.Element;
|
|
528
|
-
declare function NavigationMenuIndicator({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Indicator>): react_jsx_runtime.JSX.Element;
|
|
529
558
|
|
|
530
559
|
declare function Pagination({ className, ...props }: React$1.ComponentProps<"nav">): react_jsx_runtime.JSX.Element;
|
|
531
560
|
declare function PaginationContent({ className, ...props }: React$1.ComponentProps<"ul">): react_jsx_runtime.JSX.Element;
|
|
@@ -541,16 +570,15 @@ declare function PaginationEllipsis({ className, ...props }: React$1.ComponentPr
|
|
|
541
570
|
declare function Popover({ ...props }: React$1.ComponentProps<typeof PopoverPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
542
571
|
declare const PopoverTrigger: React$1.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverTriggerProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
543
572
|
declare const PopoverContent: React$1.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
544
|
-
declare const PopoverAnchor: React$1.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverAnchorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
545
573
|
|
|
546
574
|
declare function Progress({ className, value, ...props }: React$1.ComponentProps<typeof ProgressPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
547
575
|
|
|
548
576
|
declare function RadioGroup({ className, ...props }: React$1.ComponentProps<typeof RadioGroupPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
549
577
|
declare function RadioGroupItem({ className, ...props }: React$1.ComponentProps<typeof RadioGroupPrimitive.Item>): react_jsx_runtime.JSX.Element;
|
|
550
578
|
|
|
551
|
-
declare function ResizablePanelGroup({ className, ...props }: React.ComponentProps<typeof ResizablePrimitive.PanelGroup>): react_jsx_runtime.JSX.Element;
|
|
552
|
-
declare function ResizablePanel({ ...props }: React.ComponentProps<typeof ResizablePrimitive.Panel>): react_jsx_runtime.JSX.Element;
|
|
553
|
-
declare function ResizableHandle({ withHandle, className, ...props }: React.ComponentProps<typeof ResizablePrimitive.PanelResizeHandle> & {
|
|
579
|
+
declare function ResizablePanelGroup({ className, ...props }: React$1.ComponentProps<typeof ResizablePrimitive.PanelGroup>): react_jsx_runtime.JSX.Element;
|
|
580
|
+
declare function ResizablePanel({ ...props }: React$1.ComponentProps<typeof ResizablePrimitive.Panel>): react_jsx_runtime.JSX.Element;
|
|
581
|
+
declare function ResizableHandle({ withHandle, className, ...props }: React$1.ComponentProps<typeof ResizablePrimitive.PanelResizeHandle> & {
|
|
554
582
|
withHandle?: boolean;
|
|
555
583
|
}): react_jsx_runtime.JSX.Element;
|
|
556
584
|
|
|
@@ -567,838 +595,24 @@ declare function SelectContent({ className, children, position, ...props }: Reac
|
|
|
567
595
|
declare function SelectLabel({ className, ...props }: React$1.ComponentProps<typeof SelectPrimitive.Label>): react_jsx_runtime.JSX.Element;
|
|
568
596
|
declare function SelectItem({ className, children, ...props }: React$1.ComponentProps<typeof SelectPrimitive.Item>): react_jsx_runtime.JSX.Element;
|
|
569
597
|
declare function SelectSeparator({ className, ...props }: React$1.ComponentProps<typeof SelectPrimitive.Separator>): react_jsx_runtime.JSX.Element;
|
|
570
|
-
declare function SelectScrollUpButton({ className, ...props }: React$1.ComponentProps<typeof SelectPrimitive.ScrollUpButton>): react_jsx_runtime.JSX.Element;
|
|
571
|
-
declare function SelectScrollDownButton({ className, ...props }: React$1.ComponentProps<typeof SelectPrimitive.ScrollDownButton>): react_jsx_runtime.JSX.Element;
|
|
572
598
|
|
|
573
599
|
declare function Separator({ className, orientation, decorative, ...props }: React$1.ComponentProps<typeof SeparatorPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
574
600
|
|
|
575
601
|
declare function Sheet({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
576
|
-
declare
|
|
577
|
-
declare
|
|
578
|
-
declare
|
|
579
|
-
declare const SheetOverlay: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
580
|
-
interface SheetContentProps extends React$1.ComponentPropsWithoutRef<typeof DialogPrimitive.Content> {
|
|
602
|
+
declare function SheetTrigger({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
603
|
+
declare function SheetClose({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Close>): react_jsx_runtime.JSX.Element;
|
|
604
|
+
declare function SheetContent({ className, children, side, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Content> & {
|
|
581
605
|
side?: "top" | "right" | "bottom" | "left";
|
|
582
|
-
}
|
|
583
|
-
declare
|
|
584
|
-
declare function
|
|
585
|
-
declare
|
|
586
|
-
|
|
587
|
-
}
|
|
588
|
-
declare function SheetFooter({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
589
|
-
declare namespace SheetFooter {
|
|
590
|
-
var displayName: string;
|
|
591
|
-
}
|
|
592
|
-
declare const SheetTitle: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
|
|
593
|
-
declare const SheetDescription: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
594
|
-
|
|
595
|
-
interface SkeletonProps extends React.ComponentProps<"div"> {
|
|
596
|
-
/** Animation variant: pulse (default) or shimmer (premium) */
|
|
597
|
-
variant?: "pulse" | "shimmer";
|
|
598
|
-
}
|
|
599
|
-
declare function Skeleton({ className, variant, ...props }: SkeletonProps): react_jsx_runtime.JSX.Element;
|
|
600
|
-
|
|
601
|
-
declare function Slider({ className, defaultValue, value, min, max, ...props }: React$1.ComponentProps<typeof SliderPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
602
|
-
|
|
603
|
-
declare const Toaster: ({ ...props }: ToasterProps) => react_jsx_runtime.JSX.Element;
|
|
606
|
+
}): react_jsx_runtime.JSX.Element;
|
|
607
|
+
declare function SheetHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
608
|
+
declare function SheetFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
609
|
+
declare function SheetTitle({ className, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Title>): react_jsx_runtime.JSX.Element;
|
|
610
|
+
declare function SheetDescription({ className, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Description>): react_jsx_runtime.JSX.Element;
|
|
604
611
|
|
|
605
|
-
declare function
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
}
|
|
609
|
-
interface TableHeaderProps extends React$1.ComponentProps<"thead"> {
|
|
610
|
-
}
|
|
611
|
-
interface TableBodyProps extends React$1.ComponentProps<"tbody"> {
|
|
612
|
-
}
|
|
613
|
-
interface TableFooterProps extends React$1.ComponentProps<"tfoot"> {
|
|
614
|
-
}
|
|
615
|
-
interface TableRowProps extends React$1.ComponentProps<"tr"> {
|
|
616
|
-
}
|
|
617
|
-
interface TableHeadProps extends React$1.ComponentProps<"th"> {
|
|
618
|
-
}
|
|
619
|
-
interface TableCellProps extends React$1.ComponentProps<"td"> {
|
|
620
|
-
}
|
|
621
|
-
interface TableCaptionProps extends React$1.ComponentProps<"caption"> {
|
|
622
|
-
}
|
|
623
|
-
declare const Table: React$1.ForwardRefExoticComponent<Omit<TableProps, "ref"> & React$1.RefAttributes<HTMLTableElement>>;
|
|
624
|
-
declare const TableHeader: React$1.ForwardRefExoticComponent<Omit<TableHeaderProps, "ref"> & React$1.RefAttributes<HTMLTableSectionElement>>;
|
|
625
|
-
declare const TableBody: React$1.ForwardRefExoticComponent<Omit<TableBodyProps, "ref"> & React$1.RefAttributes<HTMLTableSectionElement>>;
|
|
626
|
-
declare const TableFooter: React$1.ForwardRefExoticComponent<Omit<TableFooterProps, "ref"> & React$1.RefAttributes<HTMLTableSectionElement>>;
|
|
627
|
-
declare const TableRow: React$1.ForwardRefExoticComponent<Omit<TableRowProps, "ref"> & React$1.RefAttributes<HTMLTableRowElement>>;
|
|
628
|
-
declare const TableHead: React$1.ForwardRefExoticComponent<Omit<TableHeadProps, "ref"> & React$1.RefAttributes<HTMLTableCellElement>>;
|
|
629
|
-
declare const TableCell: React$1.ForwardRefExoticComponent<Omit<TableCellProps, "ref"> & React$1.RefAttributes<HTMLTableCellElement>>;
|
|
630
|
-
declare const TableCaption: React$1.ForwardRefExoticComponent<Omit<TableCaptionProps, "ref"> & React$1.RefAttributes<HTMLTableCaptionElement>>;
|
|
631
|
-
|
|
632
|
-
/**
|
|
633
|
-
* Utility types for DataTable implementations
|
|
634
|
-
*
|
|
635
|
-
* These types provide standard interfaces for common DataTable patterns
|
|
636
|
-
* like sorting, pagination, column definitions, and selection.
|
|
637
|
-
*/
|
|
638
|
-
/**
|
|
639
|
-
* Direction of sorting
|
|
640
|
-
*/
|
|
641
|
-
type SortDirection = "asc" | "desc" | null;
|
|
642
|
-
/**
|
|
643
|
-
* Sort configuration for a table
|
|
644
|
-
*
|
|
645
|
-
* @example
|
|
646
|
-
* ```tsx
|
|
647
|
-
* const [sortConfig, setSortConfig] = useState<SortConfig<User>>({
|
|
648
|
-
* column: "name",
|
|
649
|
-
* direction: "asc"
|
|
650
|
-
* });
|
|
651
|
-
* ```
|
|
652
|
-
*/
|
|
653
|
-
interface SortConfig<T extends Record<string, any>> {
|
|
654
|
-
column: keyof T | null;
|
|
655
|
-
direction: SortDirection;
|
|
656
|
-
}
|
|
657
|
-
/**
|
|
658
|
-
* Column definition for a DataTable
|
|
659
|
-
*
|
|
660
|
-
* @example
|
|
661
|
-
* ```tsx
|
|
662
|
-
* const columns: ColumnDef<User>[] = [
|
|
663
|
-
* {
|
|
664
|
-
* key: "name",
|
|
665
|
-
* header: "Name",
|
|
666
|
-
* sortable: true,
|
|
667
|
-
* width: "200px"
|
|
668
|
-
* },
|
|
669
|
-
* {
|
|
670
|
-
* key: "email",
|
|
671
|
-
* header: "Email",
|
|
672
|
-
* render: (value, row) => <a href={`mailto:${value}`}>{value}</a>
|
|
673
|
-
* }
|
|
674
|
-
* ];
|
|
675
|
-
* ```
|
|
676
|
-
*/
|
|
677
|
-
interface ColumnDef<T extends Record<string, any>> {
|
|
678
|
-
/** Key of the data property to display */
|
|
679
|
-
key: keyof T;
|
|
680
|
-
/** Header label or React node */
|
|
681
|
-
header: string | React.ReactNode;
|
|
682
|
-
/** Whether this column is sortable */
|
|
683
|
-
sortable?: boolean;
|
|
684
|
-
/** Column width (CSS value) */
|
|
685
|
-
width?: string | number;
|
|
686
|
-
/** Text alignment */
|
|
687
|
-
align?: "left" | "center" | "right";
|
|
688
|
-
/** Custom render function for the cell content */
|
|
689
|
-
render?: (value: T[keyof T], row: T, index: number) => React.ReactNode;
|
|
690
|
-
/** Additional className for the cell */
|
|
691
|
-
className?: string;
|
|
692
|
-
/** Additional className for the header */
|
|
693
|
-
headerClassName?: string;
|
|
694
|
-
}
|
|
695
|
-
/**
|
|
696
|
-
* Pagination configuration
|
|
697
|
-
*
|
|
698
|
-
* @example
|
|
699
|
-
* ```tsx
|
|
700
|
-
* const [pagination, setPagination] = useState<PaginationConfig>({
|
|
701
|
-
* currentPage: 1,
|
|
702
|
-
* pageSize: 10,
|
|
703
|
-
* totalItems: 100
|
|
704
|
-
* });
|
|
705
|
-
* ```
|
|
706
|
-
*/
|
|
707
|
-
interface PaginationConfig {
|
|
708
|
-
/** Current page number (1-indexed) */
|
|
709
|
-
currentPage: number;
|
|
710
|
-
/** Number of items per page */
|
|
711
|
-
pageSize: number;
|
|
712
|
-
/** Total number of items */
|
|
713
|
-
totalItems: number;
|
|
714
|
-
/** Callback when page changes */
|
|
715
|
-
onPageChange?: (page: number) => void;
|
|
716
|
-
/** Callback when page size changes */
|
|
717
|
-
onPageSizeChange?: (size: number) => void;
|
|
718
|
-
}
|
|
719
|
-
/**
|
|
720
|
-
* Helper to calculate pagination metadata
|
|
721
|
-
*/
|
|
722
|
-
interface PaginationMetadata {
|
|
723
|
-
totalPages: number;
|
|
724
|
-
startIndex: number;
|
|
725
|
-
endIndex: number;
|
|
726
|
-
hasNextPage: boolean;
|
|
727
|
-
hasPreviousPage: boolean;
|
|
728
|
-
}
|
|
729
|
-
/**
|
|
730
|
-
* Selection state for table rows
|
|
731
|
-
*
|
|
732
|
-
* @example
|
|
733
|
-
* ```tsx
|
|
734
|
-
* const [selection, setSelection] = useState<SelectionState>({
|
|
735
|
-
* selectedIds: new Set(["1", "2"]),
|
|
736
|
-
* isAllSelected: false
|
|
737
|
-
* });
|
|
738
|
-
* ```
|
|
739
|
-
*/
|
|
740
|
-
interface SelectionState {
|
|
741
|
-
/** Set of selected row IDs */
|
|
742
|
-
selectedIds: Set<string | number>;
|
|
743
|
-
/** Whether all rows are selected */
|
|
744
|
-
isAllSelected: boolean;
|
|
745
|
-
}
|
|
746
|
-
/**
|
|
747
|
-
* Complete table state with all common features
|
|
748
|
-
*
|
|
749
|
-
* @example
|
|
750
|
-
* ```tsx
|
|
751
|
-
* const [tableState, setTableState] = useState<TableState<User>>({
|
|
752
|
-
* data: users,
|
|
753
|
-
* sort: { column: "name", direction: "asc" },
|
|
754
|
-
* pagination: { currentPage: 1, pageSize: 10, totalItems: 100 },
|
|
755
|
-
* selection: { selectedIds: new Set(), isAllSelected: false }
|
|
756
|
-
* });
|
|
757
|
-
* ```
|
|
758
|
-
*/
|
|
759
|
-
interface TableState<T extends Record<string, any>> {
|
|
760
|
-
/** Table data */
|
|
761
|
-
data: T[];
|
|
762
|
-
/** Sort configuration */
|
|
763
|
-
sort?: SortConfig<T>;
|
|
764
|
-
/** Pagination configuration */
|
|
765
|
-
pagination?: PaginationConfig;
|
|
766
|
-
/** Selection state */
|
|
767
|
-
selection?: SelectionState;
|
|
768
|
-
/** Loading state */
|
|
769
|
-
isLoading?: boolean;
|
|
770
|
-
/** Error state */
|
|
771
|
-
error?: string | null;
|
|
772
|
-
}
|
|
773
|
-
/**
|
|
774
|
-
* Filter operator types
|
|
775
|
-
*/
|
|
776
|
-
type FilterOperator = "equals" | "contains" | "startsWith" | "endsWith" | "greaterThan" | "lessThan" | "between" | "in";
|
|
777
|
-
/**
|
|
778
|
-
* Filter configuration for a column
|
|
779
|
-
*
|
|
780
|
-
* @example
|
|
781
|
-
* ```tsx
|
|
782
|
-
* const filters: FilterConfig<User>[] = [
|
|
783
|
-
* {
|
|
784
|
-
* column: "status",
|
|
785
|
-
* operator: "in",
|
|
786
|
-
* value: ["active", "pending"]
|
|
787
|
-
* },
|
|
788
|
-
* {
|
|
789
|
-
* column: "age",
|
|
790
|
-
* operator: "greaterThan",
|
|
791
|
-
* value: 18
|
|
792
|
-
* }
|
|
793
|
-
* ];
|
|
794
|
-
* ```
|
|
795
|
-
*/
|
|
796
|
-
interface FilterConfig<T extends Record<string, any>> {
|
|
797
|
-
column: keyof T;
|
|
798
|
-
operator: FilterOperator;
|
|
799
|
-
value: any;
|
|
800
|
-
}
|
|
801
|
-
/**
|
|
802
|
-
* Configuration for draggable rows
|
|
803
|
-
*/
|
|
804
|
-
interface DragDropConfig {
|
|
805
|
-
/** Whether drag and drop is enabled */
|
|
806
|
-
enabled: boolean;
|
|
807
|
-
/** Callback when a row is dropped */
|
|
808
|
-
onDrop?: (dragIndex: number, dropIndex: number) => void;
|
|
809
|
-
/** Custom drag handle component */
|
|
810
|
-
dragHandle?: React.ReactNode;
|
|
811
|
-
}
|
|
812
|
-
/**
|
|
813
|
-
* Configuration for expandable rows
|
|
814
|
-
*
|
|
815
|
-
* @example
|
|
816
|
-
* ```tsx
|
|
817
|
-
* const expandConfig: RowExpansionConfig<User> = {
|
|
818
|
-
* enabled: true,
|
|
819
|
-
* expandedRows: new Set(["1", "3"]),
|
|
820
|
-
* renderExpandedContent: (row) => (
|
|
821
|
-
* <div>Details for {row.name}</div>
|
|
822
|
-
* )
|
|
823
|
-
* };
|
|
824
|
-
* ```
|
|
825
|
-
*/
|
|
826
|
-
interface RowExpansionConfig<T extends Record<string, any>> {
|
|
827
|
-
/** Whether row expansion is enabled */
|
|
828
|
-
enabled: boolean;
|
|
829
|
-
/** Set of expanded row IDs */
|
|
830
|
-
expandedRows?: Set<string | number>;
|
|
831
|
-
/** Callback when row expansion changes */
|
|
832
|
-
onExpansionChange?: (rowId: string | number, isExpanded: boolean) => void;
|
|
833
|
-
/** Custom content to render when row is expanded */
|
|
834
|
-
renderExpandedContent?: (row: T, index: number) => React.ReactNode;
|
|
835
|
-
}
|
|
836
|
-
/**
|
|
837
|
-
* Sort function type
|
|
838
|
-
*/
|
|
839
|
-
type SortFunction<T extends Record<string, any>> = (a: T, b: T, config: SortConfig<T>) => number;
|
|
840
|
-
/**
|
|
841
|
-
* Filter function type
|
|
842
|
-
*/
|
|
843
|
-
type FilterFunction<T extends Record<string, any>> = (row: T, filters: FilterConfig<T>[]) => boolean;
|
|
844
|
-
/**
|
|
845
|
-
* Helper function to calculate pagination metadata
|
|
846
|
-
*/
|
|
847
|
-
declare function calculatePaginationMetadata(config: PaginationConfig): PaginationMetadata;
|
|
848
|
-
|
|
849
|
-
/**
|
|
850
|
-
* Labels for internationalization
|
|
851
|
-
*/
|
|
852
|
-
interface TablePaginationLabels {
|
|
853
|
-
/** "Anterior" */
|
|
854
|
-
previous?: string;
|
|
855
|
-
/** "Próxima" */
|
|
856
|
-
next?: string;
|
|
857
|
-
/** "Primeira" */
|
|
858
|
-
first?: string;
|
|
859
|
-
/** "Última" */
|
|
860
|
-
last?: string;
|
|
861
|
-
/** "Mostrando" */
|
|
862
|
-
showing?: string;
|
|
863
|
-
/** "de" */
|
|
864
|
-
of?: string;
|
|
865
|
-
/** "resultados" */
|
|
866
|
-
results?: string;
|
|
867
|
-
/** "Itens por página" */
|
|
868
|
-
itemsPerPage?: string;
|
|
869
|
-
/** "Página" */
|
|
870
|
-
page?: string;
|
|
871
|
-
}
|
|
872
|
-
/**
|
|
873
|
-
* Props for the TablePagination component
|
|
874
|
-
*
|
|
875
|
-
* @example
|
|
876
|
-
* ```tsx
|
|
877
|
-
* // With useTablePagination hook
|
|
878
|
-
* const pagination = useTablePagination(data, { pageSize: 10 });
|
|
879
|
-
*
|
|
880
|
-
* <TablePagination
|
|
881
|
-
* currentPage={pagination.currentPage}
|
|
882
|
-
* totalPages={pagination.totalPages}
|
|
883
|
-
* pageSize={pagination.pageSize}
|
|
884
|
-
* totalItems={pagination.totalItems}
|
|
885
|
-
* onPageChange={pagination.goToPage}
|
|
886
|
-
* onPageSizeChange={pagination.setPageSize}
|
|
887
|
-
* />
|
|
888
|
-
* ```
|
|
889
|
-
*/
|
|
890
|
-
interface TablePaginationProps {
|
|
891
|
-
/** Current page number (1-indexed) */
|
|
892
|
-
currentPage: number;
|
|
893
|
-
/** Total number of pages */
|
|
894
|
-
totalPages: number;
|
|
895
|
-
/** Current page size */
|
|
896
|
-
pageSize: number;
|
|
897
|
-
/** Total number of items */
|
|
898
|
-
totalItems: number;
|
|
899
|
-
/** Callback when page changes */
|
|
900
|
-
onPageChange: (page: number) => void;
|
|
901
|
-
/** Callback when page size changes */
|
|
902
|
-
onPageSizeChange?: (size: number) => void;
|
|
903
|
-
/** Available page size options */
|
|
904
|
-
pageSizeOptions?: number[];
|
|
905
|
-
/** Maximum number of visible page buttons */
|
|
906
|
-
maxVisiblePages?: number;
|
|
907
|
-
/** Show "Showing X of Y" info */
|
|
908
|
-
showInfo?: boolean;
|
|
909
|
-
/** Show page number buttons */
|
|
910
|
-
showPageNumbers?: boolean;
|
|
911
|
-
/** Show page size selector */
|
|
912
|
-
showPageSizeSelector?: boolean;
|
|
913
|
-
/** Show first/last page buttons */
|
|
914
|
-
showFirstLastButtons?: boolean;
|
|
915
|
-
/** Custom labels for i18n */
|
|
916
|
-
labels?: TablePaginationLabels;
|
|
917
|
-
/** Additional className */
|
|
918
|
-
className?: string;
|
|
919
|
-
}
|
|
920
|
-
/**
|
|
921
|
-
* Generate array of page numbers with ellipsis
|
|
922
|
-
*/
|
|
923
|
-
declare function getPageNumbers(currentPage: number, totalPages: number, maxVisible?: number): (number | "ellipsis")[];
|
|
924
|
-
/**
|
|
925
|
-
* TablePagination Component
|
|
926
|
-
*
|
|
927
|
-
* A complete, ready-to-use pagination component for tables and data grids.
|
|
928
|
-
* Integrates seamlessly with the `useTablePagination` hook.
|
|
929
|
-
*
|
|
930
|
-
* @example
|
|
931
|
-
* ```tsx
|
|
932
|
-
* import { useTablePagination, TablePagination, Table, TableBody, ... } from "@iclips/ui";
|
|
933
|
-
*
|
|
934
|
-
* function MyTable({ data }) {
|
|
935
|
-
* const pagination = useTablePagination(data, { pageSize: 10 });
|
|
936
|
-
*
|
|
937
|
-
* return (
|
|
938
|
-
* <>
|
|
939
|
-
* <Table>
|
|
940
|
-
* <TableBody>
|
|
941
|
-
* {pagination.paginatedData.map(item => (
|
|
942
|
-
* <TableRow key={item.id}>...</TableRow>
|
|
943
|
-
* ))}
|
|
944
|
-
* </TableBody>
|
|
945
|
-
* </Table>
|
|
946
|
-
*
|
|
947
|
-
* <TablePagination
|
|
948
|
-
* currentPage={pagination.currentPage}
|
|
949
|
-
* totalPages={pagination.totalPages}
|
|
950
|
-
* pageSize={pagination.pageSize}
|
|
951
|
-
* totalItems={pagination.totalItems}
|
|
952
|
-
* onPageChange={pagination.goToPage}
|
|
953
|
-
* onPageSizeChange={pagination.setPageSize}
|
|
954
|
-
* />
|
|
955
|
-
* </>
|
|
956
|
-
* );
|
|
957
|
-
* }
|
|
958
|
-
* ```
|
|
959
|
-
*
|
|
960
|
-
* @example
|
|
961
|
-
* ```tsx
|
|
962
|
-
* // Minimal usage (without page size selector)
|
|
963
|
-
* <TablePagination
|
|
964
|
-
* currentPage={1}
|
|
965
|
-
* totalPages={10}
|
|
966
|
-
* pageSize={20}
|
|
967
|
-
* totalItems={200}
|
|
968
|
-
* onPageChange={(page) => setCurrentPage(page)}
|
|
969
|
-
* showPageSizeSelector={false}
|
|
970
|
-
* />
|
|
971
|
-
* ```
|
|
972
|
-
*/
|
|
973
|
-
declare function TablePagination({ currentPage, totalPages, pageSize, totalItems, onPageChange, onPageSizeChange, pageSizeOptions, maxVisiblePages, showInfo, showPageNumbers, showPageSizeSelector, showFirstLastButtons, labels: customLabels, className, }: TablePaginationProps): react_jsx_runtime.JSX.Element | null;
|
|
974
|
-
declare namespace TablePagination {
|
|
975
|
-
var displayName: string;
|
|
976
|
-
}
|
|
977
|
-
|
|
978
|
-
declare function Tabs({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
979
|
-
declare function TabsList({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.List>): react_jsx_runtime.JSX.Element;
|
|
980
|
-
declare function TabsTrigger({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
981
|
-
declare function TabsContent({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
982
|
-
|
|
983
|
-
declare function Textarea({ className, ...props }: React$1.ComponentProps<"textarea">): react_jsx_runtime.JSX.Element;
|
|
984
|
-
|
|
985
|
-
declare const toggleVariants: (props?: ({
|
|
986
|
-
variant?: "default" | "outline" | null | undefined;
|
|
987
|
-
size?: "default" | "sm" | "lg" | null | undefined;
|
|
988
|
-
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
989
|
-
declare function Toggle({ className, variant, size, ...props }: React$1.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
|
|
990
|
-
|
|
991
|
-
declare function ToggleGroup({ className, variant, size, children, ...props }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
|
|
992
|
-
declare function ToggleGroupItem({ className, children, variant, size, ...props }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
|
|
993
|
-
|
|
994
|
-
declare function TooltipProvider({ delayDuration, ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Provider>): react_jsx_runtime.JSX.Element;
|
|
995
|
-
declare function Tooltip({ ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
996
|
-
declare function TooltipTrigger({ ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
997
|
-
declare function TooltipContent({ className, sideOffset, children, ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
998
|
-
|
|
999
|
-
interface BrandLogoProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
1000
|
-
variant?: "symbol" | "full";
|
|
1001
|
-
mode?: "positive" | "negative";
|
|
1002
|
-
}
|
|
1003
|
-
declare function BrandLogo({ variant, mode, className, ...props }: BrandLogoProps): react_jsx_runtime.JSX.Element;
|
|
1004
|
-
|
|
1005
|
-
declare const THEMES: {
|
|
1006
|
-
readonly light: "";
|
|
1007
|
-
readonly dark: ".dark";
|
|
1008
|
-
};
|
|
1009
|
-
type ChartConfig = {
|
|
1010
|
-
[k in string]: {
|
|
1011
|
-
label?: React$1.ReactNode;
|
|
1012
|
-
icon?: React$1.ComponentType;
|
|
1013
|
-
} & ({
|
|
1014
|
-
color?: string;
|
|
1015
|
-
theme?: never;
|
|
1016
|
-
} | {
|
|
1017
|
-
color?: never;
|
|
1018
|
-
theme: Record<keyof typeof THEMES, string>;
|
|
1019
|
-
});
|
|
1020
|
-
};
|
|
1021
|
-
declare function ChartContainer({ id, className, children, config, ...props }: React$1.ComponentProps<"div"> & {
|
|
1022
|
-
config: ChartConfig;
|
|
1023
|
-
children: React$1.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>["children"];
|
|
1024
|
-
}): react_jsx_runtime.JSX.Element;
|
|
1025
|
-
declare const ChartStyle: ({ id, config }: {
|
|
1026
|
-
id: string;
|
|
1027
|
-
config: ChartConfig;
|
|
1028
|
-
}) => react_jsx_runtime.JSX.Element | null;
|
|
1029
|
-
declare const ChartTooltip: typeof RechartsPrimitive.Tooltip;
|
|
1030
|
-
declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }: React$1.ComponentProps<typeof RechartsPrimitive.Tooltip> & React$1.ComponentProps<"div"> & {
|
|
1031
|
-
hideLabel?: boolean;
|
|
1032
|
-
hideIndicator?: boolean;
|
|
1033
|
-
indicator?: "line" | "dot" | "dashed";
|
|
1034
|
-
nameKey?: string;
|
|
1035
|
-
labelKey?: string;
|
|
1036
|
-
}): react_jsx_runtime.JSX.Element | null;
|
|
1037
|
-
declare const ChartLegend: typeof RechartsPrimitive.Legend;
|
|
1038
|
-
declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: React$1.ComponentProps<"div"> & Pick<RechartsPrimitive.LegendProps, "payload" | "verticalAlign"> & {
|
|
1039
|
-
hideIcon?: boolean;
|
|
1040
|
-
nameKey?: string;
|
|
1041
|
-
}): react_jsx_runtime.JSX.Element | null;
|
|
1042
|
-
|
|
1043
|
-
interface ColorPickerProps {
|
|
1044
|
-
value?: string;
|
|
1045
|
-
onChange?: (color: string) => void;
|
|
1046
|
-
label?: string;
|
|
1047
|
-
className?: string;
|
|
1048
|
-
disabled?: boolean;
|
|
1049
|
-
}
|
|
1050
|
-
declare function ColorPicker({ value, onChange, label, className, disabled, }: ColorPickerProps): react_jsx_runtime.JSX.Element;
|
|
1051
|
-
declare function ColorPickerInline({ value, onChange, className, disabled, }: Omit<ColorPickerProps, "label">): react_jsx_runtime.JSX.Element;
|
|
1052
|
-
|
|
1053
|
-
type UserRole = 'internal' | 'client' | 'freelancer';
|
|
1054
|
-
interface CommentUser {
|
|
1055
|
-
id: string;
|
|
1056
|
-
name: string;
|
|
1057
|
-
avatar?: string;
|
|
1058
|
-
role: UserRole;
|
|
1059
|
-
}
|
|
1060
|
-
interface CommentReaction {
|
|
1061
|
-
emoji: string;
|
|
1062
|
-
users: string[];
|
|
1063
|
-
}
|
|
1064
|
-
interface CommentAttachment {
|
|
1065
|
-
id: string;
|
|
1066
|
-
url: string;
|
|
1067
|
-
name: string;
|
|
1068
|
-
type: 'image' | 'file';
|
|
1069
|
-
}
|
|
1070
|
-
interface Comment {
|
|
1071
|
-
id: string;
|
|
1072
|
-
content: string;
|
|
1073
|
-
user: CommentUser;
|
|
1074
|
-
createdAt: Date;
|
|
1075
|
-
isRevisionRequest?: boolean;
|
|
1076
|
-
attachments?: CommentAttachment[];
|
|
1077
|
-
reactions?: CommentReaction[];
|
|
1078
|
-
}
|
|
1079
|
-
interface CommentSystemProps {
|
|
1080
|
-
comments: Comment[];
|
|
1081
|
-
currentUser: CommentUser;
|
|
1082
|
-
users?: CommentUser[];
|
|
1083
|
-
onAddComment: (comment: Omit<Comment, "id" | "createdAt">) => void;
|
|
1084
|
-
onDeleteComment?: (id: string) => void;
|
|
1085
|
-
onReact?: (commentId: string, emoji: string) => void;
|
|
1086
|
-
className?: string;
|
|
1087
|
-
}
|
|
1088
|
-
declare const CommentSystem: ({ comments, currentUser, users, onAddComment, onDeleteComment, onReact, className }: CommentSystemProps) => react_jsx_runtime.JSX.Element;
|
|
1089
|
-
|
|
1090
|
-
interface DateRangePickerProps {
|
|
1091
|
-
dateRange?: DateRange;
|
|
1092
|
-
onChange?: (range: DateRange | undefined) => void;
|
|
1093
|
-
label?: string;
|
|
1094
|
-
placeholder?: string;
|
|
1095
|
-
className?: string;
|
|
1096
|
-
disabled?: boolean;
|
|
1097
|
-
withTime?: boolean;
|
|
1098
|
-
}
|
|
1099
|
-
declare function DateRangePicker({ dateRange, onChange, label, placeholder, className, disabled, withTime, }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
|
|
1100
|
-
|
|
1101
|
-
interface DateTimePickerProps {
|
|
1102
|
-
date?: Date;
|
|
1103
|
-
onChange?: (date: Date | undefined) => void;
|
|
1104
|
-
label?: string;
|
|
1105
|
-
placeholder?: string;
|
|
1106
|
-
className?: string;
|
|
1107
|
-
disabled?: boolean;
|
|
1108
|
-
}
|
|
1109
|
-
declare function DateTimePicker({ date, onChange, label, placeholder, className, disabled, }: DateTimePickerProps): react_jsx_runtime.JSX.Element;
|
|
1110
|
-
|
|
1111
|
-
type EditorVariant = 'simple' | 'full';
|
|
1112
|
-
interface DocumentEditorProps {
|
|
1113
|
-
content?: string;
|
|
1114
|
-
onChange?: (content: string) => void;
|
|
1115
|
-
placeholder?: string;
|
|
1116
|
-
variant?: EditorVariant;
|
|
1117
|
-
className?: string;
|
|
1118
|
-
readOnly?: boolean;
|
|
1119
|
-
label?: string;
|
|
1120
|
-
}
|
|
1121
|
-
declare function DocumentEditor({ content, onChange, placeholder, variant, className, readOnly, label }: DocumentEditorProps): react_jsx_runtime.JSX.Element | null;
|
|
1122
|
-
|
|
1123
|
-
type SocialChannel = "instagram" | "linkedin" | "facebook" | "twitter" | "youtube" | "blog" | "other";
|
|
1124
|
-
type TaskStatus = "idea" | "planned" | "in-progress" | "approval" | "scheduled" | "published";
|
|
1125
|
-
type CalendarMode = "editorial" | "execution";
|
|
1126
|
-
interface CalendarTask {
|
|
1127
|
-
id: string;
|
|
1128
|
-
title: string;
|
|
1129
|
-
date?: Date | string;
|
|
1130
|
-
endDate?: Date | string;
|
|
1131
|
-
channel?: SocialChannel;
|
|
1132
|
-
status: TaskStatus;
|
|
1133
|
-
imageUrl?: string;
|
|
1134
|
-
description?: string;
|
|
1135
|
-
assignees?: {
|
|
1136
|
-
name: string;
|
|
1137
|
-
avatar?: string;
|
|
1138
|
-
}[];
|
|
1139
|
-
color?: string;
|
|
1140
|
-
}
|
|
1141
|
-
interface BaseCalendarProps {
|
|
1142
|
-
tasks: CalendarTask[];
|
|
1143
|
-
onTaskUpdate: (updatedTask: CalendarTask) => void;
|
|
1144
|
-
onTaskCreate?: (newTask: Partial<CalendarTask>) => void;
|
|
1145
|
-
className?: string;
|
|
1146
|
-
}
|
|
1147
|
-
declare function EditorialCalendar(props: BaseCalendarProps): react_jsx_runtime.JSX.Element;
|
|
1148
|
-
declare function TaskCalendar(props: BaseCalendarProps): react_jsx_runtime.JSX.Element;
|
|
1149
|
-
|
|
1150
|
-
/**
|
|
1151
|
-
* Active Filter
|
|
1152
|
-
*/
|
|
1153
|
-
interface ActiveFilter {
|
|
1154
|
-
id: string;
|
|
1155
|
-
label: string;
|
|
1156
|
-
value?: string;
|
|
1157
|
-
onRemove?: () => void;
|
|
1158
|
-
}
|
|
1159
|
-
/**
|
|
1160
|
-
* FilterBar Props
|
|
1161
|
-
*/
|
|
1162
|
-
interface FilterBarProps {
|
|
1163
|
-
activeFilters?: ActiveFilter[];
|
|
1164
|
-
onRemoveFilter?: (filterId: string) => void;
|
|
1165
|
-
onClearAll?: () => void;
|
|
1166
|
-
onOpenFilters?: () => void;
|
|
1167
|
-
className?: string;
|
|
1168
|
-
children?: React$1.ReactNode;
|
|
1169
|
-
}
|
|
1170
|
-
/**
|
|
1171
|
-
* FilterBar Component
|
|
1172
|
-
*
|
|
1173
|
-
* Horizontal bar displaying a filter button with active filter chips.
|
|
1174
|
-
* Follows Intercom's pattern with count badges and clear all action.
|
|
1175
|
-
*
|
|
1176
|
-
* @example
|
|
1177
|
-
* ```tsx
|
|
1178
|
-
* <FilterBar
|
|
1179
|
-
* activeFilters={[
|
|
1180
|
-
* { id: '1', label: 'Status', value: 'Active' },
|
|
1181
|
-
* { id: '2', label: 'Date', value: 'Last 30 days' }
|
|
1182
|
-
* ]}
|
|
1183
|
-
* onRemoveFilter={(id) => console.log('remove', id)}
|
|
1184
|
-
* onClearAll={() => console.log('clear all')}
|
|
1185
|
-
* onOpenFilters={() => console.log('open')}
|
|
1186
|
-
* />
|
|
1187
|
-
* ```
|
|
1188
|
-
*/
|
|
1189
|
-
declare const FilterBar: React$1.ForwardRefExoticComponent<FilterBarProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1190
|
-
|
|
1191
|
-
/**
|
|
1192
|
-
* Filter Condition
|
|
1193
|
-
*
|
|
1194
|
-
* Represents a single filter condition with field, operator, and value.
|
|
1195
|
-
*/
|
|
1196
|
-
interface FilterCondition {
|
|
1197
|
-
id: string;
|
|
1198
|
-
field: string;
|
|
1199
|
-
operator: string;
|
|
1200
|
-
value: string | string[];
|
|
1201
|
-
}
|
|
1202
|
-
/**
|
|
1203
|
-
* Filter Field
|
|
1204
|
-
*
|
|
1205
|
-
* Configuration for a filterable field with type and options.
|
|
1206
|
-
*/
|
|
1207
|
-
interface FilterField {
|
|
1208
|
-
value: string;
|
|
1209
|
-
label: string;
|
|
1210
|
-
type?: "text" | "number" | "select" | "date";
|
|
1211
|
-
options?: {
|
|
1212
|
-
value: string;
|
|
1213
|
-
label: string;
|
|
1214
|
-
}[];
|
|
1215
|
-
multiSelect?: boolean;
|
|
1216
|
-
}
|
|
1217
|
-
/**
|
|
1218
|
-
* FilterBuilder Props
|
|
1219
|
-
*/
|
|
1220
|
-
interface FilterBuilderProps {
|
|
1221
|
-
conditions: FilterCondition[];
|
|
1222
|
-
onConditionsChange: (conditions: FilterCondition[]) => void;
|
|
1223
|
-
fields: FilterField[];
|
|
1224
|
-
className?: string;
|
|
1225
|
-
}
|
|
1226
|
-
/**
|
|
1227
|
-
* FilterBuilder Component
|
|
1228
|
-
*
|
|
1229
|
-
* Advanced filter builder with multiple conditions, operators, and multi-select support.
|
|
1230
|
-
* Inspired by Intercom's filter system with visual condition rows and AND logic.
|
|
1231
|
-
*
|
|
1232
|
-
* @example
|
|
1233
|
-
* ```tsx
|
|
1234
|
-
* const [conditions, setConditions] = useState<FilterCondition[]>([
|
|
1235
|
-
* { id: '1', field: 'status', operator: 'is_any_of', value: ['active', 'pending'] }
|
|
1236
|
-
* ]);
|
|
1237
|
-
*
|
|
1238
|
-
* const fields: FilterField[] = [
|
|
1239
|
-
* {
|
|
1240
|
-
* value: 'status',
|
|
1241
|
-
* label: 'Status',
|
|
1242
|
-
* type: 'select',
|
|
1243
|
-
* options: [
|
|
1244
|
-
* { value: 'active', label: 'Active' },
|
|
1245
|
-
* { value: 'pending', label: 'Pending' }
|
|
1246
|
-
* ]
|
|
1247
|
-
* }
|
|
1248
|
-
* ];
|
|
1249
|
-
*
|
|
1250
|
-
* <FilterBuilder
|
|
1251
|
-
* conditions={conditions}
|
|
1252
|
-
* onConditionsChange={setConditions}
|
|
1253
|
-
* fields={fields}
|
|
1254
|
-
* />
|
|
1255
|
-
* ```
|
|
1256
|
-
*/
|
|
1257
|
-
declare const FilterBuilder: React$1.ForwardRefExoticComponent<FilterBuilderProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1258
|
-
|
|
1259
|
-
/**
|
|
1260
|
-
* FilterChip Props
|
|
1261
|
-
*/
|
|
1262
|
-
interface FilterChipProps {
|
|
1263
|
-
label: string;
|
|
1264
|
-
value?: string;
|
|
1265
|
-
onRemove?: () => void;
|
|
1266
|
-
className?: string;
|
|
1267
|
-
}
|
|
1268
|
-
/**
|
|
1269
|
-
* FilterChip Component
|
|
1270
|
-
*
|
|
1271
|
-
* A removable badge displaying an active filter with optional value.
|
|
1272
|
-
* Commonly used in filter bars to show applied filters.
|
|
1273
|
-
*
|
|
1274
|
-
* @example
|
|
1275
|
-
* ```tsx
|
|
1276
|
-
* <FilterChip
|
|
1277
|
-
* label="Status"
|
|
1278
|
-
* value="Active"
|
|
1279
|
-
* onRemove={() => console.log('removed')}
|
|
1280
|
-
* />
|
|
1281
|
-
* ```
|
|
1282
|
-
*/
|
|
1283
|
-
declare const FilterChip: React$1.ForwardRefExoticComponent<FilterChipProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1284
|
-
|
|
1285
|
-
type GanttTaskStatus = "not-started" | "in-progress" | "on-hold" | "delayed" | "completed" | "cancelled";
|
|
1286
|
-
interface GanttTask {
|
|
1287
|
-
id: string;
|
|
1288
|
-
name: string;
|
|
1289
|
-
startDate: Date;
|
|
1290
|
-
endDate: Date;
|
|
1291
|
-
progress: number;
|
|
1292
|
-
status: GanttTaskStatus;
|
|
1293
|
-
projectId?: string;
|
|
1294
|
-
assignee?: {
|
|
1295
|
-
name: string;
|
|
1296
|
-
initials?: string;
|
|
1297
|
-
avatar?: string;
|
|
1298
|
-
};
|
|
1299
|
-
description?: string;
|
|
1300
|
-
milestone?: boolean;
|
|
1301
|
-
dependencies?: string[];
|
|
1302
|
-
}
|
|
1303
|
-
interface GanttProject {
|
|
1304
|
-
id: string;
|
|
1305
|
-
name: string;
|
|
1306
|
-
color?: string;
|
|
1307
|
-
}
|
|
1308
|
-
interface GanttChartProps {
|
|
1309
|
-
tasks: GanttTask[];
|
|
1310
|
-
projects?: GanttProject[];
|
|
1311
|
-
onTaskClick?: (task: GanttTask) => void;
|
|
1312
|
-
onTaskEdit?: (task: GanttTask) => void;
|
|
1313
|
-
rowHeight?: number;
|
|
1314
|
-
columnWidth?: number;
|
|
1315
|
-
showWeekends?: boolean;
|
|
1316
|
-
groupBy?: "projects" | "assignees";
|
|
1317
|
-
}
|
|
1318
|
-
declare const GanttChart: React$1.ForwardRefExoticComponent<GanttChartProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1319
|
-
declare const GanttLegend: React$1.ForwardRefExoticComponent<{
|
|
1320
|
-
className?: string;
|
|
1321
|
-
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
1322
|
-
|
|
1323
|
-
interface KanbanCardTag {
|
|
1324
|
-
id: string;
|
|
1325
|
-
label: string;
|
|
1326
|
-
color?: string;
|
|
1327
|
-
}
|
|
1328
|
-
interface KanbanCardAssignee {
|
|
1329
|
-
id: string;
|
|
1330
|
-
name: string;
|
|
1331
|
-
avatar?: string;
|
|
1332
|
-
initials?: string;
|
|
1333
|
-
}
|
|
1334
|
-
interface KanbanCardProps {
|
|
1335
|
-
id: string;
|
|
1336
|
-
title: string;
|
|
1337
|
-
description?: string;
|
|
1338
|
-
coverImage?: string;
|
|
1339
|
-
thumbnailImage?: string;
|
|
1340
|
-
tags?: KanbanCardTag[];
|
|
1341
|
-
assignees?: KanbanCardAssignee[];
|
|
1342
|
-
priority?: "low" | "medium" | "high" | "urgent";
|
|
1343
|
-
dueDate?: Date;
|
|
1344
|
-
comments?: number;
|
|
1345
|
-
attachments?: number;
|
|
1346
|
-
checklist?: {
|
|
1347
|
-
completed: number;
|
|
1348
|
-
total: number;
|
|
1349
|
-
};
|
|
1350
|
-
progress?: number;
|
|
1351
|
-
status?: string;
|
|
1352
|
-
variant?: "default" | "compact" | "detailed";
|
|
1353
|
-
isDragging?: boolean;
|
|
1354
|
-
onClick?: () => void;
|
|
1355
|
-
onEdit?: () => void;
|
|
1356
|
-
onDelete?: () => void;
|
|
1357
|
-
onDuplicate?: () => void;
|
|
1358
|
-
className?: string;
|
|
1359
|
-
}
|
|
1360
|
-
declare const KanbanCard: React$1.ForwardRefExoticComponent<KanbanCardProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1361
|
-
|
|
1362
|
-
/**
|
|
1363
|
-
* Saved Filter
|
|
1364
|
-
*/
|
|
1365
|
-
interface SavedFilter {
|
|
1366
|
-
id: string;
|
|
1367
|
-
name: string;
|
|
1368
|
-
description?: string;
|
|
1369
|
-
isFavorite?: boolean;
|
|
1370
|
-
filterCount?: number;
|
|
1371
|
-
}
|
|
1372
|
-
/**
|
|
1373
|
-
* SavedFilters Props
|
|
1374
|
-
*/
|
|
1375
|
-
interface SavedFiltersProps {
|
|
1376
|
-
filters?: SavedFilter[];
|
|
1377
|
-
onSelectFilter?: (filterId: string) => void;
|
|
1378
|
-
onToggleFavorite?: (filterId: string) => void;
|
|
1379
|
-
onDeleteFilter?: (filterId: string) => void;
|
|
1380
|
-
className?: string;
|
|
1381
|
-
}
|
|
1382
|
-
/**
|
|
1383
|
-
* SavedFilters Component
|
|
1384
|
-
*
|
|
1385
|
-
* Dropdown menu for managing saved filter presets with favorites support.
|
|
1386
|
-
* Allows users to quickly apply, favorite, and delete saved filter combinations.
|
|
1387
|
-
*
|
|
1388
|
-
* @example
|
|
1389
|
-
* ```tsx
|
|
1390
|
-
* <SavedFilters
|
|
1391
|
-
* filters={[
|
|
1392
|
-
* { id: '1', name: 'Active Clients', isFavorite: true, filterCount: 2 },
|
|
1393
|
-
* { id: '2', name: 'High Value', description: 'Projects over $50k', filterCount: 3 }
|
|
1394
|
-
* ]}
|
|
1395
|
-
* onSelectFilter={(id) => console.log('apply', id)}
|
|
1396
|
-
* onToggleFavorite={(id) => console.log('toggle', id)}
|
|
1397
|
-
* onDeleteFilter={(id) => console.log('delete', id)}
|
|
1398
|
-
* />
|
|
1399
|
-
* ```
|
|
1400
|
-
*/
|
|
1401
|
-
declare const SavedFilters: React$1.ForwardRefExoticComponent<SavedFiltersProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
612
|
+
declare function TooltipProvider({ delayDuration, ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Provider>): react_jsx_runtime.JSX.Element;
|
|
613
|
+
declare function Tooltip({ ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
614
|
+
declare function TooltipTrigger({ ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
615
|
+
declare function TooltipContent({ className, sideOffset, children, ...props }: React$1.ComponentProps<typeof TooltipPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
1402
616
|
|
|
1403
617
|
type SidebarContextProps = {
|
|
1404
618
|
state: "expanded" | "collapsed";
|
|
@@ -1423,7 +637,6 @@ declare function Sidebar({ side, variant, collapsible, className, children, ...p
|
|
|
1423
637
|
declare function SidebarTrigger({ className, onClick, ...props }: React$1.ComponentProps<typeof Button>): react_jsx_runtime.JSX.Element;
|
|
1424
638
|
declare function SidebarRail({ className, ...props }: React$1.ComponentProps<"button">): react_jsx_runtime.JSX.Element;
|
|
1425
639
|
declare function SidebarInset({ className, ...props }: React$1.ComponentProps<"main">): react_jsx_runtime.JSX.Element;
|
|
1426
|
-
declare function SidebarInput({ className, ...props }: React$1.ComponentProps<typeof Input>): react_jsx_runtime.JSX.Element;
|
|
1427
640
|
declare function SidebarHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
1428
641
|
declare function SidebarFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
1429
642
|
declare function SidebarSeparator({ className, ...props }: React$1.ComponentProps<typeof Separator>): react_jsx_runtime.JSX.Element;
|
|
@@ -1463,53 +676,31 @@ declare function SidebarMenuSubButton({ asChild, size, isActive, className, ...p
|
|
|
1463
676
|
isActive?: boolean;
|
|
1464
677
|
}): react_jsx_runtime.JSX.Element;
|
|
1465
678
|
|
|
1466
|
-
interface
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
onOpenChange: (open: boolean) => void;
|
|
1470
|
-
onSave: (task: GanttTask) => void;
|
|
1471
|
-
availableTasks?: GanttTask[];
|
|
1472
|
-
availableAssignees?: {
|
|
1473
|
-
name: string;
|
|
1474
|
-
initials?: string;
|
|
1475
|
-
}[];
|
|
679
|
+
interface SkeletonProps extends React.ComponentProps<"div"> {
|
|
680
|
+
/** Animation variant: pulse (default) or shimmer (premium) */
|
|
681
|
+
variant?: "pulse" | "shimmer";
|
|
1476
682
|
}
|
|
1477
|
-
declare function
|
|
1478
|
-
declare function TaskEditDialog({ task, open, onOpenChange, onSave, availableTasks, availableAssignees, }: TaskEditDialogProps): react_jsx_runtime.JSX.Element | null;
|
|
683
|
+
declare function Skeleton({ className, variant, ...props }: SkeletonProps): react_jsx_runtime.JSX.Element;
|
|
1479
684
|
|
|
1480
|
-
|
|
1481
|
-
date?: Date;
|
|
1482
|
-
onChange?: (date: Date | undefined) => void;
|
|
1483
|
-
label?: string;
|
|
1484
|
-
className?: string;
|
|
1485
|
-
disabled?: boolean;
|
|
1486
|
-
}
|
|
1487
|
-
declare function TimePicker({ date, onChange, label, className, disabled, }: TimePickerProps): react_jsx_runtime.JSX.Element;
|
|
685
|
+
declare function Slider({ className, defaultValue, value, min, max, ...props }: React$1.ComponentProps<typeof SliderPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
1488
686
|
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
}
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
};
|
|
1507
|
-
}
|
|
1508
|
-
interface TimelineProps {
|
|
1509
|
-
events: TimelineEvent[];
|
|
1510
|
-
className?: string;
|
|
1511
|
-
}
|
|
1512
|
-
declare const Timeline: ({ events, className }: TimelineProps) => react_jsx_runtime.JSX.Element;
|
|
687
|
+
declare const Toaster: ({ ...props }: ToasterProps) => react_jsx_runtime.JSX.Element;
|
|
688
|
+
|
|
689
|
+
declare function Switch({ className, ...props }: React$1.ComponentProps<typeof SwitchPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
690
|
+
|
|
691
|
+
declare function Table({ className, ...props }: React$1.ComponentProps<"table">): react_jsx_runtime.JSX.Element;
|
|
692
|
+
declare function TableHeader({ className, ...props }: React$1.ComponentProps<"thead">): react_jsx_runtime.JSX.Element;
|
|
693
|
+
declare function TableBody({ className, ...props }: React$1.ComponentProps<"tbody">): react_jsx_runtime.JSX.Element;
|
|
694
|
+
declare function TableFooter({ className, ...props }: React$1.ComponentProps<"tfoot">): react_jsx_runtime.JSX.Element;
|
|
695
|
+
declare const TableRow: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>, "ref"> & React$1.RefAttributes<HTMLTableRowElement>>;
|
|
696
|
+
declare function TableHead({ className, ...props }: React$1.ComponentProps<"th">): react_jsx_runtime.JSX.Element;
|
|
697
|
+
declare function TableCell({ className, ...props }: React$1.ComponentProps<"td">): react_jsx_runtime.JSX.Element;
|
|
698
|
+
declare function TableCaption({ className, ...props }: React$1.ComponentProps<"caption">): react_jsx_runtime.JSX.Element;
|
|
699
|
+
|
|
700
|
+
declare function Tabs({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
701
|
+
declare function TabsList({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.List>): react_jsx_runtime.JSX.Element;
|
|
702
|
+
declare function TabsTrigger({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
703
|
+
declare function TabsContent({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
1513
704
|
|
|
1514
705
|
interface UnderlineTabsProps {
|
|
1515
706
|
defaultValue?: string;
|
|
@@ -1538,6 +729,17 @@ interface UnderlineTabsContentProps {
|
|
|
1538
729
|
}
|
|
1539
730
|
declare function UnderlineTabsContent({ value: contentValue, children, className, }: UnderlineTabsContentProps): react_jsx_runtime.JSX.Element | null;
|
|
1540
731
|
|
|
732
|
+
declare function Textarea({ className, ...props }: React$1.ComponentProps<"textarea">): react_jsx_runtime.JSX.Element;
|
|
733
|
+
|
|
734
|
+
declare const toggleVariants: (props?: ({
|
|
735
|
+
variant?: "default" | "outline" | null | undefined;
|
|
736
|
+
size?: "default" | "sm" | "lg" | null | undefined;
|
|
737
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
738
|
+
declare function Toggle({ className, variant, size, ...props }: React$1.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
|
|
739
|
+
|
|
740
|
+
declare function ToggleGroup({ className, variant, size, children, ...props }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
|
|
741
|
+
declare function ToggleGroupItem({ className, children, variant, size, ...props }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
|
|
742
|
+
|
|
1541
743
|
/**
|
|
1542
744
|
* Illustration System - iClips Design System
|
|
1543
745
|
*
|
|
@@ -1596,205 +798,244 @@ declare function cn(...inputs: ClassValue[]): string;
|
|
|
1596
798
|
declare function useIsMobile(): boolean;
|
|
1597
799
|
|
|
1598
800
|
/**
|
|
1599
|
-
*
|
|
1600
|
-
*
|
|
1601
|
-
* @example
|
|
1602
|
-
* ```tsx
|
|
1603
|
-
* const { sortedData, sortConfig, toggleSort } = useTableSort(users);
|
|
1604
|
-
*
|
|
1605
|
-
* // In your component
|
|
1606
|
-
* <TableHead onClick={() => toggleSort("name")}>
|
|
1607
|
-
* Name {sortConfig.column === "name" && (
|
|
1608
|
-
* sortConfig.direction === "asc" ? "↑" : "↓"
|
|
1609
|
-
* )}
|
|
1610
|
-
* </TableHead>
|
|
1611
|
-
* ```
|
|
801
|
+
* Opções para o hook de impressão de contratos
|
|
1612
802
|
*/
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
|
|
803
|
+
interface UsePrintContractOptions {
|
|
804
|
+
/** Callback chamado antes de iniciar a impressão */
|
|
805
|
+
onPrintStart?: () => void;
|
|
806
|
+
/** Callback chamado após impressão bem-sucedida */
|
|
807
|
+
onPrintSuccess?: () => void;
|
|
808
|
+
/** Callback chamado em caso de erro */
|
|
809
|
+
onPrintError?: (error: Error) => void;
|
|
810
|
+
/** Callback chamado antes de iniciar download do PDF */
|
|
811
|
+
onDownloadStart?: () => void;
|
|
812
|
+
/** Callback chamado após download bem-sucedido */
|
|
813
|
+
onDownloadSuccess?: () => void;
|
|
814
|
+
/** Callback chamado em caso de erro no download */
|
|
815
|
+
onDownloadError?: (error: Error) => void;
|
|
816
|
+
}
|
|
1621
817
|
/**
|
|
1622
|
-
* Hook
|
|
818
|
+
* Hook para gerenciar impressão e download de contratos
|
|
1623
819
|
*
|
|
1624
820
|
* @example
|
|
1625
821
|
* ```tsx
|
|
1626
|
-
* const
|
|
1627
|
-
*
|
|
1628
|
-
*
|
|
1629
|
-
*
|
|
1630
|
-
*
|
|
1631
|
-
* isAllSelected
|
|
1632
|
-
* } = useTableSelection(users);
|
|
1633
|
-
*
|
|
1634
|
-
* // In your component
|
|
1635
|
-
* <Checkbox
|
|
1636
|
-
* checked={isAllSelected}
|
|
1637
|
-
* onCheckedChange={toggleAll}
|
|
1638
|
-
* />
|
|
1639
|
-
*
|
|
1640
|
-
* {users.map((user) => (
|
|
1641
|
-
* <TableRow key={user.id}>
|
|
1642
|
-
* <TableCell>
|
|
1643
|
-
* <Checkbox
|
|
1644
|
-
* checked={isSelected(user.id)}
|
|
1645
|
-
* onCheckedChange={() => toggleRow(user.id)}
|
|
1646
|
-
* />
|
|
1647
|
-
* </TableCell>
|
|
1648
|
-
* </TableRow>
|
|
1649
|
-
* ))}
|
|
822
|
+
* const printRef = useRef<HTMLDivElement>(null);
|
|
823
|
+
* const { printContract, downloadPDF } = usePrintContract(printRef, 'FEE-2024-001', {
|
|
824
|
+
* onPrintSuccess: () => toast.success('Impresso!'),
|
|
825
|
+
* onDownloadSuccess: () => toast.success('PDF gerado!'),
|
|
826
|
+
* });
|
|
1650
827
|
* ```
|
|
1651
828
|
*/
|
|
1652
|
-
declare function
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
/**
|
|
1656
|
-
|
|
1657
|
-
/** Callback when selection changes */
|
|
1658
|
-
onSelectionChange?: (selectedIds: Set<string | number>) => void;
|
|
1659
|
-
}): {
|
|
1660
|
-
selected: Set<string | number>;
|
|
1661
|
-
selectedIds: (string | number)[];
|
|
1662
|
-
selectedItems: T[];
|
|
1663
|
-
toggleRow: (id: string | number) => void;
|
|
1664
|
-
toggleAll: () => void;
|
|
1665
|
-
isSelected: (id: string | number) => boolean;
|
|
1666
|
-
isAllSelected: boolean;
|
|
1667
|
-
isIndeterminate: boolean;
|
|
1668
|
-
selectRows: (ids: (string | number)[]) => void;
|
|
1669
|
-
clearSelection: () => void;
|
|
829
|
+
declare function usePrintContract(contentRef: RefObject<HTMLElement | null>, contractNumber?: string, options?: UsePrintContractOptions): {
|
|
830
|
+
/** Imprime o contrato em nova janela */
|
|
831
|
+
printContract: () => void;
|
|
832
|
+
/** Gera e baixa PDF do contrato (implementação simulada) */
|
|
833
|
+
downloadPDF: () => void;
|
|
1670
834
|
};
|
|
1671
835
|
|
|
1672
|
-
|
|
1673
|
-
* Hook for managing table pagination
|
|
1674
|
-
*
|
|
1675
|
-
* @example
|
|
1676
|
-
* ```tsx
|
|
1677
|
-
* const {
|
|
1678
|
-
* paginatedData,
|
|
1679
|
-
* currentPage,
|
|
1680
|
-
* pageSize,
|
|
1681
|
-
* totalPages,
|
|
1682
|
-
* goToPage,
|
|
1683
|
-
* nextPage,
|
|
1684
|
-
* previousPage,
|
|
1685
|
-
* setPageSize
|
|
1686
|
-
* } = useTablePagination(users, { pageSize: 10 });
|
|
1687
|
-
*
|
|
1688
|
-
* // In your component
|
|
1689
|
-
* <Button onClick={previousPage} disabled={!hasPreviousPage}>
|
|
1690
|
-
* Previous
|
|
1691
|
-
* </Button>
|
|
1692
|
-
* <span>Page {currentPage} of {totalPages}</span>
|
|
1693
|
-
* <Button onClick={nextPage} disabled={!hasNextPage}>
|
|
1694
|
-
* Next
|
|
1695
|
-
* </Button>
|
|
1696
|
-
* ```
|
|
1697
|
-
*/
|
|
1698
|
-
declare function useTablePagination<T>(data: T[], options?: {
|
|
1699
|
-
/** Initial page size */
|
|
1700
|
-
pageSize?: number;
|
|
1701
|
-
/** Initial page (1-indexed) */
|
|
1702
|
-
initialPage?: number;
|
|
1703
|
-
/** Callback when page changes */
|
|
1704
|
-
onPageChange?: (page: number) => void;
|
|
1705
|
-
/** Callback when page size changes */
|
|
1706
|
-
onPageSizeChange?: (size: number) => void;
|
|
1707
|
-
}): {
|
|
1708
|
-
paginatedData: T[];
|
|
1709
|
-
currentPage: number;
|
|
1710
|
-
pageSize: number;
|
|
1711
|
-
totalItems: number;
|
|
1712
|
-
totalPages: number;
|
|
1713
|
-
startIndex: number;
|
|
1714
|
-
endIndex: number;
|
|
1715
|
-
hasNextPage: boolean;
|
|
1716
|
-
hasPreviousPage: boolean;
|
|
1717
|
-
goToPage: (page: number) => void;
|
|
1718
|
-
nextPage: () => void;
|
|
1719
|
-
previousPage: () => void;
|
|
1720
|
-
goToFirstPage: () => void;
|
|
1721
|
-
goToLastPage: () => void;
|
|
1722
|
-
setPageSize: (size: number) => void;
|
|
1723
|
-
getPageNumbers: (maxVisible?: number) => (number | "ellipsis")[];
|
|
1724
|
-
};
|
|
836
|
+
declare function ImageWithFallback(props: React__default.ImgHTMLAttributes<HTMLImageElement>): react_jsx_runtime.JSX.Element;
|
|
1725
837
|
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1769
|
-
|
|
1770
|
-
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
|
|
1798
|
-
|
|
838
|
+
interface ProposalData {
|
|
839
|
+
proposalNumber: string;
|
|
840
|
+
issueDate: string;
|
|
841
|
+
validUntil: string;
|
|
842
|
+
client: {
|
|
843
|
+
name: string;
|
|
844
|
+
contact?: string;
|
|
845
|
+
email?: string;
|
|
846
|
+
phone?: string;
|
|
847
|
+
};
|
|
848
|
+
agency: {
|
|
849
|
+
name: string;
|
|
850
|
+
representative?: string;
|
|
851
|
+
email?: string;
|
|
852
|
+
phone?: string;
|
|
853
|
+
};
|
|
854
|
+
projectTitle: string;
|
|
855
|
+
projectDescription?: string;
|
|
856
|
+
objectives?: string[];
|
|
857
|
+
items: Array<{
|
|
858
|
+
name: string;
|
|
859
|
+
description?: string;
|
|
860
|
+
quantity?: number;
|
|
861
|
+
unitPrice?: number;
|
|
862
|
+
totalPrice: number;
|
|
863
|
+
}>;
|
|
864
|
+
subtotal: number;
|
|
865
|
+
discount?: number;
|
|
866
|
+
total: number;
|
|
867
|
+
paymentConditions?: string;
|
|
868
|
+
deliveryTime?: string;
|
|
869
|
+
notes?: string;
|
|
870
|
+
}
|
|
871
|
+
interface ProposalTemplateProps {
|
|
872
|
+
data: ProposalData;
|
|
873
|
+
showPreview?: boolean;
|
|
874
|
+
logo?: string;
|
|
875
|
+
}
|
|
876
|
+
declare function ProposalTemplate({ data, showPreview, logo, }: ProposalTemplateProps): react_jsx_runtime.JSX.Element;
|
|
877
|
+
|
|
878
|
+
interface PrintHeaderProps {
|
|
879
|
+
/**
|
|
880
|
+
* URL ou path do logo da empresa
|
|
881
|
+
*/
|
|
882
|
+
logo?: string;
|
|
883
|
+
/**
|
|
884
|
+
* Nome da empresa
|
|
885
|
+
*/
|
|
886
|
+
companyName?: string;
|
|
887
|
+
/**
|
|
888
|
+
* Informações de contato
|
|
889
|
+
*/
|
|
890
|
+
contactInfo?: {
|
|
891
|
+
address?: string;
|
|
892
|
+
phone?: string;
|
|
893
|
+
email?: string;
|
|
894
|
+
website?: string;
|
|
895
|
+
};
|
|
896
|
+
/**
|
|
897
|
+
* Tipo de documento (aparece no canto direito)
|
|
898
|
+
*/
|
|
899
|
+
documentType?: string;
|
|
900
|
+
/**
|
|
901
|
+
* Número do documento
|
|
902
|
+
*/
|
|
903
|
+
documentNumber?: string;
|
|
904
|
+
/**
|
|
905
|
+
* Data de emissão
|
|
906
|
+
*/
|
|
907
|
+
issueDate?: string;
|
|
908
|
+
}
|
|
909
|
+
declare function PrintHeader({ logo, companyName, contactInfo, documentType, documentNumber, issueDate, }: PrintHeaderProps): react_jsx_runtime.JSX.Element;
|
|
910
|
+
|
|
911
|
+
interface PrintFooterProps {
|
|
912
|
+
/**
|
|
913
|
+
* Número da página atual
|
|
914
|
+
*/
|
|
915
|
+
pageNumber?: number;
|
|
916
|
+
/**
|
|
917
|
+
* Total de páginas
|
|
918
|
+
*/
|
|
919
|
+
totalPages?: number;
|
|
920
|
+
/**
|
|
921
|
+
* Texto de rodapé customizado
|
|
922
|
+
*/
|
|
923
|
+
footerText?: string;
|
|
924
|
+
/**
|
|
925
|
+
* Mostrar data de geração
|
|
926
|
+
*/
|
|
927
|
+
showGeneratedDate?: boolean;
|
|
928
|
+
}
|
|
929
|
+
declare function PrintFooter({ pageNumber, totalPages, footerText, showGeneratedDate, }: PrintFooterProps): react_jsx_runtime.JSX.Element;
|
|
930
|
+
|
|
931
|
+
interface PrintSectionProps {
|
|
932
|
+
/**
|
|
933
|
+
* Título da seção
|
|
934
|
+
*/
|
|
935
|
+
title?: string;
|
|
936
|
+
/**
|
|
937
|
+
* Subtítulo da seção
|
|
938
|
+
*/
|
|
939
|
+
subtitle?: string;
|
|
940
|
+
/**
|
|
941
|
+
* Conteúdo da seção
|
|
942
|
+
*/
|
|
943
|
+
children: React.ReactNode;
|
|
944
|
+
/**
|
|
945
|
+
* Classe CSS adicional
|
|
946
|
+
*/
|
|
947
|
+
className?: string;
|
|
948
|
+
/**
|
|
949
|
+
* Evitar quebra de página
|
|
950
|
+
*/
|
|
951
|
+
avoidBreak?: boolean;
|
|
952
|
+
/**
|
|
953
|
+
* Forçar quebra de página antes
|
|
954
|
+
*/
|
|
955
|
+
pageBreak?: boolean;
|
|
956
|
+
}
|
|
957
|
+
declare function PrintSection({ title, subtitle, children, className, avoidBreak, pageBreak, }: PrintSectionProps): react_jsx_runtime.JSX.Element;
|
|
958
|
+
|
|
959
|
+
interface Column {
|
|
960
|
+
header: string;
|
|
961
|
+
key: string;
|
|
962
|
+
align?: "left" | "center" | "right";
|
|
963
|
+
width?: string;
|
|
964
|
+
render?: (value: any, row: any) => React.ReactNode;
|
|
965
|
+
}
|
|
966
|
+
interface PrintTableProps {
|
|
967
|
+
/**
|
|
968
|
+
* Colunas da tabela
|
|
969
|
+
*/
|
|
970
|
+
columns: Column[];
|
|
971
|
+
/**
|
|
972
|
+
* Dados da tabela
|
|
973
|
+
*/
|
|
974
|
+
data: any[];
|
|
975
|
+
/**
|
|
976
|
+
* Título da tabela (opcional)
|
|
977
|
+
*/
|
|
978
|
+
title?: string;
|
|
979
|
+
/**
|
|
980
|
+
* Mostrar zebra (linhas alternadas)
|
|
981
|
+
*/
|
|
982
|
+
striped?: boolean;
|
|
983
|
+
/**
|
|
984
|
+
* Mostrar borda
|
|
985
|
+
*/
|
|
986
|
+
bordered?: boolean;
|
|
987
|
+
/**
|
|
988
|
+
* Densidade (espaçamento)
|
|
989
|
+
*/
|
|
990
|
+
density?: "compact" | "normal" | "comfortable";
|
|
991
|
+
}
|
|
992
|
+
declare function PrintTable({ columns, data, title, striped, bordered, density, }: PrintTableProps): react_jsx_runtime.JSX.Element;
|
|
993
|
+
|
|
994
|
+
interface SignatureField {
|
|
995
|
+
label: string;
|
|
996
|
+
name?: string;
|
|
997
|
+
role?: string;
|
|
998
|
+
date?: string;
|
|
999
|
+
}
|
|
1000
|
+
interface PrintSignatureProps {
|
|
1001
|
+
/**
|
|
1002
|
+
* Lista de assinaturas necessárias
|
|
1003
|
+
*/
|
|
1004
|
+
signatures: SignatureField[];
|
|
1005
|
+
/**
|
|
1006
|
+
* Layout das assinaturas
|
|
1007
|
+
*/
|
|
1008
|
+
layout?: "horizontal" | "vertical";
|
|
1009
|
+
/**
|
|
1010
|
+
* Mostrar linha de assinatura
|
|
1011
|
+
*/
|
|
1012
|
+
showLine?: boolean;
|
|
1013
|
+
/**
|
|
1014
|
+
* Texto de instrução
|
|
1015
|
+
*/
|
|
1016
|
+
instructionText?: string;
|
|
1017
|
+
}
|
|
1018
|
+
declare function PrintSignature({ signatures, layout, showLine, instructionText, }: PrintSignatureProps): react_jsx_runtime.JSX.Element;
|
|
1019
|
+
|
|
1020
|
+
interface InfoItem {
|
|
1021
|
+
label: string;
|
|
1022
|
+
value: string | React.ReactNode;
|
|
1023
|
+
highlight?: boolean;
|
|
1024
|
+
}
|
|
1025
|
+
interface PrintInfoGridProps {
|
|
1026
|
+
/**
|
|
1027
|
+
* Lista de informações a serem exibidas
|
|
1028
|
+
*/
|
|
1029
|
+
items: InfoItem[];
|
|
1030
|
+
/**
|
|
1031
|
+
* Número de colunas
|
|
1032
|
+
*/
|
|
1033
|
+
columns?: 1 | 2 | 3 | 4;
|
|
1034
|
+
/**
|
|
1035
|
+
* Classe CSS adicional
|
|
1036
|
+
*/
|
|
1037
|
+
className?: string;
|
|
1038
|
+
}
|
|
1039
|
+
declare function PrintInfoGrid({ items, columns, className, }: PrintInfoGridProps): react_jsx_runtime.JSX.Element;
|
|
1799
1040
|
|
|
1800
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger,
|
|
1041
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AppLayout, type AppLayoutProps, AspectRatio, Avatar, AvatarFallback, AvatarImage, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Calendar, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, type ChartConfig, ChartContainer, ChartLegend, ChartLegendContent, ChartTooltip, ChartTooltipContent, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorPicker, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, ContractPrint, ContractPrintPreview, type ContractPrintProps, ContractTemplate, type DadosContrato, DateRangePicker, type DateRangePickerProps, DateTimePicker, type DateTimePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyCalendarIllustration, EmptyInboxIllustration, EmptyProjectsIllustration, EmptySearchIllustration, ErrorStateIllustration, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, HoverCard, HoverCardContent, HoverCardTrigger, type IllustrationProps, Illustrations, ImageWithFallback, Input, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, KanbanCard, type KanbanCardAssignee, type KanbanCardProps, type KanbanCardTag, Label, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverContent, PopoverTrigger, type PrimaryNavItem, PrintFooter, PrintHeader, PrintInfoGrid, PrintSection, PrintSignature, PrintTable, Progress, type ProposalData, ProposalTemplate, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, type SecondaryNavItem, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Slider, Toaster as Sonner, SuccessStateIllustration, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, TimePicker, type TimePickerProps, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, UnderlineTabs, UnderlineTabsContent, UnderlineTabsList, UnderlineTabsTrigger, type UsePrintContractOptions, badgeVariants, buttonVariants, cn, dadosContratoExemplo, navigationMenuTriggerStyle, toggleVariants, useFormField, useIsMobile, usePrintContract, useSidebar };
|