@s_mart/form 9.2.0-beta.0 → 9.2.0-beta.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.
- package/dist/index.d.mts +70 -79
- package/dist/index.mjs +25 -25
- package/package.json +9 -9
package/dist/index.d.mts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as react_hook_form from 'react-hook-form';
|
|
2
|
-
import { FieldValues, UseFormReturn, FormProviderProps, UseFormProps, UseControllerProps, ControllerProps } from 'react-hook-form';
|
|
2
|
+
import { FieldValues, UseFormReturn, FormProviderProps, UseFormProps, FieldPath, UseControllerProps, ControllerProps, FieldPathValue } from 'react-hook-form';
|
|
3
3
|
import { z } from 'zod';
|
|
4
4
|
import * as react from 'react';
|
|
5
5
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
6
|
-
import { TextFieldProps as TextFieldProps$1, SelectProps as SelectProps$1, AutocompleteProps as AutocompleteProps$1, CheckboxProps as CheckboxProps$1, SwitchProps as SwitchProps$1,
|
|
6
|
+
import { TextFieldProps as TextFieldProps$1, SelectProps as SelectProps$1, AutocompleteProps as AutocompleteProps$1, CheckboxProps as CheckboxProps$1, SwitchProps as SwitchProps$1, RadioGroupProps as RadioGroupProps$1, RadioProps as RadioProps$1, SliderProps as SliderProps$1, AutocompleteValue, AutocompleteFreeSoloValueMapping } from '@mui/material';
|
|
7
7
|
import { DatePickerProps as DatePickerProps$1, TimePickerProps as TimePickerProps$1 } from '@mui/x-date-pickers';
|
|
8
8
|
|
|
9
9
|
interface IFormProps<T extends FieldValues> extends IUseFormProps<T> {
|
|
@@ -66,7 +66,7 @@ declare const useForm: <TValues extends FieldValues>({ disableDefaultValuesUpdat
|
|
|
66
66
|
declare function FormProvider<TFieldValues extends FieldValues>({ children, style, onSubmit, ...methods }: IFormProviderProps<TFieldValues>): react_jsx_runtime.JSX.Element;
|
|
67
67
|
|
|
68
68
|
type Masks = 'cpf' | 'cnpj' | 'cpfCnpj' | 'cep' | 'telefone' | 'decimal' | 'decimal3' | 'decimal4' | 'decimal5' | 'porcentagem' | 'porcentagem0' | 'nome' | 'numero' | 'numeroPontuacao' | 'placa' | 'valor' | 'valor3' | 'valor4';
|
|
69
|
-
type TextFieldProps = TextFieldProps$1 & UseControllerProps & {
|
|
69
|
+
type TextFieldProps<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = TextFieldProps$1 & UseControllerProps<TFieldValues, TFieldName> & {
|
|
70
70
|
mask?: Masks;
|
|
71
71
|
/**
|
|
72
72
|
* @description Função que será executada quando o valor do input for alterado
|
|
@@ -107,12 +107,7 @@ type TextFieldProps = TextFieldProps$1 & UseControllerProps & {
|
|
|
107
107
|
disableIconError?: boolean;
|
|
108
108
|
};
|
|
109
109
|
|
|
110
|
-
declare const
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* @deprecated usar SelectV2
|
|
114
|
-
*/
|
|
115
|
-
declare const Select: react.MemoExoticComponent<({ name, rules, defaultValue, shouldUnregister, label, required, options, placeholder, clearable, disableOnChangeForm, multiple, info, footer, onChange: onChangeProp, disableIconError, variant, ...rest }: SelectProps) => react_jsx_runtime.JSX.Element>;
|
|
110
|
+
declare const TextField: <TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ name, rules, defaultValue, shouldUnregister, control: controlFromProps, label, required, mask, variant, info, parse, format, onInputChange, disableIconError, ...rest }: TextFieldProps<TFieldValues, TFieldName>) => react_jsx_runtime.JSX.Element;
|
|
116
111
|
|
|
117
112
|
type ControllerSelect = Omit<ControllerProps, 'render' | 'control'>;
|
|
118
113
|
/**
|
|
@@ -190,6 +185,11 @@ type SelectProps = Omit<SelectProps$1, 'onChange'> & ControllerSelect & {
|
|
|
190
185
|
clearable?: boolean;
|
|
191
186
|
};
|
|
192
187
|
|
|
188
|
+
/**
|
|
189
|
+
* @deprecated usar SelectV2
|
|
190
|
+
*/
|
|
191
|
+
declare const Select: react.MemoExoticComponent<({ name, rules, defaultValue, shouldUnregister, label, required, options, placeholder, clearable, disableOnChangeForm, multiple, info, footer, onChange: onChangeProp, disableIconError, variant, ...rest }: SelectProps) => react_jsx_runtime.JSX.Element>;
|
|
192
|
+
|
|
193
193
|
type ControllerSearchable = Omit<ControllerProps, 'render' | 'control'>;
|
|
194
194
|
/**
|
|
195
195
|
* @deprecated usar SearchableV2
|
|
@@ -375,7 +375,7 @@ type CreatableProps = Omit<AutocompleteProps$1<CreatableOption, true, true, true
|
|
|
375
375
|
*/
|
|
376
376
|
declare const Creatable: react.MemoExoticComponent<({ name, rules, defaultValue, shouldUnregister, label, required, options, editable, footer, onEditOption, onCreateOption, textFieldProps, hideAddButton, multiple, info, onChange: onChangeProp, onInputChange, placeholder, disableIconError, ...rest }: CreatableProps) => react_jsx_runtime.JSX.Element>;
|
|
377
377
|
|
|
378
|
-
type CheckboxProps = CheckboxProps$1 & UseControllerProps & {
|
|
378
|
+
type CheckboxProps<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = CheckboxProps$1 & UseControllerProps<TFieldValues, TFieldName> & {
|
|
379
379
|
/**
|
|
380
380
|
* O nome do checkbox que será renderizado na tela
|
|
381
381
|
* @default ''
|
|
@@ -402,9 +402,9 @@ type CheckboxProps = CheckboxProps$1 & UseControllerProps & {
|
|
|
402
402
|
disableIconError?: boolean;
|
|
403
403
|
};
|
|
404
404
|
|
|
405
|
-
declare const Checkbox: ({ name, rules, defaultValue, shouldUnregister, control: controlFromProps, label, labelPlacement, required, disableIconError, onChange: onChangeProp, ...rest }: CheckboxProps) => react_jsx_runtime.JSX.Element;
|
|
405
|
+
declare const Checkbox: <TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ name, rules, defaultValue, shouldUnregister, control: controlFromProps, label, labelPlacement, required, disableIconError, onChange: onChangeProp, ...rest }: CheckboxProps<TFieldValues, TFieldName>) => react_jsx_runtime.JSX.Element;
|
|
406
406
|
|
|
407
|
-
type SwitchProps = SwitchProps$1 & UseControllerProps & {
|
|
407
|
+
type SwitchProps<TFieldValues extends FieldValues, TFieldName extends FieldPath<TFieldValues>> = SwitchProps$1 & UseControllerProps<TFieldValues, TFieldName> & {
|
|
408
408
|
/**
|
|
409
409
|
* O nome do switch que será renderizado na tela
|
|
410
410
|
* @default ''
|
|
@@ -431,30 +431,9 @@ type SwitchProps = SwitchProps$1 & UseControllerProps & {
|
|
|
431
431
|
disableIconError?: boolean;
|
|
432
432
|
};
|
|
433
433
|
|
|
434
|
-
declare const Switch: ({ name, rules, defaultValue, shouldUnregister, control: controlFromProps, label, labelPlacement, disableIconError, onChange: onChangeProp, ...rest }: SwitchProps) => react_jsx_runtime.JSX.Element;
|
|
434
|
+
declare const Switch: <TFieldValues extends FieldValues, TFieldName extends FieldPath<TFieldValues>>({ name, rules, defaultValue, shouldUnregister, control: controlFromProps, label, labelPlacement, disableIconError, onChange: onChangeProp, ...rest }: SwitchProps<TFieldValues, TFieldName>) => react_jsx_runtime.JSX.Element;
|
|
435
435
|
|
|
436
|
-
type
|
|
437
|
-
/**
|
|
438
|
-
* O nome do checkbox que será renderizado na tela
|
|
439
|
-
* @default ''
|
|
440
|
-
* @example 'Nome do checkbox'
|
|
441
|
-
* @type React.ReactNode
|
|
442
|
-
* @memberof RadioProps
|
|
443
|
-
*/
|
|
444
|
-
label?: React.ReactNode;
|
|
445
|
-
/**
|
|
446
|
-
* Posição do label em relação ao checkbox
|
|
447
|
-
* @default 'end'
|
|
448
|
-
* @type 'start' | 'end' | 'top' | 'bottom'
|
|
449
|
-
* @example
|
|
450
|
-
* <Radio label="Radio" labelPlacement="start" />
|
|
451
|
-
*/
|
|
452
|
-
labelPlacement?: 'start' | 'end' | 'top' | 'bottom';
|
|
453
|
-
};
|
|
454
|
-
|
|
455
|
-
declare const RadioButton: ({ label, labelPlacement, ...rest }: RadioProps) => react_jsx_runtime.JSX.Element;
|
|
456
|
-
|
|
457
|
-
type RadioGroupProps = RadioGroupProps$1 & UseControllerProps & {
|
|
436
|
+
type RadioGroupProps<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = RadioGroupProps$1 & UseControllerProps<TFieldValues, TFieldName> & {
|
|
458
437
|
/**
|
|
459
438
|
* O nome do checkbox que será renderizado na tela
|
|
460
439
|
* @default ''
|
|
@@ -497,9 +476,30 @@ type RadioGroupProps = RadioGroupProps$1 & UseControllerProps & {
|
|
|
497
476
|
disableIconError?: boolean;
|
|
498
477
|
};
|
|
499
478
|
|
|
500
|
-
declare const RadioGroup: ({ name, rules, defaultValue, shouldUnregister, control: controlFromProps, label, required, children, orientation, disableIconError, ...rest }: RadioGroupProps) => react_jsx_runtime.JSX.Element;
|
|
479
|
+
declare const RadioGroup: <TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ name, rules, defaultValue, shouldUnregister, control: controlFromProps, label, required, children, orientation, disableIconError, ...rest }: RadioGroupProps<TFieldValues, TFieldName>) => react_jsx_runtime.JSX.Element;
|
|
480
|
+
|
|
481
|
+
type RadioProps = RadioProps$1 & {
|
|
482
|
+
/**
|
|
483
|
+
* O nome do checkbox que será renderizado na tela
|
|
484
|
+
* @default ''
|
|
485
|
+
* @example 'Nome do checkbox'
|
|
486
|
+
* @type React.ReactNode
|
|
487
|
+
* @memberof RadioProps
|
|
488
|
+
*/
|
|
489
|
+
label?: React.ReactNode;
|
|
490
|
+
/**
|
|
491
|
+
* Posição do label em relação ao checkbox
|
|
492
|
+
* @default 'end'
|
|
493
|
+
* @type 'start' | 'end' | 'top' | 'bottom'
|
|
494
|
+
* @example
|
|
495
|
+
* <Radio label="Radio" labelPlacement="start" />
|
|
496
|
+
*/
|
|
497
|
+
labelPlacement?: 'start' | 'end' | 'top' | 'bottom';
|
|
498
|
+
};
|
|
499
|
+
|
|
500
|
+
declare const RadioButton: ({ label, labelPlacement, ...rest }: RadioProps) => react_jsx_runtime.JSX.Element;
|
|
501
501
|
|
|
502
|
-
type SliderProps = SliderProps$1 & UseControllerProps & {
|
|
502
|
+
type SliderProps<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = SliderProps$1 & UseControllerProps<TFieldValues, TFieldName> & {
|
|
503
503
|
/**
|
|
504
504
|
* O nome do switch que será renderizado na tela
|
|
505
505
|
* @default ''
|
|
@@ -518,9 +518,9 @@ type SliderProps = SliderProps$1 & UseControllerProps & {
|
|
|
518
518
|
labelPlacement?: 'start' | 'end' | 'top' | 'bottom';
|
|
519
519
|
};
|
|
520
520
|
|
|
521
|
-
declare const Slider: ({ name, rules, defaultValue, shouldUnregister, control: controlFromProps, ...rest }: SliderProps) => react_jsx_runtime.JSX.Element;
|
|
521
|
+
declare const Slider: <TFieldValues extends FieldValues, TFieldName extends FieldPath<TFieldValues>>({ name, rules, defaultValue, shouldUnregister, control: controlFromProps, ...rest }: SliderProps<TFieldValues, TFieldName>) => react_jsx_runtime.JSX.Element;
|
|
522
522
|
|
|
523
|
-
type DatePickerProps = UseControllerProps & Pick<TextFieldProps$1, 'label' | 'error' | 'helperText' | 'size' | 'fullWidth' | 'variant' | 'autoFocus' | 'placeholder'> & {
|
|
523
|
+
type DatePickerProps<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = UseControllerProps<TFieldValues, TFieldName> & Pick<TextFieldProps$1, 'label' | 'error' | 'helperText' | 'size' | 'fullWidth' | 'variant' | 'autoFocus' | 'placeholder'> & {
|
|
524
524
|
datePickerProps?: Partial<DatePickerProps$1<any>>;
|
|
525
525
|
/**
|
|
526
526
|
* Se `true` irá adicionar um asterisco ao label do campo
|
|
@@ -544,9 +544,9 @@ type DatePickerProps = UseControllerProps & Pick<TextFieldProps$1, 'label' | 'er
|
|
|
544
544
|
disableIconError?: boolean;
|
|
545
545
|
};
|
|
546
546
|
|
|
547
|
-
declare const _default$5: react.MemoExoticComponent<({ rules, name, defaultValue, shouldUnregister, control: controlFromProps, datePickerProps, label, required, placeholder, disabled, disableIconError, ...rest }: DatePickerProps) => react_jsx_runtime.JSX.Element>;
|
|
547
|
+
declare const _default$5: react.MemoExoticComponent<(<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ rules, name, defaultValue, shouldUnregister, control: controlFromProps, datePickerProps, label, required, placeholder, disabled, disableIconError, ...rest }: DatePickerProps<TFieldValues, TFieldName>) => react_jsx_runtime.JSX.Element)>;
|
|
548
548
|
|
|
549
|
-
type TimePickerProps = UseControllerProps & Pick<TextFieldProps$1, 'label' | 'error' | 'helperText' | 'size' | 'fullWidth' | 'variant' | 'autoFocus' | 'placeholder'> & {
|
|
549
|
+
type TimePickerProps<TFieldValues extends FieldValues, TFieldName extends FieldPath<TFieldValues>> = UseControllerProps<TFieldValues, TFieldName> & Pick<TextFieldProps$1, 'label' | 'error' | 'helperText' | 'size' | 'fullWidth' | 'variant' | 'autoFocus' | 'placeholder'> & {
|
|
550
550
|
timePickerProps?: Partial<TimePickerProps$1<any>>;
|
|
551
551
|
/**
|
|
552
552
|
* Se `true` irá adicionar um asterisco ao label do campo
|
|
@@ -570,7 +570,7 @@ type TimePickerProps = UseControllerProps & Pick<TextFieldProps$1, 'label' | 'er
|
|
|
570
570
|
disableIconError?: boolean;
|
|
571
571
|
};
|
|
572
572
|
|
|
573
|
-
declare const _default$4: react.MemoExoticComponent<({ rules, defaultValue, shouldUnregister, name, control: controlFromProps, required, label, timePickerProps, placeholder, disabled, disableIconError, ...rest }: TimePickerProps) => react_jsx_runtime.JSX.Element>;
|
|
573
|
+
declare const _default$4: react.MemoExoticComponent<(<TFieldValues extends FieldValues, TFieldName extends FieldPath<TFieldValues>>({ rules, defaultValue, shouldUnregister, name, control: controlFromProps, required, label, timePickerProps, placeholder, disabled, disableIconError, ...rest }: TimePickerProps<TFieldValues, TFieldName>) => react_jsx_runtime.JSX.Element)>;
|
|
574
574
|
|
|
575
575
|
type AutoCompleteOption = {
|
|
576
576
|
key?: string | number;
|
|
@@ -609,18 +609,8 @@ type AutocompleteProps<ValueType = any> = Omit<UseControllerProps, 'control'> &
|
|
|
609
609
|
|
|
610
610
|
declare const _default$3: react.MemoExoticComponent<({ name, defaultValue, rules, shouldUnregister, label, required, noOptionsText, placeholder, onInputChange, onChange, disableIconError, ...rest }: AutocompleteProps) => react_jsx_runtime.JSX.Element>;
|
|
611
611
|
|
|
612
|
-
type
|
|
613
|
-
|
|
614
|
-
required?: boolean;
|
|
615
|
-
regular?: boolean;
|
|
616
|
-
};
|
|
617
|
-
|
|
618
|
-
declare const FieldLabel: ({ label, required, regular }: FieldLabelProps) => react_jsx_runtime.JSX.Element;
|
|
619
|
-
|
|
620
|
-
type ConditionalArrayType<T, Multiple extends boolean | undefined = undefined> = Multiple extends true ? T[] : T;
|
|
621
|
-
|
|
622
|
-
type SearchableV2Props<T extends FieldValues | string | number, Multiple extends boolean | undefined, _ValueType = unknown> = Omit<AutocompleteProps$1<T, Multiple, true, true>, 'renderInput' | 'size' | 'onInputChange' | 'onChange' | 'getOptionLabel' | 'getOptionKey' | 'defaultValue' | 'value'> & UseControllerProps & {
|
|
623
|
-
options: T[];
|
|
612
|
+
type SearchableV2Props<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, FieldValue extends FieldPathValue<TFieldValues, TFieldName> = FieldPathValue<TFieldValues, TFieldName>, Multiple extends boolean = false, DisableClearable extends boolean = false, FreeSolo extends boolean = false, AutocompleteFieldValue extends AutocompleteValue<FieldValue, Multiple, DisableClearable, FreeSolo> = AutocompleteValue<FieldValue, Multiple, DisableClearable, FreeSolo>> = Omit<AutocompleteProps$1<FieldValue, Multiple, DisableClearable, FreeSolo>, 'renderInput' | 'size' | 'options' | 'onInputChange' | 'onChange' | 'getOptionLabel' | 'getOptionKey' | 'defaultValue' | 'value'> & UseControllerProps<TFieldValues, TFieldName> & {
|
|
613
|
+
options: FieldValue[];
|
|
624
614
|
textFieldProps?: TextFieldProps$1;
|
|
625
615
|
label?: React.ReactNode;
|
|
626
616
|
required?: boolean;
|
|
@@ -642,37 +632,37 @@ type SearchableV2Props<T extends FieldValues | string | number, Multiple extends
|
|
|
642
632
|
* montada à tela como um ícone de informação.
|
|
643
633
|
*/
|
|
644
634
|
info?: React.ReactNode;
|
|
645
|
-
defaultValue?:
|
|
646
|
-
value?:
|
|
635
|
+
defaultValue?: AutocompleteFieldValue;
|
|
636
|
+
value?: AutocompleteFieldValue;
|
|
647
637
|
placeholder?: string;
|
|
648
638
|
onInputChange?: (value: string) => void;
|
|
649
|
-
onChange?: (value:
|
|
639
|
+
onChange?: (value: AutocompleteValue<FieldValue, Multiple, DisableClearable, FreeSolo>) => void;
|
|
650
640
|
/**
|
|
651
641
|
* Define a key unica da option
|
|
652
642
|
*/
|
|
653
|
-
getOptionKey: (option:
|
|
643
|
+
getOptionKey: (option: FieldValue | AutocompleteFreeSoloValueMapping<FreeSolo>) => string | number;
|
|
654
644
|
/**
|
|
655
645
|
* Define a label da option
|
|
656
646
|
*/
|
|
657
|
-
getOptionLabel: (option:
|
|
647
|
+
getOptionLabel: (option: FieldValue | AutocompleteFreeSoloValueMapping<FreeSolo>) => string;
|
|
658
648
|
/**
|
|
659
649
|
* Componente renderizado embaixo da option da listagem
|
|
660
650
|
*/
|
|
661
|
-
getOptionAfterLabel?: (option:
|
|
651
|
+
getOptionAfterLabel?: (option: FieldValue | AutocompleteFreeSoloValueMapping<FreeSolo>) => string | React.ReactNode;
|
|
662
652
|
};
|
|
663
653
|
|
|
664
|
-
declare const _default$2: <
|
|
654
|
+
declare const _default$2: <TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, FieldValue extends FieldPathValue<TFieldValues, TFieldName> = FieldPathValue<TFieldValues, TFieldName>, Multiple extends boolean = false, DisableClearable extends boolean = false, FreeSolo extends boolean = false, AutocompleteFieldValue extends AutocompleteValue<FieldValue, Multiple, DisableClearable, FreeSolo> = AutocompleteValue<FieldValue, Multiple, DisableClearable, FreeSolo>>(props: SearchableV2Props<TFieldValues, TFieldName, FieldValue, Multiple, DisableClearable, FreeSolo, AutocompleteFieldValue>) => react_jsx_runtime.JSX.Element;
|
|
665
655
|
|
|
666
656
|
type FooterPropsV2 = {
|
|
667
657
|
closeSelect: () => void;
|
|
668
658
|
};
|
|
669
|
-
type SelectV2Props<
|
|
659
|
+
type SelectV2Props<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, FieldValue extends FieldPathValue<TFieldValues, TFieldName> = FieldPathValue<TFieldValues, TFieldName>> = Omit<SelectProps$1, 'onChange' | 'multiple' | 'defaultValue' | 'variant'> & UseControllerProps<TFieldValues, TFieldName> & {
|
|
670
660
|
variant?: 'filled' | 'outlined' | 'standard';
|
|
671
661
|
/**
|
|
672
662
|
* As opções que serão renderizadas no select
|
|
673
663
|
*/
|
|
674
|
-
options:
|
|
675
|
-
onChange?: (value:
|
|
664
|
+
options: FieldValue[];
|
|
665
|
+
onChange?: (value: FieldValue | null) => void;
|
|
676
666
|
/**
|
|
677
667
|
* Função que renderiza o footer do select (opcional) - recebe como parâmetro a função closeSelect que fecha o select
|
|
678
668
|
* @param {FooterProps} props
|
|
@@ -698,29 +688,29 @@ type SelectV2Props<T extends FieldValues | string | number> = Omit<SelectProps$1
|
|
|
698
688
|
*/
|
|
699
689
|
clearable?: boolean;
|
|
700
690
|
placeholder?: string;
|
|
701
|
-
defaultValue?:
|
|
691
|
+
defaultValue?: FieldPathValue<TFieldValues, TFieldName>;
|
|
702
692
|
/**
|
|
703
693
|
* Define a key unica da option
|
|
704
694
|
*/
|
|
705
|
-
getOptionKey: (option:
|
|
695
|
+
getOptionKey: (option: FieldPathValue<TFieldValues, TFieldName>) => string | number;
|
|
706
696
|
/**
|
|
707
697
|
* Define a label da option
|
|
708
698
|
*/
|
|
709
|
-
getOptionLabel: (option:
|
|
699
|
+
getOptionLabel: (option: FieldPathValue<TFieldValues, TFieldName>) => string;
|
|
710
700
|
/**
|
|
711
701
|
* Componente renderizado embaixo da option da listagem
|
|
712
702
|
*/
|
|
713
|
-
getOptionAfterLabel?: (option:
|
|
703
|
+
getOptionAfterLabel?: (option: FieldPathValue<TFieldValues, TFieldName>) => string | React.ReactNode;
|
|
714
704
|
/**
|
|
715
705
|
* Ícone renderizado ao lado da label
|
|
716
706
|
*/
|
|
717
|
-
getOptionIcon?: (option:
|
|
707
|
+
getOptionIcon?: (option: FieldPathValue<TFieldValues, TFieldName>) => React.ReactNode;
|
|
718
708
|
};
|
|
719
709
|
|
|
720
|
-
declare const _default$1: <
|
|
710
|
+
declare const _default$1: <TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(props: SelectV2Props<TFieldValues, TFieldName>) => react_jsx_runtime.JSX.Element;
|
|
721
711
|
|
|
722
|
-
type CreatableV2Props<
|
|
723
|
-
options:
|
|
712
|
+
type CreatableV2Props<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, FieldValue extends FieldPathValue<TFieldValues, TFieldName> = FieldPathValue<TFieldValues, TFieldName>, Multiple extends boolean | undefined = undefined, DisableClearable extends boolean | undefined = undefined, FreeSolo extends boolean | undefined = undefined, AutocompleteFieldValue extends AutocompleteValue<FieldValue, Multiple, DisableClearable, FreeSolo> = FieldValue> = Omit<AutocompleteProps$1<FieldValue, Multiple, DisableClearable, FreeSolo>, 'renderInput' | 'options' | 'size' | 'onInputChange' | 'onChange' | 'getOptionLabel' | 'getOptionKey' | 'defaultValue' | 'value'> & UseControllerProps<TFieldValues, TFieldName> & {
|
|
713
|
+
options: FieldValue[];
|
|
724
714
|
textFieldProps?: TextFieldProps$1;
|
|
725
715
|
label?: React.ReactNode;
|
|
726
716
|
required?: boolean;
|
|
@@ -751,7 +741,7 @@ type CreatableV2Props<T extends FieldValues | string | number, Multiple extends
|
|
|
751
741
|
* @type {(value) => void}
|
|
752
742
|
* @memberof CreatableV2Props
|
|
753
743
|
*/
|
|
754
|
-
onEditOption?: (value:
|
|
744
|
+
onEditOption?: (value: AutocompleteFieldValue) => void;
|
|
755
745
|
/**
|
|
756
746
|
* Componente que renderiza no footer do searchable (opcional)
|
|
757
747
|
* @example
|
|
@@ -766,22 +756,23 @@ type CreatableV2Props<T extends FieldValues | string | number, Multiple extends
|
|
|
766
756
|
*/
|
|
767
757
|
info?: React.ReactNode;
|
|
768
758
|
onInputChange?: (value: string) => void;
|
|
769
|
-
onChange?: (value:
|
|
759
|
+
onChange?: (value: AutocompleteValue<FieldValue, Multiple, DisableClearable, FreeSolo>) => void;
|
|
770
760
|
placeholder?: string;
|
|
771
761
|
/**
|
|
772
762
|
* Define a key unica da option
|
|
773
763
|
*/
|
|
774
|
-
getOptionKey: (option:
|
|
764
|
+
getOptionKey: (option: FieldValue | AutocompleteFreeSoloValueMapping<FreeSolo>) => string | number;
|
|
775
765
|
/**
|
|
776
766
|
* Define a label da option
|
|
777
767
|
*/
|
|
778
|
-
getOptionLabel: (option:
|
|
768
|
+
getOptionLabel: (option: FieldValue | AutocompleteFreeSoloValueMapping<FreeSolo>) => string;
|
|
779
769
|
/**
|
|
780
770
|
* Componente renderizado embaixo da option da listagem
|
|
781
771
|
*/
|
|
782
|
-
getOptionAfterLabel?: (option:
|
|
772
|
+
getOptionAfterLabel?: (option: FieldValue) => string | React.ReactNode;
|
|
783
773
|
};
|
|
784
774
|
|
|
785
|
-
declare
|
|
775
|
+
declare function CreatableV2<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, FieldValue extends FieldPathValue<TFieldValues, TFieldName> = FieldPathValue<TFieldValues, TFieldName>, AutocompleteFieldValue extends AutocompleteValue<FieldValue, Multiple, DisableClearable, FreeSolo> = FieldValue, Multiple extends boolean | undefined = undefined, DisableClearable extends boolean | undefined = undefined, FreeSolo extends boolean | undefined = undefined>(props: CreatableV2Props<TFieldValues, TFieldName, FieldValue, Multiple, DisableClearable, FreeSolo, AutocompleteFieldValue>): react_jsx_runtime.JSX.Element;
|
|
776
|
+
declare const _default: typeof CreatableV2;
|
|
786
777
|
|
|
787
|
-
export { _default$3 as Autocomplete, type AutocompleteProps, Checkbox, type CheckboxProps, Creatable, type
|
|
778
|
+
export { _default$3 as Autocomplete, type AutocompleteProps, Checkbox, type CheckboxProps, Creatable, type CreatableProps, _default as CreatableV2, type CreatableV2Props, _default$5 as DatePicker, type DatePickerProps, Form, FormProvider, type IFormProps, type IFormProviderProps, type IUseFormProps, RadioButton, RadioGroup, type RadioGroupProps, type RadioProps, Searchable, type SearchableProps, _default$2 as SearchableV2, type SearchableV2Props, Select, type SelectProps, _default$1 as SelectV2, type SelectV2Props, Slider, type SliderProps, Switch, type SwitchProps, TextField, type TextFieldProps, _default$4 as TimePicker, type TimePickerProps, useForm };
|
package/dist/index.mjs
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import{FormProvider as
|
|
1
|
+
import{FormProvider as ao}from"react-hook-form";import{jsx as Ie}from"react/jsx-runtime";function so({children:e,style:o,onSubmit:l,...i}){return Ie(ao,{...i,children:Ie("form",{onSubmit:d=>{d.preventDefault(),d.stopPropagation(),l(d)},style:o,children:e})})}var be=so;import{useEffect as po}from"react";import{useForm as mo}from"react-hook-form";import{zodResolver as uo}from"@hookform/resolvers/zod";var co=({disableDefaultValuesUpdate:e,onSubmit:o,...l})=>{let i=mo({...l,resolver:l.schema&&uo(l.schema)});return po(()=>{e||i.reset(l.defaultValues)},[l.defaultValues,i.reset]),{...i,onSubmit:i.handleSubmit(d=>o(d,i))}},he=co;import{jsx as yo}from"react/jsx-runtime";function fo({children:e,style:o,...l}){let i=he(l);return yo(be,{...i,style:o,children:typeof e=="function"?e(i):e})}var Fo=fo;import{InputAdornment as vo,Stack as To,TextField as So,Tooltip as ko}from"@mui/material";import{LIcon as Le}from"@s_mart/core";import*as Re from"@s_mart/masks";import{lineEye as Io,lineEyeSlash as wo,lineInfoCircle as Ao}from"@s_mart/solid-icons";import{useRef as Lo,useState as Ro}from"react";import{useController as Do,useFormContext as Bo,useFormState as Eo}from"react-hook-form";import{Indicator as xo}from"@s_mart/core";import{useFormState as bo}from"react-hook-form";var D=(e,o)=>o.replace(/[[\]]/g,"").split(".").reduce((i,d)=>i?.[d],e);import{jsx as Po}from"react/jsx-runtime";var ho=({name:e,disableIcon:o,control:l})=>{let i=bo({control:l,name:e}),d=D(i?.errors,e);return d?Po(xo,{severity:"error",icon:o?!1:void 0,children:d?.message}):null},I=ho;import{Typography as we}from"@mui/material";import{toRem as go}from"@s_mart/utils";import{jsx as Ae,jsxs as Co}from"react/jsx-runtime";var Vo=({label:e,required:o,regular:l})=>Co("span",{style:{display:"flex",alignItems:"center",gap:go(2)},children:[Ae(we,{variant:"caption",style:{display:"flex",alignItems:"center"},sx:{fontWeight:l?400:700},children:e}),o&&Ae(we,{variant:"caption",color:"error",sx:{fontWeight:900},children:"*"})]}),S=Vo;var v=class extends Error{constructor(o){super(`O componente ${o} precisa de um control para funcionar. Passe o control como prop ou coloque o componente dentro de um <Form />`),this.name="FormComponentPrecisaDeControl"}};import{jsx as H,jsxs as De}from"react/jsx-runtime";var Mo=({name:e,rules:o,defaultValue:l,shouldUnregister:i,control:d,label:P,required:g,mask:f,variant:T="outlined",info:x,parse:C,format:m,onInputChange:u,disableIconError:a,...p})=>{let V=Bo()?.control,n=d??V,F=Lo(l||void 0);if(!n)throw new v("TextField");let[L,r]=Ro(!1),y=c=>{let t=c;return t=m?.(c)??c,f?Re?.[f]?.format(t):t},G=c=>{let t=c;return t=C?.(c)??t,f?Re?.[f]?.parse(t,F.current):t},b=c=>{if(!c||f!=="porcentagem"&&f!=="porcentagem0")return;c?.stopPropagation();let t=(c?.target).value;if(t){let k=String(t);if(k.length>0){let z=k.indexOf("%");z>-1&&(c.currentTarget.selectionEnd=z)}}},{field:s}=Do({control:n,name:e,rules:o,defaultValue:l,shouldUnregister:i}),w=Eo({control:n,name:e}),A=D(w.errors,e);return De(To,{children:[De("div",{style:{display:"flex"},children:[P&&H("div",{children:H(S,{label:P,required:g})}),x&&H("div",{children:H(ko,{title:x,placement:"top",children:H("div",{style:{width:"fit-content"},children:H(Le,{icon:Ao,color:"#757575"})})})})]}),H(So,{variant:T,defaultValue:l,value:y(s.value||(s.value!=0?"":s.value)),onChange:c=>{let t=G(c?.target?.value);s.onChange(t),u?.(t),F.current=c.target.value},error:!!A,...p,type:p.type==="password"?L?"text":"password":p.type,autoComplete:p.autoComplete||"off",slotProps:{input:{onKeyDown:b,inputRef:s.ref,endAdornment:p.type==="password"&&H(vo,{position:"start",onClick:()=>r(!L),style:{cursor:"pointer"},children:H(Le,{icon:L?Io:wo,size:"24px",removeMargin:!0})}),...p.InputProps}}},e),H(I,{name:e,disableIcon:a,control:n})]})},$o=Mo;import{Divider as No,Grid as Q,MenuItem as Oo,Select as Go,Tooltip as zo,useTheme as qo}from"@mui/material";import{IconButton as _o,LIcon as Be}from"@s_mart/core";import{lineTimes as Uo}from"@s_mart/regular-icons";import{lineInfoCircle as Ho}from"@s_mart/solid-icons";import{colorPalette as Ko}from"@s_mart/tokens";import{memo as Wo,useState as Yo}from"react";import{Controller as jo,useFormContext as Jo}from"react-hook-form";import{Fragment as Qo,jsx as O,jsxs as ae}from"react/jsx-runtime";var Ee=Wo(({name:e,rules:o,defaultValue:l,shouldUnregister:i,label:d,required:P,options:g,placeholder:f,clearable:T,disableOnChangeForm:x=!1,multiple:C,info:m,footer:u,onChange:a,disableIconError:p,variant:V="outlined",...n})=>{let F=Jo(),{palette:L}=qo(),[r,y]=Yo(!1);if(!F)throw new v("Select");let G=D(F.formState.errors,e);return O(jo,{control:F.control,name:e,rules:o,defaultValue:l,shouldUnregister:i,render:({field:{value:b,onChange:s,ref:w}})=>ae(Q,{sx:{display:"flex",flexDirection:"column"},children:[ae("div",{style:{display:"flex"},children:[d&&O(Q,{item:!0,children:O(S,{label:d,required:P})}),m&&O(Q,{item:!0,children:O(zo,{title:m,placement:"top",children:O("div",{style:{width:"fit-content"},children:O(Be,{icon:Ho,color:"#757575"})})})})]}),ae(Go,{open:r,onOpen:()=>y(!0),onClose:()=>y(!1),displayEmpty:!!f,variant:V,autoComplete:"off",value:b?b||"":C?[]:"",renderValue:A=>{if(A.label)return A.label;if(f)return O("p",{style:{color:L.grey[400]},children:f})},multiple:C,onChange:A=>{!x&&s(A.target.value),a&&a(A.target.value,F.getValues())},error:!!G,size:n.size||"medium",inputRef:w,...n,endAdornment:ae(Qo,{children:[n.endAdornment,!!(T&&b)&&O(_o,{variant:"text",color:"neutral",size:"small",sx:{borderRadius:"50%",position:"absolute",right:"2rem"},style:{padding:0},"aria-label":"Clear",title:"Clear",onClick:()=>{!x&&s(null),a&&a(null,F.getValues())},children:O(Be,{icon:Uo,color:Ko.neutral[100],size:"25px",removeMargin:!0})})]}),children:[g?.map((A,c)=>O(Oo,{value:A,children:ae(Q,{container:!0,direction:"column",children:[O(Q,{item:!0,children:A.label}),A.afterLabel&&O(Q,{item:!0,children:A.afterLabel})]})},c)),u&&[O(Q,{sx:{px:2,py:1},children:O(No,{})},"footer-divider"),O("div",{children:u({closeSelect:()=>y(!1)})},"footer-content")]]},e),O(I,{name:e,disableIcon:p,control:F.control})]})})});Ee.displayName="Select";var Xo=Ee;import{Autocomplete as Zo,Divider as Me,Grid as j,TextField as et,Tooltip as ot}from"@mui/material";import{LIcon as tt}from"@s_mart/core";import{lineInfoCircle as rt}from"@s_mart/solid-icons";import{colorPalette as lt}from"@s_mart/tokens";import{forwardRef as it,memo as nt}from"react";import{Controller as at,useFormContext as st}from"react-hook-form";import{Fragment as de,jsx as N,jsxs as Z}from"react/jsx-runtime";import{createElement as $e}from"react";var Ne=nt(({name:e,rules:o,defaultValue:l,shouldUnregister:i,label:d,required:P,options:g,textFieldProps:f,noOptionsText:T,footer:x,multiple:C,info:m,placeholder:u,onChange:a,onInputChange:p,disableIconError:V,...n})=>{let F=st();if(!F)throw new v("Searchable");let L=D(F.formState.errors,e);return N(at,{control:F.control,name:e,rules:o,defaultValue:l,shouldUnregister:i,render:({field:{onChange:r,value:y,ref:G}})=>Z(j,{sx:{display:"flex",flexDirection:"column"},children:[Z("div",{style:{display:"flex"},children:[d&&N(j,{item:!0,children:N(S,{label:d,required:P})}),m&&N(j,{item:!0,children:N(ot,{title:m,placement:"top",children:N("div",{style:{width:"fit-content"},children:N(tt,{icon:rt,color:"#757575"})})})})]}),N(Zo,{onChange:(b,s)=>{r(s),a?.(s,F.getValues())},onInputChange:(b,s,w)=>{w==="input"&&setTimeout(()=>{p?.(s,F.getValues())},0)},slotProps:{...n.slotProps||{},paper:{...(n.slotProps||{}).paper||{},sx:{border:`1px solid ${lt.neutral[30]}`,boxShadow:"0px 2px 4px rgba(0, 0, 0, 0.15)"}},listbox:{component:it(function(s,w){return Z(de,{children:[N("ul",{...s,ref:w}),!!x&&N("div",{...s,children:Z(de,{children:[N(j,{sx:{px:2,py:1},children:N(Me,{})}),x]})},"searchable-footer")]})})}},value:y||(C?[]:null),options:g,multiple:C,readOnly:n.disabled,noOptionsText:Z(de,{children:[T||"Nenhum resultado encontrado",x?Z(de,{children:[N(j,{sx:{py:1},children:N(Me,{})}),x]}):null]}),isOptionEqualToValue:(b,s)=>typeof b=="string"&&typeof s=="string"?b===s:typeof b=="object"&&typeof s=="object"?typeof b.value=="object"&&typeof s.value=="object"&&b.key!==void 0&&s.key!==void 0?b.key===s.key:b.value===s.value:!1,renderOption:(b,s)=>typeof s=="object"?$e("li",{...b,key:s.key||s.value},Z(j,{container:!0,direction:"column",children:[N(j,{item:!0,children:s.label}),s.afterLabel&&N(j,{item:!0,children:s.afterLabel})]})):$e("li",{...b,key:s},s),...n,renderInput:b=>N(et,{error:!!L,placeholder:u,...b,...f,inputRef:G})},e),N(I,{name:e,disableIcon:V,control:F.control})]})})});Ne.displayName="Searchable";var dt=Ne;import{forwardRef as ut,memo as ct}from"react";import{Controller as ft,useFormContext as Ft}from"react-hook-form";import{isObject as yt,isEmpty as xt}from"lodash-es";import{Grid as ee,Autocomplete as bt,TextField as ht,Tooltip as Pt,Divider as gt}from"@mui/material";import{LIcon as me,Button as Vt}from"@s_mart/core";import{colorPalette as Ct}from"@s_mart/tokens";import{linePlus as qe,linePen as vt,lineInfoCircle as Tt}from"@s_mart/solid-icons";import{toRem as _e}from"@s_mart/utils";import{css as Oe}from"@emotion/react";import{styled as pt}from"@mui/material";import{toRem as pe}from"@s_mart/utils";var Ge=Oe`
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: center;
|
|
4
4
|
justify-content: center;
|
|
5
|
-
`,
|
|
5
|
+
`,mt=e=>Oe`
|
|
6
6
|
.creatable,
|
|
7
7
|
.editable {
|
|
8
|
-
${
|
|
8
|
+
${Ge}
|
|
9
9
|
|
|
10
10
|
.divider {
|
|
11
11
|
width: 1px;
|
|
12
|
-
height: ${
|
|
12
|
+
height: ${pe(20)};
|
|
13
13
|
background-color: ${e.palette.grey[400]};
|
|
14
14
|
}
|
|
15
15
|
|
|
@@ -20,9 +20,9 @@ import{FormProvider as no}from"react-hook-form";import{jsx as Ie}from"react/jsx-
|
|
|
20
20
|
color: ${e.palette.grey[600]};
|
|
21
21
|
border-radius: 50%;
|
|
22
22
|
|
|
23
|
-
margin: 0 ${
|
|
24
|
-
width: ${
|
|
25
|
-
height: ${
|
|
23
|
+
margin: 0 ${pe(6)};
|
|
24
|
+
width: ${pe(28)};
|
|
25
|
+
height: ${pe(28)};
|
|
26
26
|
|
|
27
27
|
&:hover {
|
|
28
28
|
cursor: pointer;
|
|
@@ -31,14 +31,14 @@ import{FormProvider as no}from"react-hook-form";import{jsx as Ie}from"react/jsx-
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
-
`,
|
|
34
|
+
`,ze=pt("div")`
|
|
35
35
|
display: flex;
|
|
36
36
|
|
|
37
37
|
div.endAdornments {
|
|
38
38
|
position: absolute;
|
|
39
39
|
right: 0;
|
|
40
40
|
|
|
41
|
-
${
|
|
41
|
+
${Ge}
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
.MuiAutocomplete-endAdornment {
|
|
@@ -50,37 +50,37 @@ import{FormProvider as no}from"react-hook-form";import{jsx as Ie}from"react/jsx-
|
|
|
50
50
|
transform: translate(0, 0);
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
${({hideAddButton:e,theme:o})=>!e&&
|
|
54
|
-
`;import{Fragment as
|
|
53
|
+
${({hideAddButton:e,theme:o})=>!e&&mt(o)}
|
|
54
|
+
`;import{Fragment as Pe,jsx as R,jsxs as K}from"react/jsx-runtime";import{createElement as Ue}from"react";var He=ct(({name:e,rules:o,defaultValue:l,shouldUnregister:i,label:d,required:P,options:g,editable:f,footer:T,onEditOption:x,onCreateOption:C,textFieldProps:m,hideAddButton:u,multiple:a,info:p,onChange:V,onInputChange:n,placeholder:F,disableIconError:L,...r})=>{let y=Ft();if(!y)throw new v("Creatable");let G=D(y.formState.errors,e),b=u||r.disabled,s=t=>{let k=0;return m?.InputProps||(k+=2.5),b||(k+=2.56,w(t)&&(k+=2.56)),!r.disableClearable&&!r.disabled&&(k+=1.3),k+"rem"},w=t=>r.disabled?!1:f&&yt(t)&&!xt(t);console.warn=()=>{};let A=t=>{C?C(t):console.error("onCreateOption n\xE3o foi definido")},c=t=>{x?x(t):console.error("onEditOption n\xE3o foi definido")};return R(ft,{control:y.control,name:e,rules:o,defaultValue:l,shouldUnregister:i,render:({field:{value:t,onChange:k,ref:z}})=>{let J=t?.label||t?.value||t;return K(ee,{sx:{display:"flex",flexDirection:"column"},children:[K("div",{style:{display:"flex"},children:[d&&R(ee,{item:!0,children:R(S,{label:d,required:P})}),p&&R(ee,{item:!0,children:R(Pt,{title:p,placement:"top",children:R("div",{style:{width:"fit-content"},children:R(me,{icon:Tt,color:"#757575"})})})})]}),R(ze,{hideAddButton:b,children:R(bt,{fullWidth:!0,onChange:(B,h)=>{k(h),V?.(h,y.getValues())},onInputChange:(B,h,ne)=>{ne==="input"&&setTimeout(()=>{n?.(h,y.getValues())},0)},slotProps:{...r.slotProps||{},paper:{...(r.slotProps||{}).paper||{},sx:{border:`1px solid ${Ct.neutral[30]}`,boxShadow:"0px 2px 4px rgba(0, 0, 0, 0.15)"}},listbox:{component:ut(function(h,ne){return K(Pe,{children:[R("ul",{...h,ref:ne}),!!T&&R("div",{...h,children:K(Pe,{children:[R(ee,{sx:{px:2,py:1},children:R(gt,{})}),T]})},"creatable-footer")]})})}},options:g,value:t||(a?[]:null),multiple:a,readOnly:r.disabled,noOptionsText:b?void 0:K(Vt,{sx:{justifyContent:"flex-start",padding:`${_e(6)} ${_e(-16)}`,margin:0},fullWidth:!0,onClick:()=>A(t),variant:"text",startIcon:R(me,{icon:qe}),children:["Adicionar ",J&&`"${J}"`]}),isOptionEqualToValue:(B,h)=>h?typeof B=="string"&&typeof h=="string"?B===h:typeof B=="object"&&typeof h=="object"?typeof B.value=="object"&&typeof h.value=="object"&&B.key!==void 0&&h.key!==void 0?B.key===h.key:B.value===h.value:typeof B=="object"&&typeof h=="string":!1,renderOption:(B,h)=>typeof h=="object"?Ue("li",{...B,key:h.key||h.value},K(ee,{container:!0,direction:"column",children:[R(ee,{item:!0,children:h.label}),h.afterLabel&&R(ee,{item:!0,children:h.afterLabel})]})):Ue("li",{...B,key:h},h),...r,sx:{"& div.MuiInputBase-root":{paddingRight:`${s(t)} !important`},...r.sx},renderInput:B=>R(ht,{placeholder:F,...B,error:!!G,...m,slotProps:{input:{...B.InputProps,inputRef:z,endAdornment:K("div",{className:"endAdornments",children:[B.InputProps.endAdornment,!b&&K(Pe,{children:[w(t)?K("div",{className:"editable",children:[R("div",{className:"divider"}),R("div",{className:"button",onClick:()=>c(t),children:R(me,{icon:vt,size:"24px",removeMargin:!0})})]}):null,K("div",{className:"creatable",children:[R("div",{className:"divider"}),R("div",{className:"button",onClick:()=>A(t),children:R(me,{icon:qe,size:"24px",removeMargin:!0})})]})]})]})}}})},e)}),R(I,{name:e,disableIcon:L,control:y.control})]})}})});He.displayName="Creatable";var St=He;import{useController as kt,useFormContext as It}from"react-hook-form";import{Checkbox as wt,FormControlLabel as At}from"@mui/material";import{jsx as ue,jsxs as Dt}from"react/jsx-runtime";var Lt=({name:e,rules:o,defaultValue:l,shouldUnregister:i,control:d,label:P,labelPlacement:g,required:f,disableIconError:T,onChange:x,...C})=>{let m=It()?.control,u=d??m;if(!u)throw new v("Checkbox");let{field:a}=kt({control:u,name:e,rules:o,defaultValue:l,shouldUnregister:i});return Dt("span",{children:[ue(At,{control:ue(wt,{checked:!!a.value,value:a.value??"",defaultValue:a.value,onChange:(p,V)=>{a.onChange(p,V),x?.(p,V)},...C},e),label:ue(S,{label:P,required:f,regular:!0}),labelPlacement:g||"end"}),ue(I,{name:e,disableIcon:T,control:u})]})},Rt=Lt;import{FormControlLabel as Bt,Stack as Et,Switch as Mt}from"@mui/material";import{useController as $t,useFormContext as Nt}from"react-hook-form";import{jsx as ce,jsxs as zt}from"react/jsx-runtime";var Ot=({name:e,rules:o,defaultValue:l,shouldUnregister:i,control:d,label:P,labelPlacement:g,disableIconError:f,onChange:T,...x})=>{let C=Nt()?.control,m=d??C;if(!m)throw new v("Switch");let{field:u}=$t({control:m,name:e,rules:o,defaultValue:l,shouldUnregister:i});return zt(Et,{children:[ce(Bt,{control:ce(Mt,{value:u.value??"",checked:u.value??!1,defaultValue:u.value,onChange:(a,p)=>{u.onChange(a,p),T?.(a,p)},...x},e),label:ce(S,{label:P}),labelPlacement:g||"end"}),ce(I,{name:e,disableIcon:f,control:m})]})},Gt=Ot;import{RadioGroup as qt,Stack as _t}from"@mui/material";import{useController as Ut,useFormContext as Ht}from"react-hook-form";import{jsx as ge,jsxs as Yt}from"react/jsx-runtime";var Kt=({name:e,rules:o,defaultValue:l,shouldUnregister:i,control:d,label:P,required:g,children:f,orientation:T="row",disableIconError:x,...C})=>{let m=Ht()?.control,u=d??m;if(!u)throw new v("RadioGroup");let{field:a}=Ut({control:u,name:e,rules:o,defaultValue:l,shouldUnregister:i});return Yt(_t,{children:[P&&ge(S,{label:P,required:g}),ge(qt,{value:a.value||"",name:e,...C,onChange:p=>{C?.onChange?.(p,p.target?.value),a.onChange(p)},style:{display:"flex",flexDirection:T},children:f},e),ge(I,{name:e,disableIcon:x,control:u})]})},Wt=Kt;import{FormControlLabel as jt,Grid2 as Jt,Radio as Xt}from"@mui/material";import{jsx as fe}from"react/jsx-runtime";var Qt=({label:e,labelPlacement:o,...l})=>fe(Jt,{sx:{display:"flex",flexDirection:"column"},children:fe(jt,{control:fe(Xt,{...l}),label:fe(S,{label:e}),labelPlacement:o||"end"})}),Zt=Qt;import{useController as er,useFormContext as or}from"react-hook-form";import{Slider as tr}from"@mui/material";import{jsx as ir}from"react/jsx-runtime";var rr=({name:e,rules:o,defaultValue:l,shouldUnregister:i,control:d,...P})=>{let g=or()?.control,f=d??g;if(!f)throw new v("Slider");let{field:T}=er({control:f,name:e,rules:o,defaultValue:l,shouldUnregister:i});return ir(tr,{value:T.value||P?.min||0,onChange:T.onChange,valueLabelDisplay:"auto",...P},e)},lr=rr;import{Stack as pr,TextField as mr}from"@mui/material";import{AdapterDayjs as ur}from"@mui/x-date-pickers/AdapterDayjs";import{DatePicker as cr}from"@mui/x-date-pickers/DatePicker";import{LocalizationProvider as fr}from"@mui/x-date-pickers/LocalizationProvider";import{ptBR as Fr}from"@mui/x-date-pickers/locales/ptBR";import{composeValidators as yr,date as We}from"@s_mart/rules";import xr from"dayjs/locale/pt-br";import{memo as br}from"react";import{useController as hr,useFormContext as Pr,useFormState as gr}from"react-hook-form";import{IconButton as nr,styled as ar}from"@mui/material";import{toRem as W}from"@s_mart/utils";var sr=e=>{switch(e){case"small":return W(16);default:case"medium":return W(20);case"large":return W(24)}},dr=e=>{switch(e){case"small":return`${W(2)} ${W(8)}`;default:case"medium":return`${W(6)} ${W(8)}`;case"large":return`${W(10)}`}},Ke=ar(nr)`
|
|
55
55
|
margin: 0px;
|
|
56
56
|
|
|
57
|
-
padding: ${({size:e})=>
|
|
57
|
+
padding: ${({size:e})=>dr(e)};
|
|
58
58
|
border-radius: 0 ${W(4)} ${W(4)} 0;
|
|
59
59
|
|
|
60
60
|
svg {
|
|
61
|
-
width: ${({size:e})=>
|
|
61
|
+
width: ${({size:e})=>sr(e)} !important;
|
|
62
62
|
}
|
|
63
|
-
`;import{jsx as
|
|
63
|
+
`;import{jsx as Fe,jsxs as Tr}from"react/jsx-runtime";import{createElement as vr}from"react";var Vr=({rules:e,name:o,defaultValue:l,shouldUnregister:i,control:d,datePickerProps:P,label:g,required:f,placeholder:T,disabled:x,disableIconError:C,...m})=>{let u=Pr()?.control,a=d??u;if(!a)throw new v("DatePicker");let p=gr({control:a,name:o}),V=D(p.errors,o),n=P?.format||"DD/MM/YYYY",F=e?yr([We(n),e]):We(n),{field:L}=hr({control:a,name:o,rules:F,defaultValue:l,shouldUnregister:i});return Fe(fr,{dateAdapter:ur,adapterLocale:xr,localeText:Fr.components.MuiLocalizationProvider.defaultProps.localeText,children:Tr(pr,{children:[g&&Fe(S,{label:g,required:f}),vr(cr,{...P,key:o,value:L.value??null,format:n,onChange:(r,y)=>{L.onChange(r,y),P?.onChange?.(r,y)},disabled:x,slots:{textField:mr,openPickerButton:r=>Fe(Ke,{...r,size:m.size})},slotProps:{textField:r=>({variant:"outlined",...r,error:!!V,...m,inputProps:{...r.inputProps,placeholder:T||r.inputProps?.placeholder},InputProps:{...r.InputProps,inputRef:y=>{L.ref(y),typeof r.inputRef=="function"&&r.inputRef(y)}}})}}),Fe(I,{name:o,disableIcon:C,control:a})]})})},Cr=br(Vr);import{Stack as Ar,TextField as Lr}from"@mui/material";import{AdapterDayjs as Rr}from"@mui/x-date-pickers/AdapterDayjs";import{LocalizationProvider as Dr}from"@mui/x-date-pickers/LocalizationProvider";import{TimePicker as Br}from"@mui/x-date-pickers/TimePicker";import{ptBR as Er}from"@mui/x-date-pickers/locales/ptBR";import{composeValidators as Mr,time as je}from"@s_mart/rules";import $r from"dayjs/locale/pt-br";import{memo as Nr}from"react";import{useController as Or,useFormContext as Gr,useFormState as zr}from"react-hook-form";import{styled as Sr}from"@mui/material";import{IconButton as kr}from"@mui/material";import{toRem as Y}from"@s_mart/utils";var Ir=e=>{switch(e){case"small":return Y(16);case"large":return Y(24);default:return Y(20)}},wr=e=>{switch(e){case"small":return`${Y(2)} ${Y(8)}`;case"large":return Y(10);default:return`${Y(6)} ${Y(8)}`}},Ye=Sr(kr)`
|
|
64
64
|
margin: 0px;
|
|
65
65
|
|
|
66
|
-
padding: ${({size:e})=>
|
|
66
|
+
padding: ${({size:e})=>wr(e)};
|
|
67
67
|
border-radius: 0 ${Y(4)} ${Y(4)} 0;
|
|
68
68
|
|
|
69
69
|
svg {
|
|
70
|
-
width: ${({size:e})=>
|
|
70
|
+
width: ${({size:e})=>Ir(e)} !important;
|
|
71
71
|
}
|
|
72
|
-
`;import{jsx as se,jsxs as
|
|
72
|
+
`;import{jsx as se,jsxs as Ur}from"react/jsx-runtime";var qr=({rules:e,defaultValue:o,shouldUnregister:l,name:i,control:d,required:P,label:g,timePickerProps:f,placeholder:T,disabled:x,disableIconError:C,...m})=>{let u=Gr()?.control,a=d??u;if(!a)throw new v("TimePicker");let p=zr({control:a,name:i}),V=D(p.errors,i),n=f?.format||"HH:mm",F=e?Mr([je(n),e]):je(n),{field:L}=Or({control:a,name:i,rules:F,defaultValue:o,shouldUnregister:l});return se(Dr,{dateAdapter:Rr,adapterLocale:$r,localeText:Er.components.MuiLocalizationProvider.defaultProps.localeText,children:Ur(Ar,{children:[g&&se(S,{label:g,required:P}),se(Br,{ampm:!1,format:n,value:L.value??null,disabled:x,...f,onChange:(r,y)=>{L.onChange(r,y),f?.onChange?.(r,y)},slots:{textField:Lr,openPickerButton:r=>se(Ye,{...r,size:m.size})},slotProps:{textField:r=>({variant:"outlined",...r,error:!!V,...m,inputProps:{...r.inputProps,placeholder:T||r.inputProps?.placeholder},InputProps:{...r.InputProps,inputRef:y=>{L.ref(y),typeof r.inputRef=="function"&&r.inputRef(y)}}})}},i),se(I,{name:i,disableIcon:C,control:a})]})})},_r=Nr(qr);import{Autocomplete as Hr,Grid as ye,TextField as Kr}from"@mui/material";import{colorPalette as Wr}from"@s_mart/tokens";import{memo as Yr}from"react";import{Controller as jr,useFormContext as Jr}from"react-hook-form";import{jsx as oe,jsxs as Je}from"react/jsx-runtime";import{createElement as Zr}from"react";var Xr=({name:e,defaultValue:o,rules:l,shouldUnregister:i,label:d,required:P,noOptionsText:g,placeholder:f,onInputChange:T,onChange:x,disableIconError:C,...m})=>{let u=Jr();if(!u)throw new v("Autocomplete");let a=D(u.formState.errors,e);return console.warn=()=>{},oe(jr,{name:e,control:u.control,defaultValue:o,rules:l,shouldUnregister:i,render:({field:p})=>Je(ye,{sx:{display:"flex",flexDirection:"column"},children:[d&&oe(S,{label:d,required:P}),oe(Hr,{onChange:(V,n)=>{p.onChange(n),x?.(n,u.getValues())},onInputChange:(V,n,F)=>{F==="input"&&(p.onChange(n),setTimeout(()=>{T?.(n,u.getValues())},0))},slotProps:{...m.slotProps||{},paper:{...m.slotProps?.paper||{},sx:{border:`1px solid ${Wr.neutral[30]}`,boxShadow:"0px 2px 4px rgba(0, 0, 0, 0.15)"}}},isOptionEqualToValue:(V,n)=>V.value===n.value,renderOption:(V,n)=>Zr("li",{...V,key:n.key||n.value,onClick:F=>{V.onClick?.(F),p.onChange(n)}},Je(ye,{container:!0,direction:"column",children:[oe(ye,{item:!0,children:n.label}),n.afterLabel&&oe(ye,{item:!0,children:n.afterLabel})]})),value:p.value||null,readOnly:m.disabled,noOptionsText:g||"Nenhuma op\xE7\xE3o encontrada",...m,renderInput:V=>oe(Kr,{placeholder:f,...V,error:!!a,slotProps:{input:{inputProps:V.inputProps,inputRef:p.ref}}})},e),oe(I,{name:e,disableIcon:C,control:u.control})]})})},Qr=Yr(Xr);import{Autocomplete as il,Divider as Xe,TextField as nl}from"@mui/material";import{colorPalette as al}from"@s_mart/tokens";import{isEqual as sl}from"lodash-es";import{forwardRef as dl}from"react";import{useController as pl,useFormContext as ml,useFormState as ul}from"react-hook-form";import{Tooltip as el}from"@mui/material";import{LIcon as ol}from"@s_mart/core";import{lineInfoCircle as tl}from"@s_mart/solid-icons";import{jsx as Ve}from"react/jsx-runtime";var rl=({title:e})=>Ve(el,{title:e,placement:"top",children:Ve("div",{style:{width:"fit-content"},children:Ve(ol,{icon:tl,color:"#757575"})})}),te=rl;import{memo as ll}from"react";var ie=ll;import{Fragment as Ce,jsx as q,jsxs as re}from"react/jsx-runtime";import{createElement as Fl}from"react";var cl=e=>{let{name:o,rules:l,defaultValue:i,shouldUnregister:d,control:P,label:g,required:f,options:T,textFieldProps:x,noOptionsText:C,footer:m,multiple:u,info:a,placeholder:p,onChange:V,onInputChange:n,getOptionAfterLabel:F,getOptionLabel:L,getOptionKey:r,...y}=e,G=ml()?.control,b=P??G;if(!b)throw new v("SearchableV2");let s=ul({control:b,name:o}),w=D(s.errors,o),{field:A}=pl({name:o,control:b,rules:l,defaultValue:i,shouldUnregister:d});return re("div",{style:{display:"flex",flexDirection:"column"},children:[re("div",{style:{display:"flex"},children:[g&&q(S,{label:g,required:f}),a&&q(te,{title:a})]}),q(il,{onChange:(c,t)=>{A.onChange(t),V?.(t)},onInputChange:(c,t,k)=>{k==="input"&&n?.(t)},value:A.value,options:T,multiple:u,readOnly:y.disabled,slotProps:{...y.slotProps,paper:{...y.slotProps?.paper,sx:{border:`1px solid ${al.neutral[30]}`,boxShadow:"0px 2px 4px rgba(0, 0, 0, 0.15)"}},listbox:{component:dl(function(t,k){return re(Ce,{children:[q("ul",{...t,ref:k}),typeof m<"u"?re("div",{...t,children:[q("div",{style:{paddingTop:"0.5rem",paddingBottom:"0.5rem"},children:q(Xe,{})}),m()]},"searchable-footer"):null]})})}},noOptionsText:re(Ce,{children:[C||"Nenhuma op\xE7\xE3o encontrada",typeof m<"u"?re(Ce,{children:[q("div",{style:{paddingTop:"0.5rem",paddingBottom:"0.5rem"},children:q(Xe,{})}),m()]}):null]}),isOptionEqualToValue:(c,t)=>sl(c,t),getOptionLabel:L,getOptionKey:r,renderOption:typeof F=="function"?(c,t)=>{let k=F(t),z=r(t);return Fl("li",{...c,key:z},re("div",{style:{display:"flex",flexDirection:"column",flex:1},children:[q("span",{children:L(t)}),typeof k=="string"?q("span",{children:k}):k]}))}:void 0,...y,renderInput:c=>q(nl,{error:!!w,placeholder:p,...c,...x,inputRef:A.ref})},o),q(I,{name:o,control:b})]})},fl=ie(cl);import{useState as bl}from"react";import{useController as hl,useFormContext as Pl,useFormState as gl}from"react-hook-form";import{IconButton as Vl,LIcon as Cl}from"@s_mart/core";import{lineTimes as vl}from"@s_mart/regular-icons";import{colorPalette as Tl}from"@s_mart/tokens";import{Select as Sl,MenuItem as kl,Divider as Il}from"@mui/material";import{colorPalette as yl}from"@s_mart/tokens";import{jsx as xl}from"react/jsx-runtime";var Qe=({value:e,placeholder:o,getOptionLabel:l})=>e===null||e?.length===0?xl("p",{style:{color:yl.neutral[100]},children:o}):l(e);import{Fragment as Ll,jsx as _,jsxs as le}from"react/jsx-runtime";var wl=e=>{let{name:o,rules:l,defaultValue:i,shouldUnregister:d,control:P,label:g,required:f,options:T,placeholder:x,clearable:C,info:m,footer:u,onChange:a,variant:p="outlined",getOptionKey:V,getOptionLabel:n,getOptionAfterLabel:F,getOptionIcon:L,...r}=e,y=Pl()?.control,G=P??y,[b,s]=bl(!1);if(!G)throw new v("SelectV2");let w=gl({control:G,name:o}),A=D(w.errors,o),{field:c}=hl({control:G,name:o,rules:l,defaultValue:i,shouldUnregister:d});return le("div",{style:{display:"flex",flexDirection:"column"},children:[le("div",{style:{display:"flex"},children:[g&&_(S,{label:g,required:f}),m&&_(te,{title:m})]}),le(Sl,{open:b,onOpen:()=>s(!0),onClose:()=>s(!1),displayEmpty:!!x,variant:p,autoComplete:"off",value:c.value||null,renderValue:t=>_(Qe,{getOptionLabel:n,placeholder:x,value:t}),onChange:t=>{c.onChange(t.target.value),a?.(t.target.value)},error:!!A,size:r.size||"medium",inputRef:c.ref,...r,endAdornment:le(Ll,{children:[r.endAdornment,!!(C&&c.value)&&_(Vl,{variant:"text",color:"neutral",size:"small",sx:{borderRadius:"50%",position:"absolute",right:"2rem"},style:{padding:0},"aria-label":"Limpar",title:"Limpar",onClick:()=>{c.onChange(null),a?.(null)},children:_(Cl,{icon:vl,color:Tl.neutral[100],size:"25px",removeMargin:!0})})]}),children:[T.map(t=>{let k=V(t),z=n(t),J=L?.(t);return _(kl,{value:k??z,children:le("div",{style:{display:"flex",flexDirection:"column",flex:1},children:[J!==void 0?le("div",{style:{display:"flex",alignItems:"center"},children:[J,z]}):z,_("span",{children:F?.(t)??null})]})},k)}),u!==void 0&&le("div",{children:[_("div",{style:{padding:"8px 16px"},children:_(Il,{})},"footer-divider"),_("div",{children:u({closeSelect:()=>s(!1)})},"footer-content")]},"footer")]},o),_(I,{name:o,control:G})]})},Al=ie(wl);import{forwardRef as Bl,useCallback as El,useState as Ml}from"react";import{useController as $l,useFormContext as Nl,useFormState as Ol}from"react-hook-form";import{isObject as Gl,isEmpty as zl,isEqual as ql}from"lodash-es";import{Autocomplete as _l,TextField as Ul,Divider as oo,Button as Hl}from"@mui/material";import{LIcon as ve}from"@s_mart/core";import{colorPalette as Kl}from"@s_mart/tokens";import{linePlus as to,linePen as Wl}from"@s_mart/solid-icons";import{toRem as ro}from"@s_mart/utils";import{css as Rl,styled as Dl}from"@mui/material";import{toRem as xe}from"@s_mart/utils";import"@mui/system";var Ze=Rl`
|
|
73
73
|
display: flex;
|
|
74
74
|
align-items: center;
|
|
75
75
|
justify-content: center;
|
|
76
|
-
`,
|
|
76
|
+
`,eo=Dl("div")`
|
|
77
77
|
display: flex;
|
|
78
78
|
|
|
79
79
|
div.endAdornments {
|
|
80
80
|
position: absolute;
|
|
81
81
|
right: 0;
|
|
82
82
|
|
|
83
|
-
${
|
|
83
|
+
${Ze}
|
|
84
84
|
}
|
|
85
85
|
|
|
86
86
|
.MuiAutocomplete-endAdornment {
|
|
@@ -94,11 +94,11 @@ import{FormProvider as no}from"react-hook-form";import{jsx as Ie}from"react/jsx-
|
|
|
94
94
|
|
|
95
95
|
.creatable,
|
|
96
96
|
.editable {
|
|
97
|
-
${
|
|
97
|
+
${Ze}
|
|
98
98
|
|
|
99
99
|
.divider {
|
|
100
100
|
width: 1px;
|
|
101
|
-
height: ${
|
|
101
|
+
height: ${xe(20)};
|
|
102
102
|
background-color: ${({theme:e})=>e.palette.grey[400]};
|
|
103
103
|
}
|
|
104
104
|
|
|
@@ -109,9 +109,9 @@ import{FormProvider as no}from"react-hook-form";import{jsx as Ie}from"react/jsx-
|
|
|
109
109
|
color: ${({theme:e})=>e.palette.grey[600]};
|
|
110
110
|
border-radius: 50%;
|
|
111
111
|
|
|
112
|
-
margin: 0 ${
|
|
113
|
-
width: ${
|
|
114
|
-
height: ${
|
|
112
|
+
margin: 0 ${xe(6)};
|
|
113
|
+
width: ${xe(28)};
|
|
114
|
+
height: ${xe(28)};
|
|
115
115
|
|
|
116
116
|
&:hover {
|
|
117
117
|
cursor: pointer;
|
|
@@ -120,4 +120,4 @@ import{FormProvider as no}from"react-hook-form";import{jsx as Ie}from"react/jsx-
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
|
-
`;import{Fragment as
|
|
123
|
+
`;import{Fragment as Te,jsx as M,jsxs as U}from"react/jsx-runtime";import{createElement as Jl}from"react";function Yl(e){let{name:o,rules:l,defaultValue:i,shouldUnregister:d,control:P,label:g,required:f,options:T,footer:x,showCreatableButton:C=!0,showEditableButton:m,onEditOption:u,onCreateOption:a,getOptionKey:p,getOptionLabel:V,getOptionAfterLabel:n,textFieldProps:F,multiple:L,info:r,noOptionsText:y,onChange:G,onInputChange:b,placeholder:s,...w}=e,[A,c]=Ml(""),t=Nl()?.control,k=P??t;if(!k)throw new v("CreatableV2");let z=Ol({control:k,name:o}),J=D(z.errors,o),B=!C||w.disabled,{field:h}=$l({name:o,control:k,rules:l,defaultValue:i,shouldUnregister:d}),ne=$=>{let E=0;return F?.InputProps||(E+=2.5),B||(E+=2.56,Se($)&&(E+=2.56)),!w.disableClearable&&!w.disabled&&(E+=1.3),`${E}rem`},Se=$=>w.disabled?!1:m&&Gl($)&&!zl($),lo=()=>w.disabled?!1:C,ke=El(()=>{typeof a<"u"&&(a(A),c(""))},[A,a]),io=$=>{u?.($)};return U("div",{style:{display:"flex",flexDirection:"column"},children:[U("div",{style:{display:"flex"},children:[g&&M(S,{label:g,required:f}),r&&M(te,{title:r})]}),M(eo,{children:M(_l,{fullWidth:!0,onChange:($,E)=>{c(""),h.onChange(E),G?.(E)},onInputChange:($,E,X)=>{X==="input"&&(c(E),b?.(E))},slotProps:{...w.slotProps,paper:{...w.slotProps?.paper,sx:{border:`1px solid ${Kl.neutral[30]}`,boxShadow:"0px 2px 4px rgba(0, 0, 0, 0.15)"}},listbox:{component:Bl(function(E,X){return U(Te,{children:[M("ul",{...E,ref:X}),typeof x<"u"?U("div",{...E,children:[M("div",{style:{paddingTop:"0.5rem",paddingBottom:"0.5rem"},children:M(oo,{})}),x()]},"creatable-footer"):null]})})}},value:h.value,options:T,multiple:L,readOnly:w.disabled,noOptionsText:U(Te,{children:[y||"Nenhuma op\xE7\xE3o encontrada",!B&&U(Hl,{sx:{justifyContent:"flex-start",padding:`${ro(6)} ${ro(-16)}`,margin:0},fullWidth:!0,onClick:ke,variant:"text",startIcon:M(ve,{icon:to}),children:["Adicionar ",`"${A}"`]}),typeof x<"u"&&U(Te,{children:[M("div",{style:{paddingTop:"0.5rem",paddingBottom:"0.5rem"},children:M(oo,{})}),x()]})]}),isOptionEqualToValue:($,E)=>ql($,E),getOptionLabel:V,getOptionKey:p,renderOption:typeof n=="function"?($,E)=>{let X=n(E),no=p(E);return Jl("li",{...$,key:no},U("div",{style:{display:"flex",flexDirection:"column",flex:1},children:[M("span",{children:V(E)}),typeof X=="string"?M("span",{children:X}):X]}))}:void 0,...w,sx:{"& div.MuiInputBase-root":{paddingRight:`${ne(h.value)} !important`},...w.sx},onBlur:$=>{w?.onBlur?.($),c("")},renderInput:$=>M(Ul,{placeholder:s,...$,error:!!J,...F,slotProps:{input:{...$.InputProps,...F?.InputProps,inputRef:h.ref,endAdornment:U("div",{className:"endAdornments",children:[$.InputProps.endAdornment,F?.InputProps?.endAdornment??null,Se(h.value)?U("div",{className:"editable",children:[M("div",{className:"divider"}),M("div",{className:"button",onKeyUp:()=>io(h.value),children:M(ve,{icon:Wl,size:"24px",removeMargin:!0})})]}):null,lo()&&U("div",{className:"creatable",children:[M("div",{className:"divider"}),M("div",{className:"button",onKeyUp:ke,children:M(ve,{icon:to,size:"24px",removeMargin:!0})})]})]})}}})},o)}),M(I,{name:o,control:k})]})}var jl=ie(Yl);export{Qr as Autocomplete,Rt as Checkbox,St as Creatable,jl as CreatableV2,Cr as DatePicker,Fo as Form,be as FormProvider,Zt as RadioButton,Wt as RadioGroup,dt as Searchable,fl as SearchableV2,Xo as Select,Al as SelectV2,lr as Slider,Gt as Switch,$o as TextField,_r as TimePicker,he as useForm};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@s_mart/form",
|
|
3
|
-
"version": "9.2.0-beta.
|
|
3
|
+
"version": "9.2.0-beta.1",
|
|
4
4
|
"main": "./dist/index.mjs",
|
|
5
5
|
"module": "./dist/index.mjs",
|
|
6
6
|
"types": "./dist/index.d.mts",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"@mui/system": "^6.4.0",
|
|
24
24
|
"@mui/x-date-pickers": "^7.22.0",
|
|
25
25
|
"@types/lodash-es": ">=4.17.12",
|
|
26
|
-
"@types/node": ">=
|
|
26
|
+
"@types/node": ">=22.15.17",
|
|
27
27
|
"@types/react": ">=18.3.12",
|
|
28
28
|
"@types/react-dom": ">=18.3.1",
|
|
29
29
|
"dayjs": "^1.11.10",
|
|
@@ -32,12 +32,12 @@
|
|
|
32
32
|
"react-hook-form": "^7.51.0",
|
|
33
33
|
"typescript": ">=5.4.2",
|
|
34
34
|
"zod": "^3.22.4",
|
|
35
|
-
"@s_mart/core": "9.1.5-beta.
|
|
36
|
-
"@s_mart/masks": "5.2.0",
|
|
35
|
+
"@s_mart/core": "9.1.5-beta.1",
|
|
37
36
|
"@s_mart/rules": "5.1.1",
|
|
38
|
-
"@s_mart/tokens": "5.1.1",
|
|
39
37
|
"@s_mart/typed": "7.2.2",
|
|
40
|
-
"@s_mart/utils": "5.3.4"
|
|
38
|
+
"@s_mart/utils": "5.3.4",
|
|
39
|
+
"@s_mart/tokens": "5.1.1",
|
|
40
|
+
"@s_mart/masks": "5.2.0"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@emotion/styled": "^11.13.0",
|
|
@@ -45,15 +45,15 @@
|
|
|
45
45
|
"@mui/system": "^6.4.0",
|
|
46
46
|
"@mui/x-date-pickers": "^7.22.0",
|
|
47
47
|
"@types/lodash-es": ">=4.17.12",
|
|
48
|
-
"@types/node": ">=
|
|
48
|
+
"@types/node": ">=22.15.17",
|
|
49
49
|
"@types/react": ">=18.3.12",
|
|
50
50
|
"@types/react-dom": ">=18.3.1",
|
|
51
51
|
"dayjs": "^1.11.10",
|
|
52
52
|
"typescript": ">=5.4.2",
|
|
53
|
-
"@s_mart/core": "9.1.5-beta.
|
|
54
|
-
"@s_mart/masks": "5.2.0",
|
|
53
|
+
"@s_mart/core": "9.1.5-beta.1",
|
|
55
54
|
"@s_mart/rules": "5.1.1",
|
|
56
55
|
"@s_mart/tokens": "5.1.1",
|
|
56
|
+
"@s_mart/masks": "5.2.0",
|
|
57
57
|
"@s_mart/typed": "7.2.2",
|
|
58
58
|
"@s_mart/utils": "5.3.4"
|
|
59
59
|
},
|