Ability to filter by composite's subfields (#6832)
# This PR - Fix #6425 See https://github.com/twentyhq/twenty/issues/7188 because there's some more work to do. --------- Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
This commit is contained in:
committed by
GitHub
parent
af4f3cebb0
commit
4156d7821c
@ -30,7 +30,7 @@ import { SettingsDataModelFieldDescriptionForm } from '@/settings/data-model/fie
|
||||
import { SettingsDataModelFieldIconLabelForm } from '@/settings/data-model/fields/forms/components/SettingsDataModelFieldIconLabelForm';
|
||||
import { SettingsDataModelFieldSettingsFormCard } from '@/settings/data-model/fields/forms/components/SettingsDataModelFieldSettingsFormCard';
|
||||
import { settingsFieldFormSchema } from '@/settings/data-model/fields/forms/validation-schemas/settingsFieldFormSchema';
|
||||
import { SettingsSupportedFieldType } from '@/settings/data-model/types/SettingsSupportedFieldType';
|
||||
import { SettingsFieldType } from '@/settings/data-model/types/SettingsFieldType';
|
||||
import { getSettingsPagePath } from '@/settings/utils/getSettingsPagePath';
|
||||
import { AppPath } from '@/types/AppPath';
|
||||
import { SettingsPath } from '@/types/SettingsPath';
|
||||
@ -42,9 +42,11 @@ import { Section } from '@/ui/layout/section/components/Section';
|
||||
import { FieldMetadataType } from '~/generated-metadata/graphql';
|
||||
import { isDefined } from '~/utils/isDefined';
|
||||
|
||||
//TODO: fix this type
|
||||
type SettingsDataModelFieldEditFormValues = z.infer<
|
||||
ReturnType<typeof settingsFieldFormSchema>
|
||||
>;
|
||||
> &
|
||||
any;
|
||||
|
||||
const canPersistFieldMetadataItemUpdate = (
|
||||
fieldMetadataItem: FieldMetadataItem,
|
||||
@ -94,7 +96,7 @@ export const SettingsObjectFieldEdit = () => {
|
||||
resolver: zodResolver(settingsFieldFormSchema()),
|
||||
values: {
|
||||
icon: fieldMetadataItem?.icon ?? 'Icon',
|
||||
type: fieldMetadataItem?.type as SettingsSupportedFieldType,
|
||||
type: fieldMetadataItem?.type as SettingsFieldType,
|
||||
label: fieldMetadataItem?.label ?? '',
|
||||
description: fieldMetadataItem?.description,
|
||||
},
|
||||
|
||||
@ -13,7 +13,7 @@ import { SettingsDataModelFieldIconLabelForm } from '@/settings/data-model/field
|
||||
import { SettingsDataModelFieldSettingsFormCard } from '@/settings/data-model/fields/forms/components/SettingsDataModelFieldSettingsFormCard';
|
||||
import { SettingsDataModelFieldTypeSelect } from '@/settings/data-model/fields/forms/components/SettingsDataModelFieldTypeSelect';
|
||||
import { settingsFieldFormSchema } from '@/settings/data-model/fields/forms/validation-schemas/settingsFieldFormSchema';
|
||||
import { SettingsSupportedFieldType } from '@/settings/data-model/types/SettingsSupportedFieldType';
|
||||
import { SettingsFieldType } from '@/settings/data-model/types/SettingsFieldType';
|
||||
import { AppPath } from '@/types/AppPath';
|
||||
import { SnackBarVariant } from '@/ui/feedback/snack-bar-manager/components/SnackBar';
|
||||
import { useSnackBar } from '@/ui/feedback/snack-bar-manager/hooks/useSnackBar';
|
||||
@ -34,9 +34,11 @@ import { FieldMetadataType } from '~/generated-metadata/graphql';
|
||||
import { isDefined } from '~/utils/isDefined';
|
||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||
|
||||
// TODO: fix this type
|
||||
type SettingsDataModelNewFieldFormValues = z.infer<
|
||||
ReturnType<typeof settingsFieldFormSchema>
|
||||
>;
|
||||
> &
|
||||
any;
|
||||
|
||||
const StyledH1Title = styled(H1Title)`
|
||||
margin-bottom: 0;
|
||||
@ -46,7 +48,7 @@ export const SettingsObjectNewFieldStep2 = () => {
|
||||
const navigate = useNavigate();
|
||||
const { objectSlug = '' } = useParams();
|
||||
const [searchParams] = useSearchParams();
|
||||
const fieldType = searchParams.get('fieldType') as SettingsSupportedFieldType;
|
||||
const fieldType = searchParams.get('fieldType') as SettingsFieldType;
|
||||
const { enqueueSnackBar } = useSnackBar();
|
||||
|
||||
const [isConfigureStep, setIsConfigureStep] = useState(false);
|
||||
@ -159,7 +161,7 @@ export const SettingsObjectNewFieldStep2 = () => {
|
||||
}
|
||||
};
|
||||
|
||||
const excludedFieldTypes: SettingsSupportedFieldType[] = (
|
||||
const excludedFieldTypes: SettingsFieldType[] = (
|
||||
[
|
||||
FieldMetadataType.Link,
|
||||
FieldMetadataType.Numeric,
|
||||
@ -226,7 +228,7 @@ export const SettingsObjectNewFieldStep2 = () => {
|
||||
<SettingsDataModelFieldTypeSelect
|
||||
excludedFieldTypes={excludedFieldTypes}
|
||||
fieldMetadataItem={{
|
||||
type: fieldType,
|
||||
type: fieldType as FieldMetadataType,
|
||||
}}
|
||||
onFieldTypeSelect={() => setIsConfigureStep(true)}
|
||||
/>
|
||||
|
||||
@ -1,8 +1,11 @@
|
||||
import { useGetRelationMetadata } from '@/object-metadata/hooks/useGetRelationMetadata';
|
||||
import { FieldMetadataItem } from '@/object-metadata/types/FieldMetadataItem';
|
||||
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
||||
import { FieldType } from '@/settings/data-model/types/FieldType';
|
||||
import { SettingsFieldType } from '@/settings/data-model/types/SettingsFieldType';
|
||||
import { getFieldIdentifierType } from '@/settings/data-model/utils/getFieldIdentifierType';
|
||||
import { getSettingsFieldTypeConfig } from '@/settings/data-model/utils/getSettingsFieldTypeConfig';
|
||||
import { isFieldTypeSupportedInSettings } from '@/settings/data-model/utils/isFieldTypeSupportedInSettings';
|
||||
import { SettingsObjectDetailTableItem } from '~/pages/settings/data-model/types/SettingsObjectDetailTableItem';
|
||||
import { getSettingsObjectFieldType } from '~/pages/settings/data-model/utils/getSettingsObjectFieldType';
|
||||
|
||||
@ -29,13 +32,17 @@ export const useMapFieldMetadataItemToSettingsObjectDetailTableItem = (
|
||||
objectMetadataItem,
|
||||
);
|
||||
|
||||
const fieldMetadataType = fieldMetadataItem.type as FieldType;
|
||||
|
||||
return {
|
||||
fieldMetadataItem,
|
||||
fieldType: fieldType ?? '',
|
||||
dataType:
|
||||
relationObjectMetadataItem?.labelPlural ??
|
||||
getSettingsFieldTypeConfig(fieldMetadataItem.type)?.label ??
|
||||
'',
|
||||
(relationObjectMetadataItem?.labelPlural ??
|
||||
isFieldTypeSupportedInSettings(fieldMetadataType))
|
||||
? getSettingsFieldTypeConfig(fieldMetadataType as SettingsFieldType)
|
||||
?.label
|
||||
: '',
|
||||
label: fieldMetadataItem.label,
|
||||
identifierType: identifierType,
|
||||
objectMetadataItem,
|
||||
|
||||
Reference in New Issue
Block a user