@archbase/components 3.0.25 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/dist/buttons/ArchbaseSpeedDial.d.ts +59 -0
  2. package/dist/buttons/index.d.ts +2 -0
  3. package/dist/charts/ArchbaseArcGauge.d.ts +55 -0
  4. package/dist/charts/ArchbaseGantt.d.ts +70 -0
  5. package/dist/charts/ArchbaseLinearGauge.d.ts +55 -0
  6. package/dist/charts/ArchbaseResourceTimeline.d.ts +61 -0
  7. package/dist/charts/ArchbaseSparkline.d.ts +45 -0
  8. package/dist/charts/index.d.ts +10 -0
  9. package/dist/containers/ArchbaseExpansionPanel.d.ts +60 -0
  10. package/dist/containers/ArchbaseFloatingPanel.d.ts +91 -0
  11. package/dist/containers/index.d.ts +4 -0
  12. package/dist/datagrid/export/ArchbaseDataGridExcelExport.d.ts +67 -0
  13. package/dist/datagrid/export/index.d.ts +2 -0
  14. package/dist/datagrid/index.d.ts +1 -0
  15. package/dist/display/ArchbaseAnimationWrapper.d.ts +73 -0
  16. package/dist/display/ArchbaseBarcodeGenerator.d.ts +50 -0
  17. package/dist/display/ArchbaseCarousel.d.ts +100 -0
  18. package/dist/display/ArchbaseCodeViewer.d.ts +63 -0
  19. package/dist/display/ArchbaseDiffViewer.d.ts +41 -0
  20. package/dist/display/ArchbaseJsonTree.d.ts +34 -0
  21. package/dist/display/ArchbaseLightbox.d.ts +89 -0
  22. package/dist/display/ArchbaseMarquee.d.ts +46 -0
  23. package/dist/display/ArchbasePhotoAlbum.d.ts +58 -0
  24. package/dist/display/ArchbaseQRCode.d.ts +44 -0
  25. package/dist/display/ArchbaseTooltipRich.d.ts +82 -0
  26. package/dist/display/ArchbaseVirtualList.d.ts +116 -0
  27. package/dist/display/index.d.ts +24 -0
  28. package/dist/editors/ArchbaseAIPromptInput.d.ts +69 -0
  29. package/dist/editors/ArchbaseAsyncMultiSelect.d.ts +1 -1
  30. package/dist/editors/ArchbaseAsyncSelect.d.ts +1 -1
  31. package/dist/editors/ArchbaseBarcodeScanner.d.ts +63 -0
  32. package/dist/editors/ArchbaseCepInput.d.ts +26 -0
  33. package/dist/editors/ArchbaseColorGradientPicker.d.ts +80 -0
  34. package/dist/editors/ArchbaseCpfCnpjInput.d.ts +21 -0
  35. package/dist/editors/ArchbaseCurrencyInput.d.ts +25 -0
  36. package/dist/editors/ArchbaseDualListbox.d.ts +61 -0
  37. package/dist/editors/ArchbaseInPlaceEditor.d.ts +67 -0
  38. package/dist/editors/ArchbaseLightGrid.d.ts +56 -0
  39. package/dist/editors/ArchbaseMentionInput.d.ts +75 -0
  40. package/dist/editors/ArchbaseMultiEmail.d.ts +53 -0
  41. package/dist/editors/ArchbaseMultiViewCalendar.d.ts +47 -0
  42. package/dist/editors/ArchbaseNumberStepper.d.ts +66 -0
  43. package/dist/editors/ArchbaseOTPInput.d.ts +27 -0
  44. package/dist/editors/ArchbasePhoneInput.d.ts +52 -0
  45. package/dist/editors/ArchbaseRangeSlider.d.ts +22 -0
  46. package/dist/editors/ArchbaseSignaturePad.d.ts +60 -0
  47. package/dist/editors/ArchbaseSpeechToTextInput.d.ts +106 -0
  48. package/dist/editors/ArchbaseSpreadsheet.d.ts +56 -0
  49. package/dist/editors/ArchbaseTagInput.d.ts +55 -0
  50. package/dist/editors/index.d.ts +40 -0
  51. package/dist/feedback/ArchbaseChunkProgressBar.d.ts +35 -0
  52. package/dist/feedback/ArchbaseRipple.d.ts +43 -0
  53. package/dist/feedback/ArchbaseSkeleton.d.ts +115 -0
  54. package/dist/feedback/index.d.ts +6 -0
  55. package/dist/filters/ArchbaseColumnSelector.d.ts +38 -0
  56. package/dist/filters/index.d.ts +2 -0
  57. package/dist/forms/ArchbaseFieldArray.d.ts +80 -0
  58. package/dist/forms/ArchbaseFormWizard.d.ts +73 -0
  59. package/dist/forms/ArchbaseStepper.d.ts +51 -0
  60. package/dist/forms/index.d.ts +8 -0
  61. package/dist/forms/useArchbaseFormWizard.d.ts +74 -0
  62. package/dist/hooks/index.d.ts +2 -0
  63. package/dist/hooks/useArchbaseConfirm.d.ts +59 -0
  64. package/dist/image/editor/index.d.ts +43 -4
  65. package/dist/image/index.d.ts +1 -0
  66. package/dist/index.css +1 -1
  67. package/dist/index.d.ts +1 -0
  68. package/dist/index.js +22510 -13820
  69. package/dist/list/ArchbaseTreeList.d.ts +76 -0
  70. package/dist/list/index.d.ts +2 -0
  71. package/dist/navigation/ArchbaseActionSheet.d.ts +70 -0
  72. package/dist/navigation/ArchbaseAppBar.d.ts +63 -0
  73. package/dist/navigation/ArchbaseBottomNavigation.d.ts +61 -0
  74. package/dist/navigation/ArchbaseContextMenu.d.ts +76 -0
  75. package/dist/navigation/ArchbaseKeyboardShortcuts.d.ts +85 -0
  76. package/dist/navigation/ArchbaseSpotlight.d.ts +69 -0
  77. package/dist/navigation/index.d.ts +12 -0
  78. package/dist/notification/ArchbaseNotificationCenter.d.ts +56 -0
  79. package/dist/notification/index.d.ts +2 -0
  80. package/dist/onboarding/ArchbaseOnboardingTour.d.ts +27 -76
  81. package/dist/viewers/ArchbaseDocViewer.d.ts +40 -0
  82. package/dist/viewers/ArchbasePdfBuilder.d.ts +53 -0
  83. package/dist/viewers/ArchbaseXmlViewer.d.ts +36 -0
  84. package/dist/viewers/index.d.ts +6 -0
  85. package/package.json +41 -18
  86. package/src/buttons/ArchbaseSpeedDial.tsx +282 -0
  87. package/src/buttons/index.ts +3 -0
  88. package/src/charts/ArchbaseArcGauge.tsx +325 -0
  89. package/src/charts/ArchbaseGantt.tsx +494 -0
  90. package/src/charts/ArchbaseLinearGauge.tsx +288 -0
  91. package/src/charts/ArchbaseResourceTimeline.tsx +433 -0
  92. package/src/charts/ArchbaseSparkline.tsx +193 -0
  93. package/src/charts/index.ts +20 -1
  94. package/src/containers/ArchbaseExpansionPanel.tsx +208 -0
  95. package/src/containers/ArchbaseFloatingPanel.tsx +448 -0
  96. package/src/containers/index.ts +17 -0
  97. package/src/datagrid/components/pagination/grid-pagination.tsx +2 -2
  98. package/src/datagrid/export/ArchbaseDataGridExcelExport.tsx +293 -0
  99. package/src/datagrid/export/index.ts +8 -0
  100. package/src/datagrid/index.tsx +2 -0
  101. package/src/display/ArchbaseAnimationWrapper.tsx +272 -0
  102. package/src/display/ArchbaseBarcodeGenerator.tsx +303 -0
  103. package/src/display/ArchbaseCarousel.tsx +679 -0
  104. package/src/display/ArchbaseCodeViewer.tsx +271 -0
  105. package/src/display/ArchbaseDiffViewer.tsx +108 -0
  106. package/src/display/ArchbaseJsonTree.tsx +150 -0
  107. package/src/display/ArchbaseLightbox.tsx +279 -0
  108. package/src/display/ArchbaseMarquee.tsx +268 -0
  109. package/src/display/ArchbasePhotoAlbum.tsx +415 -0
  110. package/src/display/ArchbaseQRCode.tsx +137 -0
  111. package/src/display/ArchbaseTooltipRich.tsx +317 -0
  112. package/src/display/ArchbaseVirtualList.tsx +618 -0
  113. package/src/display/index.ts +94 -1
  114. package/src/editors/ArchbaseAIPromptInput.tsx +432 -0
  115. package/src/editors/ArchbaseBarcodeScanner.tsx +570 -0
  116. package/src/editors/ArchbaseCepInput.tsx +173 -0
  117. package/src/editors/ArchbaseColorGradientPicker.tsx +460 -0
  118. package/src/editors/ArchbaseCpfCnpjInput.tsx +193 -0
  119. package/src/editors/ArchbaseCurrencyInput.tsx +100 -0
  120. package/src/editors/ArchbaseDualListbox.tsx +671 -0
  121. package/src/editors/ArchbaseInPlaceEditor.tsx +406 -0
  122. package/src/editors/ArchbaseLightGrid.tsx +538 -0
  123. package/src/editors/ArchbaseMentionInput.tsx +384 -0
  124. package/src/editors/ArchbaseMultiEmail.tsx +367 -0
  125. package/src/editors/ArchbaseMultiViewCalendar.tsx +439 -0
  126. package/src/editors/ArchbaseNumberStepper.tsx +219 -0
  127. package/src/editors/ArchbaseOTPInput.tsx +133 -0
  128. package/src/editors/ArchbaseOperationHoursEditor.tsx +1 -1
  129. package/src/editors/ArchbasePhoneInput.tsx +355 -0
  130. package/src/editors/ArchbaseRangeSlider.tsx +109 -0
  131. package/src/editors/ArchbaseSignaturePad.tsx +425 -0
  132. package/src/editors/ArchbaseSpeechToTextInput.tsx +444 -0
  133. package/src/editors/ArchbaseSpreadsheet.tsx +388 -0
  134. package/src/editors/ArchbaseTagInput.tsx +326 -0
  135. package/src/editors/index.tsx +92 -0
  136. package/src/feedback/ArchbaseChunkProgressBar.tsx +156 -0
  137. package/src/feedback/ArchbaseRipple.tsx +278 -0
  138. package/src/feedback/ArchbaseSkeleton.tsx +419 -0
  139. package/src/feedback/index.ts +22 -1
  140. package/src/filters/ArchbaseColumnSelector.tsx +268 -0
  141. package/src/filters/index.ts +2 -0
  142. package/src/forms/ArchbaseFieldArray.tsx +305 -0
  143. package/src/forms/ArchbaseFormWizard.tsx +284 -0
  144. package/src/forms/ArchbaseStepper.tsx +137 -0
  145. package/src/forms/index.ts +24 -2
  146. package/src/forms/useArchbaseFormWizard.ts +283 -0
  147. package/src/hooks/index.ts +12 -0
  148. package/src/hooks/useArchbaseConfirm.ts +293 -0
  149. package/src/image/editor/functions/image-processing.ts +5 -0
  150. package/src/image/editor/index.tsx +305 -391
  151. package/src/image/index.ts +1 -0
  152. package/src/index.ts +3 -0
  153. package/src/list/ArchbaseTreeList.tsx +422 -0
  154. package/src/list/index.ts +3 -0
  155. package/src/navigation/ArchbaseActionSheet.tsx +301 -0
  156. package/src/navigation/ArchbaseAppBar.tsx +233 -0
  157. package/src/navigation/ArchbaseBottomNavigation.tsx +243 -0
  158. package/src/navigation/ArchbaseContextMenu.tsx +298 -0
  159. package/src/navigation/ArchbaseKeyboardShortcuts.tsx +472 -0
  160. package/src/navigation/ArchbaseSpotlight.tsx +483 -0
  161. package/src/navigation/index.ts +48 -1
  162. package/src/notification/ArchbaseNotificationCenter.tsx +502 -0
  163. package/src/notification/index.ts +2 -0
  164. package/src/onboarding/ArchbaseOnboardingTour.tsx +229 -102
  165. package/src/viewers/ArchbaseDocViewer.tsx +584 -0
  166. package/src/viewers/ArchbasePdfBuilder.tsx +291 -0
  167. package/src/viewers/ArchbaseXmlViewer.tsx +142 -0
  168. package/src/viewers/index.ts +12 -0
