Fixes #6094 Description: Added logic inside SettingsObjectNewFieldStep2.tsx to prevent form submission Current Behaviours: <img width="947" alt="Screenshot 2024-07-03 at 1 45 31 PM" src="https://github.com/twentyhq/twenty/assets/95612797/bef54bc4-fc83-48f3-894a-34445ec64723"> --------- Co-authored-by: Marie Stoppa <marie.stoppa@essec.edu>
28 lines
1.2 KiB
TypeScript
28 lines
1.2 KiB
TypeScript
import { z } from 'zod';
|
|
|
|
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
|
import { fieldMetadataItemSchema } from '@/object-metadata/validation-schemas/fieldMetadataItemSchema';
|
|
import { metadataLabelSchema } from '@/object-metadata/validation-schemas/metadataLabelSchema';
|
|
import { camelCaseStringSchema } from '~/utils/validation-schemas/camelCaseStringSchema';
|
|
|
|
export const objectMetadataItemSchema = z.object({
|
|
__typename: z.literal('object').optional(),
|
|
createdAt: z.string().datetime(),
|
|
dataSourceId: z.string().uuid(),
|
|
description: z.string().trim().nullable().optional(),
|
|
fields: z.array(fieldMetadataItemSchema()),
|
|
icon: z.string().startsWith('Icon').trim(),
|
|
id: z.string().uuid(),
|
|
imageIdentifierFieldMetadataId: z.string().uuid().nullable(),
|
|
isActive: z.boolean(),
|
|
isCustom: z.boolean(),
|
|
isRemote: z.boolean(),
|
|
isSystem: z.boolean(),
|
|
labelIdentifierFieldMetadataId: z.string().uuid().nullable(),
|
|
labelPlural: metadataLabelSchema(),
|
|
labelSingular: metadataLabelSchema(),
|
|
namePlural: camelCaseStringSchema,
|
|
nameSingular: camelCaseStringSchema,
|
|
updatedAt: z.string().datetime(),
|
|
}) satisfies z.ZodType<ObjectMetadataItem>;
|