@pdg/react-form 1.0.58 → 1.0.59
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.
|
@@ -2,8 +2,8 @@ import React from 'react';
|
|
|
2
2
|
import { FormSelectProps, FormSelectCommands } from './FormSelect.types';
|
|
3
3
|
import './FormSelect.scss';
|
|
4
4
|
import { FormValueType } from '../../@types';
|
|
5
|
-
interface WithForwardRefType<T, VT extends FormValueType = 'single'> extends React.FC<FormSelectProps<T, VT>> {
|
|
6
|
-
<T, VT extends FormValueType = 'single'>(props: FormSelectProps<T, VT> & React.RefAttributes<FormSelectCommands<T, VT>>): ReturnType<React.FC<FormSelectProps<T, VT>>>;
|
|
5
|
+
interface WithForwardRefType<T, VT extends FormValueType = 'single', AllowUndefinedValue extends boolean = true> extends React.FC<FormSelectProps<T, VT, AllowUndefinedValue>> {
|
|
6
|
+
<T, VT extends FormValueType = 'single', AllowUndefinedValue extends boolean = true>(props: FormSelectProps<T, VT, AllowUndefinedValue> & React.RefAttributes<FormSelectCommands<T, VT, AllowUndefinedValue>>): ReturnType<React.FC<FormSelectProps<T, VT, AllowUndefinedValue>>>;
|
|
7
7
|
}
|
|
8
8
|
declare const FormSelect: WithForwardRefType<any, 'any'>;
|
|
9
9
|
export default FormSelect;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { FormArrayValueItemCommands, FormItemsValueItemCommands, FormLoadingValueItemCommands, FormValueItemBaseCommands, FormMultipleValueItemCommands, FormValueType } from '../../@types';
|
|
3
3
|
import { FormTextFieldProps } from '../FormTextField';
|
|
4
|
-
export type FormSelectValue<T, VT extends FormValueType = 'single', V = VT extends 'single' ? T : VT extends 'multiple' ? T[] : T | T[]> = V | undefined;
|
|
4
|
+
export type FormSelectValue<T, VT extends FormValueType = 'single', AllowUndefinedValue extends boolean = true, V = VT extends 'single' ? T : VT extends 'multiple' ? T[] : T | T[]> = V | (AllowUndefinedValue extends true ? undefined : never);
|
|
5
5
|
export interface FormSelectExtraCommands<T> extends FormArrayValueItemCommands, FormItemsValueItemCommands<FormSelectItem<T>>, FormMultipleValueItemCommands, FormLoadingValueItemCommands {
|
|
6
6
|
}
|
|
7
|
-
export interface FormSelectCommands<T, VT extends FormValueType = 'single'> extends FormValueItemBaseCommands<FormSelectValue<T, VT>,
|
|
7
|
+
export interface FormSelectCommands<T, VT extends FormValueType = 'single', AllowUndefinedValue extends boolean = true> extends FormValueItemBaseCommands<FormSelectValue<T, VT, AllowUndefinedValue>, AllowUndefinedValue>, FormSelectExtraCommands<T> {
|
|
8
8
|
}
|
|
9
9
|
export interface FormSelectItem<T> {
|
|
10
10
|
label: ReactNode;
|
|
@@ -12,7 +12,7 @@ export interface FormSelectItem<T> {
|
|
|
12
12
|
disabled?: boolean;
|
|
13
13
|
}
|
|
14
14
|
export type FormSelectItems<T> = FormSelectItem<T>[];
|
|
15
|
-
export type FormSelectProps<T, VT extends FormValueType = 'single'> = Omit<FormTextFieldProps<FormSelectValue<T, VT
|
|
15
|
+
export type FormSelectProps<T, VT extends FormValueType = 'single', AllowUndefinedValue extends boolean = true> = Omit<FormTextFieldProps<FormSelectValue<T, VT, AllowUndefinedValue>, AllowUndefinedValue>, 'type' | 'clear'> & {
|
|
16
16
|
items?: FormSelectItems<T>;
|
|
17
17
|
multiple?: boolean;
|
|
18
18
|
checkbox?: boolean;
|