@@ -0,0 +1,82 @@
1
+ import { default as React, ReactNode } from 'react';
2
+ import { HoverCardProps, MantineSize, MantineColor, MantineRadius } from '@mantine/core';
3
+ export interface ArchbaseTooltipRichProps {
4
+ /** Elemento alvo (trigger) */
5
+ children: ReactNode;
6
+ /** Título do tooltip */
7
+ title: string;
8
+ /** Descrição */
9
+ description?: string;
10
+ /** URL da imagem */
11
+ image?: string;
12
+ /** Alt da imagem */
13
+ imageAlt?: string;
14
+ /** Altura da imagem */
15
+ imageHeight?: number;
16
+ /** Link "saiba mais" */
17
+ link?: string;
18
+ /** Label do link */
19
+ linkLabel?: string;
20
+ /** Se o link abre em nova aba */
21
+ linkExternal?: boolean;
22
+ /** Conteúdo customizado adicional */
23
+ footer?: ReactNode;
24
+ /** Largura do tooltip */
25
+ width?: number;
26
+ /** Delay para abrir */
27
+ openDelay?: number;
28
+ /** Delay para fechar */
29
+ closeDelay?: number;
30
+ /** Posição */
31
+ position?: HoverCardProps['position'];
32
+ /** Se deve ter seta */
33
+ withArrow?: boolean;
34
+ /** Tamanho da seta */
35
+ arrowSize?: number;
36
+ /** Raio das bordas */
37
+ radius?: MantineRadius;
38
+ /** Sombra */
39
+ shadow?: MantineSize;
40
+ /** Cor do título */
41
+ titleColor?: MantineColor;
42
+ /** Tamanho do título */
43
+ titleSize?: MantineSize;
44
+ /** Se está desabilitado */
45
+ disabled?: boolean;
46
+ /** Classe CSS */
47
+ className?: string;
48
+ /** Estilo */
49
+ style?: React.CSSProperties;
50
+ }
51
+ export declare const ArchbaseTooltipRich: React.ForwardRefExoticComponent<ArchbaseTooltipRichProps & React.RefAttributes<HTMLDivElement>>;
52
+ export interface ArchbaseTooltipUserProps {
53
+ /** Elemento alvo (trigger) */
54
+ children: ReactNode;
55
+ /** Nome do usuário */
56
+ name: string;
57
+ /** Email ou cargo */
58
+ subtitle?: string;
59
+ /** URL do avatar */
60
+ avatar?: string;
61
+ /** Status online */
62
+ status?: 'online' | 'offline' | 'away' | 'busy';
63
+ /** Bio ou descrição */
64
+ bio?: string;
65
+ /** Ações customizadas */
66
+ actions?: ReactNode;
67
+ /** Largura */
68
+ width?: number;
69
+ /** Delay para abrir */
70
+ openDelay?: number;
71
+ /** Delay para fechar */
72
+ closeDelay?: number;
73
+ /** Posição */
74
+ position?: HoverCardProps['position'];
75
+ /** Se deve ter seta */
76
+ withArrow?: boolean;
77
+ /** Classe CSS */
78
+ className?: string;
79
+ /** Estilo */
80
+ style?: React.CSSProperties;
81
+ }
82
+ export declare const ArchbaseTooltipUser: React.ForwardRefExoticComponent<ArchbaseTooltipUserProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,116 @@
1
+ import { default as React, ReactNode } from 'react';
2
+ import { BoxProps } from '@mantine/core';
3
+ export interface VirtualListItem {
4
+ id: string | number;
5
+ [key: string]: any;
6
+ }
7
+ export interface ArchbaseVirtualListProps<T extends VirtualListItem> extends Omit<BoxProps, 'children'> {
8
+ /** Array de itens */
9
+ items: T[];
10
+ /** Altura de cada item em pixels */
11
+ itemHeight: number;
12
+ /** Altura do container */
13
+ height: number | string;
14
+ /** Largura do container */
15
+ width?: number | string;
16
+ /** Quantidade de itens extras para renderizar (overscan) */
17
+ overscan?: number;
18
+ /** Renderizador de item */
19
+ renderItem: (item: T, index: number, style: React.CSSProperties) => ReactNode;
20
+ /** Callback ao alcançar o final */
21
+ onEndReached?: () => void;
22
+ /** Threshold para onEndReached (em pixels) */
23
+ endReachedThreshold?: number;
24
+ /** Estado de carregamento */
25
+ loading?: boolean;
26
+ /** Componente de loading */
27
+ loadingComponent?: ReactNode;
28
+ /** Mensagem quando vazio */
29
+ emptyMessage?: string;
30
+ /** Componente quando vazio */
31
+ emptyComponent?: ReactNode;
32
+ /** Renderizar header */
33
+ header?: ReactNode;
34
+ /** Renderizar footer */
35
+ footer?: ReactNode;
36
+ /** Callback ao scrollar */
37
+ onScroll?: (scrollTop: number) => void;
38
+ /** Scroll inicial */
39
+ initialScrollTop?: number;
40
+ /** Estilo dos itens */
41
+ itemStyle?: React.CSSProperties;
42
+ /** Gap entre itens */
43
+ gap?: number;
44
+ /** Key extractor */
45
+ keyExtractor?: (item: T, index: number) => string | number;
46
+ }
47
+ export interface ArchbaseVirtualListRef {
48
+ scrollToIndex: (index: number, align?: 'start' | 'center' | 'end') => void;
49
+ scrollToTop: () => void;
50
+ scrollToBottom: () => void;
51
+ getScrollTop: () => number;
52
+ }
53
+ declare function ArchbaseVirtualListInner<T extends VirtualListItem>({ items, itemHeight, height, width, overscan, renderItem, onEndReached, endReachedThreshold, loading, loadingComponent, emptyMessage, emptyComponent, header, footer, onScroll, initialScrollTop, itemStyle, gap, keyExtractor, ...boxProps }: ArchbaseVirtualListProps<T>, ref: React.Ref<ArchbaseVirtualListRef>): import("react/jsx-runtime").JSX.Element;
54
+ export declare const ArchbaseVirtualList: <T extends VirtualListItem>(props: ArchbaseVirtualListProps<T> & {
55
+ ref?: React.Ref<ArchbaseVirtualListRef>;
56
+ }) => ReturnType<typeof ArchbaseVirtualListInner>;
57
+ export interface ArchbaseVirtualGridProps<T extends VirtualListItem> extends Omit<BoxProps, 'children'> {
58
+ /** Array de itens */
59
+ items: T[];
60
+ /** Largura de cada item */
61
+ itemWidth: number;
62
+ /** Altura de cada item */
63
+ itemHeight: number;
64
+ /** Altura do container */
65
+ height: number | string;
66
+ /** Gap entre itens */
67
+ gap?: number;
68
+ /** Overscan de linhas */
69
+ overscan?: number;
70
+ /** Renderizador de item */
71
+ renderItem: (item: T, index: number, style: React.CSSProperties) => ReactNode;
72
+ /** Callback ao alcançar o final */
73
+ onEndReached?: () => void;
74
+ /** Threshold para onEndReached */
75
+ endReachedThreshold?: number;
76
+ /** Estado de carregamento */
77
+ loading?: boolean;
78
+ /** Mensagem quando vazio */
79
+ emptyMessage?: string;
80
+ /** Key extractor */
81
+ keyExtractor?: (item: T, index: number) => string | number;
82
+ }
83
+ export declare function ArchbaseVirtualGrid<T extends VirtualListItem>({ items, itemWidth, itemHeight, height, gap, overscan, renderItem, onEndReached, endReachedThreshold, loading, emptyMessage, keyExtractor, ...boxProps }: ArchbaseVirtualGridProps<T>): import("react/jsx-runtime").JSX.Element;
84
+ export interface ArchbaseInfiniteListProps<T extends VirtualListItem> extends Omit<ArchbaseVirtualListProps<T>, 'onEndReached'> {
85
+ /** Função para carregar mais itens */
86
+ loadMore: () => Promise<void>;
87
+ /** Se há mais itens para carregar */
88
+ hasMore: boolean;
89
+ /** Erro ao carregar */
90
+ error?: string | null;
91
+ /** Componente de erro */
92
+ errorComponent?: ReactNode;
93
+ /** Callback para retry */
94
+ onRetry?: () => void;
95
+ }
96
+ export declare function ArchbaseInfiniteList<T extends VirtualListItem>({ loadMore, hasMore, error, errorComponent, onRetry, loading, ...props }: ArchbaseInfiniteListProps<T>): import("react/jsx-runtime").JSX.Element;
97
+ export interface UseVirtualListOptions<T> {
98
+ items: T[];
99
+ itemHeight: number;
100
+ containerHeight: number;
101
+ overscan?: number;
102
+ gap?: number;
103
+ }
104
+ export declare function useVirtualList<T>({ items, itemHeight, containerHeight, overscan, gap, }: UseVirtualListOptions<T>): {
105
+ totalHeight: number;
106
+ visibleItems: {
107
+ item: T;
108
+ index: number;
109
+ style: React.CSSProperties;
110
+ }[];
111
+ handleScroll: (event: React.UIEvent<HTMLDivElement>) => void;
112
+ scrollToIndex: (index: number, align?: "start" | "center" | "end") => number;
113
+ scrollTop: number;
114
+ setScrollTop: React.Dispatch<React.SetStateAction<number>>;
115
+ };
116
+ export default ArchbaseVirtualList;
@@ -2,3 +2,27 @@ export { Text as ArchbaseText } from '@mantine/core';
2
2
  export { Title as ArchbaseTitle } from '@mantine/core';
