forlogic-core 1.15.2 → 1.15.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/dist/assets/index.d.ts +6 -0
  2. package/dist/auth/components/ProtectedRoute.d.ts +6 -0
  3. package/dist/auth/components/UserInfo.d.ts +10 -0
  4. package/dist/auth/contexts/AuthContext.d.ts +84 -0
  5. package/dist/auth/pages/CallbackPage.d.ts +1 -0
  6. package/dist/auth/pages/LoginPage.d.ts +2 -0
  7. package/dist/auth/services/AuthService.d.ts +40 -0
  8. package/dist/auth/services/SupabaseTokenService.d.ts +3 -0
  9. package/dist/auth/services/TokenManager.d.ts +51 -0
  10. package/dist/auth/services/TokenRegenerationService.d.ts +12 -0
  11. package/dist/auth/services/TokenService.d.ts +42 -0
  12. package/dist/auth/utils/AuthUtils.d.ts +4 -0
  13. package/dist/auth/utils/ErrorInterceptor.d.ts +15 -0
  14. package/dist/components/ErrorBoundary.d.ts +19 -0
  15. package/dist/components/layout/AppHeader.d.ts +63 -0
  16. package/dist/components/layout/AppLayout.d.ts +10 -0
  17. package/dist/components/layout/AppSidebar.d.ts +10 -0
  18. package/dist/components/layout/BodyContent.d.ts +60 -0
  19. package/dist/components/layout/SidebarActionTrigger.d.ts +34 -0
  20. package/dist/components/layout/SidebarHeader.d.ts +5 -0
  21. package/dist/components/layout/sidebar-utils.d.ts +12 -0
  22. package/dist/components/modules/ModuleGrid.d.ts +9 -0
  23. package/dist/components/modules/ModulesDialog.d.ts +3 -0
  24. package/dist/components/modules/icons/ModulesCardIcons.d.ts +19 -0
  25. package/dist/components/modules/index.d.ts +4 -0
  26. package/dist/components/modules/modulesData.d.ts +6 -0
  27. package/dist/components/modules/types.d.ts +35 -0
  28. package/dist/components/ui/accordion.d.ts +7 -0
  29. package/dist/components/ui/action-button.d.ts +43 -0
  30. package/dist/components/ui/alert-dialog.d.ts +20 -0
  31. package/dist/components/ui/alert.d.ts +12 -0
  32. package/dist/components/ui/avatar.d.ts +6 -0
  33. package/dist/components/ui/badge.d.ts +9 -0
  34. package/dist/components/ui/breadcrumb.d.ts +19 -0
  35. package/dist/components/ui/button-group.d.ts +9 -0
  36. package/dist/components/ui/button.d.ts +11 -0
  37. package/dist/components/ui/calendar.d.ts +8 -0
  38. package/dist/components/ui/card.d.ts +8 -0
  39. package/dist/components/ui/chart.d.ts +62 -0
  40. package/dist/components/ui/checkbox.d.ts +4 -0
  41. package/dist/components/ui/collapsible.d.ts +5 -0
  42. package/dist/components/ui/color-picker.d.ts +8 -0
  43. package/dist/components/ui/combobox.d.ts +33 -0
  44. package/dist/components/ui/command.d.ts +23 -0
  45. package/dist/components/ui/context-menu.d.ts +27 -0
  46. package/dist/components/ui/data-list.d.ts +86 -0
  47. package/dist/components/ui/date-picker.d.ts +9 -0
  48. package/dist/components/ui/dialog.d.ts +36 -0
  49. package/dist/components/ui/disabled-menu-item.d.ts +25 -0
  50. package/dist/components/ui/drawer.d.ts +22 -0
  51. package/dist/components/ui/dropdown-menu.d.ts +27 -0
  52. package/dist/components/ui/empty-state.d.ts +79 -0
  53. package/dist/components/ui/form.d.ts +23 -0
  54. package/dist/components/ui/grid.d.ts +53 -0
  55. package/dist/components/ui/hover-card.d.ts +6 -0
  56. package/dist/components/ui/icon-picker.d.ts +8 -0
  57. package/dist/components/ui/input-group.d.ts +97 -0
  58. package/dist/components/ui/input.d.ts +37 -0
  59. package/dist/components/ui/label.d.ts +23 -0
  60. package/dist/components/ui/loading-state.d.ts +52 -0
  61. package/dist/components/ui/menubar.d.ts +33 -0
  62. package/dist/components/ui/navigation-menu.d.ts +12 -0
  63. package/dist/components/ui/onboarding-dialog.d.ts +43 -0
  64. package/dist/components/ui/page-breadcrumb.d.ts +77 -0
  65. package/dist/components/ui/pagination.d.ts +28 -0
  66. package/dist/components/ui/popover.d.ts +49 -0
  67. package/dist/components/ui/progress.d.ts +22 -0
  68. package/dist/components/ui/radio-group.d.ts +63 -0
  69. package/dist/components/ui/resizable.d.ts +23 -0
  70. package/dist/components/ui/rich-text-editor.d.ts +45 -0
  71. package/dist/components/ui/scroll-area.d.ts +37 -0
  72. package/dist/components/ui/select.d.ts +16 -0
  73. package/dist/components/ui/separator.d.ts +4 -0
  74. package/dist/components/ui/sheet.d.ts +32 -0
  75. package/dist/components/ui/sidebar.d.ts +66 -0
  76. package/dist/components/ui/skeleton-variants.d.ts +16 -0
  77. package/dist/components/ui/skeleton.d.ts +2 -0
  78. package/dist/components/ui/slider.d.ts +4 -0
  79. package/dist/components/ui/sonner.d.ts +3 -0
  80. package/dist/components/ui/spinner.d.ts +6 -0
  81. package/dist/components/ui/split-button.d.ts +70 -0
  82. package/dist/components/ui/stack.d.ts +12 -0
  83. package/dist/components/ui/step-selector.d.ts +39 -0
  84. package/dist/components/ui/switch.d.ts +4 -0
  85. package/dist/components/ui/tab-page-layout.d.ts +19 -0
  86. package/dist/components/ui/table-resize-handle.d.ts +15 -0
  87. package/dist/components/ui/table.d.ts +10 -0
  88. package/dist/components/ui/tabs.d.ts +7 -0
  89. package/dist/components/ui/textarea.d.ts +5 -0
  90. package/dist/components/ui/toggle-group.d.ts +12 -0
  91. package/dist/components/ui/toggle.d.ts +12 -0
  92. package/dist/components/ui/tooltip.d.ts +7 -0
  93. package/dist/components/ui/truncated-cell.d.ts +7 -0
  94. package/dist/components/ui/typography.d.ts +16 -0
  95. package/dist/config/index.d.ts +53 -0
  96. package/dist/contexts/LocaleContext.d.ts +15 -0
  97. package/dist/contexts/ModalStateContext.d.ts +57 -0
  98. package/dist/contexts/NavigationContext.d.ts +13 -0
  99. package/dist/contexts/PageMetadataContext.d.ts +43 -0
  100. package/dist/crud/components/ActionMenuItems.d.ts +17 -0
  101. package/dist/crud/components/BaseForm.d.ts +6 -0
  102. package/dist/crud/components/ContextMenu.d.ts +21 -0
  103. package/dist/crud/components/CrudActionBar.d.ts +38 -0
  104. package/dist/crud/components/CrudGrid.d.ts +43 -0
  105. package/dist/crud/components/CrudPagination.d.ts +12 -0
  106. package/dist/crud/components/CrudTable.d.ts +41 -0
  107. package/dist/crud/components/FilterBar.d.ts +136 -0
  108. package/dist/crud/components/TableFooter.d.ts +14 -0
  109. package/dist/crud/components/TableRowActions.d.ts +14 -0
  110. package/dist/crud/createCrudPage.d.ts +99 -0
  111. package/dist/crud/createSimpleService.d.ts +85 -0
  112. package/dist/crud/generateCrudConfig.d.ts +73 -0
  113. package/dist/crud/hooks/useBaseForm.d.ts +8 -0
  114. package/dist/crud/hooks/useCrud.d.ts +117 -0
  115. package/dist/crud/primitives/ActionMenu.d.ts +28 -0
  116. package/dist/crud/primitives/FilterBar.d.ts +24 -0
  117. package/dist/crud/primitives/Pagination.d.ts +24 -0
  118. package/dist/crud/primitives/Table.d.ts +26 -0
  119. package/dist/crud/primitives/index.d.ts +11 -0
  120. package/dist/crud/primitives/types.d.ts +76 -0
  121. package/dist/crud/utils/routingHelpers.d.ts +30 -0
  122. package/dist/exports/crud.d.ts +21 -0
  123. package/dist/exports/integrations.d.ts +13 -0
  124. package/dist/exports/ui.d.ts +73 -0
  125. package/dist/hooks/useActiveModules.d.ts +45 -0
  126. package/dist/hooks/useColumnResize.d.ts +21 -0
  127. package/dist/hooks/useDebounce.d.ts +56 -0
  128. package/dist/hooks/useI18nFormatters.d.ts +40 -0
  129. package/dist/hooks/usePageTitle.d.ts +4 -0
  130. package/dist/hooks/usePermissionQuery.d.ts +49 -0
  131. package/dist/hooks/useRowResize.d.ts +19 -0
  132. package/dist/hooks/useSidebarResize.d.ts +19 -0
  133. package/dist/hooks/useWizard.d.ts +40 -0
  134. package/dist/i18n/DatabaseBackend.d.ts +9 -0
  135. package/dist/i18n/components/TranslationLoader.d.ts +10 -0
  136. package/dist/i18n/config.d.ts +2 -0
  137. package/dist/i18n/constants.d.ts +126 -0
  138. package/dist/i18n/index.d.ts +21 -0
  139. package/dist/index.d.ts +83 -0
  140. package/dist/index.esm.js +1 -1
  141. package/dist/index.js +1 -1
  142. package/dist/leadership/components/LeaderRow.d.ts +9 -0
  143. package/dist/leadership/components/LeadershipDialog.d.ts +10 -0
  144. package/dist/leadership/components/LeadershipForm.d.ts +8 -0
  145. package/dist/leadership/components/LeadershipPage.d.ts +1 -0
  146. package/dist/leadership/hooks/useLeadershipApi.d.ts +2 -0
  147. package/dist/leadership/hooks/useLeadershipMutations.d.ts +30 -0
  148. package/dist/leadership/index.d.ts +14 -0
  149. package/dist/leadership/types.d.ts +17 -0
  150. package/dist/leadership/utils/leadershipUtils.d.ts +8 -0
  151. package/dist/media/components/ImageEditor.d.ts +22 -0
  152. package/dist/media/components/ImageRenderer.d.ts +23 -0
  153. package/dist/media/components/VideoEditor.d.ts +22 -0
  154. package/dist/media/components/VideoRenderer.d.ts +8 -0
  155. package/dist/media/hooks/useMediaUpload.d.ts +20 -0
  156. package/dist/media/index.d.ts +49 -0
  157. package/dist/media/types.d.ts +66 -0
  158. package/dist/media/utils/imageHelpers.d.ts +28 -0
  159. package/dist/media/utils/videoHelpers.d.ts +35 -0
  160. package/dist/places/components/ManageAccessModal.d.ts +11 -0
  161. package/dist/places/components/PlaceCard.d.ts +12 -0
  162. package/dist/places/components/PlacesList.d.ts +12 -0
  163. package/dist/places/index.d.ts +8 -0
  164. package/dist/places/services/PlaceService.d.ts +9 -0
  165. package/dist/places/types.d.ts +10 -0
  166. package/dist/providers/CoreProviders.d.ts +66 -0
  167. package/dist/providers/index.d.ts +2 -0
  168. package/dist/qualiex/components/QualiexUserField.d.ts +125 -0
  169. package/dist/qualiex/hooks/useQualiexUsers.d.ts +51 -0
  170. package/dist/qualiex/services/qualiexApi.d.ts +21 -0
  171. package/dist/qualiex/utils/QualiexErrorInterceptor.d.ts +15 -0
  172. package/dist/qualiex/utils/userPlaceUtils.d.ts +16 -0
  173. package/dist/services/BaseService.d.ts +51 -0
  174. package/dist/services/EmailService.d.ts +110 -0
  175. package/dist/services/ErrorService.d.ts +19 -0
  176. package/dist/services/QualiexEnrichmentService.d.ts +65 -0
  177. package/dist/services/QualiexFieldHelpers.d.ts +17 -0
  178. package/dist/services/TranslationService.d.ts +20 -0
  179. package/dist/setup.d.ts +14 -0
  180. package/dist/sign/components/D4SignWidget.d.ts +2 -0
  181. package/dist/sign/components/DocumentSigner.d.ts +2 -0
  182. package/dist/sign/components/SignConfigForm.d.ts +2 -0
  183. package/dist/sign/components/SignWidget.d.ts +21 -0
  184. package/dist/sign/hooks/useSignConfig.d.ts +6 -0
  185. package/dist/sign/index.d.ts +7 -0
  186. package/dist/sign/services/signService.d.ts +23 -0
  187. package/dist/sign/types.d.ts +53 -0
  188. package/dist/supabase/SupabaseSingleton.d.ts +3 -0
  189. package/dist/supabase/client.d.ts +2 -0
  190. package/dist/supabase/publicClient.d.ts +2 -0
  191. package/dist/supabase/types.d.ts +377 -0
  192. package/dist/types/sidebar.d.ts +49 -0
  193. package/dist/types.d.ts +499 -0
  194. package/dist/utils/formatters/currencyFormatters.d.ts +1 -0
  195. package/dist/utils/formatters/dateFormatters.d.ts +52 -0
  196. package/dist/utils/index.d.ts +8 -0
  197. package/dist/utils/linkHelpers.d.ts +4 -0
  198. package/package.json +1 -1
