add: size prop
This commit is contained in:
@@ -7,6 +7,7 @@ import { getNestedValue } from "../../utils/getNestedValue";
|
||||
type FormEnterLocationsProps = {
|
||||
title: string;
|
||||
api: string;
|
||||
size?: "small" | "medium" | "large";
|
||||
error?: boolean;
|
||||
errorMessage?: any;
|
||||
multiple?: boolean;
|
||||
@@ -31,6 +32,7 @@ type FormEnterLocationsProps = {
|
||||
export const FormApiBasedAutoComplete = ({
|
||||
title,
|
||||
api,
|
||||
size,
|
||||
error,
|
||||
errorMessage,
|
||||
onChange,
|
||||
@@ -94,7 +96,7 @@ export const FormApiBasedAutoComplete = ({
|
||||
if (filterAddress && filterValue) {
|
||||
data = apiData.results?.filter(
|
||||
(item: any) =>
|
||||
!filterValue.includes(getNestedValue(item, filterAddress))
|
||||
!filterValue.includes(getNestedValue(item, filterAddress)),
|
||||
);
|
||||
} else {
|
||||
data = apiData.results;
|
||||
@@ -119,10 +121,10 @@ export const FormApiBasedAutoComplete = ({
|
||||
valueField === "page"
|
||||
? getFaPermissions(option[valueField])
|
||||
: typeof valueField === "string"
|
||||
? option[valueField]
|
||||
: getNestedValue(option, valueField),
|
||||
"v1"
|
||||
)
|
||||
? option[valueField]
|
||||
: getNestedValue(option, valueField),
|
||||
"v1",
|
||||
),
|
||||
)
|
||||
.replace(
|
||||
/v2/g,
|
||||
@@ -132,8 +134,8 @@ export const FormApiBasedAutoComplete = ({
|
||||
? option[valueField2]
|
||||
: getNestedValue(option, valueField2)
|
||||
: "",
|
||||
"v2"
|
||||
)
|
||||
"v2",
|
||||
),
|
||||
)
|
||||
.replace(
|
||||
/v3/g,
|
||||
@@ -143,15 +145,15 @@ export const FormApiBasedAutoComplete = ({
|
||||
? option[valueField3]
|
||||
: getNestedValue(option, valueField3)
|
||||
: "",
|
||||
"v3"
|
||||
)
|
||||
"v3",
|
||||
),
|
||||
)
|
||||
: `${
|
||||
valueField === "page"
|
||||
? getFaPermissions(option[valueField])
|
||||
: typeof valueField === "string"
|
||||
? option[valueField]
|
||||
: getNestedValue(option, valueField)
|
||||
? option[valueField]
|
||||
: getNestedValue(option, valueField)
|
||||
} ${
|
||||
valueField2
|
||||
? " - " +
|
||||
@@ -208,7 +210,7 @@ export const FormApiBasedAutoComplete = ({
|
||||
setData(finalData);
|
||||
|
||||
const actualDataItems = finalData.filter(
|
||||
(item: any) => !item.isGroupHeader && !item.disabled
|
||||
(item: any) => !item.isGroupHeader && !item.disabled,
|
||||
);
|
||||
|
||||
if (defaultKey !== undefined && defaultKey !== null) {
|
||||
@@ -218,10 +220,10 @@ export const FormApiBasedAutoComplete = ({
|
||||
setSelectedKeys([]);
|
||||
} else {
|
||||
const defaultIds = defaultKey.map((item: any) =>
|
||||
typeof item === "object" ? item[keyField] : item
|
||||
typeof item === "object" ? item[keyField] : item,
|
||||
);
|
||||
const defaultItems = actualDataItems.filter((item: any) =>
|
||||
defaultIds.includes(item.key)
|
||||
defaultIds.includes(item.key),
|
||||
);
|
||||
setSelectedKeys(defaultItems.map((item: any) => item.key));
|
||||
if (onChange) {
|
||||
@@ -238,11 +240,11 @@ export const FormApiBasedAutoComplete = ({
|
||||
}
|
||||
: {}),
|
||||
};
|
||||
})
|
||||
}),
|
||||
);
|
||||
if (onChangeValue) {
|
||||
onChangeValue(
|
||||
defaultItems.map((item: any) => item.value.trim())
|
||||
defaultItems.map((item: any) => item.value.trim()),
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -258,7 +260,7 @@ export const FormApiBasedAutoComplete = ({
|
||||
? defaultKey[keyField]
|
||||
: defaultKey;
|
||||
const defaultItem = actualDataItems.find(
|
||||
(item: any) => item.key === keyToFind
|
||||
(item: any) => item.key === keyToFind,
|
||||
);
|
||||
if (defaultItem) {
|
||||
setSelectedKeys([keyToFind]);
|
||||
@@ -296,18 +298,18 @@ export const FormApiBasedAutoComplete = ({
|
||||
|
||||
const groupItemKeys = groupItems.map((item: any) => item.key);
|
||||
const allGroupItemsSelected = groupItemKeys.every((key) =>
|
||||
selectedKeys.includes(key)
|
||||
selectedKeys.includes(key),
|
||||
);
|
||||
|
||||
let newSelectedKeys: (string | number)[];
|
||||
|
||||
if (allGroupItemsSelected) {
|
||||
newSelectedKeys = selectedKeys.filter(
|
||||
(key) => !groupItemKeys.includes(key)
|
||||
(key) => !groupItemKeys.includes(key),
|
||||
);
|
||||
} else {
|
||||
const newKeys = groupItemKeys.filter(
|
||||
(key) => !selectedKeys.includes(key)
|
||||
(key) => !selectedKeys.includes(key),
|
||||
);
|
||||
newSelectedKeys = [...selectedKeys, ...newKeys];
|
||||
}
|
||||
@@ -320,7 +322,7 @@ export const FormApiBasedAutoComplete = ({
|
||||
(item: any) =>
|
||||
newSelectedKeys.includes(item.key) &&
|
||||
!item.isGroupHeader &&
|
||||
!item.disabled
|
||||
!item.disabled,
|
||||
);
|
||||
|
||||
if (secondaryKey) {
|
||||
@@ -329,7 +331,7 @@ export const FormApiBasedAutoComplete = ({
|
||||
key1: item.key,
|
||||
key2: item.secondaryKey,
|
||||
...(tertiaryKey ? { key3: item.tertiaryKey } : {}),
|
||||
}))
|
||||
})),
|
||||
);
|
||||
if (onChangeValue) {
|
||||
onChangeValue(selectedItems.map((item: any) => item.value.trim()));
|
||||
@@ -344,6 +346,7 @@ export const FormApiBasedAutoComplete = ({
|
||||
<AutoComplete
|
||||
multiselect={multiple}
|
||||
selectField={selectField}
|
||||
size={size}
|
||||
data={data}
|
||||
selectedKeys={selectedKeys}
|
||||
onChange={(newSelectedKeys) => {
|
||||
@@ -357,7 +360,7 @@ export const FormApiBasedAutoComplete = ({
|
||||
(item: any) =>
|
||||
newSelectedKeys.includes(item.key) &&
|
||||
!item.isGroupHeader &&
|
||||
!item.disabled
|
||||
!item.disabled,
|
||||
);
|
||||
|
||||
onChange(
|
||||
@@ -365,16 +368,16 @@ export const FormApiBasedAutoComplete = ({
|
||||
key1: item.key,
|
||||
key2: item.secondaryKey,
|
||||
...(tertiaryKey ? { key3: item.tertiaryKey } : {}),
|
||||
}))
|
||||
})),
|
||||
);
|
||||
if (onChangeValue) {
|
||||
onChangeValue(
|
||||
selectedItems.map((item: any) => item.value.trim())
|
||||
selectedItems.map((item: any) => item.value.trim()),
|
||||
);
|
||||
}
|
||||
} else {
|
||||
const validKeys = newSelectedKeys.filter(
|
||||
(key) => !String(key).startsWith("__group__")
|
||||
(key) => !String(key).startsWith("__group__"),
|
||||
);
|
||||
onChange(validKeys);
|
||||
}
|
||||
@@ -384,7 +387,7 @@ export const FormApiBasedAutoComplete = ({
|
||||
(item: any) =>
|
||||
item.key === newSelectedKeys[0] &&
|
||||
!item.isGroupHeader &&
|
||||
!item.disabled
|
||||
!item.disabled,
|
||||
);
|
||||
if (onChangeValue) {
|
||||
onChangeValue({
|
||||
|
||||
Reference in New Issue
Block a user