forlogic-core 2.0.3 → 2.0.5

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 (207) hide show
  1. package/.note/memory/features/crud-defaults-batteries-included.md +1 -1
  2. package/README.md +187 -917
  3. package/dist/components/ui/dialog-wizard.d.ts +82 -0
  4. package/dist/components/ui/input-group.d.ts +1 -1
  5. package/dist/components/ui/input.d.ts +5 -23
  6. package/dist/components/ui/resizable.d.ts +1 -1
  7. package/dist/components/ui/sidebar.d.ts +1 -1
  8. package/dist/components/ui/step-selector.d.ts +11 -9
  9. package/dist/components/ui/textarea.d.ts +1 -0
  10. package/dist/crud/components/CrudTable.d.ts +3 -1
  11. package/dist/crud/createCrudPage.d.ts +2 -0
  12. package/dist/crud/hooks/useColumnManager.d.ts +3 -1
  13. package/dist/exports/ui.d.ts +1 -0
  14. package/dist/index.css +1 -1
  15. package/dist/index.css.map +1 -1
  16. package/dist/index.esm.js +1 -1
  17. package/dist/index.js +1 -1
  18. package/dist/types/sidebar.d.ts +2 -1
  19. package/dist/types.d.ts +3 -0
  20. package/docs/AUDIT_PROMPT.md +74 -0
  21. package/docs/PROJECT_KNOWLEDGE_TEMPLATE.md +117 -0
  22. package/docs/PROMPT_TEMPLATE.md +77 -0
  23. package/docs/STARTER_TEMPLATE.md +114 -0
  24. package/docs/design-system/README.md +45 -0
  25. package/docs/design-system/buttons-actions.md +433 -0
  26. package/docs/design-system/charts-dashboards.md +547 -0
  27. package/docs/design-system/crud.md +243 -0
  28. package/docs/design-system/data-display.md +360 -0
  29. package/docs/design-system/dialogs.md +588 -0
  30. package/docs/design-system/domain.md +661 -0
  31. package/docs/design-system/examples.md +275 -0
  32. package/docs/design-system/foundation.md +82 -0
  33. package/docs/design-system/infra-utils.md +36 -0
  34. package/docs/design-system/inputs.md +556 -0
  35. package/docs/design-system/layout.md +351 -0
  36. package/docs/design-system/navigation.md +604 -0
  37. package/docs/design-system/notifications-feedback.md +139 -0
  38. package/docs/design-system/platform.md +95 -0
  39. package/docs/design-system/selectors.md +424 -0
  40. package/docs/design-system/tables-grids.md +114 -0
  41. package/package.json +2 -2
  42. package/dist/assets/AccordionDoc-CGNlubG3.js +0 -31
  43. package/dist/assets/ActionButtonDoc-CYtkXR0k.js +0 -47
  44. package/dist/assets/ActionPlanDoc-BSuPRftQ.js +0 -65
  45. package/dist/assets/AlertDoc-Cpvxneqg.js +0 -37
  46. package/dist/assets/AliasUrlDoc-DIpUWf4Y.js +0 -189
  47. package/dist/assets/AppHeaderDoc-DNQErj_t.js +0 -74
  48. package/dist/assets/AppSidebarDoc-DkeQarDu.js +0 -221
  49. package/dist/assets/ApprovalFlowDoc-8YgXbhKJ.js +0 -31
  50. package/dist/assets/AuditLogDoc-BBvNcHIo.js +0 -67
  51. package/dist/assets/AuditTrailDoc-DgFHO-uo.js +0 -17
  52. package/dist/assets/AuthDoc-WIA_Aetl.js +0 -200
  53. package/dist/assets/AvatarDoc-B6go1C1T.js +0 -11
  54. package/dist/assets/BadgeDoc-BONhfqB_.js +0 -36
  55. package/dist/assets/BaseFormDoc-CuyUArcj.js +0 -169
  56. package/dist/assets/BodyContentDoc-CterHC1E.js +0 -83
  57. package/dist/assets/BreadcrumbDoc-Dwn9nLeO.js +0 -75
  58. package/dist/assets/ButtonDoc-BOjRseZT.js +0 -41
  59. package/dist/assets/ButtonGroupDoc-8IS6PPh4.js +0 -7
  60. package/dist/assets/CalendarDoc-CMwIEqgT.js +0 -81
  61. package/dist/assets/CardDoc-BZz1CVg2.js +0 -49
  62. package/dist/assets/ChartDoc-B5vZVtqD.js +0 -76
  63. package/dist/assets/CheckboxDoc-lAbYO9I5.js +0 -55
  64. package/dist/assets/ColorPickerDoc-Dpsprp4N.js +0 -10
  65. package/dist/assets/ColorsFoundationDoc-CCHeSL3p.js +0 -13
  66. package/dist/assets/ComboTreeDoc-D4dTkIt-.js +0 -46
  67. package/dist/assets/ComboboxDoc-CqqZPvZq.js +0 -134
  68. package/dist/assets/ComponentDocTemplate-CQbBhfvZ.js +0 -1
  69. package/dist/assets/ContextMenuDoc-D3jC-MVA.js +0 -182
  70. package/dist/assets/ContextsDoc-XFH0-JdS.js +0 -211
  71. package/dist/assets/CreateCrudPageDoc-CpuiWI-g.js +0 -106
  72. package/dist/assets/CrudActionBarDoc-wuBGXD9Y.js +0 -112
  73. package/dist/assets/CrudGridDoc-BYWqSXBH.js +0 -85
  74. package/dist/assets/CrudOverviewDoc-B_bk2a2t.js +0 -14
  75. package/dist/assets/CrudPrimitivesDoc-CxaTB94A.js +0 -164
  76. package/dist/assets/CrudTableDoc-Dga1VgCu.js +0 -113
  77. package/dist/assets/CustomFormFieldsDoc-C1hwwSl3.js +0 -33
  78. package/dist/assets/DashboardFormDoc-BUDCmrMl.js +0 -49
  79. package/dist/assets/DashboardGeneralViewDoc-Cyg1SIiG.js +0 -71
  80. package/dist/assets/DashboardGridDoc-BavePiRF.js +0 -49
  81. package/dist/assets/DashboardListDoc-CLyMA6UK.js +0 -37
  82. package/dist/assets/DashboardOverviewDoc-DRVvNIF1.js +0 -35
  83. package/dist/assets/DashboardPanelRendererDoc--mfwb8Nc.js +0 -60
  84. package/dist/assets/DashboardPanelsBasicDoc-BQ2V_52D.js +0 -62
  85. package/dist/assets/DashboardPanelsCartesianDoc-sy-hcVQY.js +0 -75
  86. package/dist/assets/DashboardPanelsSpecialDoc-DsIUCRRP.js +0 -83
  87. package/dist/assets/DashboardViewDoc-CtlCNlEF.js +0 -45
  88. package/dist/assets/DataListDoc-DUy88lCQ.js +0 -13
  89. package/dist/assets/DesignSystemHome-DHl9YtbH.js +0 -1
  90. package/dist/assets/DialogDoc-CMQqnTV-.js +0 -981
  91. package/dist/assets/DropdownMenuDoc-S7X9csGt.js +0 -175
  92. package/dist/assets/ElectronicSignatureDialogDoc-BfithaL_.js +0 -57
  93. package/dist/assets/EmptyStateDoc-CHGCiGIk.js +0 -35
  94. package/dist/assets/EnvironmentsDoc-DZHJZ2nm.js +0 -96
  95. package/dist/assets/ErrorBoundaryDoc-DoaAg68p.js +0 -111
  96. package/dist/assets/ExampleActionPlanPage-C0fIMZCD.js +0 -1
  97. package/dist/assets/ExampleAppDoc-DzIU81Fn.js +0 -1
  98. package/dist/assets/ExampleCard-DuLrb3t-.js +0 -1
  99. package/dist/assets/ExampleCrudReportsPage-M0pz6tdM.js +0 -1
  100. package/dist/assets/ExampleDashboardPage-CRG5r3Vw.js +0 -1
  101. package/dist/assets/ExampleIdeasPage-I84ZMLY4.js +0 -1
  102. package/dist/assets/ExampleImportWizardPage-h4YqrrSe.js +0 -1
  103. package/dist/assets/ExampleSettingsPage-CwdWqoaP.js +0 -1
  104. package/dist/assets/FileUploadDoc-9-UujFNX.js +0 -34
  105. package/dist/assets/FilterBar-DDTqqUfZ.js +0 -1
  106. package/dist/assets/FormDoc-CVES6n3d.js +0 -81
  107. package/dist/assets/FoundationOverview-DT0u11Gz.js +0 -1
  108. package/dist/assets/GridDoc-CbHFSILF.js +0 -28
  109. package/dist/assets/HooksDoc-Ctxdk6Wq.js +0 -665
  110. package/dist/assets/HoverCardDoc-8Wkaafdj.js +0 -31
  111. package/dist/assets/I18nDoc-D3Q2m7ik.js +0 -167
  112. package/dist/assets/IconPickerDoc-DZ26Gdpg.js +0 -10
  113. package/dist/assets/IconsFoundationDoc-xOxtC7CW.js +0 -33
  114. package/dist/assets/InputDoc-BhztAiuJ.js +0 -211
  115. package/dist/assets/LabelDoc-A4hmTRRV.js +0 -42
  116. package/dist/assets/LeadershipDoc-CqOSfWsP.js +0 -452
  117. package/dist/assets/MediaDoc-C78gvC8p.js +0 -459
  118. package/dist/assets/MenubarDoc-DCnmd2tO.js +0 -165
  119. package/dist/assets/ModuleAccessDoc-CmD5nHDp.js +0 -153
  120. package/dist/assets/ModulesDialogDoc-DVit1CA-.js +0 -46
  121. package/dist/assets/MultiselectPermissionsDoc-tlJMs04L.js +0 -34
  122. package/dist/assets/NavigationMenuDoc-q1fbc89j.js +0 -116
  123. package/dist/assets/OnboardingDialogDoc-3A3eBYrq.js +0 -55
  124. package/dist/assets/PaginationDoc-B8-bMz5J.js +0 -27
  125. package/dist/assets/PaginationDoc-BkGdxHL3.js +0 -98
  126. package/dist/assets/PlacesDoc-CKPO6ATs.js +0 -226
  127. package/dist/assets/PopoverDoc-CJPU4Ags.js +0 -64
  128. package/dist/assets/ProgressDoc-CpjbTL4o.js +0 -29
  129. package/dist/assets/QualiexUserFieldDoc-DDwumlRw.js +0 -149
  130. package/dist/assets/RadioGroupDoc-D6tSZz8G.js +0 -57
  131. package/dist/assets/RadiusDoc-B4xSnajw.js +0 -7
  132. package/dist/assets/ReportRequestListDoc-C0LIaU8P.js +0 -15
  133. package/dist/assets/RequiredFieldsCounterDoc-COesoSdx.js +0 -58
  134. package/dist/assets/ResizableDoc-CW0-XQuB.js +0 -104
  135. package/dist/assets/RichTextEditorDoc-C8c_XA9P.js +0 -24
  136. package/dist/assets/ScrollAreaDoc-BxtoAPaZ.js +0 -28
  137. package/dist/assets/SecurityDoc-wOVqpg2F.js +0 -204
  138. package/dist/assets/SelectDoc-C75gtY9D.js +0 -80
  139. package/dist/assets/SeparatorDoc-BjQBPB1P.js +0 -4
  140. package/dist/assets/ServicesDoc-CXTctwBl.js +0 -308
  141. package/dist/assets/ShadowsDoc-C6Lw8_x2.js +0 -9
  142. package/dist/assets/SignDoc-Bh5ZUg5x.js +0 -66
  143. package/dist/assets/SkeletonDoc-rTLGK5VE.js +0 -54
  144. package/dist/assets/SliderDoc-JMAMDub7.js +0 -41
  145. package/dist/assets/SpacingDoc-RljOrpwA.js +0 -12
  146. package/dist/assets/SplitButtonDoc-CvShUW3w.js +0 -53
  147. package/dist/assets/StepSelectorDoc-C-nAap9H.js +0 -41
  148. package/dist/assets/SwitchDoc-DLnqmkPr.js +0 -56
  149. package/dist/assets/TableDoc-B8EpWLVg.js +0 -128
  150. package/dist/assets/TabsDoc-DIBtl_uC.js +0 -42
  151. package/dist/assets/TeamSelectorDoc-B7OnCbL7.js +0 -10
  152. package/dist/assets/TermsOfUseDoc-Bb-pw08s.js +0 -16
  153. package/dist/assets/TextareaDoc-DGnqMqEC.js +0 -46
  154. package/dist/assets/ToastDoc-DjYyc7ae.js +0 -157
  155. package/dist/assets/ToggleDoc-C9ZOVjkY.js +0 -51
  156. package/dist/assets/TooltipDoc-BEx4l9-i.js +0 -58
  157. package/dist/assets/TruncatedCellDoc-BbV1bRSY.js +0 -12
  158. package/dist/assets/TypographyFoundationDoc-CUDYjRo9.js +0 -7
  159. package/dist/assets/UpdatesNotificationDoc-7nyjzLMJ.js +0 -29
  160. package/dist/assets/UsersGroupsSelectorDoc-C0KlTAL5.js +0 -18
  161. package/dist/assets/UtilitiesDoc-DGxaHVV1.js +0 -145
  162. package/dist/assets/ViewerDialogsDoc-CnTPTEz0.js +0 -1
  163. package/dist/assets/blocks-B6LrJeAM.js +0 -1
  164. package/dist/assets/building-DeVappnD.js +0 -1
  165. package/dist/assets/calendar-days-BQ0na5kM.js +0 -1
  166. package/dist/assets/check-check-C_-PJCJa.js +0 -1
  167. package/dist/assets/circle-plus-CpIcep-O.js +0 -1
  168. package/dist/assets/circle-x-jPpBPew0.js +0 -1
  169. package/dist/assets/clipboard-list-CXNPdciZ.js +0 -1
  170. package/dist/assets/cloud-upload-BEjzumjl.js +0 -1
  171. package/dist/assets/crown-CqNsQIsm.js +0 -1
  172. package/dist/assets/date-picker-BW3eGOe_.js +0 -1
  173. package/dist/assets/disabled-menu-item-C2YaMvSt.js +0 -1
  174. package/dist/assets/drawer-D5rflIcD.js +0 -3
  175. package/dist/assets/file-braces-DFb5X9so.js +0 -1
  176. package/dist/assets/file-pen-line-CyUGKkEN.js +0 -1
  177. package/dist/assets/git-branch-BcXv9mpp.js +0 -1
  178. package/dist/assets/globe-CpMIWAcv.js +0 -1
  179. package/dist/assets/hash-cQWdKjya.js +0 -1
  180. package/dist/assets/hourglass-BahQ3eDv.js +0 -1
  181. package/dist/assets/hover-card-R66N85sZ.js +0 -1
  182. package/dist/assets/iframe-dialog-V0mW5aBb.js +0 -1
  183. package/dist/assets/index-DkiftrvI.js +0 -352
  184. package/dist/assets/index-nmBjO9Th.css +0 -1
  185. package/dist/assets/life-buoy-ByXiPddz.js +0 -1
  186. package/dist/assets/loading-state-Cb5_t5uE.js +0 -1
  187. package/dist/assets/lucide-react-Cp3Yw3Zm.js +0 -1
  188. package/dist/assets/package-B3-pVvPM.js +0 -1
  189. package/dist/assets/pen-Bi_lmmKT.js +0 -1
  190. package/dist/assets/pin-DVsSl8QA.js +0 -1
  191. package/dist/assets/printer-BnJ8B6m-.js +0 -1
  192. package/dist/assets/radio-group-BHAaNGsm.js +0 -1
  193. package/dist/assets/server-CtzFTfKR.js +0 -1
  194. package/dist/assets/share-2-Dv8Do445.js +0 -1
  195. package/dist/assets/shield-check-CFXjOV_w.js +0 -1
  196. package/dist/assets/shield-x-DJTRfVux.js +0 -1
  197. package/dist/assets/slider-v9tXBSnB.js +0 -1
  198. package/dist/assets/smartphone-BSNR60L7.js +0 -1
  199. package/dist/assets/step-selector-ATTh_9Wa.js +0 -1
  200. package/dist/assets/text-align-start-qE-MbYYw.js +0 -1
  201. package/dist/assets/thumbs-up-D_XIW_uX.js +0 -1
  202. package/dist/assets/trash-DTWQwpwA.js +0 -1
  203. package/dist/assets/trending-up-jip5-leJ.js +0 -1
  204. package/dist/assets/useMockCrud-CN4vjyOZ.js +0 -1
  205. package/dist/assets/user-check-BlH3EDWK.js +0 -1
  206. package/dist/assets/user-plus-BqwXwD-c.js +0 -1
  207. package/dist/index.html +0 -33