@@ -0,0 +1,53 @@
1
+ import { ReactNode } from "react";
2
+ /**
3
+ * GridProps
4
+ *
5
+ * Propriedades do componente Grid.
6
+ *
7
+ * @property children - Elementos filhos do grid
8
+ * @property cols - Número de colunas ou modo responsivo (auto-fit/auto-fill)
9
+ * @property gap - Espaçamento entre itens
10
+ * @property className - Classes CSS adicionais
11
+ */
12
+ interface GridProps {
13
+ children: ReactNode;
14
+ cols?: "1" | "2" | "3" | "4" | "5" | "6" | "auto-fit" | "auto-fill";
15
+ gap?: "xs" | "sm" | "md" | "lg" | "xl";
16
+ className?: string;
17
+ }
18
+ /**
19
+ * Grid Component
20
+ *
21
+ * Sistema de grid responsivo com configuração simplificada.
22
+ *
23
+ * @example
24
+ * ```tsx
25
+ * // Grid com 3 colunas fixas
26
+ * <Grid cols="3" gap="md">
27
+ * <div>Item 1</div>
28
+ * <div>Item 2</div>
29
+ * <div>Item 3</div>
30
+ * </Grid>
31
+ *
32
+ * // Grid responsivo (auto-fit)
33
+ * <Grid cols="auto-fit" gap="lg">
34
+ * <Card>Item 1</Card>
35
+ * <Card>Item 2</Card>
36
+ * <Card>Item 3</Card>
37
+ * </Grid>
38
+ * ```
39
+ *
40
+ * ## Opções de Colunas
41
+ * - `"1"` a `"6"`: Número fixo de colunas
42
+ * - `"auto-fit"`: Ajusta automaticamente o número de colunas (mín. 250px)
43
+ * - `"auto-fill"`: Preenche o espaço disponível (mín. 250px)
44
+ *
45
+ * ## Opções de Gap
46
+ * - `xs`: 0.25rem (4px)
47
+ * - `sm`: 0.5rem (8px)
48
+ * - `md`: 1rem (16px) - padrão
49
+ * - `lg`: 1.5rem (24px)
50
+ * - `xl`: 2rem (32px)
51
+ */
52
+ export declare function Grid({ children, cols, gap, className }: GridProps): import("react/jsx-runtime").JSX.Element;
53
+ export {};
@@ -0,0 +1,6 @@
1
+ import * as React from "react";
2
+ import * as HoverCardPrimitive from "@radix-ui/react-hover-card";
3
+ declare const HoverCard: React.FC<HoverCardPrimitive.HoverCardProps>;
4
+ declare const HoverCardTrigger: React.ForwardRefExoticComponent<HoverCardPrimitive.HoverCardTriggerProps & React.RefAttributes<HTMLAnchorElement>>;
5
+ declare const HoverCardContent: React.ForwardRefExoticComponent<Omit<HoverCardPrimitive.HoverCardContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
6
+ export { HoverCard, HoverCardTrigger, HoverCardContent };
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ interface IconPickerProps {
3
+ value?: string;
4
+ onChange?: (iconName: string) => void;
5
+ label?: string;
6
+ }
7
+ export declare const IconPicker: React.FC<IconPickerProps>;
8
+ export {};
@@ -0,0 +1,97 @@
1
+ import * as React from "react";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ import { type ButtonProps } from "./button";
4
+ /**
5
+ * InputGroup Component
6
+ *
7
+ * Agrupa inputs com addons de prefixo, sufixo, ícones e botões.
8
+ * Segue a API oficial do shadcn/ui.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <InputGroup>
13
+ * <InputGroupAddon>
14
+ * <Search className="h-4 w-4" />
15
+ * </InputGroupAddon>
16
+ * <InputGroupInput placeholder="Buscar..." />
17
+ * </InputGroup>
18
+ * ```
19
+ */
20
+ declare const InputGroup: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
21
+ /**
22
+ * InputGroupAddon Variants
23
+ */
24
+ declare const inputGroupAddonVariants: (props?: {
25
+ align?: "block-end" | "block-start" | "inline-end" | "inline-start";
26
+ } & import("class-variance-authority/types").ClassProp) => string;
27
+ export interface InputGroupAddonProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof inputGroupAddonVariants> {
28
+ }
29
+ /**
30
+ * InputGroupAddon Component
31
+ *
32
+ * Exibe ícones, textos, botões ou outros conteúdos junto aos inputs.
33
+ *
34
+ * @prop align - Alinhamento do addon: "inline-start" | "inline-end" | "block-start" | "block-end"
35
+ *
36
+ * @example
37
+ * ```tsx
38
+ * <InputGroupAddon align="inline-start">
39
+ * <Search className="h-4 w-4" />
40
+ * </InputGroupAddon>
41
+ * ```
42
+ */
43
+ declare const InputGroupAddon: React.ForwardRefExoticComponent<InputGroupAddonProps & React.RefAttributes<HTMLDivElement>>;
44
+ /**
45
+ * InputGroupButton Variants
46
+ */
47
+ declare const inputGroupButtonVariants: (props?: {
48
+ size?: "sm" | "icon-sm" | "icon-xs" | "xs";
49
+ } & import("class-variance-authority/types").ClassProp) => string;
50
+ export interface InputGroupButtonProps extends Omit<ButtonProps, "size">, VariantProps<typeof inputGroupButtonVariants> {
51
+ }
52
+ /**
53
+ * InputGroupButton Component
54
+ *
55
+ * Botão estilizado para uso dentro de InputGroup.
56
+ *
57
+ * @prop size - Tamanho do botão: "xs" | "icon-xs" | "sm" | "icon-sm"
58
+ * @prop variant - Variante do botão (herda do Button)
59
+ *
60
+ * @example
61
+ * ```tsx
62
+ * <InputGroupButton variant="ghost" size="icon-xs">
63
+ * <X className="h-4 w-4" />
64
+ * </InputGroupButton>
65
+ * ```
66
+ */
67
+ declare const InputGroupButton: React.ForwardRefExoticComponent<InputGroupButtonProps & React.RefAttributes<HTMLButtonElement>>;
68
+ /**
69
+ * InputGroupInput Component
70
+ *
71
+ * Input estilizado para uso dentro de InputGroup.
72
+ * Remove bordas e estilos de foco para integração com o grupo.
73
+ *
74
+ * @example
75
+ * ```tsx
76
+ * <InputGroupInput placeholder="Digite aqui..." />
77
+ * ```
78
+ */
79
+ declare const InputGroupInput: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
80
+ /**
81
+ * InputGroupTextarea Component
82
+ *
83
+ * Textarea estilizado para uso dentro de InputGroup.
84
+ * Usado com align="block-start" ou "block-end" no addon.
85
+ *
86
+ * @example
87
+ * ```tsx
88
+ * <InputGroup className="flex-col">
89
+ * <InputGroupAddon align="block-start">
90
+ * <span>Descrição</span>
91
+ * </InputGroupAddon>
92
+ * <InputGroupTextarea placeholder="Digite..." />
93
+ * </InputGroup>
94
+ * ```
95
+ */
96
+ declare const InputGroupTextarea: React.ForwardRefExoticComponent<Omit<import("./textarea").TextareaProps & React.RefAttributes<HTMLTextAreaElement>, "ref"> & React.RefAttributes<HTMLTextAreaElement>>;
97
+ export { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupTextarea, inputGroupAddonVariants, inputGroupButtonVariants, };
@@ -0,0 +1,37 @@
1
+ import * as React from "react";
2
+ /**
3
+ * Input Component
4
+ *
5
+ * Campo de entrada de texto estilizado com suporte completo a tipos HTML.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * <Input type="text" placeholder="Digite seu nome" />
10
+ * <Input type="email" placeholder="email@exemplo.com" />
11
+ * <Input type="password" placeholder="Senha" />
12
+ * ```
13
+ *
14
+ * ## Características
15
+ * - Suporte a todos os tipos HTML (text, email, password, number, etc.)
16
+ * - Estados de foco, disabled e error
17
+ * - Integração com react-hook-form
18
+ * - Estilos do design system
19
+ *
20
+ * ## Uso com Formulários
21
+ * ```tsx
22
+ * <FormField
23
+ * control={form.control}
24
+ * name="email"
25
+ * render={({ field }) => (
26
+ * <FormItem>
27
+ * <FormLabel>Email</FormLabel>
28
+ * <FormControl>
29
+ * <Input placeholder="email@exemplo.com" {...field} />
30
+ * </FormControl>
31
+ * </FormItem>
32
+ * )}
33
+ * />
34
+ * ```
35
+ */
36
+ declare const Input: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
37
+ export { Input };
@@ -0,0 +1,23 @@
1
+ import * as React from "react";
2
+ import * as LabelPrimitive from "@radix-ui/react-label";
3
+ import { type VariantProps } from "class-variance-authority";
4
+ /**
5
+ * Label Component
6
+ *
7
+ * Componente de rótulo acessível baseado em Radix UI.
8
+ *
9
+ * @example
10
+ * ```tsx
11
+ * <Label htmlFor="email">Email</Label>
12
+ * <Input id="email" type="email" />
13
+ * ```
14
+ *
15
+ * ## Características
16
+ * - Associação automática com campos de formulário via htmlFor/id
17
+ * - Suporte a estados disabled (opacidade reduzida)
18
+ * - Acessibilidade completa
19
+ *
20
+ * @see https://www.radix-ui.com/docs/primitives/components/label
21
+ */
22
+ declare const Label: React.ForwardRefExoticComponent<Omit<LabelPrimitive.LabelProps & React.RefAttributes<HTMLLabelElement>, "ref"> & VariantProps<(props?: import("class-variance-authority/types").ClassProp) => string> & React.RefAttributes<HTMLLabelElement>>;
23
+ export { Label };
@@ -0,0 +1,52 @@
1
+ import { ReactNode } from "react";
2
+ interface LoadingStateProps {
3
+ isLoading: boolean;
4
+ children: ReactNode;
5
+ className?: string;
6
+ type?: "spinner" | "skeleton" | "overlay";
7
+ size?: "sm" | "md" | "lg";
8
+ }
9
+ /**
10
+ * Componente para gerenciar estados de loading de forma declarativa
11
+ *
12
+ * Oferece 3 tipos de loading states:
13
+ * - **spinner**: Mostra apenas o spinner (esconde children)
14
+ * - **skeleton**: Mostra um placeholder animado
15
+ * - **overlay**: Mostra children com spinner sobreposto
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * import { LoadingState } from 'forlogic-core/modular';
20
+ *
21
+ * function MyComponent() {
22
+ * const { data, isLoading } = useQuery(...);
23
+ *
24
+ * return (
25
+ * <LoadingState isLoading={isLoading} type="spinner">
26
+ * <div>{data?.content}</div>
27
+ * </LoadingState>
28
+ * );
29
+ * }
30
+ * ```
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * // Skeleton para placeholders
35
+ * <LoadingState isLoading={isLoading} type="skeleton" className="h-32">
36
+ * <ProductCard product={product} />
37
+ * </LoadingState>
38
+ *
39
+ * // Overlay para preservar layout
40
+ * <LoadingState isLoading={isSaving} type="overlay">
41
+ * <form>...</form>
42
+ * </LoadingState>
43
+ * ```
44
+ *
45
+ * @param props.isLoading Se true, mostra o estado de loading
46
+ * @param props.children Conteúdo a ser renderizado quando não está loading
47
+ * @param props.type Tipo de loading: "spinner" | "skeleton" | "overlay" (default: "spinner")
48
+ * @param props.size Tamanho do spinner: "sm" | "md" | "lg" (default: "md")
49
+ * @param props.className Classes CSS adicionais
50
+ */
51
+ export declare function LoadingState({ isLoading, children, className, type, size }: LoadingStateProps): import("react/jsx-runtime").JSX.Element;
52
+ export {};
@@ -0,0 +1,33 @@
1
+ import * as React from "react";
2
+ import * as MenubarPrimitive from "@radix-ui/react-menubar";
3
+ declare const MenubarMenu: {
4
+ (props: MenubarPrimitive.MenubarMenuProps & {
5
+ __scopeMenubar?: import("@radix-ui/react-context").Scope;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ displayName: string;
8
+ };
9
+ declare const MenubarGroup: React.ForwardRefExoticComponent<MenubarPrimitive.MenubarGroupProps & React.RefAttributes<HTMLDivElement>>;
10
+ declare const MenubarPortal: React.FC<MenubarPrimitive.MenubarPortalProps>;
11
+ declare const MenubarSub: React.FC<MenubarPrimitive.MenubarSubProps>;
12
+ declare const MenubarRadioGroup: React.ForwardRefExoticComponent<MenubarPrimitive.MenubarRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
13
+ declare const Menubar: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
14
+ declare const MenubarTrigger: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
15
+ declare const MenubarSubTrigger: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarSubTriggerProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
16
+ inset?: boolean;
17
+ } & React.RefAttributes<HTMLDivElement>>;
18
+ declare const MenubarSubContent: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarSubContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
19
+ declare const MenubarContent: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
20
+ declare const MenubarItem: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
21
+ inset?: boolean;
22
+ } & React.RefAttributes<HTMLDivElement>>;
23
+ declare const MenubarCheckboxItem: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarCheckboxItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
24
+ declare const MenubarRadioItem: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarRadioItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
25
+ declare const MenubarLabel: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
26
+ inset?: boolean;
27
+ } & React.RefAttributes<HTMLDivElement>>;
28
+ declare const MenubarSeparator: React.ForwardRefExoticComponent<Omit<MenubarPrimitive.MenubarSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
29
+ declare const MenubarShortcut: {
30
+ ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): import("react/jsx-runtime").JSX.Element;
31
+ displayname: string;
32
+ };
33
+ export { Menubar, MenubarMenu, MenubarTrigger, MenubarContent, MenubarItem, MenubarSeparator, MenubarLabel, MenubarCheckboxItem, MenubarRadioGroup, MenubarRadioItem, MenubarPortal, MenubarSubContent, MenubarSubTrigger, MenubarGroup, MenubarSub, MenubarShortcut, };
@@ -0,0 +1,12 @@
1
+ import * as React from "react";
2
+ import * as NavigationMenuPrimitive from "@radix-ui/react-navigation-menu";
3
+ declare const NavigationMenu: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuProps & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
4
+ declare const NavigationMenuList: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuListProps & React.RefAttributes<HTMLUListElement>, "ref"> & React.RefAttributes<HTMLUListElement>>;
5
+ declare const NavigationMenuItem: React.ForwardRefExoticComponent<NavigationMenuPrimitive.NavigationMenuItemProps & React.RefAttributes<HTMLLIElement>>;
6
+ declare const navigationMenuTriggerStyle: (props?: import("class-variance-authority/types").ClassProp) => string;
7
+ declare const NavigationMenuTrigger: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
8
+ declare const NavigationMenuContent: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
9
+ declare const NavigationMenuLink: React.ForwardRefExoticComponent<NavigationMenuPrimitive.NavigationMenuLinkProps & React.RefAttributes<HTMLAnchorElement>>;
10
+ declare const NavigationMenuViewport: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuViewportProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
11
+ declare const NavigationMenuIndicator: React.ForwardRefExoticComponent<Omit<NavigationMenuPrimitive.NavigationMenuIndicatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
12
+ export { navigationMenuTriggerStyle, NavigationMenu, NavigationMenuList, NavigationMenuItem, NavigationMenuContent, NavigationMenuTrigger, NavigationMenuLink, NavigationMenuIndicator, NavigationMenuViewport, };
@@ -0,0 +1,43 @@
1
+ import * as React from "react";
2
+ export interface OnboardingStep {
3
+ /** Identificador único do step */
4
+ id: string;
5
+ /** URL da imagem ou GIF (opcional) */
6
+ image?: string;
7
+ /** Título do step */
8
+ title: string;
9
+ /** Descrição do step */
10
+ description: string;
11
+ }
12
+ export interface OnboardingDialogProps {
13
+ /** Controla se o dialog está aberto */
14
+ open: boolean;
15
+ /** Callback quando o estado de aberto muda */
16
+ onOpenChange: (open: boolean) => void;
17
+ /** Array de steps do onboarding */
18
+ steps: OnboardingStep[];
19
+ /** Callback quando o onboarding é concluído */
20
+ onComplete?: () => void;
21
+ /** Callback quando o step muda */
22
+ onStepChange?: (stepIndex: number) => void;
23
+ /** Texto do botão continuar (default: "Continuar") */
24
+ continueButtonText?: string;
25
+ /** Texto do botão voltar (default: "Voltar") */
26
+ backButtonText?: string;
27
+ /** Texto do botão finalizar (default: "Concluir") */
28
+ finishButtonText?: string;
29
+ /** Texto do label de etapa (default: "Etapa") */
30
+ stepLabel?: string;
31
+ /** Tamanho do dialog */
32
+ size?: "sm" | "md" | "lg";
33
+ /** Mostrar indicador de progresso (default: true) */
34
+ showProgressIndicator?: boolean;
35
+ /** Índice do step atual (modo controlado) */
36
+ currentStepIndex?: number;
37
+ /** Callback para mudar o step atual (modo controlado) */
38
+ onCurrentStepChange?: (index: number) => void;
39
+ /** Classes adicionais para o container */
40
+ className?: string;
41
+ }
42
+ declare const OnboardingDialog: React.ForwardRefExoticComponent<OnboardingDialogProps & React.RefAttributes<HTMLDivElement>>;
43
+ export { OnboardingDialog };
@@ -0,0 +1,77 @@
1
+ import { BreadcrumbItem } from "./breadcrumb";
2
+ /**
3
+ * BreadcrumbItem
4
+ *
5
+ * Item individual do breadcrumb.
6
+ *
7
+ * @property label - Texto a ser exibido
8
+ * @property href - Link de navegação (opcional para página atual)
9
+ * @property isCurrentPage - Indica se é a página atual
10
+ */
11
+ interface BreadcrumbItem {
12
+ label: string;
13
+ href?: string;
14
+ isCurrentPage?: boolean;
15
+ }
16
+ /**
17
+ * PageBreadcrumbProps
18
+ *
19
+ * Propriedades do componente PageBreadcrumb.
20
+ *
21
+ * @property items - Lista de itens do breadcrumb
22
+ * @property maxItems - Número máximo de itens antes de colapsar (padrão: 3)
23
+ * @property className - Classes CSS adicionais
24
+ */
25
+ interface PageBreadcrumbProps {
26
+ items: BreadcrumbItem[];
27
+ maxItems?: number;
28
+ className?: string;
29
+ }
30
+ /**
31
+ * PageBreadcrumb Component
32
+ *
33
+ * Componente de navegação breadcrumb com suporte a collapse automático.
34
+ *
35
+ * @example
36
+ * ```tsx
37
+ * const breadcrumbs = [
38
+ * { label: 'Home', href: '/' },
39
+ * { label: 'Produtos', href: '/produtos' },
40
+ * { label: 'Eletrônicos', href: '/produtos/eletronicos' },
41
+ * { label: 'Notebook', isCurrentPage: true }
42
+ * ];
43
+ *
44
+ * <PageBreadcrumb items={breadcrumbs} maxItems={3} />
45
+ * ```
46
+ *
47
+ * ## Características
48
+ * - Collapse automático quando excede maxItems
49
+ * - Mostra primeiro e últimos itens quando colapsado
50
+ * - Indica página atual
51
+ * - Navegação por links
52
+ */
53
+ export declare function PageBreadcrumb({ items, maxItems, className }: PageBreadcrumbProps): import("react/jsx-runtime").JSX.Element;
54
+ /**
55
+ * useRouteBreadcrumbs Hook
56
+ *
57
+ * Gera breadcrumbs automaticamente baseado na rota atual.
58
+ *
59
+ * @example
60
+ * ```tsx
61
+ * function MyPage() {
62
+ * const breadcrumbs = useRouteBreadcrumbs();
63
+ *
64
+ * return <PageBreadcrumb items={breadcrumbs} />;
65
+ * }
66
+ * ```
67
+ *
68
+ * ## Funcionalidade
69
+ * - Analisa a URL atual (location.pathname)
70
+ * - Gera itens do breadcrumb automaticamente
71
+ * - Capitaliza e formata nomes dos segmentos
72
+ * - Marca o último item como página atual
73
+ *
74
+ * @returns Array de BreadcrumbItem gerados a partir da rota
75
+ */
76
+ export declare function useRouteBreadcrumbs(): BreadcrumbItem[];
77
+ export {};
@@ -0,0 +1,28 @@
1
+ import * as React from "react";
2
+ import { ButtonProps } from "./button";
3
+ declare const Pagination: {
4
+ ({ className, ...props }: React.ComponentProps<"nav">): import("react/jsx-runtime").JSX.Element;
5
+ displayName: string;
6
+ };
7
+ declare const PaginationContent: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLUListElement>, HTMLUListElement>, "ref"> & React.RefAttributes<HTMLUListElement>>;
8
+ declare const PaginationItem: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & React.RefAttributes<HTMLLIElement>>;
9
+ type PaginationLinkProps = {
10
+ isActive?: boolean;
11
+ } & Pick<ButtonProps, "size"> & React.ComponentProps<"a">;
12
+ declare const PaginationLink: {
13
+ ({ className, isActive, size, ...props }: PaginationLinkProps): import("react/jsx-runtime").JSX.Element;
14
+ displayName: string;
15
+ };
16
+ declare const PaginationPrevious: {
17
+ ({ className, ...props }: React.ComponentProps<typeof PaginationLink>): import("react/jsx-runtime").JSX.Element;
18
+ displayName: string;
19
+ };
20
+ declare const PaginationNext: {
21
+ ({ className, ...props }: React.ComponentProps<typeof PaginationLink>): import("react/jsx-runtime").JSX.Element;
22
+ displayName: string;
23
+ };
24
+ declare const PaginationEllipsis: {
25
+ ({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
26
+ displayName: string;
27
+ };
28
+ export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, };
@@ -0,0 +1,49 @@
1
+ import * as React from "react";
2
+ import * as PopoverPrimitive from "@radix-ui/react-popover";
3
+ /**
4
+ * Popover Components
5
+ *
6
+ * Componentes para criar popovers (menus flutuantes) acessíveis.
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * <Popover>
11
+ * <PopoverTrigger asChild>
12
+ * <Button variant="outline">Abrir Popover</Button>
13
+ * </PopoverTrigger>
14
+ * <PopoverContent>
15
+ * <div className="space-y-2">
16
+ * <h4 className="font-medium">Título</h4>
17
+ * <p className="text-sm text-muted-foreground">Conteúdo do popover</p>
18
+ * </div>
19
+ * </PopoverContent>
20
+ * </Popover>
21
+ * ```
22
+ *
23
+ * ## Características
24
+ * - Posicionamento automático e inteligente
25
+ * - Animações de entrada/saída
26
+ * - Acessibilidade completa (foco, ESC para fechar)
27
+ * - Portal para evitar problemas de z-index
28
+ *
29
+ * ## Componentes
30
+ * - `Popover`: Container raiz
31
+ * - `PopoverTrigger`: Elemento que abre o popover
32
+ * - `PopoverContent`: Conteúdo do popover
33
+ *
34
+ * @see https://www.radix-ui.com/docs/primitives/components/popover
35
+ */
36
+ declare const Popover: React.FC<PopoverPrimitive.PopoverProps>;
37
+ declare const PopoverTrigger: React.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React.RefAttributes<HTMLButtonElement>>;
38
+ /**
39
+ * PopoverContent
40
+ *
41
+ * Container do conteúdo do popover com animações e posicionamento.
42
+ *
43
+ * @param align - Alinhamento horizontal (start, center, end)
44
+ * @param sideOffset - Distância do trigger em pixels
45
+ */
46
+ declare const PopoverContent: React.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
47
+ container?: HTMLElement | null;
48
+ } & React.RefAttributes<HTMLDivElement>>;
49
+ export { Popover, PopoverTrigger, PopoverContent };
@@ -0,0 +1,22 @@
1
+ import * as React from "react";
2
+ import * as ProgressPrimitive from "@radix-ui/react-progress";
3
+ /**
4
+ * Progress Component
5
+ *
6
+ * Barra de progresso para indicar o andamento de uma operação.
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * <Progress value={60} />
11
+ * ```
12
+ *
13
+ * ## Características
14
+ * - Valor de 0 a 100
15
+ * - Animação suave de transição
16
+ * - Cores do design system (primary)
17
+ * - Acessibilidade completa
18
+ *
19
+ * @see https://www.radix-ui.com/docs/primitives/components/progress
20
+ */
21
+ declare const Progress: React.ForwardRefExoticComponent<Omit<ProgressPrimitive.ProgressProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
22
+ export { Progress };
@@ -0,0 +1,63 @@
1
+ import * as React from "react";
2
+ import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
3
+ /**
4
+ * RadioGroup Component
5
+ *
6
+ * Grupo de botões de rádio acessível baseado em Radix UI.
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * <RadioGroup defaultValue="option1">
11
+ * <div className="flex items-center space-x-2">
12
+ * <RadioGroupItem value="option1" id="option1" />
13
+ * <Label htmlFor="option1">Opção 1</Label>
14
+ * </div>
15
+ * <div className="flex items-center space-x-2">
16
+ * <RadioGroupItem value="option2" id="option2" />
17
+ * <Label htmlFor="option2">Opção 2</Label>
18
+ * </div>
19
+ * </RadioGroup>
20
+ * ```
21
+ *
22
+ * ## Uso com Formulários
23
+ * ```tsx
24
+ * <FormField
25
+ * control={form.control}
26
+ * name="type"
27
+ * render={({ field }) => (
28
+ * <FormItem>
29
+ * <FormLabel>Tipo</FormLabel>
30
+ * <FormControl>
31
+ * <RadioGroup
32
+ * onValueChange={field.onChange}
33
+ * defaultValue={field.value}
34
+ * >
35
+ * <FormItem className="flex items-center space-x-2">
36
+ * <FormControl>
37
+ * <RadioGroupItem value="option1" />
38
+ * </FormControl>
39
+ * <FormLabel className="font-normal">Opção 1</FormLabel>
40
+ * </FormItem>
41
+ * </RadioGroup>
42
+ * </FormControl>
43
+ * </FormItem>
44
+ * )}
45
+ * />
46
+ * ```
47
+ *
48
+ * ## Características
49
+ * - Seleção única por grupo
50
+ * - Estados de foco e disabled
51
+ * - Integração com react-hook-form
52
+ * - Acessibilidade completa
53
+ *
54
+ * @see https://www.radix-ui.com/docs/primitives/components/radio-group
55
+ */
56
+ declare const RadioGroup: React.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
57
+ /**
58
+ * RadioGroupItem
59
+ *
60
+ * Item individual do grupo de rádio com indicador visual.
61
+ */
62
+ declare const RadioGroupItem: React.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupItemProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
63
+ export { RadioGroup, RadioGroupItem };
@@ -0,0 +1,23 @@
1
+ import * as ResizablePrimitive from "react-resizable-panels";
2
+ declare const ResizablePanelGroup: ({ className, ...props }: React.ComponentProps<typeof ResizablePrimitive.PanelGroup>) => import("react/jsx-runtime").JSX.Element;
3
+ declare const ResizablePanel: import("react").ForwardRefExoticComponent<Omit<import("react").HTMLAttributes<HTMLButtonElement | HTMLElement | HTMLInputElement | HTMLLabelElement | HTMLObjectElement | HTMLLinkElement | HTMLFormElement | HTMLSlotElement | HTMLStyleElement | HTMLTitleElement | HTMLMapElement | HTMLDialogElement | HTMLImageElement | HTMLOptionElement | HTMLTableElement | HTMLTimeElement | HTMLAnchorElement | HTMLAreaElement | HTMLAudioElement | HTMLBaseElement | HTMLQuoteElement | HTMLBodyElement | HTMLBRElement | HTMLCanvasElement | HTMLTableColElement | HTMLDataElement | HTMLDataListElement | HTMLModElement | HTMLDetailsElement | HTMLDivElement | HTMLDListElement | HTMLEmbedElement | HTMLFieldSetElement | HTMLHeadingElement | HTMLHeadElement | HTMLHRElement | HTMLHtmlElement | HTMLIFrameElement | HTMLLegendElement | HTMLLIElement | HTMLMetaElement | HTMLMeterElement | HTMLOListElement | HTMLOptGroupElement | HTMLOutputElement | HTMLParagraphElement | HTMLPreElement | HTMLProgressElement | HTMLScriptElement | HTMLSelectElement | HTMLSourceElement | HTMLSpanElement | HTMLTemplateElement | HTMLTableSectionElement | HTMLTableCellElement | HTMLTextAreaElement | HTMLTableRowElement | HTMLTrackElement | HTMLUListElement | HTMLVideoElement | HTMLTableCaptionElement | HTMLMenuElement | HTMLPictureElement>, "id" | "onResize"> & {
4
+ className?: string;
5
+ collapsedSize?: number | undefined;
6
+ collapsible?: boolean | undefined;
7
+ defaultSize?: number | undefined;
8
+ id?: string;
9
+ maxSize?: number | undefined;
10
+ minSize?: number | undefined;
11
+ onCollapse?: ResizablePrimitive.PanelOnCollapse;
12
+ onExpand?: ResizablePrimitive.PanelOnExpand;
13
+ onResize?: ResizablePrimitive.PanelOnResize;
14
+ order?: number;
15
+ style?: object;
16
+ tagName?: keyof HTMLElementTagNameMap | undefined;
17
+ } & {
18
+ children?: import("react").ReactNode | undefined;
19
+ } & import("react").RefAttributes<ResizablePrimitive.ImperativePanelHandle>>;
20
+ declare const ResizableHandle: ({ withHandle, className, ...props }: React.ComponentProps<typeof ResizablePrimitive.PanelResizeHandle> & {
21
+ withHandle?: boolean;
22
+ }) => import("react/jsx-runtime").JSX.Element;
23
+ export { ResizablePanelGroup, ResizablePanel, ResizableHandle };