Rename Money/Url to Currency/Link and remove snake_case from composite fields (#2536)

* Rename Money/Url to Currency/Link

* regenerate front types

* renaming money/url field types

* fix double text

* fix tests

* fix server tests

* fix generate-target-column-map

* fix currency convert

* fix: tests

---------

Co-authored-by: Jérémy Magrin <jeremy.magrin@gmail.com>
This commit is contained in:
Weiko
2023-11-17 10:31:17 +01:00
committed by GitHub
parent 31e439681c
commit bc579d64a6
56 changed files with 579 additions and 512 deletions

View File

@ -6,7 +6,14 @@ import { FieldMetadataItem } from '../types/FieldMetadataItem';
export const useMapFieldMetadataToGraphQLQuery = () => {
const { objectMetadataItems } = useFindManyObjectMetadataItems();
const mapFieldMetadataToGraphQLQuery = (field: FieldMetadataItem): any => {
const mapFieldMetadataToGraphQLQuery = (
field: FieldMetadataItem,
maxDepthForRelations: number = 1,
): any => {
if (maxDepthForRelations <= 0) {
return '';
}
// TODO: parse
const fieldType = field.type as FieldType;
@ -22,11 +29,6 @@ export const useMapFieldMetadataToGraphQLQuery = () => {
] as FieldType[]
).includes(fieldType);
const fieldIsURL = fieldType === 'URL' || fieldType === 'URL_V2';
const fieldIsMoneyAmount =
fieldType === 'MONEY' || fieldType === 'MONEY_AMOUNT_V2';
if (fieldIsSimpleValue) {
return field.name;
} else if (
@ -44,7 +46,9 @@ export const useMapFieldMetadataToGraphQLQuery = () => {
id
${(relationMetadataItem?.fields ?? [])
.filter((field) => field.type !== 'RELATION')
.map((field) => field.name)
.map((field) =>
mapFieldMetadataToGraphQLQuery(field, maxDepthForRelations - 1),
)
.join('\n')}
}`;
} else if (
@ -64,25 +68,27 @@ export const useMapFieldMetadataToGraphQLQuery = () => {
id
${(relationMetadataItem?.fields ?? [])
.filter((field) => field.type !== 'RELATION')
.map((field) => field.name)
.map((field) =>
mapFieldMetadataToGraphQLQuery(field, maxDepthForRelations - 1),
)
.join('\n')}
}
}
}`;
} else if (fieldIsURL) {
} else if (fieldType === 'LINK') {
return `
${field.name}
{
text
link
label
url
}
`;
} else if (fieldIsMoneyAmount) {
} else if (fieldType === 'CURRENCY') {
return `
${field.name}
{
amount
currency
amountMicros
currencyCode
}
`;
}

View File

@ -2,12 +2,12 @@ import { FieldType } from '@/ui/object/field/types/FieldType';
import { FieldMetadataType } from '~/generated-metadata/graphql';
export const parseFieldType = (fieldType: FieldMetadataType): FieldType => {
if (fieldType === FieldMetadataType.Url) {
return 'URL_V2';
if (fieldType === FieldMetadataType.Link) {
return 'LINK';
}
if (fieldType === FieldMetadataType.Money) {
return 'MONEY_AMOUNT_V2';
if (fieldType === FieldMetadataType.Currency) {
return 'CURRENCY';
}
return fieldType as FieldType;