@@ -0,0 +1,82 @@
1
+ import * as React from 'react';
2
+ import { type DialogVariant, type DialogSize } from './dialog';
3
+ /**
4
+ * DialogWizard — Dialog com stepper vertical lateral (padrão v2)
5
+ *
6
+ * Substitui o padrão anterior de StepSelector horizontal no footer.
7
+ * Renderiza uma sidebar à esquerda com círculos numerados sobre fundo primário
8
+ * e área de conteúdo à direita com header, body scrollável e footer com navegação.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <DialogWizard
13
+ * open={open}
14
+ * onOpenChange={setOpen}
15
+ * currentStep={step}
16
+ * onStepChange={setStep}
17
+ * steps={['Geral', 'Formulário', 'Configuração']}
18
+ * title="Novo Documento"
19
+ * onSave={handleSave}
20
+ * >
21
+ * {step === 1 && <StepOneContent />}
22
+ * {step === 2 && <StepTwoContent />}
23
+ * {step === 3 && <StepThreeContent />}
24
+ * </DialogWizard>
25
+ * ```
26
+ */
27
+ export interface DialogWizardProps {
28
+ /** Controla se o dialog está aberto */
29
+ open: boolean;
30
+ /** Callback de abertura/fechamento */
31
+ onOpenChange: (open: boolean) => void;
32
+ /** Etapa atual (1-indexed) */
33
+ currentStep: number;
34
+ /** Callback chamado quando uma etapa é selecionada */
35
+ onStepChange: (step: number) => void;
36
+ /** Labels das etapas */
37
+ steps: string[];
38
+ /**
39
+ * Função que valida se pode navegar para uma etapa específica.
40
+ * Voltar para etapas anteriores é sempre permitido.
41
+ * Se não fornecida, todas as etapas são acessíveis.
42
+ */
43
+ canGoToStep?: (targetStep: number) => boolean;
44
+ /** Conteúdo do step atual */
45
+ children: React.ReactNode;
46
+ /** Título exibido no header da área de conteúdo */
47
+ title: string;
48
+ /** Subtítulo opcional abaixo do título */
49
+ description?: string;
50
+ /** Callback do botão "Salvar" no último step */
51
+ onSave?: () => void;
52
+ /** Label do botão salvar (default: "Salvar") */
53
+ saveLabel?: string;
54
+ /** Label do botão próximo (default: "Próximo") */
55
+ nextLabel?: string;
56
+ /** Label do botão voltar (default: "Voltar") */
57
+ backLabel?: string;
58
+ /** Variante do DialogContent */
59
+ variant?: DialogVariant;
60
+ /** Indica se há alterações não salvas */
61
+ isDirty?: boolean;
62
+ /** Tamanho do DialogContent */
63
+ size?: DialogSize;
64
+ /** i18n: Title for unsaved changes alert */
65
+ unsavedChangesTitle?: string;
66
+ /** i18n: Description for unsaved changes alert */
67
+ unsavedChangesDescription?: string;
68
+ /** i18n: Cancel button text */
69
+ cancelText?: string;
70
+ /** i18n: Leave without saving button text */
71
+ leaveWithoutSavingText?: string;
72
+ /** Classes CSS adicionais no container externo */
73
+ className?: string;
74
+ /** Desabilitar botão próximo/salvar (ex: validação do step) */
75
+ disableNext?: boolean;
76
+ /** Ocultar botões de navegação do footer (para controle manual) */
77
+ hideNavigation?: boolean;
78
+ /** Conteúdo extra no footer (à esquerda dos botões de navegação) */
79
+ footerLeft?: React.ReactNode;
80
+ }
81
+ declare function DialogWizard({ open, onOpenChange, currentStep, onStepChange, steps, canGoToStep, children, title, description, onSave, saveLabel, nextLabel, backLabel, variant, isDirty, size, unsavedChangesTitle, unsavedChangesDescription, cancelText, leaveWithoutSavingText, className, disableNext, hideNavigation, footerLeft, }: DialogWizardProps): import("react/jsx-runtime").JSX.Element;
82
+ export { DialogWizard };
@@ -76,7 +76,7 @@ declare const InputGroupButton: React.ForwardRefExoticComponent<InputGroupButton
76
76
  * <InputGroupInput placeholder="Digite aqui..." />
