@bothub-chat/ui 2.61.1-feat-generics-in-select-12c70ac8-6974-4fa6-990a-fe8ced493714 → 2.61.1-feat-generics-in-select-cda6a5d3-af5d-46f9-b3b3-abbe2697488f
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/components/badge-select-dropdown/index.d.ts +3 -3
- package/dist/components/lang-switcher/styled.d.ts +1 -1
- package/dist/components/select-field/index.d.ts +3 -3
- package/dist/components/select-field/nodes/value/index.d.ts +3 -3
- package/dist/components/select-field/select-modal/filterData.d.ts +2 -2
- package/dist/components/select-field/select-modal/index.d.ts +4 -4
- package/dist/components/select-field/select-modal/option/collapse/index.d.ts +3 -3
- package/dist/components/select-field/select-modal/option/list/index.d.ts +2 -2
- package/dist/components/select-field/select-modal/option/types.d.ts +4 -4
- package/dist/components/select-field/types.d.ts +14 -14
- package/dist/components/select-field/useSelectField.d.ts +8 -8
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { SelectFieldChangeEventHandler,
|
|
1
|
+
import { SelectFieldChangeEventHandler, SelectFieldDataItemComplex, SelectFieldSize, SelectFieldValueChangeEventHandler, UseSelectFieldProps } from '../select-field';
|
|
2
2
|
import { Variant } from './types';
|
|
3
|
-
export type BadgeSelectDropdownProps<DataItem extends
|
|
3
|
+
export type BadgeSelectDropdownProps<DataItem extends string | SelectFieldDataItemComplex<any>> = {
|
|
4
4
|
options: DataItem[];
|
|
5
5
|
value?: DataItem | null;
|
|
6
6
|
variant?: Variant;
|
|
@@ -16,5 +16,5 @@ export type BadgeSelectDropdownProps<DataItem extends SelectFieldDataItem<any>>
|
|
|
16
16
|
onChange?: SelectFieldChangeEventHandler<DataItem>;
|
|
17
17
|
onValueChange?: SelectFieldValueChangeEventHandler<DataItem>;
|
|
18
18
|
} & Omit<UseSelectFieldProps<DataItem>, 'onChange' | 'multiple' | 'onValueChange' | 'value'>;
|
|
19
|
-
export declare const BadgeSelectDropdown: <DataItem extends
|
|
19
|
+
export declare const BadgeSelectDropdown: <DataItem extends string | SelectFieldDataItemComplex<any>>(props: BadgeSelectDropdownProps<DataItem>) => React.ReactNode;
|
|
20
20
|
export * from './styled';
|
|
@@ -1995,7 +1995,7 @@ export declare const LangSwitcherLabel: import("styled-components").IStyledCompo
|
|
|
1995
1995
|
onTransitionStartCapture?: import("react").TransitionEventHandler<HTMLSpanElement> | undefined;
|
|
1996
1996
|
ref?: import("react").Ref<HTMLSpanElement> | undefined;
|
|
1997
1997
|
}>;
|
|
1998
|
-
export declare const LangSwitcherInput: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<import("@/ui/components/select-field").SelectFieldProps<import("@/ui/components/select-field").
|
|
1998
|
+
export declare const LangSwitcherInput: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<import("@/ui/components/select-field").SelectFieldProps<string | import("@/ui/components/select-field").SelectFieldDataItemComplex<any>>, import("styled-components/dist/types").BaseObject>>;
|
|
1999
1999
|
export declare const LangSwitcherButton: import("styled-components").IStyledComponent<"web", {
|
|
2000
2000
|
children?: import("react").ReactNode;
|
|
2001
2001
|
value?: string | number | readonly string[] | undefined;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SelectModalGeneralProps } from './select-modal';
|
|
2
|
-
import {
|
|
2
|
+
import { SelectFieldDataItemComplex, SelectFieldInputChangeEventHandler, SelectFieldInputType } from './types';
|
|
3
3
|
import { UseSelectFieldProps } from './useSelectField';
|
|
4
|
-
export type SelectFieldProps<DataItem extends
|
|
4
|
+
export type SelectFieldProps<DataItem extends string | SelectFieldDataItemComplex<any>> = {
|
|
5
5
|
className?: string;
|
|
6
6
|
label?: string | boolean | React.ReactNode;
|
|
7
7
|
placeholder?: string;
|
|
@@ -18,7 +18,7 @@ export type SelectFieldProps<DataItem extends SelectFieldDataItem<any>> = {
|
|
|
18
18
|
onInputChange?: SelectFieldInputChangeEventHandler;
|
|
19
19
|
onPointerLeave?: React.PointerEventHandler<HTMLDivElement>;
|
|
20
20
|
} & SelectModalGeneralProps<DataItem> & UseSelectFieldProps<DataItem> & React.PropsWithChildren;
|
|
21
|
-
export declare const SelectField: <DataItem extends
|
|
21
|
+
export declare const SelectField: <DataItem extends string | SelectFieldDataItemComplex<any>>({ className, label, placeholder, data, fullWidth, contentWidth, error, skeleton, blur, size, disableSelect, disableScrollbar, empty, after, loading, searchSampleIcon, enableInput, inputType, inputValue: initialInputValue, clearable, disablePortal, tabs, search, searchPlaceholder, resetStyleState, children, modalWidth, dataTest, selectedColor, compactWidth, modalStyles, openedModel, onSearch, onOptionClick, onGroupCheckboxClick, onInputChange, onPointerLeave, ...useSelectFieldProps }: SelectFieldProps<DataItem>) => import("react/jsx-runtime").JSX.Element;
|
|
22
22
|
export * from './types';
|
|
23
23
|
export * from './styled';
|
|
24
24
|
export * from './context';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
export interface SelectFieldInputValueProps<DataItem extends
|
|
2
|
+
import { SelectFieldDataItemComplex, ValueType } from '../../types';
|
|
3
|
+
export interface SelectFieldInputValueProps<DataItem extends string | SelectFieldDataItemComplex<any>> {
|
|
4
4
|
value: ValueType<DataItem>;
|
|
5
5
|
handleValueDelete: (item: DataItem, event: React.MouseEvent) => unknown;
|
|
6
6
|
}
|
|
7
|
-
export declare const SelectFieldInputValue: <DataItem extends
|
|
7
|
+
export declare const SelectFieldInputValue: <DataItem extends string | SelectFieldDataItemComplex<any>>({ value, handleValueDelete, }: SelectFieldInputValueProps<DataItem>) => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const filterData: <DataItem extends
|
|
1
|
+
import { SelectFieldDataItemComplex } from '../types';
|
|
2
|
+
export declare const filterData: <DataItem extends string | SelectFieldDataItemComplex<any>>(data: DataItem[], searchValue: string) => DataItem[];
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { ScrollableTabsProps } from '@/ui/components/scrollable-tabs';
|
|
3
3
|
import { UseSelectFieldReturnType } from '..';
|
|
4
|
-
import { ResetStyleStateType,
|
|
5
|
-
export type SelectModalGeneralProps<DataItem extends
|
|
4
|
+
import { ResetStyleStateType, SelectFieldDataItemComplex, SelectFieldGroupCheckboxClickEventHandler, SelectFieldInputChangeEventHandler, SelectFieldOptionClickEventHandler, SelectFieldSize } from '../types';
|
|
5
|
+
export type SelectModalGeneralProps<DataItem extends string | SelectFieldDataItemComplex<any>> = {
|
|
6
6
|
data?: DataItem[];
|
|
7
7
|
contentWidth?: number;
|
|
8
8
|
contentHeight?: number | string;
|
|
@@ -26,7 +26,7 @@ export type SelectModalGeneralProps<DataItem extends SelectFieldDataItem<any>> =
|
|
|
26
26
|
onOptionClick?: SelectFieldOptionClickEventHandler<DataItem>;
|
|
27
27
|
onGroupCheckboxClick?: SelectFieldGroupCheckboxClickEventHandler<DataItem>;
|
|
28
28
|
};
|
|
29
|
-
export type SelectModalProps<DataItem extends
|
|
30
|
-
export declare const SelectModal: <DataItem extends
|
|
29
|
+
export type SelectModalProps<DataItem extends string | SelectFieldDataItemComplex<any>> = SelectModalGeneralProps<DataItem> & Omit<UseSelectFieldReturnType<DataItem>, 'disabled' | 'handleInputClick' | 'maxHeight' | 'triggerRef'>;
|
|
30
|
+
export declare const SelectModal: <DataItem extends string | SelectFieldDataItemComplex<any>>({ isOpen, data: initialData, contentWidth, contentHeight, size, disableSelect, disableScrollbar, empty, after, tabs, search, searchPlaceholder, resetStyleState, placement, selectModalRef, disablePortal, blur, x, y, width, isKeyboardOpen, value, multiple, modalWidth, openedModel, selectedColor, compactWidth, modalStyles, onSearch, onOptionClick, onGroupCheckboxClick, handleClose, setValue, }: SelectModalProps<DataItem>) => import("react/jsx-runtime").JSX.Element;
|
|
31
31
|
export * from './styled';
|
|
32
32
|
export * from './option';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { SelectFieldDataItemComplex, SelectFieldSize } from '@/ui/components/select-field';
|
|
3
3
|
import { SelectFieldOptionClickEventHandler } from '../types';
|
|
4
|
-
export interface SelectFieldCollapseOptionProps<DataItem extends
|
|
4
|
+
export interface SelectFieldCollapseOptionProps<DataItem extends string | SelectFieldDataItemComplex<any>> extends React.PropsWithChildren, Pick<React.ComponentProps<'div'>, 'onMouseEnter' | 'onMouseLeave' | 'onPointerDown' | 'onPointerUp' | 'onPointerLeave'> {
|
|
5
5
|
size: SelectFieldSize;
|
|
6
6
|
item: DataItem;
|
|
7
7
|
onClick?: SelectFieldOptionClickEventHandler<DataItem>;
|
|
8
8
|
icon?: React.ReactNode;
|
|
9
9
|
}
|
|
10
|
-
export declare const SelectFieldCollapseOption: <DataItem extends
|
|
10
|
+
export declare const SelectFieldCollapseOption: <DataItem extends string | SelectFieldDataItemComplex<any>>({ size, item, children, onClick, icon, ...props }: SelectFieldCollapseOptionProps<DataItem>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { SelectFieldDataItemComplex } from '@/ui/components/select-field/types';
|
|
2
2
|
import { SelectFieldOptionsProps } from '../types';
|
|
3
|
-
export declare const SelectFieldOptions: <DataItem extends
|
|
3
|
+
export declare const SelectFieldOptions: <DataItem extends string | SelectFieldDataItemComplex<any>>({ value, data, size, disableSelect, selectedColor, onGroupCheckboxClick, onOptionClick, ...props }: SelectFieldOptionsProps<DataItem>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
export type SelectFieldOptionClickEventHandler<DataItem extends
|
|
4
|
-
export type SelectFieldGroupCheckboxClickEventHandler<DataItem extends
|
|
5
|
-
export interface SelectFieldOptionsProps<DataItem extends
|
|
2
|
+
import { SelectFieldDataItemComplex, SelectFieldDataItemLiteral, SelectFieldSize } from '../types';
|
|
3
|
+
export type SelectFieldOptionClickEventHandler<DataItem extends string | SelectFieldDataItemComplex<any>> = (item: DataItem) => unknown;
|
|
4
|
+
export type SelectFieldGroupCheckboxClickEventHandler<DataItem extends string | SelectFieldDataItemComplex<any>> = (item: DataItem) => unknown;
|
|
5
|
+
export interface SelectFieldOptionsProps<DataItem extends string | SelectFieldDataItemComplex<any>> extends React.ComponentProps<'div'> {
|
|
6
6
|
value: DataItem | SelectFieldDataItemLiteral<DataItem> | DataItem[] | null;
|
|
7
7
|
data: DataItem[];
|
|
8
8
|
size: SelectFieldSize;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { TooltipProps } from '@/ui/components/tooltip';
|
|
3
|
-
export type SelectFieldChangeEventHandler<DataItem extends
|
|
4
|
-
export type SelectFieldValueChangeEventHandler<DataItem extends
|
|
5
|
-
export type SelectFieldMultiChangeEventHandler<DataItem extends
|
|
6
|
-
export type SelectFieldMultiValueChangeEventHandler<DataItem extends
|
|
7
|
-
export type SelectFieldOptionClickEventHandler<DataItem extends
|
|
8
|
-
export type SelectFieldGroupCheckboxClickEventHandler<DataItem extends
|
|
3
|
+
export type SelectFieldChangeEventHandler<DataItem extends string | SelectFieldDataItemComplex<any>> = (item: DataItem | null) => unknown;
|
|
4
|
+
export type SelectFieldValueChangeEventHandler<DataItem extends string | SelectFieldDataItemComplex<any>, ValueType = DataItem extends string ? DataItem : DataItem extends SelectFieldDataItemComplex<any> ? DataItem['value'] : never> = (value: ValueType | null) => unknown;
|
|
5
|
+
export type SelectFieldMultiChangeEventHandler<DataItem extends string | SelectFieldDataItemComplex<any>> = (items: DataItem[]) => unknown;
|
|
6
|
+
export type SelectFieldMultiValueChangeEventHandler<DataItem extends string | SelectFieldDataItemComplex<any>, ValueType = DataItem extends string ? DataItem : DataItem extends SelectFieldDataItemComplex<any> ? DataItem['value'] : never> = (value: ValueType[]) => unknown;
|
|
7
|
+
export type SelectFieldOptionClickEventHandler<DataItem extends string | SelectFieldDataItemComplex<any>> = (item: DataItem) => unknown;
|
|
8
|
+
export type SelectFieldGroupCheckboxClickEventHandler<DataItem extends string | SelectFieldDataItemComplex<any>> = (item: DataItem) => unknown;
|
|
9
9
|
export type SelectFieldInputChangeEventHandler = (value: string) => unknown;
|
|
10
10
|
export type SelectFieldItemType = 'item' | 'divider' | 'collapse' | 'empty' | 'label' | 'radio' | 'checkbox' | 'checkbox-group';
|
|
11
11
|
export type SelectFieldDataItemSimple = string;
|
|
12
|
-
export type SelectFieldDataItemComplex<DataItem extends
|
|
12
|
+
export type SelectFieldDataItemComplex<DataItem extends string | SelectFieldDataItemComplex<any>> = {
|
|
13
13
|
id?: number | string;
|
|
14
14
|
type?: SelectFieldItemType;
|
|
15
15
|
color?: string;
|
|
@@ -23,7 +23,7 @@ export type SelectFieldDataItemComplex<DataItem extends SelectFieldDataItem<any>
|
|
|
23
23
|
tooltip?: TooltipProps;
|
|
24
24
|
open?: boolean;
|
|
25
25
|
backgroundHoverColor?: 'gradient' | 'primary';
|
|
26
|
-
data?: DataItem[];
|
|
26
|
+
data?: SelectFieldDataItem<DataItem>[];
|
|
27
27
|
best_model?: boolean;
|
|
28
28
|
noSelect?: boolean;
|
|
29
29
|
description?: string;
|
|
@@ -33,13 +33,13 @@ export type SelectFieldDataItemComplex<DataItem extends SelectFieldDataItem<any>
|
|
|
33
33
|
onClick?: SelectFieldOptionClickEventHandler<DataItem>;
|
|
34
34
|
onGroupCheckboxClick?: SelectFieldGroupCheckboxClickEventHandler<DataItem>;
|
|
35
35
|
};
|
|
36
|
-
export type SelectFieldDataItem<DataItem extends
|
|
37
|
-
export type SelectFieldData<DataItem extends
|
|
36
|
+
export type SelectFieldDataItem<DataItem extends string | SelectFieldDataItemComplex<any>, ResolvedDataItem = DataItem extends string ? DataItem : SelectFieldDataItemComplex<DataItem>> = ResolvedDataItem;
|
|
37
|
+
export type SelectFieldData<DataItem extends string | SelectFieldDataItemComplex<any>> = SelectFieldDataItem<DataItem>[];
|
|
38
38
|
export type SelectFieldSize = 'small' | 'md' | 'large';
|
|
39
39
|
export type SelectFieldPlacement = 'bottom-left' | 'bottom-center' | 'top-left' | 'top-right';
|
|
40
40
|
export type SelectFieldInputType = 'text' | 'search';
|
|
41
41
|
export type ResetStyleStateType = string | number | boolean | null;
|
|
42
|
-
export type SelectedItem<DataItem extends
|
|
43
|
-
export type SelectFieldDataItemLiteral<DataItem extends
|
|
44
|
-
export type ValueType<DataItem extends
|
|
45
|
-
export type ValueSetter<DataItem extends
|
|
42
|
+
export type SelectedItem<DataItem extends string | SelectFieldDataItemComplex<any>> = DataItem | null;
|
|
43
|
+
export type SelectFieldDataItemLiteral<DataItem extends string | SelectFieldDataItemComplex<any>> = DataItem extends string ? DataItem : DataItem extends SelectFieldDataItemComplex<any> ? DataItem['value'] : never;
|
|
44
|
+
export type ValueType<DataItem extends string | SelectFieldDataItemComplex<any>> = DataItem | SelectFieldDataItemLiteral<DataItem> | DataItem[] | null;
|
|
45
|
+
export type ValueSetter<DataItem extends string | SelectFieldDataItemComplex<any>> = (value: ValueType<DataItem>) => void;
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { SelectFieldChangeEventHandler,
|
|
2
|
-
export interface UseSelectFieldDefaultProps<DataItem extends
|
|
1
|
+
import { SelectFieldChangeEventHandler, SelectFieldDataItemComplex, SelectFieldDataItemLiteral, SelectFieldMultiChangeEventHandler, SelectFieldMultiValueChangeEventHandler, SelectFieldPlacement, SelectFieldValueChangeEventHandler } from './types';
|
|
2
|
+
export interface UseSelectFieldDefaultProps<DataItem extends string | SelectFieldDataItemComplex<any>> {
|
|
3
3
|
multiple?: false;
|
|
4
4
|
value?: DataItem | SelectFieldDataItemLiteral<DataItem> | null;
|
|
5
5
|
onChange?: SelectFieldChangeEventHandler<DataItem>;
|
|
6
6
|
onValueChange?: SelectFieldValueChangeEventHandler<DataItem>;
|
|
7
7
|
}
|
|
8
|
-
export interface UseSelectFieldMultiProps<DataItem extends
|
|
8
|
+
export interface UseSelectFieldMultiProps<DataItem extends string | SelectFieldDataItemComplex<any>> {
|
|
9
9
|
multiple: true;
|
|
10
10
|
value?: DataItem[];
|
|
11
11
|
onChange?: SelectFieldMultiChangeEventHandler<DataItem>;
|
|
12
12
|
onValueChange?: SelectFieldMultiValueChangeEventHandler<DataItem>;
|
|
13
13
|
}
|
|
14
|
-
export type UseSelectFieldUnionProps<DataItem extends
|
|
15
|
-
export type UseSelectFieldProps<DataItem extends
|
|
14
|
+
export type UseSelectFieldUnionProps<DataItem extends string | SelectFieldDataItemComplex<any>> = UseSelectFieldDefaultProps<DataItem> | UseSelectFieldMultiProps<DataItem>;
|
|
15
|
+
export type UseSelectFieldProps<DataItem extends string | SelectFieldDataItemComplex<any>> = {
|
|
16
16
|
disabled?: boolean;
|
|
17
17
|
placement?: SelectFieldPlacement;
|
|
18
18
|
contentHeight?: number | string;
|
|
19
19
|
onClose?: () => void;
|
|
20
20
|
onSelectClick?: () => void;
|
|
21
21
|
} & UseSelectFieldUnionProps<DataItem>;
|
|
22
|
-
export type UseSelectFieldHook<DataItem extends
|
|
22
|
+
export type UseSelectFieldHook<DataItem extends string | SelectFieldDataItemComplex<any>, TriggerType extends HTMLElement = HTMLDivElement> = (params: UseSelectFieldProps<DataItem>) => {
|
|
23
23
|
x: number;
|
|
24
24
|
y: number;
|
|
25
25
|
width: number;
|
|
@@ -36,8 +36,8 @@ export type UseSelectFieldHook<DataItem extends SelectFieldDataItem<any>, Trigge
|
|
|
36
36
|
handleClose: () => void;
|
|
37
37
|
setValue: (value: DataItem | DataItem[] | null) => void;
|
|
38
38
|
};
|
|
39
|
-
export type UseSelectFieldReturnType<DataItem extends
|
|
40
|
-
export declare const useSelectField: <DataItem extends
|
|
39
|
+
export type UseSelectFieldReturnType<DataItem extends string | SelectFieldDataItemComplex<any>, TriggerType extends HTMLElement = HTMLDivElement> = ReturnType<UseSelectFieldHook<DataItem, TriggerType>>;
|
|
40
|
+
export declare const useSelectField: <DataItem extends string | SelectFieldDataItemComplex<any>, TriggerType extends HTMLElement = HTMLDivElement>({ value: initialValue, multiple, disabled, placement: initialPlacement, contentHeight, onClose, onSelectClick, onChange, onValueChange, }: UseSelectFieldProps<DataItem>) => {
|
|
41
41
|
x: number;
|
|
42
42
|
y: number;
|
|
43
43
|
width: number;
|
package/package.json
CHANGED