forlogic-core 2.0.4 → 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 (190) hide show
  1. package/.note/memory/features/crud-defaults-batteries-included.md +1 -1
  2. package/dist/components/ui/dialog-wizard.d.ts +82 -0
  3. package/dist/components/ui/input-group.d.ts +1 -1
  4. package/dist/components/ui/input.d.ts +5 -23
  5. package/dist/components/ui/resizable.d.ts +1 -1
  6. package/dist/components/ui/sidebar.d.ts +1 -1
  7. package/dist/components/ui/step-selector.d.ts +11 -9
  8. package/dist/components/ui/textarea.d.ts +1 -0
  9. package/dist/crud/components/CrudTable.d.ts +3 -1
  10. package/dist/crud/createCrudPage.d.ts +2 -0
  11. package/dist/crud/hooks/useColumnManager.d.ts +3 -1
  12. package/dist/exports/ui.d.ts +1 -0
  13. package/dist/index.css +1 -1
  14. package/dist/index.css.map +1 -1
  15. package/dist/index.esm.js +1 -1
  16. package/dist/index.js +1 -1
  17. package/dist/types.d.ts +3 -0
  18. package/docs/design-system/README.md +2 -2
  19. package/docs/design-system/buttons-actions.md +6 -0
  20. package/docs/design-system/domain.md +10 -0
  21. package/docs/design-system/inputs.md +20 -0
  22. package/docs/design-system/navigation.md +5 -0
  23. package/docs/design-system/notifications-feedback.md +2 -0
  24. package/package.json +1 -1
  25. package/dist/assets/AccordionDoc-CGNlubG3.js +0 -31
  26. package/dist/assets/ActionButtonDoc-CYtkXR0k.js +0 -47
  27. package/dist/assets/ActionPlanDoc-BSuPRftQ.js +0 -65
  28. package/dist/assets/AlertDoc-Cpvxneqg.js +0 -37
  29. package/dist/assets/AliasUrlDoc-DIpUWf4Y.js +0 -189
  30. package/dist/assets/AppHeaderDoc-DNQErj_t.js +0 -74
  31. package/dist/assets/AppSidebarDoc-DkeQarDu.js +0 -221
  32. package/dist/assets/ApprovalFlowDoc-8YgXbhKJ.js +0 -31
  33. package/dist/assets/AuditLogDoc-BBvNcHIo.js +0 -67
  34. package/dist/assets/AuditTrailDoc-DgFHO-uo.js +0 -17
  35. package/dist/assets/AuthDoc-WIA_Aetl.js +0 -200
  36. package/dist/assets/AvatarDoc-B6go1C1T.js +0 -11
  37. package/dist/assets/BadgeDoc-BONhfqB_.js +0 -36
  38. package/dist/assets/BaseFormDoc-CuyUArcj.js +0 -169
  39. package/dist/assets/BodyContentDoc-CterHC1E.js +0 -83
  40. package/dist/assets/BreadcrumbDoc-Dwn9nLeO.js +0 -75
  41. package/dist/assets/ButtonDoc-BOjRseZT.js +0 -41
  42. package/dist/assets/ButtonGroupDoc-8IS6PPh4.js +0 -7
  43. package/dist/assets/CalendarDoc-CMwIEqgT.js +0 -81
  44. package/dist/assets/CardDoc-BZz1CVg2.js +0 -49
  45. package/dist/assets/ChartDoc-B5vZVtqD.js +0 -76
  46. package/dist/assets/CheckboxDoc-lAbYO9I5.js +0 -55
  47. package/dist/assets/ColorPickerDoc-Dpsprp4N.js +0 -10
  48. package/dist/assets/ColorsFoundationDoc-CCHeSL3p.js +0 -13
  49. package/dist/assets/ComboTreeDoc-D4dTkIt-.js +0 -46
  50. package/dist/assets/ComboboxDoc-CqqZPvZq.js +0 -134
  51. package/dist/assets/ComponentDocTemplate-CQbBhfvZ.js +0 -1
  52. package/dist/assets/ContextMenuDoc-D3jC-MVA.js +0 -182
  53. package/dist/assets/ContextsDoc-XFH0-JdS.js +0 -211
  54. package/dist/assets/CreateCrudPageDoc-CpuiWI-g.js +0 -106
  55. package/dist/assets/CrudActionBarDoc-wuBGXD9Y.js +0 -112
  56. package/dist/assets/CrudGridDoc-BYWqSXBH.js +0 -85
  57. package/dist/assets/CrudOverviewDoc-B_bk2a2t.js +0 -14
  58. package/dist/assets/CrudPrimitivesDoc-CxaTB94A.js +0 -164
  59. package/dist/assets/CrudTableDoc-Dga1VgCu.js +0 -113
  60. package/dist/assets/CustomFormFieldsDoc-C1hwwSl3.js +0 -33
  61. package/dist/assets/DashboardFormDoc-BUDCmrMl.js +0 -49
  62. package/dist/assets/DashboardGeneralViewDoc-Cyg1SIiG.js +0 -71
  63. package/dist/assets/DashboardGridDoc-BavePiRF.js +0 -49
  64. package/dist/assets/DashboardListDoc-CLyMA6UK.js +0 -37
  65. package/dist/assets/DashboardOverviewDoc-DRVvNIF1.js +0 -35
  66. package/dist/assets/DashboardPanelRendererDoc--mfwb8Nc.js +0 -60
  67. package/dist/assets/DashboardPanelsBasicDoc-BQ2V_52D.js +0 -62
  68. package/dist/assets/DashboardPanelsCartesianDoc-sy-hcVQY.js +0 -75
  69. package/dist/assets/DashboardPanelsSpecialDoc-DsIUCRRP.js +0 -83
  70. package/dist/assets/DashboardViewDoc-CtlCNlEF.js +0 -45
  71. package/dist/assets/DataListDoc-DUy88lCQ.js +0 -13
  72. package/dist/assets/DesignSystemHome-DHl9YtbH.js +0 -1
  73. package/dist/assets/DialogDoc-CMQqnTV-.js +0 -981
  74. package/dist/assets/DropdownMenuDoc-S7X9csGt.js +0 -175
  75. package/dist/assets/ElectronicSignatureDialogDoc-BfithaL_.js +0 -57
  76. package/dist/assets/EmptyStateDoc-CHGCiGIk.js +0 -35
  77. package/dist/assets/EnvironmentsDoc-DZHJZ2nm.js +0 -96
  78. package/dist/assets/ErrorBoundaryDoc-DoaAg68p.js +0 -111
  79. package/dist/assets/ExampleActionPlanPage-C0fIMZCD.js +0 -1
  80. package/dist/assets/ExampleAppDoc-DzIU81Fn.js +0 -1
  81. package/dist/assets/ExampleCard-DuLrb3t-.js +0 -1
  82. package/dist/assets/ExampleCrudReportsPage-M0pz6tdM.js +0 -1
  83. package/dist/assets/ExampleDashboardPage-CRG5r3Vw.js +0 -1
  84. package/dist/assets/ExampleIdeasPage-I84ZMLY4.js +0 -1
  85. package/dist/assets/ExampleImportWizardPage-h4YqrrSe.js +0 -1
  86. package/dist/assets/ExampleSettingsPage-CwdWqoaP.js +0 -1
  87. package/dist/assets/FileUploadDoc-9-UujFNX.js +0 -34
  88. package/dist/assets/FilterBar-DDTqqUfZ.js +0 -1
  89. package/dist/assets/FormDoc-CVES6n3d.js +0 -81
  90. package/dist/assets/FoundationOverview-DT0u11Gz.js +0 -1
  91. package/dist/assets/GridDoc-CbHFSILF.js +0 -28
  92. package/dist/assets/HooksDoc-Ctxdk6Wq.js +0 -665
  93. package/dist/assets/HoverCardDoc-8Wkaafdj.js +0 -31
  94. package/dist/assets/I18nDoc-D3Q2m7ik.js +0 -167
  95. package/dist/assets/IconPickerDoc-DZ26Gdpg.js +0 -10
  96. package/dist/assets/IconsFoundationDoc-xOxtC7CW.js +0 -33
  97. package/dist/assets/InputDoc-BhztAiuJ.js +0 -211
  98. package/dist/assets/LabelDoc-A4hmTRRV.js +0 -42
  99. package/dist/assets/LeadershipDoc-CqOSfWsP.js +0 -452
  100. package/dist/assets/MediaDoc-C78gvC8p.js +0 -459
  101. package/dist/assets/MenubarDoc-DCnmd2tO.js +0 -165
  102. package/dist/assets/ModuleAccessDoc-CmD5nHDp.js +0 -153
  103. package/dist/assets/ModulesDialogDoc-DVit1CA-.js +0 -46
  104. package/dist/assets/MultiselectPermissionsDoc-tlJMs04L.js +0 -34
  105. package/dist/assets/NavigationMenuDoc-q1fbc89j.js +0 -116
  106. package/dist/assets/OnboardingDialogDoc-3A3eBYrq.js +0 -55
  107. package/dist/assets/PaginationDoc-B8-bMz5J.js +0 -27
  108. package/dist/assets/PaginationDoc-BkGdxHL3.js +0 -98
  109. package/dist/assets/PlacesDoc-CKPO6ATs.js +0 -226
  110. package/dist/assets/PopoverDoc-CJPU4Ags.js +0 -64
  111. package/dist/assets/ProgressDoc-CpjbTL4o.js +0 -29
  112. package/dist/assets/QualiexUserFieldDoc-DDwumlRw.js +0 -149
  113. package/dist/assets/RadioGroupDoc-D6tSZz8G.js +0 -57
  114. package/dist/assets/RadiusDoc-B4xSnajw.js +0 -7
  115. package/dist/assets/ReportRequestListDoc-C0LIaU8P.js +0 -15
  116. package/dist/assets/RequiredFieldsCounterDoc-COesoSdx.js +0 -58
  117. package/dist/assets/ResizableDoc-CW0-XQuB.js +0 -104
  118. package/dist/assets/RichTextEditorDoc-C8c_XA9P.js +0 -24
  119. package/dist/assets/ScrollAreaDoc-BxtoAPaZ.js +0 -28
  120. package/dist/assets/SecurityDoc-wOVqpg2F.js +0 -204
  121. package/dist/assets/SelectDoc-C75gtY9D.js +0 -80
  122. package/dist/assets/SeparatorDoc-BjQBPB1P.js +0 -4
  123. package/dist/assets/ServicesDoc-CXTctwBl.js +0 -308
  124. package/dist/assets/ShadowsDoc-C6Lw8_x2.js +0 -9
  125. package/dist/assets/SignDoc-Bh5ZUg5x.js +0 -66
  126. package/dist/assets/SkeletonDoc-rTLGK5VE.js +0 -54
  127. package/dist/assets/SliderDoc-JMAMDub7.js +0 -41
  128. package/dist/assets/SpacingDoc-RljOrpwA.js +0 -12
  129. package/dist/assets/SplitButtonDoc-CvShUW3w.js +0 -53
  130. package/dist/assets/StepSelectorDoc-C-nAap9H.js +0 -41
  131. package/dist/assets/SwitchDoc-DLnqmkPr.js +0 -56
  132. package/dist/assets/TableDoc-B8EpWLVg.js +0 -128
  133. package/dist/assets/TabsDoc-DIBtl_uC.js +0 -42
  134. package/dist/assets/TeamSelectorDoc-B7OnCbL7.js +0 -10
  135. package/dist/assets/TermsOfUseDoc-Bb-pw08s.js +0 -16
  136. package/dist/assets/TextareaDoc-DGnqMqEC.js +0 -46
  137. package/dist/assets/ToastDoc-DjYyc7ae.js +0 -157
  138. package/dist/assets/ToggleDoc-C9ZOVjkY.js +0 -51
  139. package/dist/assets/TooltipDoc-BEx4l9-i.js +0 -58
  140. package/dist/assets/TruncatedCellDoc-BbV1bRSY.js +0 -12
  141. package/dist/assets/TypographyFoundationDoc-CUDYjRo9.js +0 -7
  142. package/dist/assets/UpdatesNotificationDoc-7nyjzLMJ.js +0 -29
  143. package/dist/assets/UsersGroupsSelectorDoc-C0KlTAL5.js +0 -18
  144. package/dist/assets/UtilitiesDoc-DGxaHVV1.js +0 -145
  145. package/dist/assets/ViewerDialogsDoc-CnTPTEz0.js +0 -1
  146. package/dist/assets/blocks-B6LrJeAM.js +0 -1
  147. package/dist/assets/building-DeVappnD.js +0 -1
  148. package/dist/assets/calendar-days-BQ0na5kM.js +0 -1
  149. package/dist/assets/check-check-C_-PJCJa.js +0 -1
  150. package/dist/assets/circle-plus-CpIcep-O.js +0 -1
  151. package/dist/assets/circle-x-jPpBPew0.js +0 -1
  152. package/dist/assets/clipboard-list-CXNPdciZ.js +0 -1
  153. package/dist/assets/cloud-upload-BEjzumjl.js +0 -1
  154. package/dist/assets/crown-CqNsQIsm.js +0 -1
  155. package/dist/assets/date-picker-BW3eGOe_.js +0 -1
  156. package/dist/assets/disabled-menu-item-C2YaMvSt.js +0 -1
  157. package/dist/assets/drawer-D5rflIcD.js +0 -3
  158. package/dist/assets/file-braces-DFb5X9so.js +0 -1
  159. package/dist/assets/file-pen-line-CyUGKkEN.js +0 -1
  160. package/dist/assets/git-branch-BcXv9mpp.js +0 -1
  161. package/dist/assets/globe-CpMIWAcv.js +0 -1
  162. package/dist/assets/hash-cQWdKjya.js +0 -1
  163. package/dist/assets/hourglass-BahQ3eDv.js +0 -1
  164. package/dist/assets/hover-card-R66N85sZ.js +0 -1
  165. package/dist/assets/iframe-dialog-V0mW5aBb.js +0 -1
  166. package/dist/assets/index-DkiftrvI.js +0 -352
  167. package/dist/assets/index-nmBjO9Th.css +0 -1
  168. package/dist/assets/life-buoy-ByXiPddz.js +0 -1
  169. package/dist/assets/loading-state-Cb5_t5uE.js +0 -1
  170. package/dist/assets/lucide-react-Cp3Yw3Zm.js +0 -1
  171. package/dist/assets/package-B3-pVvPM.js +0 -1
  172. package/dist/assets/pen-Bi_lmmKT.js +0 -1
  173. package/dist/assets/pin-DVsSl8QA.js +0 -1
  174. package/dist/assets/printer-BnJ8B6m-.js +0 -1
  175. package/dist/assets/radio-group-BHAaNGsm.js +0 -1
  176. package/dist/assets/server-CtzFTfKR.js +0 -1
  177. package/dist/assets/share-2-Dv8Do445.js +0 -1
  178. package/dist/assets/shield-check-CFXjOV_w.js +0 -1
  179. package/dist/assets/shield-x-DJTRfVux.js +0 -1
  180. package/dist/assets/slider-v9tXBSnB.js +0 -1
  181. package/dist/assets/smartphone-BSNR60L7.js +0 -1
  182. package/dist/assets/step-selector-ATTh_9Wa.js +0 -1
  183. package/dist/assets/text-align-start-qE-MbYYw.js +0 -1
  184. package/dist/assets/thumbs-up-D_XIW_uX.js +0 -1
  185. package/dist/assets/trash-DTWQwpwA.js +0 -1
  186. package/dist/assets/trending-up-jip5-leJ.js +0 -1
  187. package/dist/assets/useMockCrud-CN4vjyOZ.js +0 -1
  188. package/dist/assets/user-check-BlH3EDWK.js +0 -1
  189. package/dist/assets/user-plus-BqwXwD-c.js +0 -1
  190. package/dist/index.html +0 -33
@@ -3,7 +3,7 @@
3
3
  Todos os CRUDs (CrudTable, createCrudPage) agora incluem por padrão:
4
4
  - **Column resize** (`enableColumnResize=true`) — já era default
5
5
  - **Column manager** (`enableColumnManager=true`) — botão ⋮ no header da coluna "Ações"
6
- - **Sort** — era suportado via `sortable` nas colunas
6
+ - **Sort** — **todas as colunas são ordenáveis por padrão** (`sortable` default `true`). Use `sortable: false` para desabilitar.
7
7
  - **Busca** — por padrão usa a busca global do header (não a action bar). Para busca na action bar, usar `showSearch=true`
8
8
  - **Storage keys** — `createCrudPage` gera automaticamente `columnManagerStorageKey` e `resizeStorageKey` a partir do `entityName`
9
9
 
@@ -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';