Add custom types to the selection

This commit is contained in:
1ilit 2023-09-19 15:51:34 +03:00
parent 796e302eeb
commit 9a1c086870
3 changed files with 35 additions and 13 deletions

View File

@ -39,6 +39,7 @@ import {
SettingsContext, SettingsContext,
TabContext, TabContext,
TableContext, TableContext,
TypeContext,
UndoRedoContext, UndoRedoContext,
} from "../pages/editor"; } from "../pages/editor";
import { getSize, hasCheck, hasPrecision, isSized } from "../utils"; import { getSize, hasCheck, hasPrecision, isSized } from "../utils";
@ -52,6 +53,7 @@ export default function Table(props) {
useContext(TableContext); useContext(TableContext);
const { tab, setTab } = useContext(TabContext); const { tab, setTab } = useContext(TabContext);
const { settings } = useContext(SettingsContext); const { settings } = useContext(SettingsContext);
const { types } = useContext(TypeContext);
const { setUndoStack, setRedoStack } = useContext(UndoRedoContext); const { setUndoStack, setRedoStack } = useContext(UndoRedoContext);
const { selectedElement, setSelectedElement } = useContext(SelectContext); const { selectedElement, setSelectedElement } = useContext(SelectContext);
@ -347,12 +349,16 @@ export default function Table(props) {
<Col span={8}> <Col span={8}>
<Select <Select
className="w-full" className="w-full"
optionList={sqlDataTypes.map((value) => { optionList={[
return { ...sqlDataTypes.map((value) => ({
label: value, label: value,
value: value, value: value,
}; })),
})} ...types.map((type) => ({
label: type.name.toUpperCase(),
value: type.name.toUpperCase(),
})),
]}
filter filter
value={f.type} value={f.type}
validateStatus={f.type === "" ? "error" : "default"} validateStatus={f.type === "" ? "error" : "default"}

View File

@ -35,7 +35,12 @@ import {
IllustrationNoContent, IllustrationNoContent,
IllustrationNoContentDark, IllustrationNoContentDark,
} from "@douyinfe/semi-illustrations"; } from "@douyinfe/semi-illustrations";
import { SelectContext, TableContext, UndoRedoContext } from "../pages/editor"; import {
SelectContext,
TableContext,
TypeContext,
UndoRedoContext,
} from "../pages/editor";
import { getSize, hasCheck, hasPrecision, isSized } from "../utils"; import { getSize, hasCheck, hasPrecision, isSized } from "../utils";
export default function TableOverview(props) { export default function TableOverview(props) {
@ -49,6 +54,7 @@ export default function TableOverview(props) {
updateTable, updateTable,
setRelationships, setRelationships,
} = useContext(TableContext); } = useContext(TableContext);
const { types } = useContext(TypeContext);
const { setUndoStack, setRedoStack } = useContext(UndoRedoContext); const { setUndoStack, setRedoStack } = useContext(UndoRedoContext);
const { selectedElement, setSelectedElement } = useContext(SelectContext); const { selectedElement, setSelectedElement } = useContext(SelectContext);
const [editField, setEditField] = useState({}); const [editField, setEditField] = useState({});
@ -193,12 +199,16 @@ export default function TableOverview(props) {
<Col span={8}> <Col span={8}>
<Select <Select
className="w-full" className="w-full"
optionList={sqlDataTypes.map((value) => { optionList={[
return { ...sqlDataTypes.map((value) => ({
label: value, label: value,
value: value, value: value,
}; })),
})} ...types.map((type) => ({
label: type.name.toUpperCase(),
value: type.name.toUpperCase(),
})),
]}
filter filter
value={f.type} value={f.type}
validateStatus={f.type === "" ? "error" : "default"} validateStatus={f.type === "" ? "error" : "default"}

View File

@ -180,12 +180,18 @@ export default function TableOverview(props) {
<Col span={11}> <Col span={11}>
<Select <Select
className="w-full" className="w-full"
optionList={sqlDataTypes.map((value) => { optionList={[
return { ...sqlDataTypes.map((value) => ({
label: value, label: value,
value: value, value: value,
}; })),
})} ...types
.filter((type) => type.name !== t.name)
.map((type) => ({
label: type.name.toUpperCase(),
value: type.name.toUpperCase(),
})),
]}
filter filter
value={f.type} value={f.type}
validateStatus={f.type === "" ? "error" : "default"} validateStatus={f.type === "" ? "error" : "default"}