3
3
  export { Image as ArchbaseMantineImage } from '@mantine/core';
4
4
  export { Badge as ArchbaseBadge } from '@mantine/core';
5
+ export { ArchbaseQRCode } from './ArchbaseQRCode';
6
+ export type { ArchbaseQRCodeProps, ArchbaseQRCodeImageSettings } from './ArchbaseQRCode';
7
+ export { ArchbaseDiffViewer, DiffMethod } from './ArchbaseDiffViewer';
8
+ export type { ArchbaseDiffViewerProps } from './ArchbaseDiffViewer';
9
+ export { ArchbaseJsonTree } from './ArchbaseJsonTree';
10
+ export type { ArchbaseJsonTreeProps } from './ArchbaseJsonTree';
11
+ export { ArchbaseCodeViewer } from './ArchbaseCodeViewer';
12
+ export type { ArchbaseCodeViewerProps, ArchbaseCodeViewerTab } from './ArchbaseCodeViewer';
13
+ export { ArchbaseAnimationWrapper, ArchbaseAnimatedList, ArchbaseFadeInWhenVisible } from './ArchbaseAnimationWrapper';
14
+ export type { ArchbaseAnimationWrapperProps, ArchbaseAnimatedListProps, ArchbaseFadeInWhenVisibleProps, ArchbaseAnimationPreset, } from './ArchbaseAnimationWrapper';
15
+ export { ArchbaseBarcodeGenerator, ArchbaseEAN13Generator, ArchbaseEAN8Generator, ArchbaseUPCGenerator, ArchbaseCODE128Generator, } from './ArchbaseBarcodeGenerator';
16
+ export type { ArchbaseBarcodeGeneratorProps, BarcodeFormat, } from './ArchbaseBarcodeGenerator';
17
+ export { ArchbaseTooltipRich, ArchbaseTooltipUser } from './ArchbaseTooltipRich';
18
+ export type { ArchbaseTooltipRichProps, ArchbaseTooltipUserProps } from './ArchbaseTooltipRich';
19
+ export { ArchbaseMarquee, ArchbaseMarqueeLeft, ArchbaseMarqueeRight, ArchbaseMarqueeUp, ArchbaseMarqueeDown, ArchbaseTextTicker, } from './ArchbaseMarquee';
20
+ export type { ArchbaseMarqueeProps, MarqueeDirection, ArchbaseTextTickerProps } from './ArchbaseMarquee';
21
+ export { ArchbaseCarousel, ArchbaseCarouselSlide, ArchbaseImageCarousel, ArchbaseCardCarousel, useArchbaseCarousel, } from './ArchbaseCarousel';
22
+ export type { ArchbaseCarouselProps, ArchbaseCarouselSlideProps, ArchbaseImageCarouselProps, ImageSlide, ArchbaseCardCarouselProps, UseArchbaseCarouselOptions, } from './ArchbaseCarousel';
23
+ export { ArchbaseVirtualList, ArchbaseVirtualGrid, ArchbaseInfiniteList, useVirtualList, } from './ArchbaseVirtualList';
24
+ export type { ArchbaseVirtualListProps, ArchbaseVirtualListRef, VirtualListItem, ArchbaseVirtualGridProps, ArchbaseInfiniteListProps, UseVirtualListOptions, } from './ArchbaseVirtualList';
25
+ export { ArchbaseLightbox, ArchbaseLightboxProvider, useArchbaseLightbox, useArchbaseLightboxContext, } from './ArchbaseLightbox';
26
+ export type { ArchbaseLightboxProps, ArchbaseLightboxSlide, ArchbaseLightboxProviderProps, UseArchbaseLightboxReturn, } from './ArchbaseLightbox';
27
+ export { ArchbasePhotoAlbum } from './ArchbasePhotoAlbum';
28
+ export type { ArchbasePhotoAlbumProps, ArchbasePhotoAlbumPhoto, ArchbasePhotoAlbumLayout, } from './ArchbasePhotoAlbum';
@@ -0,0 +1,69 @@
1
+ import { default as React, ReactNode } from 'react';
2
+ import { TextareaProps, MantineColor, MantineSize } from '@mantine/core';
3
+ export interface ArchbaseAIPromptSuggestion {
4
+ /** ID único */
5
+ id: string;
6
+ /** Texto da sugestão */
7
+ text: string;
8
+ /** Ícone opcional */
9
+ icon?: ReactNode;
10
+ /** Categoria */
11
+ category?: string;
12
+ }
13
+ export interface ArchbaseAIPromptInputProps extends Omit<TextareaProps, 'onSubmit'> {
14
+ /** Callback ao enviar (Enter) */
15
+ onSubmit?: (value: string) => void | Promise<void>;
16
+ /** Se está carregando/processando */
17
+ loading?: boolean;
18
+ /** Placeholder */
19
+ placeholder?: string;
20
+ /** Sugestões rápidas */
21
+ suggestions?: ArchbaseAIPromptSuggestion[];
22
+ /** Se deve mostrar sugestões */
23
+ showSuggestions?: boolean;
24
+ /** Histórico de prompts */
25
+ history?: string[];
26
+ /** Se deve habilitar navegação no histórico */
27
+ enableHistory?: boolean;
28
+ /** Máximo de caracteres */
29
+ maxLength?: number;
30
+ /** Se deve mostrar contador */
31
+ showCounter?: boolean;
32
+ /** Se deve habilitar voice input */
33
+ enableVoice?: boolean;
34
+ /** Callback de voice input */
35
+ onVoiceInput?: (transcript: string) => void;
36
+ /** Cor do botão enviar */
37
+ submitColor?: MantineColor;
38
+ /** Ícone do botão enviar */
39
+ submitIcon?: ReactNode;
40
+ /** Tamanho */
41
+ size?: MantineSize;
42
+ /** Mínimo de linhas */
43
+ minRows?: number;
44
+ /** Máximo de linhas */
45
+ maxRows?: number;
46
+ /** Se deve auto-expandir */
47
+ autosize?: boolean;
48
+ /** Se está desabilitado */
49
+ disabled?: boolean;
50
+ /** Classe CSS */
51
+ className?: string;
52
+ /** Estilo */
53
+ style?: React.CSSProperties;
54
+ }
55
+ export declare const ArchbaseAIPromptInput: React.ForwardRefExoticComponent<Omit<ArchbaseAIPromptInputProps, "ref"> & React.RefAttributes<HTMLTextAreaElement>>;
56
+ export interface UseArchbasePromptHistoryOptions {
57
+ maxHistory?: number;
58
+ storageKey?: string;
59
+ }
60
+ export interface UseArchbasePromptHistoryReturn {
61
+ history: string[];
62
+ addToHistory: (prompt: string) => void;
63
+ clearHistory: () => void;
64
+ currentIndex: number;
65
+ navigateUp: () => string | null;
66
+ navigateDown: () => string | null;
67
+ resetNavigation: () => void;
68
+ }
69
+ export declare function useArchbasePromptHistory(options?: UseArchbasePromptHistoryOptions): UseArchbasePromptHistoryReturn;
@@ -109,4 +109,4 @@ export declare const SelectedItem: ({ item, value, onRemove, label }: {
109
109
  label: any;
110
110
  }) => import("react/jsx-runtime").JSX.Element;
