From 6c669d4c14446583e1ae37f66a5509b4c8c1861a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sedat=20=C3=96ZT=C3=9CRK?= <76204082+iamsedatozturk@users.noreply.github.com> Date: Fri, 2 Oct 2026 10:08:46 +0300 Subject: [PATCH] ListFormEdit database AddField selectBox hale getirildi. --- ui/src/views/admin/listForm/edit/FormEdit.tsx | 2 +- .../admin/listForm/edit/FormTabDatabase.tsx | 4 +- .../JsonRowOpDialogDatabase.tsx | 42 +++++++++++++++---- 3 files changed, 37 insertions(+), 11 deletions(-) diff --git a/ui/src/views/admin/listForm/edit/FormEdit.tsx b/ui/src/views/admin/listForm/edit/FormEdit.tsx index e6c9dc91..6e3a01eb 100644 --- a/ui/src/views/admin/listForm/edit/FormEdit.tsx +++ b/ui/src/views/admin/listForm/edit/FormEdit.tsx @@ -384,7 +384,7 @@ const FormEdit = () => { /> - + diff --git a/ui/src/views/admin/listForm/edit/FormTabDatabase.tsx b/ui/src/views/admin/listForm/edit/FormTabDatabase.tsx index 1157bab3..f9180ccc 100644 --- a/ui/src/views/admin/listForm/edit/FormTabDatabase.tsx +++ b/ui/src/views/admin/listForm/edit/FormTabDatabase.tsx @@ -3,6 +3,7 @@ import { Tabs } from '@/components/ui' import TabContent from '@/components/ui/Tabs/TabContent' import TabList from '@/components/ui/Tabs/TabList' import TabNav from '@/components/ui/Tabs/TabNav' +import type { DatabaseColumnDto } from '@/proxy/sql-query-manager/models' import { useLocalization } from '@/utils/hooks/useLocalization' import { useState } from 'react' import { FormEditProps } from './FormEdit' @@ -14,7 +15,7 @@ import FormTabDatabaseUpdate from './FormTabDatabaseUpdate' import JsonRowOpDialogDatabase from './json-row-operations/JsonRowOpDialogDatabase' import { JsonRowDialogData } from './json-row-operations/types' -function FormTabDatabase(props: FormEditProps) { +function FormTabDatabase(props: FormEditProps & { selectCommandColumns: DatabaseColumnDto[] }) { const [isJsonRowOpDialogOpen, setIsJsonRowOpDialogOpen] = useState(false) const [jsonRowOpModalData, setJsonRowOpModalData] = useState() const { translate } = useLocalization() @@ -76,6 +77,7 @@ function FormTabDatabase(props: FormEditProps) { setIsOpen={setIsJsonRowOpDialogOpen} data={jsonRowOpModalData} setData={setJsonRowOpModalData} + selectCommandColumns={props.selectCommandColumns} /> ) diff --git a/ui/src/views/admin/listForm/edit/json-row-operations/JsonRowOpDialogDatabase.tsx b/ui/src/views/admin/listForm/edit/json-row-operations/JsonRowOpDialogDatabase.tsx index 6d4a608f..32f64728 100644 --- a/ui/src/views/admin/listForm/edit/json-row-operations/JsonRowOpDialogDatabase.tsx +++ b/ui/src/views/admin/listForm/edit/json-row-operations/JsonRowOpDialogDatabase.tsx @@ -10,12 +10,14 @@ import { } from '@/components/ui' import { ListFormJsonRowDto } from '@/proxy/admin/list-form/models' import { ListFormEditTabs } from '@/proxy/admin/list-form/options' +import type { DatabaseColumnDto } from '@/proxy/sql-query-manager/models' import { useStoreActions } from '@/store' import { useLocalization } from '@/utils/hooks/useLocalization' import { Field, FieldProps, Form, Formik } from 'formik' import { Dispatch, SetStateAction } from 'react' import { object, string } from 'yup' -import { customValueTypeOptions, dbSourceTypeOptions } from '../options' +import CreatableSelect from 'react-select/creatable' +import { customValueTypeOptions, dbSourceTypeOptions, sqlDataTypeToDbType } from '../options' import { JsonRowDialogData } from './types' import { deleteListFormJsonRow, @@ -38,11 +40,13 @@ function JsonRowOpDialogDatabase({ setIsOpen, data, setData, + selectCommandColumns, }: { isOpen: boolean setIsOpen: Dispatch> data: JsonRowDialogData | undefined setData: Dispatch> + selectCommandColumns: DatabaseColumnDto[] }) { const { setJsonValue } = useStoreActions((a) => a.admin.lists) const { translate } = useLocalization() @@ -152,14 +156,34 @@ function JsonRowOpDialogDatabase({ invalid={errors.fieldName && touched.fieldName} errorMessage={errors.fieldName} > - + {/* Sorgu (Query) tipli Select Command'in kolonlari katalogdan okunamaz ve + tabloda olmayan bir parametre adi da yazilabilmeli; liste bu yuzden kisitlamaz. */} + + {({ field, form }: FieldProps) => ( +