@giro-ds/react 12.2.0 → 12.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +143 -50
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +17 -10
- package/dist/index.esm.js +111 -51
- package/dist/index.esm.js.map +1 -1
- package/dist/styles.css +2 -2
- package/package.json +3 -3
package/dist/index.cjs
CHANGED
|
@@ -76,6 +76,39 @@ const Badge = ({ children, badgeValue = null, className, id, filterVariant = fal
|
|
|
76
76
|
}, className), "data-testid": "badge", children: !isEmpty && (jsxRuntime.jsx("span", { "aria-hidden": !!ariaLabel, children: displayValue })) }) }));
|
|
77
77
|
};
|
|
78
78
|
|
|
79
|
+
const REACT_MAJOR = parseInt(React.version.split('.')[0], 10);
|
|
80
|
+
/**
|
|
81
|
+
* Shim de compatibilidade para `React.forwardRef` que funciona tanto no React 18
|
|
82
|
+
* quanto no React 19.
|
|
83
|
+
*
|
|
84
|
+
* - React 18: `ref` não é uma prop comum — usa `React.forwardRef` internamente.
|
|
85
|
+
* - React 19: `ref` é uma prop normal e `forwardRef` foi depreciado. Este shim
|
|
86
|
+
* cria um componente funcional comum que lê `ref` das props diretamente,
|
|
87
|
+
* evitando o aviso de depreciação.
|
|
88
|
+
*
|
|
89
|
+
* O padrão de autoria dos componentes permanece idêntico para ambas as versões.
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* const MyInput = forwardRef<HTMLInputElement, MyInputProps>((props, ref) => {
|
|
93
|
+
* return <input ref={ref} {...props} />;
|
|
94
|
+
* });
|
|
95
|
+
*/
|
|
96
|
+
function forwardRef(render) {
|
|
97
|
+
if (REACT_MAJOR >= 19) {
|
|
98
|
+
const Comp = (props) => {
|
|
99
|
+
const { ref, ...rest } = props;
|
|
100
|
+
return render(rest, ref ?? null);
|
|
101
|
+
};
|
|
102
|
+
const displayName = render.displayName ?? render.name;
|
|
103
|
+
if (displayName) {
|
|
104
|
+
Comp.displayName = displayName;
|
|
105
|
+
}
|
|
106
|
+
return Comp;
|
|
107
|
+
}
|
|
108
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
109
|
+
return React.forwardRef(render);
|
|
110
|
+
}
|
|
111
|
+
|
|
79
112
|
var styles$t = {"tooltipContent":"Tooltip-module__tooltipContent___xycUg","triggerWrapper":"Tooltip-module__triggerWrapper___x83XR"};
|
|
80
113
|
|
|
81
114
|
const Tooltip = ({ children, text, side = 'bottom', align = 'start', maxWidth, sideOffset = 10, className, ...rest }) => {
|
|
@@ -84,7 +117,7 @@ const Tooltip = ({ children, text, side = 'bottom', align = 'start', maxWidth, s
|
|
|
84
117
|
|
|
85
118
|
var styles$s = {"button":"Button-module__button___18Bed","button-lg":"Button-module__button-lg___-A8B9","button-sm":"Button-module__button-sm___L7aT7","button-filled":"Button-module__button-filled___IQx1z","button-outlined":"Button-module__button-outlined___hLkLN","button-text":"Button-module__button-text___8GFeA","buttonWithIcon":"Button-module__buttonWithIcon___8ehK1","buttonIconPosition-left":"Button-module__buttonIconPosition-left___uOY6b","buttonIconPosition-right":"Button-module__buttonIconPosition-right___eswRS","buttonIconPosition-both":"Button-module__buttonIconPosition-both___1Lith","buttonNoContent":"Button-module__buttonNoContent___Tc9jk","buttonIconOnly":"Button-module__buttonIconOnly___aifk4","buttonIconLeft":"Button-module__buttonIconLeft___RICR3","buttonIconRight":"Button-module__buttonIconRight___71lu2","buttonFullWidth":"Button-module__buttonFullWidth___tXuVE","disabled":"Button-module__disabled___UzdWL","buttonLoading":"Button-module__buttonLoading___RGdNw","buttonContentHidden":"Button-module__buttonContentHidden___CoCiN","buttonLoadingSpinner":"Button-module__buttonLoadingSpinner___oZxEU","spin":"Button-module__spin___kQKH9"};
|
|
86
119
|
|
|
87
|
-
const Button =
|
|
120
|
+
const Button = forwardRef(({ as, children, variant = 'filled', iconPosition = 'left', href, to, external = false, target, rel, disabled = false, onClick, size = 'lg', scale = 1, className, type = 'button', id, icon, fullWidth = false, ariaLabel, iconOnly = false, loading = false, tooltipText, tooltipSide = 'top', tooltipAlign = 'center', ...rest }, ref) => {
|
|
88
121
|
const generatedId = React.useId();
|
|
89
122
|
const componentId = id || generatedId;
|
|
90
123
|
const getComponent = () => {
|
|
@@ -196,7 +229,7 @@ const Button = React.forwardRef(({ as, children, variant = 'filled', iconPositio
|
|
|
196
229
|
}
|
|
197
230
|
return {};
|
|
198
231
|
};
|
|
199
|
-
if (
|
|
232
|
+
if (tooltipText && !loading) {
|
|
200
233
|
return (jsxRuntime.jsx(Tooltip, { text: tooltipText, side: tooltipSide, align: tooltipAlign, children: jsxRuntime.jsx(Component, { ...baseProps, ...getNavigationProps(), children: renderContent() }) }));
|
|
201
234
|
}
|
|
202
235
|
return (jsxRuntime.jsx(Component, { ...baseProps, ...getNavigationProps(), children: renderContent() }));
|
|
@@ -2105,12 +2138,6 @@ class DateLib {
|
|
|
2105
2138
|
* @param overrides Custom overrides for the date library functions.
|
|
2106
2139
|
*/
|
|
2107
2140
|
constructor(options, overrides) {
|
|
2108
|
-
/**
|
|
2109
|
-
* Reference to the built-in Date constructor.
|
|
2110
|
-
*
|
|
2111
|
-
* @deprecated Use `newDate()` or `today()`.
|
|
2112
|
-
*/
|
|
2113
|
-
this.Date = Date;
|
|
2114
2141
|
/**
|
|
2115
2142
|
* Creates a new `Date` object representing today's date.
|
|
2116
2143
|
*
|
|
@@ -2124,7 +2151,8 @@ class DateLib {
|
|
|
2124
2151
|
if (this.options.timeZone) {
|
|
2125
2152
|
return TZDate.tz(this.options.timeZone);
|
|
2126
2153
|
}
|
|
2127
|
-
|
|
2154
|
+
const DateCtor = this.options.Date ?? Date;
|
|
2155
|
+
return new DateCtor();
|
|
2128
2156
|
};
|
|
2129
2157
|
/**
|
|
2130
2158
|
* Creates a new `Date` object with the specified year, month, and day.
|
|
@@ -2929,6 +2957,7 @@ const ICON_KEY_MAP = {
|
|
|
2929
2957
|
downkeyboard: reactIcons.ChevronDown20Regular,
|
|
2930
2958
|
emoji: reactIcons.Emoji20Regular,
|
|
2931
2959
|
enterNumpad: reactIcons.ArrowImport20Regular,
|
|
2960
|
+
spaceNumpad: reactIcons.Spacebar20Regular,
|
|
2932
2961
|
};
|
|
2933
2962
|
const SHARED_DISPLAY = {
|
|
2934
2963
|
'{capslock}': iconSlot('capslock'),
|
|
@@ -2972,7 +3001,7 @@ const QWERTY_LOWERCASE = [
|
|
|
2972
3001
|
'{numbers} {alt} {space} . {enter}',
|
|
2973
3002
|
];
|
|
2974
3003
|
const NUMPAD = ['1 2 3', '4 5 6', '7 8 9', '{abc} 0 {bksp}'];
|
|
2975
|
-
const NUMPAD_WITH_ENTER = ['1 2 3 -', '4 5 6
|
|
3004
|
+
const NUMPAD_WITH_ENTER = ['1 2 3 -', '4 5 6 {space}', '7 8 9 {bksp}', '{abc} 0 . {enter}'];
|
|
2976
3005
|
const SHARED_LAYOUTS = {
|
|
2977
3006
|
shift: [
|
|
2978
3007
|
'1 2 3 4 5 6 7 8 9 0',
|
|
@@ -3049,19 +3078,22 @@ const getNativeLayout = (type, Emoji = true, showDownKeyboardButton = true, isFi
|
|
|
3049
3078
|
computedLayout = replaceKeyWithBlank(computedLayout, '{abc}');
|
|
3050
3079
|
}
|
|
3051
3080
|
if (isFixed) {
|
|
3052
|
-
computedLayout = Object.fromEntries(Object.entries(computedLayout).map(([layoutName, rows]) =>
|
|
3053
|
-
|
|
3054
|
-
|
|
3055
|
-
|
|
3056
|
-
|
|
3057
|
-
|
|
3058
|
-
|
|
3059
|
-
|
|
3060
|
-
|
|
3061
|
-
|
|
3062
|
-
|
|
3063
|
-
|
|
3064
|
-
|
|
3081
|
+
computedLayout = Object.fromEntries(Object.entries(computedLayout).map(([layoutName, rows]) => {
|
|
3082
|
+
const hasBksp = rows.some((r) => r.includes('{bksp}'));
|
|
3083
|
+
return [
|
|
3084
|
+
layoutName,
|
|
3085
|
+
rows.map((row) => {
|
|
3086
|
+
const trimmed = row.trim();
|
|
3087
|
+
if (/^[a-zA-ZçÇ]/.test(trimmed) && trimmed.endsWith('{bksp}')) {
|
|
3088
|
+
return '{//} ' + trimmed.replace(/\s*\{bksp\}$/, '') + ' {//}';
|
|
3089
|
+
}
|
|
3090
|
+
if (!hasBksp && /\{(shift|capslock|shiftactivated)\}$/.test(trimmed)) {
|
|
3091
|
+
return trimmed.replace(/\{(shift|capslock|shiftactivated)\}$/, '{bksp}');
|
|
3092
|
+
}
|
|
3093
|
+
return row;
|
|
3094
|
+
}),
|
|
3095
|
+
];
|
|
3096
|
+
}));
|
|
3065
3097
|
}
|
|
3066
3098
|
return computedLayout;
|
|
3067
3099
|
};
|
|
@@ -3113,7 +3145,7 @@ const ACCENT_OPTIONS = {
|
|
|
3113
3145
|
* <VirtualKeyboard targetRef={inputRef} value={value} onChange={setValue} />
|
|
3114
3146
|
* ```
|
|
3115
3147
|
*/
|
|
3116
|
-
const VirtualKeyboard = ({ variant = 'native', type = 'default', value, onChange, onKeyPress, onEnterPress, onTypeChange, maxLength, Emoji = false, className, id, placeholder = 'Digite aqui...', helperText, error, errorMessage, targetRef, textFieldScale = 1, showEnterKey = true, showTypeSwitchKey = true, numpadWithEnter = false, }) => {
|
|
3148
|
+
const VirtualKeyboard = ({ variant = 'native', type = 'default', value, onChange, onKeyPress, onEnterPress, onTypeChange, maxLength, Emoji = false, className, id, placeholder = 'Digite aqui...', helperText, error, errorMessage, targetRef, textFieldScale = 1, showEnterKey = true, showTypeSwitchKey = true, numpadWithEnter = false, nativeHeight, }) => {
|
|
3117
3149
|
const [internalValue, setInternalValue] = React.useState(value ?? '');
|
|
3118
3150
|
const [layoutName, setLayoutName] = React.useState('default');
|
|
3119
3151
|
const [capsLockOn, setCapsLockOn] = React.useState(false);
|
|
@@ -3564,12 +3596,12 @@ const VirtualKeyboard = ({ variant = 'native', type = 'default', value, onChange
|
|
|
3564
3596
|
if (heldKey &&
|
|
3565
3597
|
input.length >= currentValue.length + 1 &&
|
|
3566
3598
|
input.startsWith(currentValue) &&
|
|
3567
|
-
input.slice(currentValue.length).
|
|
3599
|
+
[...input.slice(currentValue.length)].every((char) => char === heldKey)) {
|
|
3568
3600
|
syncKeyboardInput(currentValue);
|
|
3569
3601
|
return;
|
|
3570
3602
|
}
|
|
3571
3603
|
if (suppressedKey &&
|
|
3572
|
-
input.length === currentValue.length +
|
|
3604
|
+
input.length === currentValue.length + suppressedKey.length &&
|
|
3573
3605
|
input.endsWith(suppressedKey)) {
|
|
3574
3606
|
suppressNextInputRef.current = null;
|
|
3575
3607
|
syncKeyboardInput(currentValue);
|
|
@@ -3599,6 +3631,7 @@ const VirtualKeyboard = ({ variant = 'native', type = 'default', value, onChange
|
|
|
3599
3631
|
const display = { ...baseDisplay };
|
|
3600
3632
|
if (numpadWithEnter && isNumpadLayout) {
|
|
3601
3633
|
display['{enter}'] = '<span data-icon-key="enterNumpad"></span>';
|
|
3634
|
+
display['{space}'] = '<span data-icon-key="spaceNumpad"></span>';
|
|
3602
3635
|
}
|
|
3603
3636
|
if (variant === 'fixed') {
|
|
3604
3637
|
display['{bksp}'] = (display['{bksp}'] ?? '').replace(/\s*Apagar$/, '');
|
|
@@ -3643,7 +3676,7 @@ const VirtualKeyboard = ({ variant = 'native', type = 'default', value, onChange
|
|
|
3643
3676
|
event.stopPropagation();
|
|
3644
3677
|
}, onClick: () => handleAccentSelect(option), children: option }, `${accentMenu.sourceKey}-${option}`))) }, rowIndex))) }), document.body))] })) : null;
|
|
3645
3678
|
if (variant === 'native' && typeof document !== 'undefined') {
|
|
3646
|
-
return reactDom.createPortal(jsxRuntime.jsx("div", { id: id, className: clsx(styles$k.overlay, { [styles$k.overlayOpen]: isOpen }, styles$k[isNumpadLayout ? 'layout--numeric' : 'layout--default'], className), children: keyboardEl }), document.body);
|
|
3679
|
+
return reactDom.createPortal(jsxRuntime.jsx("div", { id: id, className: clsx(styles$k.overlay, { [styles$k.overlayOpen]: isOpen }, styles$k[isNumpadLayout ? 'layout--numeric' : 'layout--default'], className), style: nativeHeight ? { '--vkeyboard-native-height': nativeHeight } : undefined, children: keyboardEl }), document.body);
|
|
3647
3680
|
}
|
|
3648
3681
|
return (jsxRuntime.jsxs("div", { id: id, className: clsx(styles$k.container, styles$k[`mode--${variant}`], styles$k[isNumpadLayout ? 'layout--numeric' : 'layout--default'], className), children: [variant === 'fixed' && (jsxRuntime.jsx("div", { className: styles$k.textFieldContainer, children: jsxRuntime.jsx(TextField, { placeholder: placeholder, value: effectiveValue, onChange: onChange, helperText: helperText, error: error, errorMessage: errorMessage, readOnly: true, disableAutoComplete: true, maxLength: maxLength, attachedToVirtualKeyboard: true, className: styles$k.textFieldWrapper, scale: textFieldScale }) })), keyboardEl] }));
|
|
3649
3682
|
};
|
|
@@ -3674,7 +3707,7 @@ const LabelComponent = ({ children, htmlFor, required = false, tooltip = false,
|
|
|
3674
3707
|
return container;
|
|
3675
3708
|
};
|
|
3676
3709
|
|
|
3677
|
-
const TextField$1 =
|
|
3710
|
+
const TextField$1 = forwardRef(({ className, style, value, label, placeholder, type = 'text', onChange, disabled = false, maxLength, required = false, helperText, tooltipText, tooltipSide = 'bottom', tooltipAlign = 'start', errorMessage, error, id, icon, scale = 1, onBlur, onFocus, name, virtualKeyboard, attachedToVirtualKeyboard, disableAutoComplete = false, ...rest }, ref) => {
|
|
3678
3711
|
const normalizeValue = (val) => {
|
|
3679
3712
|
return val === undefined || val === null ? '' : String(val);
|
|
3680
3713
|
};
|
|
@@ -3725,7 +3758,7 @@ const TextField$1 = React.forwardRef(({ className, style, value, label, placehol
|
|
|
3725
3758
|
setIsFocused(true);
|
|
3726
3759
|
onFocus?.(e);
|
|
3727
3760
|
}, [onFocus]);
|
|
3728
|
-
const showCustomIcon = (inputValue.trim().length === 0 ||
|
|
3761
|
+
const showCustomIcon = (inputValue.trim().length === 0 || !isFocused) && icon;
|
|
3729
3762
|
const showClearIcon = isFocused && inputValue.trim().length > 0;
|
|
3730
3763
|
const hasError = Boolean(inputError) || Boolean(error);
|
|
3731
3764
|
const displayHelperText = (error ? errorMessage : undefined) || inputError || helperText || '\u00A0';
|
|
@@ -3980,7 +4013,7 @@ const DatePicker = ({ locale = 'pt-br', calendarSide = 'bottom', calendarAlign =
|
|
|
3980
4013
|
};
|
|
3981
4014
|
return (jsxRuntime.jsx("div", { ref: wrapperRef, id: id, className: clsx(styles$h.datePicker, className), style: { ...containerStyle, ...style }, ...rest, children: jsxRuntime.jsx(Popover, { open: showCalendar, onOpenChange: setShowCalendar, asAnchor: true, trigger: jsxRuntime.jsx(TextField, { className: styles$h.textfieldContainer, type: "tel", icon: jsxRuntime.jsx(reactIcons.Calendar16Regular, { onClick: !disabled ? handleIconClick : undefined, className: clsx(styles$h.datePickerIcon, disabled && styles$h.datePickerIconDisabled) }), onChange: (e) => {
|
|
3982
4015
|
handleTextFieldChange(String(e));
|
|
3983
|
-
}, onKeyDown: handleKeyDown, onFocus: handleFocus,
|
|
4016
|
+
}, onKeyDown: handleKeyDown, onFocus: handleFocus, autoComplete: "off", value: displayValue, helperText: !externalError ? (helperText || undefined) : undefined, errorMessage: externalError ? combinedHelperText : undefined, error: hasValidationError ? true : undefined, maxLength: 10, required: required, label: label, disabled: disabled, scale: scale, id: fieldId, "data-testid": testId, placeholder: locale === 'en-us' ? 'MM/DD/YYYY' : 'DD/MM/YYYY', "aria-label": "Open calendar", "aria-expanded": showCalendar, "aria-controls": calendarId, "aria-invalid": hasValidationError, "aria-describedby": externalError ? undefined : (helperText ? `${fieldId}-help` : undefined) }), content: jsxRuntime.jsx(Calendar, { selected: currentSelectedDate, currentDate: currentDate, onDateChange: setCurrentDate, onDaySelect: handleDaySelect, locale: locale, format: locale === 'en-us' ? 'mm/dd/yyyy' : 'dd/mm/yyyy', minDate: minDate, maxDate: maxDate, scale: scale, id: calendarId, onClear: () => {
|
|
3984
4017
|
handleDateChange(null);
|
|
3985
4018
|
setCurrentDate(new Date());
|
|
3986
4019
|
} }), side: calendarSide, align: calendarAlign, sideOffset: 8 }) }));
|
|
@@ -3989,7 +4022,7 @@ var DatePicker_default = React.memo(DatePicker);
|
|
|
3989
4022
|
|
|
3990
4023
|
var styles$g = {"DialogOverlay":"Dialog-module__DialogOverlay___LEX2O","DialogContent":"Dialog-module__DialogContent___ziVXb","DialogTitle":"Dialog-module__DialogTitle___ay1tD","DialogDescription":"Dialog-module__DialogDescription___odslw","DivButtons":"Dialog-module__DivButtons___BiwX-"};
|
|
3991
4024
|
|
|
3992
|
-
const Dialog = ({ show = false, title, bodyContent, textPrimaryAction, textSecondaryAction, onPrimaryAction, onSecondaryAction, className, ...rest }) => (jsxRuntime.jsx(radixUi.AlertDialog.Root, { open: show, ...rest, children: jsxRuntime.jsxs(radixUi.AlertDialog.Portal, { children: [jsxRuntime.jsx(radixUi.AlertDialog.Overlay, { className: styles$g.DialogOverlay }), jsxRuntime.jsxs(radixUi.AlertDialog.Content, { className: clsx(styles$g.DialogContent, className), children: [jsxRuntime.jsx(radixUi.AlertDialog.Title, { className: styles$g.DialogTitle, children: title }), jsxRuntime.jsx(radixUi.AlertDialog.Description, { className: styles$g.DialogDescription, children: bodyContent }), jsxRuntime.jsxs("div", { className: styles$g.DivButtons, children: [!!(textSecondaryAction && textSecondaryAction.trim()) && (jsxRuntime.jsx(radixUi.AlertDialog.Cancel, { asChild: true, children: jsxRuntime.jsx(Button, { variant: "outlined", ...(onSecondaryAction && { onClick: onSecondaryAction }), children: textSecondaryAction }) })), jsxRuntime.jsx(radixUi.AlertDialog.Action, { asChild: true, children: jsxRuntime.jsx(Button, { variant: "filled", ...(onPrimaryAction && { onClick: onPrimaryAction }), children: textPrimaryAction }) })] })] })] }) }));
|
|
4025
|
+
const Dialog = ({ show = false, title, bodyContent, textPrimaryAction, textSecondaryAction, onPrimaryAction, onSecondaryAction, className, ...rest }) => (jsxRuntime.jsx(radixUi.AlertDialog.Root, { open: show, ...rest, children: jsxRuntime.jsxs(radixUi.AlertDialog.Portal, { children: [jsxRuntime.jsx(radixUi.AlertDialog.Overlay, { className: styles$g.DialogOverlay }), jsxRuntime.jsxs(radixUi.AlertDialog.Content, { className: clsx(styles$g.DialogContent, className), children: [jsxRuntime.jsx(radixUi.AlertDialog.Title, { className: styles$g.DialogTitle, children: title }), jsxRuntime.jsx(radixUi.AlertDialog.Description, { asChild: true, className: styles$g.DialogDescription, children: jsxRuntime.jsx("div", { children: bodyContent }) }), jsxRuntime.jsxs("div", { className: styles$g.DivButtons, children: [!!(textSecondaryAction && textSecondaryAction.trim()) && (jsxRuntime.jsx(radixUi.AlertDialog.Cancel, { asChild: true, children: jsxRuntime.jsx(Button, { variant: "outlined", ...(onSecondaryAction && { onClick: onSecondaryAction }), children: textSecondaryAction }) })), jsxRuntime.jsx(radixUi.AlertDialog.Action, { asChild: true, children: jsxRuntime.jsx(Button, { variant: "filled", ...(onPrimaryAction && { onClick: onPrimaryAction }), children: textPrimaryAction }) })] })] })] }) }));
|
|
3993
4026
|
|
|
3994
4027
|
var styles$f = {"drawerShadow":"Drawer-module__drawerShadow___0Z6iL","drawerShadow--visible":"Drawer-module__drawerShadow--visible___FspoH","drawerSidebar":"Drawer-module__drawerSidebar___cdyyb","drawerSidebar--open":"Drawer-module__drawerSidebar--open___ee2-Y","drawerSidebar--disabled":"Drawer-module__drawerSidebar--disabled___MYrBI","drawerTitleClose":"Drawer-module__drawerTitleClose___QzqN-","drawerTitle":"Drawer-module__drawerTitle___naMX0","drawerChildren":"Drawer-module__drawerChildren___xGdg9","drawerHeaderContent":"Drawer-module__drawerHeaderContent___NLSwj"};
|
|
3995
4028
|
|
|
@@ -4082,7 +4115,7 @@ const matchesAccept = (file, accept) => {
|
|
|
4082
4115
|
return fileType === type;
|
|
4083
4116
|
});
|
|
4084
4117
|
};
|
|
4085
|
-
const FileUpload =
|
|
4118
|
+
const FileUpload = forwardRef(({ value, onChange, helperText, error = false, errorMessage, maxFileSize, maxFilesQuantity, disabled = false, className, id, accept, multiple = true, description = 'Clique ou arraste os arquivos aqui', descriptionErrorMessage = 'Falha ao subir um ou mais arquivos.', ...rest }, ref) => {
|
|
4086
4119
|
const generatedId = React.useId();
|
|
4087
4120
|
const componentId = id || generatedId;
|
|
4088
4121
|
const helperId = `${componentId}-helper`;
|
|
@@ -4244,7 +4277,7 @@ const Combined = ({ buttonText = 'Filtrar', icon, variant = 'outlined', disabled
|
|
|
4244
4277
|
|
|
4245
4278
|
var styles$c = {"search":"Search-module__search___u3QsV","searchLeftIcon":"Search-module__searchLeftIcon___OKOBq","disabled":"Search-module__disabled___adbxO","inputWithClearIcon":"Search-module__inputWithClearIcon___cqvkq","searchClearIcon":"Search-module__searchClearIcon___qX9-h"};
|
|
4246
4279
|
|
|
4247
|
-
const Search =
|
|
4280
|
+
const Search = forwardRef(({ placeholder = 'Dica do que deve ser buscado', disabled = false, value, onChange, onKeyDown, onFocus, onBlur, onClear, onClick, onMouseDown, searchMode = 'instant', onSearch, id, scale = 1, className, style, virtualKeyboard, 'data-testid': testId, ...rest }, ref) => {
|
|
4248
4281
|
const [internalValue, setInternalValue] = React.useState('');
|
|
4249
4282
|
const { internalRef: inputRef, setRefs: setInputRefs } = useInputKeyboardValue(ref);
|
|
4250
4283
|
const isControlled = value !== undefined && onChange !== undefined;
|
|
@@ -4854,9 +4887,9 @@ const Menu = ({ items, children, onItemSelect, search, enableInfiniteScroll, onS
|
|
|
4854
4887
|
}, ...rest, children: [search && (jsxRuntime.jsx("div", { className: styles$a.searchWrapper, children: jsxRuntime.jsx(Search, { placeholder: "Buscar", onChange: handleSearchChange, value: searchInput, onKeyDown: handleSearchKeyDown }) })), jsxRuntime.jsxs("div", { className: styles$a.itemsWrapper, ref: itemsWrapperRef, style: { maxHeight: maxHeightStyle }, children: [filteredItems.length > 0 ? (filteredItems.map((item, index) => renderMenuItem(item, item.value || item.text || `item-${index}`))) : (jsxRuntime.jsx("div", { className: styles$a.emptyState, children: "Nenhum item encontrado" })), enableInfiniteScroll && isLoadingMore && (jsxRuntime.jsx("div", { className: styles$a.loadingMore, children: "Carregando mais itens..." })), enableInfiniteScroll && (jsxRuntime.jsx("div", { ref: sentinelRef, "data-scroll-sentinel": true, style: { height: '1px', visibility: 'hidden' } }))] })] }) })] }));
|
|
4855
4888
|
};
|
|
4856
4889
|
|
|
4857
|
-
var styles$9 = {"modalOverlay":"Modal-module__modalOverlay___rI8Wz","modalContent":"Modal-module__modalContent___6Cgb1","modalContent--fullscreen":"Modal-module__modalContent--fullscreen___QeBlG","modalHeader":"Modal-module__modalHeader___IuHIg","modalTitle":"Modal-module__modalTitle___9VDmr","modalBody":"Modal-module__modalBody___ohjQm","modalFooter":"Modal-module__modalFooter___TEqdK"};
|
|
4890
|
+
var styles$9 = {"modalOverlay":"Modal-module__modalOverlay___rI8Wz","modalContent":"Modal-module__modalContent___6Cgb1","modalContent--fullscreen":"Modal-module__modalContent--fullscreen___QeBlG","modalHeader":"Modal-module__modalHeader___IuHIg","modalCloseButton":"Modal-module__modalCloseButton___VoWHD","modalTitle":"Modal-module__modalTitle___9VDmr","modalBody":"Modal-module__modalBody___ohjQm","modalFooter":"Modal-module__modalFooter___TEqdK"};
|
|
4858
4891
|
|
|
4859
|
-
const Modal = ({ isOpen = false, onClose, title, children, headerContent, closeOnOverlayClick = true, className, id, footer, customWidth, customHeight, fullscreen = false, ...rest }) => {
|
|
4892
|
+
const Modal = ({ isOpen = false, onClose, title, children, headerContent, closeOnOverlayClick = true, className, id, footer, customWidth, customHeight, closingButton = true, fullscreen = false, ...rest }) => {
|
|
4860
4893
|
const contentRef = React__namespace.useRef(null);
|
|
4861
4894
|
const handleOpenChange = (open) => {
|
|
4862
4895
|
if (!open) {
|
|
@@ -4870,7 +4903,7 @@ const Modal = ({ isOpen = false, onClose, title, children, headerContent, closeO
|
|
|
4870
4903
|
return (jsxRuntime.jsx(radixUi.Dialog.Root, { open: isOpen, onOpenChange: handleOpenChange, ...rest, children: jsxRuntime.jsxs(radixUi.Dialog.Portal, { children: [jsxRuntime.jsx(radixUi.Dialog.Overlay, { className: styles$9.modalOverlay }), jsxRuntime.jsxs(radixUi.Dialog.Content, { ref: contentRef, className: clsx(styles$9.modalContent, fullscreen && styles$9['modalContent--fullscreen'], className), id: id, style: {
|
|
4871
4904
|
'--modal-custom-width': customWidth,
|
|
4872
4905
|
'--modal-custom-height': customHeight,
|
|
4873
|
-
}, onInteractOutside: !closeOnOverlayClick ? (e) => e.preventDefault() : undefined, onOpenAutoFocus: handleOpenAutoFocus, "aria-labelledby": id ? `${id}-title` : 'modal-title', tabIndex: -1, children: [jsxRuntime.jsxs("header", { className: styles$9.modalHeader, children: [title && (jsxRuntime.jsx(radixUi.Dialog.Title, { className: styles$9.modalTitle, id: id ? `${id}-title` : 'modal-title', children: title })), headerContent && (jsxRuntime.jsx("div", { children: headerContent })), jsxRuntime.jsx(radixUi.Dialog.Close, { asChild: true, children: jsxRuntime.jsx(Button, { variant: "outlined", iconOnly: true, icon: jsxRuntime.jsx(reactIcons.Dismiss16Regular, {}), size: "lg", tooltipText: 'Fechar' }) })] }), jsxRuntime.jsx("section", { className: styles$9.modalBody, children: children }), footer && (jsxRuntime.jsx("footer", { className: styles$9.modalFooter, children: footer }))] })] }) }));
|
|
4906
|
+
}, onInteractOutside: !closeOnOverlayClick ? (e) => e.preventDefault() : undefined, onOpenAutoFocus: handleOpenAutoFocus, "aria-labelledby": id ? `${id}-title` : 'modal-title', tabIndex: -1, children: [(title || headerContent || closingButton) && (jsxRuntime.jsxs("header", { className: styles$9.modalHeader, children: [title && (jsxRuntime.jsx(radixUi.Dialog.Title, { className: styles$9.modalTitle, id: id ? `${id}-title` : 'modal-title', children: title })), headerContent && (jsxRuntime.jsx("div", { children: headerContent })), closingButton && (jsxRuntime.jsx("div", { className: styles$9.modalCloseButton, children: jsxRuntime.jsx(radixUi.Dialog.Close, { asChild: true, children: jsxRuntime.jsx(Button, { variant: "outlined", iconOnly: true, icon: jsxRuntime.jsx(reactIcons.Dismiss16Regular, {}), size: "lg", tooltipText: 'Fechar' }) }) }))] })), jsxRuntime.jsx("section", { className: styles$9.modalBody, children: children }), footer && (jsxRuntime.jsx("footer", { className: styles$9.modalFooter, children: footer }))] })] }) }));
|
|
4874
4907
|
};
|
|
4875
4908
|
|
|
4876
4909
|
var styles$8 = {"quantity":"Quantity-module__quantity___-vndR","quantityInput":"Quantity-module__quantityInput___xZG-v","disabled":"Quantity-module__disabled___X6p5l"};
|
|
@@ -5146,7 +5179,7 @@ const ExpandableSelectItem = ({ item, variant, onSelect, selectedValues, level =
|
|
|
5146
5179
|
}, role: "button", tabIndex: item.disabled ? -1 : 0, "data-disabled": item.disabled || undefined, "data-selected": isSelected && !hasChildren ? 'true' : undefined, "data-testid": `select-item-${item.value}`, children: [variant === 'icon' && item.icon && (jsxRuntime.jsx("span", { className: styles$6.icon, children: item.icon })), jsxRuntime.jsxs("div", { className: styles$6.textContent, children: [jsxRuntime.jsx("div", { className: styles$6.title, children: item.text }), item.subTitle && jsxRuntime.jsx("div", { className: styles$6.subTitle, children: item.subTitle })] }), hasChildren && (jsxRuntime.jsx("span", { className: styles$6.chevron, children: isExpanded ? jsxRuntime.jsx(reactIcons.ChevronDown16Regular, {}) : jsxRuntime.jsx(reactIcons.ChevronRight16Regular, {}) }))] }) }), hasChildren && isExpanded && (jsxRuntime.jsx("div", { className: styles$6.childrenWrapper, children: item.children.map((child) => (jsxRuntime.jsx(ExpandableSelectItem, { item: child, variant: variant, onSelect: onSelect, selectedValues: selectedValues, level: level + 1 }, child.id || child.value))) }))] }));
|
|
5147
5180
|
};
|
|
5148
5181
|
|
|
5149
|
-
const SelectItem =
|
|
5182
|
+
const SelectItem = forwardRef(({ text, subTitle, icon, disabled, value, variant, disableFocusOnHover, ...restProps }, ref) => {
|
|
5150
5183
|
return (jsxRuntime.jsxs("div", { className: clsx(styles$6.itemWrapper, {
|
|
5151
5184
|
[styles$6.disabled]: disabled,
|
|
5152
5185
|
}), "data-disabled": disabled || undefined, "data-testid": `select-item-${value}`, ref: ref, children: [variant === 'icon' && icon && (jsxRuntime.jsx("span", { className: styles$6.icon, children: icon })), jsxRuntime.jsxs(radixUi.Select.Item, { className: clsx(styles$6.item, {
|
|
@@ -5388,11 +5421,12 @@ function useSelectLogic({ value, required = false, search = false, onValueChange
|
|
|
5388
5421
|
};
|
|
5389
5422
|
}
|
|
5390
5423
|
|
|
5391
|
-
const Select = ({ items, onValueChange, onOpenChange, variant, required = false, value, label, helperText, placeholder = 'Selecione', maxWidth, search = false, error, errorMessage, disabled = false, className, style, 'aria-label': ariaLabel, 'data-testid': testId, tooltipText, tooltipSide = 'bottom', tooltipAlign = 'start', enableInfiniteScroll = false, onScrollEnd, isLoadingMore = false, enableApiSearch = false, onApiSearch, isSearching = false, scale = 1, ...rest }) => {
|
|
5424
|
+
const Select = ({ items, onValueChange, onOpenChange, variant, required = false, value, label, helperText, placeholder = 'Selecione', maxWidth, search = false, error, errorMessage, disabled = false, className, style, 'aria-label': ariaLabel, 'data-testid': testId, tooltipText, tooltipSide = 'bottom', tooltipAlign = 'start', enableInfiniteScroll = false, onScrollEnd, hasMore = true, isLoadingMore = false, enableApiSearch = false, onApiSearch, isSearching = false, scale = 1, ...rest }) => {
|
|
5392
5425
|
const componentId = React.useId();
|
|
5393
5426
|
const selectId = `select-${componentId}`;
|
|
5394
5427
|
const viewportRef = React.useRef(null);
|
|
5395
5428
|
const hasReachedEndRef = React.useRef(false);
|
|
5429
|
+
const wasLoadingMoreRef = React.useRef(false);
|
|
5396
5430
|
const { state, actions, refs, utils, } = useSelectLogic({
|
|
5397
5431
|
value,
|
|
5398
5432
|
required,
|
|
@@ -5411,7 +5445,7 @@ const Select = ({ items, onValueChange, onOpenChange, variant, required = false,
|
|
|
5411
5445
|
const handleScroll = () => {
|
|
5412
5446
|
const { scrollTop, scrollHeight, clientHeight } = viewport;
|
|
5413
5447
|
const isAtBottom = scrollTop + clientHeight >= scrollHeight - 1;
|
|
5414
|
-
if (isAtBottom && !hasReachedEndRef.current && onScrollEnd && !isLoadingMore) {
|
|
5448
|
+
if (isAtBottom && !hasReachedEndRef.current && onScrollEnd && !isLoadingMore && hasMore) {
|
|
5415
5449
|
hasReachedEndRef.current = true;
|
|
5416
5450
|
onScrollEnd();
|
|
5417
5451
|
}
|
|
@@ -5423,17 +5457,38 @@ const Select = ({ items, onValueChange, onOpenChange, variant, required = false,
|
|
|
5423
5457
|
return () => {
|
|
5424
5458
|
viewport.removeEventListener('scroll', handleScroll);
|
|
5425
5459
|
};
|
|
5426
|
-
}, [state.isOpen, enableInfiniteScroll, onScrollEnd, isLoadingMore]);
|
|
5460
|
+
}, [state.isOpen, enableInfiniteScroll, onScrollEnd, isLoadingMore, hasMore]);
|
|
5427
5461
|
React.useEffect(() => {
|
|
5428
5462
|
if (state.isOpen && enableInfiniteScroll) {
|
|
5429
5463
|
hasReachedEndRef.current = false;
|
|
5430
5464
|
}
|
|
5431
5465
|
}, [state.isOpen, enableInfiniteScroll]);
|
|
5466
|
+
React.useEffect(() => {
|
|
5467
|
+
if (wasLoadingMoreRef.current && !isLoadingMore && enableInfiniteScroll) {
|
|
5468
|
+
hasReachedEndRef.current = false;
|
|
5469
|
+
}
|
|
5470
|
+
wasLoadingMoreRef.current = isLoadingMore;
|
|
5471
|
+
}, [isLoadingMore, enableInfiniteScroll]);
|
|
5432
5472
|
const displayText = React.useMemo(() => utils.getDisplayText(state.selectedValues, placeholder, variant, items), [state.selectedValues, placeholder, variant, items, utils]);
|
|
5433
5473
|
const filteredItems = React.useMemo(() => {
|
|
5434
5474
|
const termToFilter = enableApiSearch ? state.searchTerm : state.searchInput;
|
|
5435
5475
|
return utils.getFilteredItems(items, termToFilter);
|
|
5436
5476
|
}, [items, state.searchTerm, state.searchInput, enableApiSearch, utils]);
|
|
5477
|
+
React.useEffect(() => {
|
|
5478
|
+
if (!state.isOpen || !enableInfiniteScroll || !onScrollEnd || isLoadingMore)
|
|
5479
|
+
return;
|
|
5480
|
+
const timer = setTimeout(() => {
|
|
5481
|
+
const viewport = viewportRef.current;
|
|
5482
|
+
if (!viewport)
|
|
5483
|
+
return;
|
|
5484
|
+
const { scrollHeight, clientHeight } = viewport;
|
|
5485
|
+
if (scrollHeight <= clientHeight && !hasReachedEndRef.current && hasMore) {
|
|
5486
|
+
hasReachedEndRef.current = true;
|
|
5487
|
+
onScrollEnd();
|
|
5488
|
+
}
|
|
5489
|
+
}, 150);
|
|
5490
|
+
return () => clearTimeout(timer);
|
|
5491
|
+
}, [state.isOpen, enableInfiniteScroll, onScrollEnd, isLoadingMore, hasMore, filteredItems.length]);
|
|
5437
5492
|
const containerStyle = React.useMemo(() => ({
|
|
5438
5493
|
maxWidth: maxWidth ? `${maxWidth}px` : undefined,
|
|
5439
5494
|
'--giro-scale': scale,
|
|
@@ -5501,18 +5556,18 @@ const EmptyState = ({ emptyIcon, emptyTitle, emptyText }) => (jsxRuntime.jsxs("d
|
|
|
5501
5556
|
|
|
5502
5557
|
var styles$4 = {"toggle":"ToggleButton-module__toggle___c1Ym-","item":"ToggleButton-module__item___2Qll-","toggle-lg":"ToggleButton-module__toggle-lg___8f3lo","item-lg":"ToggleButton-module__item-lg___479w-","toggle-sm":"ToggleButton-module__toggle-sm___SAGGb","item-sm":"ToggleButton-module__item-sm___4ju--","toggleIconLeft":"ToggleButton-module__toggleIconLeft___VwgKk","toggleWithIcon":"ToggleButton-module__toggleWithIcon___WbCr7","toggleIconOnly":"ToggleButton-module__toggleIconOnly___4iMEp","group":"ToggleButton-module__group___BoR-e"};
|
|
5503
5558
|
|
|
5504
|
-
const Toggle = ({ pressed, defaultPressed, onPressedChange, disabled = false, className,
|
|
5559
|
+
const Toggle = ({ pressed, defaultPressed, onPressedChange, disabled = false, className, label, id, size = 'lg', scale = 1, style, tooltipText, tooltipSide = 'top', tooltipAlign = 'center', icon, iconOnly = false, mode: _mode, selectionType: _type, value: _value, defaultValue: _defaultValue, onValueChange: _onValueChange, items: _items, ...rest }) => {
|
|
5505
5560
|
const toggle = (jsxRuntime.jsx(radixUi.Toggle.Root, { pressed: pressed, defaultPressed: defaultPressed, onPressedChange: onPressedChange, disabled: disabled, className: clsx(styles$4.toggle, styles$4[`toggle-${size}`], {
|
|
5506
5561
|
[styles$4.toggleIconOnly]: iconOnly,
|
|
5507
5562
|
[styles$4.toggleWithIcon]: !!icon && !iconOnly,
|
|
5508
|
-
}, className), id: id, style: { '--giro-scale': scale, ...style }, ...rest, children: iconOnly ? (jsxRuntime.jsx("span", { className: styles$4.toggleIconLeft, "aria-hidden": "true", children: icon })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [icon && jsxRuntime.jsx("span", { className: styles$4.toggleIconLeft, "aria-hidden": "true", children: icon }),
|
|
5563
|
+
}, className), id: id, style: { '--giro-scale': scale, ...style }, ...rest, children: iconOnly ? (jsxRuntime.jsx("span", { className: styles$4.toggleIconLeft, "aria-hidden": "true", children: icon })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [icon && jsxRuntime.jsx("span", { className: styles$4.toggleIconLeft, "aria-hidden": "true", children: icon }), label] })) }));
|
|
5509
5564
|
if (tooltipText) {
|
|
5510
5565
|
return (jsxRuntime.jsx(Tooltip, { text: tooltipText, side: tooltipSide, align: tooltipAlign, children: toggle }));
|
|
5511
5566
|
}
|
|
5512
5567
|
return toggle;
|
|
5513
5568
|
};
|
|
5514
5569
|
|
|
5515
|
-
const ToggleGroup = ({ selectionType = 'single', value, defaultValue, onValueChange,
|
|
5570
|
+
const ToggleGroup = ({ selectionType = 'single', value, defaultValue, onValueChange, disabled = false, items = [], className, id, size = 'lg', scale = 1, style, tooltipText, tooltipSide = 'top', tooltipAlign = 'center', mode: _mode, icon: _icon, iconOnly: _iconOnly, pressed: _pressed, defaultPressed: _defaultPressed, onPressedChange: _onPressedChange, ...rest }) => {
|
|
5516
5571
|
const rootProps = selectionType === 'multiple'
|
|
5517
5572
|
? {
|
|
5518
5573
|
type: 'multiple',
|
|
@@ -5526,11 +5581,10 @@ const ToggleGroup = ({ selectionType = 'single', value, defaultValue, onValueCha
|
|
|
5526
5581
|
defaultValue: defaultValue,
|
|
5527
5582
|
onValueChange: onValueChange,
|
|
5528
5583
|
};
|
|
5529
|
-
const group = (jsxRuntime.jsx(radixUi.ToggleGroup.Root, { ...rootProps,
|
|
5530
|
-
|
|
5531
|
-
|
|
5532
|
-
|
|
5533
|
-
}), style: { '--giro-scale': scale }, children: item.iconOnly ? (jsxRuntime.jsx("span", { className: styles$4.toggleIconLeft, "aria-hidden": "true", children: item.icon })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [item.icon && jsxRuntime.jsx("span", { className: styles$4.toggleIconLeft, "aria-hidden": "true", children: item.icon }), item.label] })) }, item.value))) }));
|
|
5584
|
+
const group = (jsxRuntime.jsx(radixUi.ToggleGroup.Root, { ...rootProps, disabled: disabled, className: clsx(styles$4.group, className), id: id, style: { '--giro-scale': scale, ...style }, ...rest, children: items.map((item) => (jsxRuntime.jsx(radixUi.ToggleGroup.Item, { value: item.value, disabled: item.disabled, className: clsx(styles$4.item, styles$4[`item-${size}`], {
|
|
5585
|
+
[styles$4.toggleIconOnly]: item.iconOnly,
|
|
5586
|
+
[styles$4.toggleWithIcon]: !!item.icon && !item.iconOnly,
|
|
5587
|
+
}), style: { '--giro-scale': scale }, children: item.iconOnly ? (jsxRuntime.jsx("span", { className: styles$4.toggleIconLeft, "aria-hidden": "true", children: item.icon })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [item.icon && jsxRuntime.jsx("span", { className: styles$4.toggleIconLeft, "aria-hidden": "true", children: item.icon }), item.label] })) }, item.value))) }));
|
|
5534
5588
|
if (tooltipText) {
|
|
5535
5589
|
return (jsxRuntime.jsx(Tooltip, { text: tooltipText, side: tooltipSide, align: tooltipAlign, children: group }));
|
|
5536
5590
|
}
|
|
@@ -5747,7 +5801,7 @@ const TableV2 = ({ columns, data, rowSelection: rowSelectionConfig, enableSortin
|
|
|
5747
5801
|
|
|
5748
5802
|
var styles$3 = {"container":"TextArea-module__container___WEBC-","inputWrapper":"TextArea-module__inputWrapper___-omPx","inputContainer":"TextArea-module__inputContainer___0-jKY","footer":"TextArea-module__footer___7XMlj","helperText":"TextArea-module__helperText___709rD","charCount":"TextArea-module__charCount___zdbxM","error":"TextArea-module__error___DWDms","disabled":"TextArea-module__disabled___lHxCa"};
|
|
5749
5803
|
|
|
5750
|
-
const TextArea =
|
|
5804
|
+
const TextArea = forwardRef(({ className, value, label, placeholder, onChange, disabled = false, maxLength, required = false, helperText, tooltipText, tooltipSide = 'bottom', tooltipAlign = 'start', errorMessage, error, id, onBlur, onFocus, name, resize = 'vertical', charCount = false, height, virtualKeyboard, ...rest }, ref) => {
|
|
5751
5805
|
const normalizeValue = (val) => {
|
|
5752
5806
|
return val === undefined || val === null ? '' : String(val);
|
|
5753
5807
|
};
|
|
@@ -5896,13 +5950,19 @@ const useToast = () => {
|
|
|
5896
5950
|
const Toast = ({ id, title, duration = 5000, icon, iconClosed = jsxRuntime.jsx(reactIcons.Dismiss16Filled, {}), automaticClose = true, iconType = "Info", className, ...rest }) => {
|
|
5897
5951
|
const [open, setOpen] = React__namespace.useState(false);
|
|
5898
5952
|
const { dismissToast } = useToastContext();
|
|
5953
|
+
const dismissTimerRef = React__namespace.useRef(null);
|
|
5899
5954
|
React__namespace.useEffect(() => {
|
|
5900
5955
|
setOpen(true);
|
|
5956
|
+
return () => {
|
|
5957
|
+
if (dismissTimerRef.current !== null) {
|
|
5958
|
+
clearTimeout(dismissTimerRef.current);
|
|
5959
|
+
}
|
|
5960
|
+
};
|
|
5901
5961
|
}, []);
|
|
5902
5962
|
const handleOpenChange = (isOpen) => {
|
|
5903
5963
|
setOpen(isOpen);
|
|
5904
5964
|
if (!isOpen && id) {
|
|
5905
|
-
setTimeout(() => dismissToast(id), 200);
|
|
5965
|
+
dismissTimerRef.current = setTimeout(() => dismissToast(id), 200);
|
|
5906
5966
|
}
|
|
5907
5967
|
};
|
|
5908
5968
|
let displayIcon = icon;
|
|
@@ -6328,6 +6388,39 @@ exports.Dialog = Dialog;
|
|
|
6328
6388
|
exports.Drawer = Drawer;
|
|
6329
6389
|
exports.FileUpload = FileUpload;
|
|
6330
6390
|
exports.Filter = Filter;
|
|
6391
|
+
exports.G_Avatar = Avatar;
|
|
6392
|
+
exports.G_Badge = Badge;
|
|
6393
|
+
exports.G_Button = Button;
|
|
6394
|
+
exports.G_Calendar = Calendar;
|
|
6395
|
+
exports.G_Callout = Callout;
|
|
6396
|
+
exports.G_Card = Card;
|
|
6397
|
+
exports.G_Checkbox = Checkbox;
|
|
6398
|
+
exports.G_Chips = MemoizedChips;
|
|
6399
|
+
exports.G_Container = Container;
|
|
6400
|
+
exports.G_DatePicker = DatePicker_default;
|
|
6401
|
+
exports.G_Dialog = Dialog;
|
|
6402
|
+
exports.G_Drawer = Drawer;
|
|
6403
|
+
exports.G_FileUpload = FileUpload;
|
|
6404
|
+
exports.G_Filter = Filter;
|
|
6405
|
+
exports.G_ListItem = ListItem;
|
|
6406
|
+
exports.G_Menu = Menu;
|
|
6407
|
+
exports.G_Modal = Modal;
|
|
6408
|
+
exports.G_Popover = Popover;
|
|
6409
|
+
exports.G_Quantity = memorizedQuantity;
|
|
6410
|
+
exports.G_Radio = Radio;
|
|
6411
|
+
exports.G_Search = Search;
|
|
6412
|
+
exports.G_Select = Select;
|
|
6413
|
+
exports.G_Switch = Switch;
|
|
6414
|
+
exports.G_TableV2 = TableV2;
|
|
6415
|
+
exports.G_TextArea = TextArea_default;
|
|
6416
|
+
exports.G_TextField = TextField;
|
|
6417
|
+
exports.G_Toast = Toast;
|
|
6418
|
+
exports.G_ToastContainer = ToastContainer;
|
|
6419
|
+
exports.G_ToastProvider = ToastProvider;
|
|
6420
|
+
exports.G_ToggleButton = ToggleButton;
|
|
6421
|
+
exports.G_Tooltip = Tooltip;
|
|
6422
|
+
exports.G_VerificationCode = VerificationCode;
|
|
6423
|
+
exports.G_VirtualKeyboard = VirtualKeyboard;
|
|
6331
6424
|
exports.ListItem = ListItem;
|
|
6332
6425
|
exports.Menu = Menu;
|
|
6333
6426
|
exports.Modal = Modal;
|