1
+ import { BasetoolRecord } from "../types" ;
1
2
import { Button } from "@chakra-ui/button" ;
2
3
import { Column } from "@/features/fields/types" ;
3
4
import { PencilAltIcon } from "@heroicons/react/outline" ;
@@ -16,16 +17,15 @@ import { useDataSourceContext } from "@/hooks";
16
17
import { useForm } from "react-hook-form" ;
17
18
import { useRouter } from "next/router" ;
18
19
import BackButton from "./BackButton" ;
19
- import Joi , { ObjectSchema } from "joi" ;
20
+ import Joi , { ObjectSchema , SchemaLike } from "joi" ;
20
21
import LoadingOverlay from "@/components/LoadingOverlay" ;
21
22
import PageWrapper from "@/components/PageWrapper" ;
22
23
import React , { memo , useEffect , useMemo , useState } from "react" ;
23
24
import isUndefined from "lodash/isUndefined" ;
24
25
import logger from "@/lib/logger" ;
25
- import type { Record } from "@/features/records/types" ;
26
26
27
- const makeSchema = async ( record : Record , columns : Column [ ] ) => {
28
- const schema : { [ columnName : string ] : any } = { } ;
27
+ const makeSchema = async ( record : BasetoolRecord , columns : Column [ ] ) => {
28
+ const schema : { [ columnName : string ] : SchemaLike } = { } ;
29
29
30
30
// eslint-disable-next-line no-restricted-syntax
31
31
for ( const column of columns ) {
@@ -57,7 +57,7 @@ const Form = ({
57
57
columns,
58
58
formForCreate = false ,
59
59
} : {
60
- record : Record ;
60
+ record : BasetoolRecord ;
61
61
columns : Column [ ] ;
62
62
formForCreate ?: boolean ;
63
63
} ) => {
@@ -89,14 +89,14 @@ const Form = ({
89
89
. map ( ( [ columnName , value ] ) => {
90
90
// Add foreignId for association columns
91
91
if ( associationColumnNames . includes ( columnName ) ) {
92
- return [ columnName , value . foreignId ] ;
92
+ return [ columnName , ( value as any ) ? .foreignId ] ;
93
93
}
94
94
95
95
return [ columnName , value ] ;
96
96
} )
97
97
. filter ( ( [ columnName ] ) => {
98
98
// Remove invisible columns
99
- if ( visibleColumnNames . includes ( columnName ) ) {
99
+ if ( visibleColumnNames . includes ( columnName ?. toString ( ) || "" ) ) {
100
100
return true ;
101
101
}
102
102
@@ -251,7 +251,7 @@ const Form = ({
251
251
if ( ! formData ) return null ;
252
252
253
253
const field = makeField ( {
254
- record : formData as Record ,
254
+ record : formData as BasetoolRecord ,
255
255
column,
256
256
tableName : tableName ,
257
257
} ) ;
0 commit comments