From da9ba0ef4b69ae8996b3a8a897f32c4b7ffd3f76 Mon Sep 17 00:00:00 2001 From: lethalSopaper <2bluisugartechea@gmail.com> Date: Wed, 29 Oct 2025 14:30:25 -0600 Subject: [PATCH 1/3] Color picker for foreign key fields added in side panel --- src/components/EditorCanvas/Table.jsx | 4 +- .../TablesTab/FieldDetails.jsx | 61 ++++++++++++++++++- .../EditorSidePanel/TablesTab/TableField.jsx | 3 + src/i18n/locales/en.js | 1 + src/i18n/locales/es.js | 1 + 5 files changed, 67 insertions(+), 3 deletions(-) diff --git a/src/components/EditorCanvas/Table.jsx b/src/components/EditorCanvas/Table.jsx index e084dc9ff..f7082ae9a 100644 --- a/src/components/EditorCanvas/Table.jsx +++ b/src/components/EditorCanvas/Table.jsx @@ -380,7 +380,7 @@ export default function Table(props) {
{e.name} @@ -610,7 +610,7 @@ export default function Table(props) { fieldData.foreignK ? "font-medium" : "" }`} style={{ - color: fieldData.foreignK ? settings.defaultFkColor : 'inherit' + color: fieldData.foreignK ? (fieldData.fkColor || settings.defaultFkColor) : 'inherit' }} > {fieldData.name} diff --git a/src/components/EditorSidePanel/TablesTab/FieldDetails.jsx b/src/components/EditorSidePanel/TablesTab/FieldDetails.jsx index f013555d8..6718f2a5c 100644 --- a/src/components/EditorSidePanel/TablesTab/FieldDetails.jsx +++ b/src/components/EditorSidePanel/TablesTab/FieldDetails.jsx @@ -6,13 +6,15 @@ import { TagInput, Checkbox, Toast, + Popover, } from "@douyinfe/semi-ui"; import { Action, ObjectType } from "../../../data/constants"; import { IconDeleteStroked } from "@douyinfe/semi-icons"; -import { useDiagram, useUndoRedo } from "../../../hooks"; +import { useDiagram, useUndoRedo, useSettings } from "../../../hooks"; import { useTranslation } from "react-i18next"; import { dbToTypes } from "../../../data/datatypes"; import { databases } from "../../../data/databases"; +import ColorPicker from "../../ColorPicker"; export default function FieldDetails({ data, tid, index }) { const { t } = useTranslation(); @@ -20,6 +22,7 @@ export default function FieldDetails({ data, tid, index }) { const { pushUndo } = useUndoRedo(); const { updateField, deleteField } = useDiagram(); const [editField, setEditField] = useState({}); + const { settings } = useSettings(); return (