111
111
  export declare function ArchbaseAsyncMultiSelect<T, ID, O>({ allowDeselect, clearable, dataSource, dataField, disabled, debounceTime, minCharsToSearch, readOnly, placeholder, initialOptions, searchable, label, description, error, icon, iconWidth, required, getOptionLabel, getOptionValue, getOptionImage, getOptions, onFocusEnter, onFocusExit, onChangeValues, value, defaultValue, filter, size, style, width, initiallyOpened, itemComponent: ItemComponent, selectedItemComponent: SelectedItemComponent, onDropdownOpen, onDropdownClose, limit, nothingFound, zIndex, dropdownPosition, onErrorLoadOptions, onSearchChange, converter, getConvertedOption }: ArchbaseAsyncMultiSelectProps<T, ID, O>): import("react/jsx-runtime").JSX.Element;
112
- export declare const CustomSelectScrollArea: React.ForwardRefExoticComponent<ScrollAreaProps & React.RefAttributes<HTMLDivElement>>;
112
+ export declare const CustomSelectScrollArea: React.ForwardRefExoticComponent<Omit<ScrollAreaProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
@@ -95,4 +95,4 @@ export interface ArchbaseAsyncSelectProps<T, ID, O> {
95
95
  getConvertedOption?: (value: any) => Promise<O>;
96
96
  }