77
77
  * ```
78
78
  */
79
- declare const InputGroupInput: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
79
+ declare const InputGroupInput: React.ForwardRefExoticComponent<Omit<Omit<import("./input").InputProps, "ref"> & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
80
80
  /**
81
81
  * InputGroupTextarea Component
82
82
  *
@@ -9,29 +9,11 @@ import * as React from "react";
9
9
  * <Input type="text" placeholder="Digite seu nome" />
10
10
  * <Input type="email" placeholder="email@exemplo.com" />
11
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
- * />
12
+ * <Input showCharCount maxLength={150} placeholder="Com contador" />
34
13
  * ```
35
14
  */
36
- declare const Input: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
15
+ export interface InputProps extends React.ComponentProps<"input"> {
16
+ showCharCount?: boolean;
17
+ }
18
+ declare const Input: React.ForwardRefExoticComponent<Omit<InputProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
37
19
  export { Input };
@@ -1,6 +1,6 @@
1
1
  import * as ResizablePrimitive from "react-resizable-panels";
2
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<HTMLLinkElement | HTMLElement | HTMLHeadElement | HTMLButtonElement | HTMLInputElement | HTMLLabelElement | HTMLObjectElement | HTMLAnchorElement | HTMLAreaElement | HTMLAudioElement | HTMLBaseElement | HTMLQuoteElement | HTMLBodyElement | HTMLBRElement | HTMLCanvasElement | HTMLTableColElement | HTMLDataElement | HTMLDataListElement | HTMLModElement | HTMLDetailsElement | HTMLDialogElement | HTMLDivElement | HTMLDListElement | HTMLEmbedElement | HTMLFieldSetElement | HTMLFormElement | HTMLHeadingElement | HTMLHRElement | HTMLHtmlElement | HTMLIFrameElement | HTMLImageElement | HTMLLegendElement | HTMLLIElement | HTMLMapElement | HTMLMetaElement | HTMLMeterElement | HTMLOListElement | HTMLOptGroupElement | HTMLOptionElement | HTMLOutputElement | HTMLParagraphElement | HTMLPreElement | HTMLProgressElement | HTMLScriptElement | HTMLSelectElement | HTMLSlotElement | HTMLSourceElement | HTMLSpanElement | HTMLStyleElement | HTMLTableElement | HTMLTableSectionElement | HTMLTableCellElement | HTMLTemplateElement | HTMLTextAreaElement | HTMLTimeElement | HTMLTitleElement | HTMLTableRowElement | HTMLTrackElement | HTMLUListElement | HTMLVideoElement | HTMLTableCaptionElement | HTMLMenuElement | HTMLPictureElement>, "id" | "onResize"> & {
3
+ declare const ResizablePanel: import("react").ForwardRefExoticComponent<Omit<import("react").HTMLAttributes<HTMLLinkElement | HTMLElement | HTMLHeadElement | HTMLButtonElement | HTMLInputElement | HTMLDivElement | HTMLLabelElement | HTMLObjectElement | HTMLAnchorElement | HTMLAreaElement | HTMLAudioElement | HTMLBaseElement | HTMLQuoteElement | HTMLBodyElement | HTMLBRElement | HTMLCanvasElement | HTMLTableColElement | HTMLDataElement | HTMLDataListElement | HTMLModElement | HTMLDetailsElement | HTMLDialogElement | HTMLDListElement | HTMLEmbedElement | HTMLFieldSetElement | HTMLFormElement | HTMLHeadingElement | HTMLHRElement | HTMLHtmlElement | HTMLIFrameElement | HTMLImageElement | HTMLLegendElement | HTMLLIElement | HTMLMapElement | HTMLMetaElement | HTMLMeterElement | HTMLOListElement | HTMLOptGroupElement | HTMLOptionElement | HTMLOutputElement | HTMLParagraphElement | HTMLPreElement | HTMLProgressElement | HTMLScriptElement | HTMLSelectElement | HTMLSlotElement | HTMLSourceElement | HTMLSpanElement | HTMLStyleElement | HTMLTableElement | HTMLTableSectionElement | HTMLTableCellElement | HTMLTemplateElement | HTMLTextAreaElement | HTMLTimeElement | HTMLTitleElement | HTMLTableRowElement | HTMLTrackElement | HTMLUListElement | HTMLVideoElement | HTMLTableCaptionElement | HTMLMenuElement | HTMLPictureElement>, "id" | "onResize"> & {
4
4
  className?: string;
5
5
  collapsedSize?: number | undefined;
6
6
  collapsible?: boolean | undefined;
@@ -25,7 +25,7 @@ declare const Sidebar: React.ForwardRefExoticComponent<Omit<React.ClassAttribute
25
25
  declare const SidebarTrigger: React.ForwardRefExoticComponent<Omit<import("./button").ButtonProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
26
26
  declare const SidebarRail: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
27
27
  declare const SidebarInset: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
28
- declare const SidebarInput: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
28
+ declare const SidebarInput: React.ForwardRefExoticComponent<Omit<Omit<import("./input").InputProps, "ref"> & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
29
29
  declare const SidebarHeader: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
30
30
  declare const SidebarFooter: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
31
31
  declare const SidebarSeparator: React.ForwardRefExoticComponent<Omit<Omit<import("@radix-ui/react-separator").SeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
@@ -1,18 +1,20 @@
1
1
  /**
2
- * StepSelector - Componente de navegação para Wizards multi-etapas
2
+ * @deprecated Use `DialogWizard` para wizards em dialogs. O `StepSelector` será removido em versão futura.
3
+ * Para wizards dentro de Dialog, use o componente `DialogWizard` que implementa o padrão v2
4
+ * com stepper vertical lateral.
5
+ *
6
+ * StepSelector - Componente de navegação para Wizards multi-etapas (legacy)
3
7
  *
4
8
  * Combina um DropdownMenu para seleção de etapas com uma barra de Progress
5
- * para indicação visual do progresso. Ideal para uso em DialogFooter.
9
+ * para indicação visual do progresso.
6
10
  *
7
11
  * @example
8
12
  * ```tsx
9
- * <StepSelector
10
- * currentStep={step}
11
- * totalSteps={4}
12
- * onStepChange={setStep}
13
- * stepLabels={['Tipo', 'Dados', 'Config', 'Confirmar']}
14
- * canGoToStep={(target) => target <= maxValidStep}
15
- * />
13
+ * // ✅ Novo padrão — use DialogWizard
14
+ * <DialogWizard steps={['Tipo', 'Dados', 'Config']} currentStep={step} ... />
15
+ *
16
+ * // ⚠️ Legacy — ainda funciona mas será removido
17
+ * <StepSelector currentStep={step} totalSteps={4} onStepChange={setStep} />
16
18
  * ```
17
19
  */
18
20
  export interface StepSelectorProps {
@@ -1,5 +1,6 @@
1
1
  import * as React from "react";
2
2
  export interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {
3
+ showCharCount?: boolean;
3
4
  }
4
5
  declare const Textarea: React.ForwardRefExoticComponent<TextareaProps & React.RefAttributes<HTMLTextAreaElement>>;
5
6
  export { Textarea };
@@ -40,8 +40,10 @@ export interface CrudTableProps<T extends BaseEntity & {
40
40
  resizeStorageKey?: string;
41
41
  enableColumnManager?: boolean;
42
42
  columnManagerStorageKey?: string;
43
+ /** Column keys to hide by default (before user interaction). Only used when no saved state exists. */
44
+ defaultHiddenColumns?: string[];
43
45
  /** Habilita agrupamento de colunas (GroupDropZone + opções de grupo no ColumnSettings). Default: false */
44
46
  enableGrouping?: boolean;
45
47
  }
46
- export declare const CrudTable: <T extends BaseEntity>({ manager, columns, onEdit, onView, onToggleStatus, onDelete, renderActions, customRowActions, enableBulkActions, rowActionsVariant, onNew, newButtonLabel, showNewButton, customActions, hideActionBar, showActionBar, showSearch, searchValue, onSearchChange, searchPlaceholder, bulkActions, onBulkDelete, filters, viewMode, onViewModeChange, showViewToggle, enableColumnResize, resizeStorageKey, enableColumnManager, columnManagerStorageKey, enableGrouping, }: CrudTableProps<T>) => import("react/jsx-runtime").JSX.Element;
48
+ export declare const CrudTable: <T extends BaseEntity>({ manager, columns, onEdit, onView, onToggleStatus, onDelete, renderActions, customRowActions, enableBulkActions, rowActionsVariant, onNew, newButtonLabel, showNewButton, customActions, hideActionBar, showActionBar, showSearch, searchValue, onSearchChange, searchPlaceholder, bulkActions, onBulkDelete, filters, viewMode, onViewModeChange, showViewToggle, enableColumnResize, resizeStorageKey, enableColumnManager, columnManagerStorageKey, defaultHiddenColumns, enableGrouping, }: CrudTableProps<T>) => import("react/jsx-runtime").JSX.Element;
47
49
  export default CrudTable;
@@ -47,6 +47,8 @@ interface SimpleCrudPageConfig<T extends CrudEntity> {
47
47
  searchPlaceholder?: string;
48
48
  /** Exibir Action Bar (default: true) */
49
49
  showActionBar?: boolean;
50
+ /** Column keys to hide by default (before user interaction). Only used when no saved state exists. */
51
+ defaultHiddenColumns?: string[];
50
52
  }
51
53
  interface CrudPageGeneratorConfig<T extends CrudEntity> {
52
54
  manager: any;
@@ -8,6 +8,8 @@ export interface UseColumnManagerOptions<T> {
8
8
  columns: CrudColumn<T>[];
9
9
  storageKey?: string;
10
10
  enabled?: boolean;
11
+ /** Column keys to hide by default (before any user interaction). Only applied when no saved state exists. */
12
+ defaultHiddenColumns?: string[];
11
13
  }
12
14
  export interface UseColumnManagerReturn<T> {
13
15
  /** Columns filtered by visibility and reordered */
@@ -55,4 +57,4 @@ export interface GroupedData<T> {
55
57
  level: number;
56
58
  children?: GroupedData<T>[];
57
59
  }
58
- export declare function useColumnManager<T extends BaseEntity>({ columns, storageKey, enabled, }: UseColumnManagerOptions<T>): UseColumnManagerReturn<T>;
60
+ export declare function useColumnManager<T extends BaseEntity>({ columns, storageKey, enabled, defaultHiddenColumns, }: UseColumnManagerOptions<T>): UseColumnManagerReturn<T>;
@@ -79,6 +79,7 @@ export * from '../components/ui/timepicker';
79
79
  export * from '../components/ui/electronic-signature-dialog';
80
80
  export * from '../components/ui/step-selector';
81
81
  export { StepSelector as Stepper } from '../components/ui/step-selector';
82
+ export * from '../components/ui/dialog-wizard';
82
83
  export { ComboTree, type ComboTreeProps, type ComboTreeOption } from '../components/ui/combo-tree';
83
84
  export { ComboTree as TreeSelect } from '../components/ui/combo-tree';
84
85
  export type { ComboTreeProps as TreeSelectProps, ComboTreeOption as TreeSelectOption } from '../components/ui/combo-tree';