97
97
  export declare function ArchbaseAsyncSelect<T, ID, O>({ allowDeselect, clearable, dataSource, dataField, disabled, debounceTime, minCharsToSearch, readOnly, placeholder, initialOptions, searchable, label, description, error, icon, iconWidth, required, getOptionLabel, getOptionValue, getOptionImage, getOptions, onFocusEnter, onFocusExit, onSelectValue, value, defaultValue, filter, size, style, width, initiallyOpened, itemComponent: ItemComponent, onDropdownOpen, onDropdownClose, limit, nothingFound, zIndex, dropdownPosition, onErrorLoadOptions, innerRef, onSearchChange, converter, getConvertedOption }: ArchbaseAsyncSelectProps<T, ID, O>): import("react/jsx-runtime").JSX.Element;
98
- export declare const CustomSelectScrollArea: React.ForwardRefExoticComponent<ScrollAreaProps & React.RefAttributes<HTMLDivElement>>;
98
+ export declare const CustomSelectScrollArea: React.ForwardRefExoticComponent<Omit<ScrollAreaProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,63 @@
1
+ import { CSSProperties, ReactNode } from 'react';
2
+ import { IArchbaseDataSourceBase } from '@archbase/data';
3
+ declare global {
4
+ interface Window {
5
+ BarcodeDetector: any;
6
+ }
7
+ }
8
+ export interface ArchbaseBarcodeScannerProps<T, ID> {
9
+ /** Fonte de dados onde sera atribuido o valor do scanner (V1 ou V2) */
10
+ dataSource?: IArchbaseDataSourceBase<T>;
11
+ /** Campo onde devera ser atribuido o valor do scanner na fonte de dados */
12
+ dataField?: string;
13
+ /** Valor controlado (uso standalone) */
14
+ value?: string;
15
+ /** Titulo do campo */
16
+ label?: string;
17
+ /** Descricao do campo */
18
+ description?: string;
19
+ /** Ultimo erro ocorrido */
20
+ error?: string;
21
+ /** Indicador se o preenchimento e obrigatorio */
22
+ required?: boolean;
23
+ /** Indicador se o scanner esta desabilitado */
24
+ disabled?: boolean;
25
+ /** Indicador se e somente leitura */
26
+ readOnly?: boolean;
27
+ /** Continuar escaneando apos primeira leitura (default false) */
28
+ continuous?: boolean;
29
+ /** Formatos de codigo aceitos */
30
+ formats?: string[];
31
+ /** Intervalo entre tentativas de deteccao em ms (default 500) */
32
+ scanInterval?: number;
33
+ /** Callback quando um codigo e escaneado */
34
+ onScan?: (code: string, format: string) => void;
35
+ /** Callback quando ocorre um erro */
36
+ onError?: (error: Error) => void;
37
+ /** Largura do video (default 320) */
38
+ width?: number;
39
+ /** Altura do video (default 240) */
40
+ height?: number;
41
+ /** Mostrar botao de lanterna (default false) */
42
+ showTorchButton?: boolean;
43
+ /** Renderizar como botao que abre modal (default false) */
44
+ asModal?: boolean;
45
+ /** Titulo do modal (default 'Escanear codigo') */
46
+ modalTitle?: string;
47
+ /** Label do botao (default 'Escanear') */
48
+ buttonLabel?: string;
49
+ /** Icone do botao */
50
+ buttonIcon?: ReactNode;
51
+ /** Overlay customizado sobre o video */
52
+ overlay?: ReactNode;
53
+ /** Estilo do componente */
54
+ style?: CSSProperties;
55
+ /** Classe CSS */
56
+ className?: string;
57
+ /** Evento quando o valor e alterado */
58
+ onChangeValue?: (value: string) => void;
59
+ }
60
+ export declare function ArchbaseBarcodeScanner<T, ID>(props: ArchbaseBarcodeScannerProps<T, ID>): import("react/jsx-runtime").JSX.Element;
61
+ export declare namespace ArchbaseBarcodeScanner {
62
+ var displayName: string;
63
+ }
@@ -0,0 +1,26 @@
1
+ import { TextInputProps } from '@mantine/core';
2
+ export interface CepAddress {
3
+ cep: string;
4
+ state: string;
5
+ city: string;
6
+ neighborhood: string;
7
+ street: string;
8
+ service?: string;
9
+ }
10
+ export interface ArchbaseCepInputProps extends Omit<TextInputProps, 'value' | 'onChange' | 'onError'> {
11
+ /** Valor atual */
12
+ value?: string;
13
+ /** Callback ao mudar */
14
+ onChange?: (value: string) => void;
15
+ /** Callback ao encontrar endereço */
16
+ onAddressFound?: (address: CepAddress) => void;
17
+ /** Callback em caso de erro */
18
+ onCepError?: (error: Error) => void;
19
+ /** Auto-buscar ao completar CEP */
20
+ autoFetch?: boolean;
21
+ /** Mostrar ícone de status */
22
+ showStatusIcon?: boolean;
23
+ }
24
+ export declare function formatCep(cep: string): string;
25
+ export declare function ArchbaseCepInput({ value, onChange, onAddressFound, onCepError, autoFetch, showStatusIcon, ...props }: ArchbaseCepInputProps): import("react/jsx-runtime").JSX.Element;
26
+ export default ArchbaseCepInput;
@@ -0,0 +1,80 @@
1
+ import { default as React } from 'react';
2
+ import { ColorPickerProps, MantineSize } from '@mantine/core';
3
+ import { ArchbaseDataSource } from '@archbase/data';
4
+ export type ArchbaseColorFormat = 'hex' | 'hexa' | 'rgb' | 'rgba' | 'hsl' | 'hsla';
5
+ export interface ArchbaseColorGradientPickerProps extends Omit<ColorPickerProps, 'value' | 'onChange'> {
6
+ /** Fonte de dados */
7
+ dataSource?: ArchbaseDataSource<any, any>;
8
+ /** Campo do DataSource */
9
+ dataField?: string;
10
+ /** Valor controlado */
11
+ value?: string;
12
+ /** Valor padrão */
13
+ defaultValue?: string;
14
+ /** Callback de mudança */
15
+ onChange?: (value: string) => void;
16
+ /** Formato do valor */
17
+ format?: ArchbaseColorFormat;
18
+ /** Swatches de cores */
19
+ swatches?: string[];
20
+ /** Se deve mostrar swatches */
21
+ showSwatches?: boolean;
22
+ /** Se deve mostrar hue slider */
23
+ showHueSlider?: boolean;
24
+ /** Se deve mostrar alpha slider */
25
+ showAlphaSlider?: boolean;
26
+ /** Se deve mostrar input de texto */
27
+ showInput?: boolean;
28
+ /** Se deve mostrar eyedropper (quando suportado) */
29
+ showEyeDropper?: boolean;
30
+ /** Label */
31
+ label?: string;
32
+ /** Descrição */
33
+ description?: string;
34
+ /** Erro */
35
+ error?: string | boolean;
36
+ /** Tamanho */
37
+ size?: MantineSize;
38
+ /** Se está desabilitado */
39
+ disabled?: boolean;
40
+ /** Se é somente leitura */
41
+ readOnly?: boolean;
42
+ /** Largura */
43
+ width?: number | string;
44
+ /** Se deve usar popover */
45
+ withPopover?: boolean;
46
+ /** Classe CSS */
47
+ className?: string;
48
+ /** Estilo */
49
+ style?: React.CSSProperties;
50
+ }
51
+ export declare const ArchbaseColorGradientPicker: React.ForwardRefExoticComponent<Omit<ArchbaseColorGradientPickerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
52
+ export interface ArchbaseFlatColorPickerProps {
53
+ /** Fonte de dados */
54
+ dataSource?: ArchbaseDataSource<any, any>;
55
+ /** Campo do DataSource */
56
+ dataField?: string;
57
+ /** Valor controlado */
58
+ value?: string;
59
+ /** Valor padrão */
60
+ defaultValue?: string;
61
+ /** Callback de mudança */
62
+ onChange?: (value: string) => void;
63
+ /** Swatches de cores */
64
+ swatches?: string[];
65
+ /** Número de colunas */
66
+ columns?: number;
67
+ /** Tamanho do swatch */
68
+ swatchSize?: number;
69
+ /** Espaçamento entre swatches */
70
+ spacing?: number;
71
+ /** Label */
72
+ label?: string;
73
+ /** Se está desabilitado */
74
+ disabled?: boolean;
75
+ /** Classe CSS */
76
+ className?: string;
77
+ /** Estilo */
78
+ style?: React.CSSProperties;
79
+ }
80
+ export declare const ArchbaseFlatColorPicker: React.ForwardRefExoticComponent<ArchbaseFlatColorPickerProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,21 @@
1
+ import { TextInputProps } from '@mantine/core';
2
+ export declare function validateCPF(cpf: string): boolean;
3
+ export declare function validateCNPJ(cnpj: string): boolean;
4
+ export declare function formatCPF(cpf: string): string;
5
+ export declare function formatCNPJ(cnpj: string): string;
6
+ export type DocumentType = 'cpf' | 'cnpj' | 'unknown';
7
+ export declare function detectDocumentType(value: string): DocumentType;
8
+ export interface ArchbaseCpfCnpjInputProps extends Omit<TextInputProps, 'value' | 'onChange'> {
9
+ /** Valor atual */
10
+ value?: string;
11
+ /** Callback ao mudar */
12
+ onChange?: (value: string) => void;
13
+ /** Tipo de documento (auto-detecta se não informado) */
14
+ documentType?: 'cpf' | 'cnpj' | 'auto';
15
+ /** Mostrar ícone de validação */
16
+ showValidationIcon?: boolean;
17
+ /** Callback ao validar */
18
+ onValidate?: (isValid: boolean, type: DocumentType) => void;
19
+ }
20
+ export declare function ArchbaseCpfCnpjInput({ value, onChange, documentType, showValidationIcon, onValidate, ...props }: ArchbaseCpfCnpjInputProps): import("react/jsx-runtime").JSX.Element;
21
+ export default ArchbaseCpfCnpjInput;
@@ -0,0 +1,25 @@
1
+ import { NumberInputProps } from '@mantine/core';
2
+ export type CurrencyCode = 'BRL' | 'USD' | 'EUR' | 'GBP' | 'JPY' | 'CNY' | 'ARS' | 'CLP' | 'COP' | 'MXN';
3
+ export interface CurrencyConfig {
4
+ prefix: string;
5
+ thousandSeparator: string;
6
+ decimalSeparator: string;
7
+ decimalScale: number;
8
+ }
9
+ export interface ArchbaseCurrencyInputProps extends Omit<NumberInputProps, 'value' | 'onChange'> {
10
+ /** Moeda */
11
+ currency?: CurrencyCode;
12
+ /** Valor atual */
13
+ value?: number | null;
14
+ /** Callback ao mudar */
15
+ onChange?: (value: number | null) => void;
16
+ /** Permitir valores negativos */
17
+ allowNegative?: boolean;
18
+ /** Mostrar símbolo da moeda */
19
+ showSymbol?: boolean;
20
+ }
21
+ export declare function ArchbaseCurrencyInput({ currency, value, onChange, allowNegative, showSymbol, ...props }: ArchbaseCurrencyInputProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare function ArchbaseBRLInput(props: Omit<ArchbaseCurrencyInputProps, 'currency'>): import("react/jsx-runtime").JSX.Element;
23
+ export declare function ArchbaseUSDInput(props: Omit<ArchbaseCurrencyInputProps, 'currency'>): import("react/jsx-runtime").JSX.Element;
24
+ export declare function ArchbaseEURInput(props: Omit<ArchbaseCurrencyInputProps, 'currency'>): import("react/jsx-runtime").JSX.Element;
25
+ export default ArchbaseCurrencyInput;
@@ -0,0 +1,61 @@
1
+ import { MantineSize } from '@mantine/core';
2
+ import { default as React, CSSProperties } from 'react';
3
+ import { IArchbaseDataSourceBase } from '@archbase/data';
4
+ export interface ArchbaseDualListboxOption {
5
+ value: any;
6
+ label: string;
7
+ group?: string;
8
+ disabled?: boolean;
9
+ }
10
+ export interface ArchbaseDualListboxProps<T, ID, O> {
11
+ /** Fonte de dados onde sera atribuido o valor (V1 ou V2) */
12
+ dataSource?: IArchbaseDataSourceBase<T>;
13
+ /** Campo onde devera ser atribuido o valor na fonte de dados */
14
+ dataField?: string;
15
+ /** Valor de entrada controlado */
16
+ value?: any[];
17
+ /** Valor padrao de entrada nao controlado */
18
+ defaultValue?: any[];
19
+ /** Opcoes disponiveis para selecao */
20
+ options: ArchbaseDualListboxOption[];
21
+ /** Titulo do componente */
22
+ label?: string;
23
+ /** Descricao do componente */
24
+ description?: string;
25
+ /** Ultimo erro ocorrido */
26
+ error?: string;
27
+ /** Indicador se o campo e obrigatorio */
28
+ required?: boolean;
29
+ /** Indicador se o componente esta desabilitado */
30
+ disabled?: boolean;
31
+ /** Indicador se o componente e somente leitura */
32
+ readOnly?: boolean;
33
+ /** Titulo da lista de itens disponiveis */
34
+ availableLabel?: string;
35
+ /** Titulo da lista de itens selecionados */
36
+ selectedLabel?: string;
37
+ /** Exibir campo de busca em cada lista */
38
+ showSearch?: boolean;
39
+ /** Exibir botoes para mover todos os itens */
40
+ showMoveAll?: boolean;
41
+ /** Altura das listas */
42
+ height?: number;
43
+ /** Evento quando o valor muda */
44
+ onChangeValue?: (value: any[]) => void;
45
+ /** Evento quando o componente recebe o foco */
46
+ onFocusEnter?: (event: React.FocusEvent) => void;
47
+ /** Evento quando o foco sai do componente */
48
+ onFocusExit?: (event: React.FocusEvent) => void;
49
+ /** Estilo do componente */
50
+ style?: CSSProperties;
51
+ /** Classe CSS do componente */
52
+ className?: string;
53
+ /** Largura do componente */
54
+ width?: string | number;
55
+ /** Tamanho do componente */
56
+ size?: MantineSize;
57
+ }
58
+ export declare function ArchbaseDualListbox<T, ID, O>({ dataSource, dataField, value, defaultValue, options, label, description, error, required, disabled, readOnly, availableLabel, selectedLabel, showSearch, showMoveAll, height, onChangeValue, onFocusEnter, onFocusExit, style, className, width, size, }: ArchbaseDualListboxProps<T, ID, O>): import("react/jsx-runtime").JSX.Element;
59
+ export declare namespace ArchbaseDualListbox {
60
+ var displayName: string;
61
+ }
@@ -0,0 +1,67 @@
1
+ export type InPlaceEditorType = 'text' | 'number' | 'select' | 'textarea' | 'date';
2
+ export interface SelectOption {
3
+ value: string;
4
+ label: string;
5
+ }
6
+ export interface ArchbaseInPlaceEditorProps {
7
+ /** Valor atual */
8
+ value: any;
9
+ /** Callback ao salvar */
10
+ onSave: (value: any) => void | Promise<void>;
11
+ /** Callback ao cancelar */
12
+ onCancel?: () => void;
13
+ /** Tipo do editor */
14
+ type?: InPlaceEditorType;
15
+ /** Opções para select */
16
+ options?: SelectOption[];
17
+ /** Formatador para exibição */
18
+ formatter?: (value: any) => string;
19
+ /** Validador */
20
+ validate?: (value: any) => boolean | string;
21
+ /** Placeholder do input */
22
+ placeholder?: string;
23
+ /** Texto quando vazio */
24
+ emptyText?: string;
25
+ /** Desabilitado */
26
+ disabled?: boolean;
27
+ /** Salvar ao perder foco */
28
+ saveOnBlur?: boolean;
29
+ /** Mostrar botões de ação */
30
+ showActions?: boolean;
31
+ /** Mostrar ícone de edição no hover */
32
+ showEditIcon?: boolean;
33
+ /** Tamanho do texto */
34
+ textSize?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
35
+ /** Peso do texto */
36
+ textWeight?: number;
37
+ /** Cor do texto */
38
+ textColor?: string;
39
+ /** Número de linhas para textarea */
40
+ textareaRows?: number;
41
+ /** Props do NumberInput */
42
+ numberProps?: {
43
+ min?: number;
44
+ max?: number;
45
+ step?: number;
46
+ decimalScale?: number;
47
+ prefix?: string;
48
+ suffix?: string;
49
+ };
50
+ /** Props do DateInput */
51
+ dateProps?: {
52
+ locale?: string;
53
+ valueFormat?: string;
54
+ minDate?: Date;
55
+ maxDate?: Date;
56
+ };
57
+ }
58
+ export declare function ArchbaseInPlaceEditor({ value, onSave, onCancel, type, options, formatter, validate, placeholder, emptyText, disabled, saveOnBlur, showActions, showEditIcon, textSize, textWeight, textColor, textareaRows, numberProps, dateProps, }: ArchbaseInPlaceEditorProps): import("react/jsx-runtime").JSX.Element;
59
+ /** Editor inline de texto */
60
+ export declare function ArchbaseInPlaceTextEditor(props: Omit<ArchbaseInPlaceEditorProps, 'type'>): import("react/jsx-runtime").JSX.Element;
61
+ /** Editor inline de número */
62
+ export declare function ArchbaseInPlaceNumberEditor(props: Omit<ArchbaseInPlaceEditorProps, 'type'>): import("react/jsx-runtime").JSX.Element;
63
+ /** Editor inline de select */
64
+ export declare function ArchbaseInPlaceSelectEditor(props: Omit<ArchbaseInPlaceEditorProps, 'type'>): import("react/jsx-runtime").JSX.Element;
65
+ /** Editor inline de data */
66
+ export declare function ArchbaseInPlaceDateEditor(props: Omit<ArchbaseInPlaceEditorProps, 'type'>): import("react/jsx-runtime").JSX.Element;
67
+ export default ArchbaseInPlaceEditor;