Move capitalize into twenty-shared (#9414)
capitalize had been moved into twenty-shared. Let's remove the duplicates in server and front !
This commit is contained in:
@ -7,10 +7,7 @@
|
|||||||
"allowSyntheticDefaultImports": true,
|
"allowSyntheticDefaultImports": true,
|
||||||
"strict": true,
|
"strict": true,
|
||||||
"types": ["vite/client"],
|
"types": ["vite/client"],
|
||||||
"baseUrl": ".",
|
"baseUrl": "."
|
||||||
"paths": {
|
|
||||||
"twenty-shared": ["../../packages/twenty-shared/dist"]
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"files": [],
|
"files": [],
|
||||||
"include": [],
|
"include": [],
|
||||||
|
|||||||
@ -1,9 +1,8 @@
|
|||||||
import { JestConfigWithTsJest, pathsToModuleNameMapper } from 'ts-jest';
|
import { JestConfigWithTsJest, pathsToModuleNameMapper } from 'ts-jest';
|
||||||
|
|
||||||
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||||
const tsConfig = require('./tsconfig.json');
|
const tsConfig = require('./tsconfig.spec.json');
|
||||||
process.env.TZ = 'GMT';
|
process.env.TZ = 'GMT';
|
||||||
|
|
||||||
const jestConfig: JestConfigWithTsJest = {
|
const jestConfig: JestConfigWithTsJest = {
|
||||||
// to enable logs, comment out the following line
|
// to enable logs, comment out the following line
|
||||||
silent: true,
|
silent: true,
|
||||||
|
|||||||
@ -11,8 +11,8 @@ import { useAllActiveWorkflowVersions } from '@/workflow/hooks/useAllActiveWorkf
|
|||||||
import { useRunWorkflowVersion } from '@/workflow/hooks/useRunWorkflowVersion';
|
import { useRunWorkflowVersion } from '@/workflow/hooks/useRunWorkflowVersion';
|
||||||
|
|
||||||
import { useRecoilValue } from 'recoil';
|
import { useRecoilValue } from 'recoil';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { IconSettingsAutomation, isDefined } from 'twenty-ui';
|
import { IconSettingsAutomation, isDefined } from 'twenty-ui';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useWorkflowRunRecordActions = ({
|
export const useWorkflowRunRecordActions = ({
|
||||||
objectMetadataItem,
|
objectMetadataItem,
|
||||||
|
|||||||
@ -7,9 +7,9 @@ import { useAllActiveWorkflowVersions } from '@/workflow/hooks/useAllActiveWorkf
|
|||||||
import { useRunWorkflowVersion } from '@/workflow/hooks/useRunWorkflowVersion';
|
import { useRunWorkflowVersion } from '@/workflow/hooks/useRunWorkflowVersion';
|
||||||
import { useIsFeatureEnabled } from '@/workspace/hooks/useIsFeatureEnabled';
|
import { useIsFeatureEnabled } from '@/workspace/hooks/useIsFeatureEnabled';
|
||||||
|
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { IconSettingsAutomation, isDefined } from 'twenty-ui';
|
import { IconSettingsAutomation, isDefined } from 'twenty-ui';
|
||||||
import { FeatureFlagKey } from '~/generated/graphql';
|
import { FeatureFlagKey } from '~/generated/graphql';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useWorkflowRunActions = () => {
|
export const useWorkflowRunActions = () => {
|
||||||
const isWorkflowEnabled = useIsFeatureEnabled(
|
const isWorkflowEnabled = useIsFeatureEnabled(
|
||||||
|
|||||||
@ -16,7 +16,7 @@ import { NoteTarget } from '@/activities/types/NoteTarget';
|
|||||||
import { TaskTarget } from '@/activities/types/TaskTarget';
|
import { TaskTarget } from '@/activities/types/TaskTarget';
|
||||||
import { getJoinObjectNameSingular } from '@/activities/utils/getJoinObjectNameSingular';
|
import { getJoinObjectNameSingular } from '@/activities/utils/getJoinObjectNameSingular';
|
||||||
import { useRecoilCallback } from 'recoil';
|
import { useRecoilCallback } from 'recoil';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const useCreateActivityInDB = ({
|
export const useCreateActivityInDB = ({
|
||||||
activityObjectNameSingular,
|
activityObjectNameSingular,
|
||||||
|
|||||||
@ -2,8 +2,8 @@ import { ApolloCache, StoreObject } from '@apollo/client';
|
|||||||
|
|
||||||
import { RecordGqlRefEdge } from '@/object-record/cache/types/RecordGqlRefEdge';
|
import { RecordGqlRefEdge } from '@/object-record/cache/types/RecordGqlRefEdge';
|
||||||
import { isObjectRecordConnectionWithRefs } from '@/object-record/cache/utils/isObjectRecordConnectionWithRefs';
|
import { isObjectRecordConnectionWithRefs } from '@/object-record/cache/utils/isObjectRecordConnectionWithRefs';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const triggerAttachRelationOptimisticEffect = ({
|
export const triggerAttachRelationOptimisticEffect = ({
|
||||||
cache,
|
cache,
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { ApolloCache, StoreObject } from '@apollo/client';
|
import { ApolloCache, StoreObject } from '@apollo/client';
|
||||||
|
|
||||||
import { isObjectRecordConnectionWithRefs } from '@/object-record/cache/utils/isObjectRecordConnectionWithRefs';
|
import { isObjectRecordConnectionWithRefs } from '@/object-record/cache/utils/isObjectRecordConnectionWithRefs';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const triggerDetachRelationOptimisticEffect = ({
|
export const triggerDetachRelationOptimisticEffect = ({
|
||||||
cache,
|
cache,
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import styled from '@emotion/styled';
|
import styled from '@emotion/styled';
|
||||||
|
|
||||||
import { SubscriptionCardPrice } from '@/billing/components/SubscriptionCardPrice';
|
import { SubscriptionCardPrice } from '@/billing/components/SubscriptionCardPrice';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
type SubscriptionCardProps = {
|
type SubscriptionCardProps = {
|
||||||
type?: string;
|
type?: string;
|
||||||
|
|||||||
@ -3,7 +3,7 @@ import { useFindManyRecordsSelectedInContextStore } from '@/context-store/hooks/
|
|||||||
import { useObjectMetadataItemById } from '@/object-metadata/hooks/useObjectMetadataItemById';
|
import { useObjectMetadataItemById } from '@/object-metadata/hooks/useObjectMetadataItemById';
|
||||||
import { getObjectRecordIdentifier } from '@/object-metadata/utils/getObjectRecordIdentifier';
|
import { getObjectRecordIdentifier } from '@/object-metadata/utils/getObjectRecordIdentifier';
|
||||||
import styled from '@emotion/styled';
|
import styled from '@emotion/styled';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
const StyledChip = styled.div`
|
const StyledChip = styled.div`
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { AdvancedFilterLogicalOperatorDropdown } from '@/object-record/advanced-filter/components/AdvancedFilterLogicalOperatorDropdown';
|
import { AdvancedFilterLogicalOperatorDropdown } from '@/object-record/advanced-filter/components/AdvancedFilterLogicalOperatorDropdown';
|
||||||
import { ViewFilterGroup } from '@/views/types/ViewFilterGroup';
|
import { ViewFilterGroup } from '@/views/types/ViewFilterGroup';
|
||||||
import styled from '@emotion/styled';
|
import styled from '@emotion/styled';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
const StyledText = styled.div`
|
const StyledText = styled.div`
|
||||||
height: ${({ theme }) => theme.spacing(8)};
|
height: ${({ theme }) => theme.spacing(8)};
|
||||||
|
|||||||
@ -10,7 +10,7 @@ import { getRecordNodeFromRecord } from '@/object-record/cache/utils/getRecordNo
|
|||||||
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
||||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||||
import { prefillRecord } from '@/object-record/utils/prefillRecord';
|
import { prefillRecord } from '@/object-record/utils/prefillRecord';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const useCreateOneRecordInCache = <T extends ObjectRecord>({
|
export const useCreateOneRecordInCache = <T extends ObjectRecord>({
|
||||||
objectMetadataItem,
|
objectMetadataItem,
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import { getObjectTypename } from '@/object-record/cache/utils/getObjectTypename';
|
import { getObjectTypename } from '@/object-record/cache/utils/getObjectTypename';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getConnectionTypename = (objectNameSingular: string) => {
|
export const getConnectionTypename = (objectNameSingular: string) => {
|
||||||
return `${capitalize(getObjectTypename(objectNameSingular))}Connection`;
|
return `${capitalize(getObjectTypename(objectNameSingular))}Connection`;
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import { getObjectTypename } from '@/object-record/cache/utils/getObjectTypename';
|
import { getObjectTypename } from '@/object-record/cache/utils/getObjectTypename';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getEdgeTypename = (objectNameSingular: string) => {
|
export const getEdgeTypename = (objectNameSingular: string) => {
|
||||||
return `${capitalize(getObjectTypename(objectNameSingular))}Edge`;
|
return `${capitalize(getObjectTypename(objectNameSingular))}Edge`;
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import { getObjectTypename } from '@/object-record/cache/utils/getObjectTypename';
|
import { getObjectTypename } from '@/object-record/cache/utils/getObjectTypename';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getNodeTypename = (objectNameSingular: string) => {
|
export const getNodeTypename = (objectNameSingular: string) => {
|
||||||
return capitalize(getObjectTypename(objectNameSingular));
|
return capitalize(getObjectTypename(objectNameSingular));
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getObjectTypename = (objectNameSingular: string) => {
|
export const getObjectTypename = (objectNameSingular: string) => {
|
||||||
return capitalize(objectNameSingular);
|
return capitalize(objectNameSingular);
|
||||||
|
|||||||
@ -6,8 +6,8 @@ import { getRecordFromRecordNode } from '@/object-record/cache/utils/getRecordFr
|
|||||||
import { RecordGqlFields } from '@/object-record/graphql/types/RecordGqlFields';
|
import { RecordGqlFields } from '@/object-record/graphql/types/RecordGqlFields';
|
||||||
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
||||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const getRecordFromCache = <T extends ObjectRecord = ObjectRecord>({
|
export const getRecordFromCache = <T extends ObjectRecord = ObjectRecord>({
|
||||||
objectMetadataItem,
|
objectMetadataItem,
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
|
|
||||||
import { RecordGqlConnection } from '@/object-record/graphql/types/RecordGqlConnection';
|
import { RecordGqlConnection } from '@/object-record/graphql/types/RecordGqlConnection';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const isObjectRecordConnection = (
|
export const isObjectRecordConnection = (
|
||||||
objectNameSingular: string,
|
objectNameSingular: string,
|
||||||
|
|||||||
@ -2,7 +2,7 @@ import { StoreValue } from '@apollo/client';
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
|
|
||||||
import { RecordGqlRefConnection } from '@/object-record/cache/types/RecordGqlRefConnection';
|
import { RecordGqlRefConnection } from '@/object-record/cache/types/RecordGqlRefConnection';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const isObjectRecordConnectionWithRefs = (
|
export const isObjectRecordConnectionWithRefs = (
|
||||||
objectNameSingular: string,
|
objectNameSingular: string,
|
||||||
|
|||||||
@ -2,8 +2,8 @@ import { ApolloCache, Modifiers } from '@apollo/client/cache';
|
|||||||
|
|
||||||
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
||||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const modifyRecordFromCache = <
|
export const modifyRecordFromCache = <
|
||||||
CachedObjectRecord extends ObjectRecord = ObjectRecord,
|
CachedObjectRecord extends ObjectRecord = ObjectRecord,
|
||||||
|
|||||||
@ -6,8 +6,8 @@ import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObje
|
|||||||
import { getRecordNodeFromRecord } from '@/object-record/cache/utils/getRecordNodeFromRecord';
|
import { getRecordNodeFromRecord } from '@/object-record/cache/utils/getRecordNodeFromRecord';
|
||||||
import { RecordGqlNode } from '@/object-record/graphql/types/RecordGqlNode';
|
import { RecordGqlNode } from '@/object-record/graphql/types/RecordGqlNode';
|
||||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const updateRecordFromCache = <T extends ObjectRecord>({
|
export const updateRecordFromCache = <T extends ObjectRecord>({
|
||||||
objectMetadataItems,
|
objectMetadataItems,
|
||||||
|
|||||||
@ -4,7 +4,7 @@ import { NavigationDrawerInput } from '@/ui/navigation/navigation-drawer/compone
|
|||||||
import { NavigationDrawerItem } from '@/ui/navigation/navigation-drawer/components/NavigationDrawerItem';
|
import { NavigationDrawerItem } from '@/ui/navigation/navigation-drawer/components/NavigationDrawerItem';
|
||||||
import styled from '@emotion/styled';
|
import styled from '@emotion/styled';
|
||||||
import { useEffect, useState } from 'react';
|
import { useEffect, useState } from 'react';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
const StyledEditableTitleContainer = styled.div`
|
const StyledEditableTitleContainer = styled.div`
|
||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
|
|||||||
@ -7,8 +7,8 @@ import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObje
|
|||||||
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
||||||
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
||||||
import { getCreateManyRecordsMutationResponseField } from '@/object-record/utils/getCreateManyRecordsMutationResponseField';
|
import { getCreateManyRecordsMutationResponseField } from '@/object-record/utils/getCreateManyRecordsMutationResponseField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useCreateManyRecordsMutation = ({
|
export const useCreateManyRecordsMutation = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -8,8 +8,8 @@ import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
|||||||
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
||||||
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
||||||
import { getCreateOneRecordMutationResponseField } from '@/object-record/utils/getCreateOneRecordMutationResponseField';
|
import { getCreateOneRecordMutationResponseField } from '@/object-record/utils/getCreateOneRecordMutationResponseField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useCreateOneRecordMutation = ({
|
export const useCreateOneRecordMutation = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -14,10 +14,10 @@ import { useRefetchAggregateQueries } from '@/object-record/hooks/useRefetchAggr
|
|||||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||||
import { getDeleteManyRecordsMutationResponseField } from '@/object-record/utils/getDeleteManyRecordsMutationResponseField';
|
import { getDeleteManyRecordsMutationResponseField } from '@/object-record/utils/getDeleteManyRecordsMutationResponseField';
|
||||||
import { useRecoilValue } from 'recoil';
|
import { useRecoilValue } from 'recoil';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { sleep } from '~/utils/sleep';
|
import { sleep } from '~/utils/sleep';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
type useDeleteManyRecordProps = {
|
type useDeleteManyRecordProps = {
|
||||||
objectNameSingular: string;
|
objectNameSingular: string;
|
||||||
|
|||||||
@ -3,8 +3,8 @@ import gql from 'graphql-tag';
|
|||||||
import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem';
|
import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem';
|
||||||
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
||||||
import { getDeleteManyRecordsMutationResponseField } from '@/object-record/utils/getDeleteManyRecordsMutationResponseField';
|
import { getDeleteManyRecordsMutationResponseField } from '@/object-record/utils/getDeleteManyRecordsMutationResponseField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useDeleteManyRecordsMutation = ({
|
export const useDeleteManyRecordsMutation = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -11,7 +11,7 @@ import { useDeleteOneRecordMutation } from '@/object-record/hooks/useDeleteOneRe
|
|||||||
import { useRefetchAggregateQueries } from '@/object-record/hooks/useRefetchAggregateQueries';
|
import { useRefetchAggregateQueries } from '@/object-record/hooks/useRefetchAggregateQueries';
|
||||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||||
import { getDeleteOneRecordMutationResponseField } from '@/object-record/utils/getDeleteOneRecordMutationResponseField';
|
import { getDeleteOneRecordMutationResponseField } from '@/object-record/utils/getDeleteOneRecordMutationResponseField';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
type useDeleteOneRecordProps = {
|
type useDeleteOneRecordProps = {
|
||||||
objectNameSingular: string;
|
objectNameSingular: string;
|
||||||
|
|||||||
@ -4,8 +4,8 @@ import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadata
|
|||||||
import { mapSoftDeleteFieldsToGraphQLQuery } from '@/object-metadata/utils/mapSoftDeleteFieldsToGraphQLQuery';
|
import { mapSoftDeleteFieldsToGraphQLQuery } from '@/object-metadata/utils/mapSoftDeleteFieldsToGraphQLQuery';
|
||||||
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
||||||
import { getDeleteOneRecordMutationResponseField } from '@/object-record/utils/getDeleteOneRecordMutationResponseField';
|
import { getDeleteOneRecordMutationResponseField } from '@/object-record/utils/getDeleteOneRecordMutationResponseField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useDeleteOneRecordMutation = ({
|
export const useDeleteOneRecordMutation = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -11,9 +11,9 @@ import { useDestroyManyRecordsMutation } from '@/object-record/hooks/useDestroyM
|
|||||||
import { useRefetchAggregateQueries } from '@/object-record/hooks/useRefetchAggregateQueries';
|
import { useRefetchAggregateQueries } from '@/object-record/hooks/useRefetchAggregateQueries';
|
||||||
import { getDestroyManyRecordsMutationResponseField } from '@/object-record/utils/getDestroyManyRecordsMutationResponseField';
|
import { getDestroyManyRecordsMutationResponseField } from '@/object-record/utils/getDestroyManyRecordsMutationResponseField';
|
||||||
import { useRecoilValue } from 'recoil';
|
import { useRecoilValue } from 'recoil';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { sleep } from '~/utils/sleep';
|
import { sleep } from '~/utils/sleep';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
type useDestroyManyRecordProps = {
|
type useDestroyManyRecordProps = {
|
||||||
objectNameSingular: string;
|
objectNameSingular: string;
|
||||||
|
|||||||
@ -3,8 +3,8 @@ import gql from 'graphql-tag';
|
|||||||
import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem';
|
import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem';
|
||||||
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
||||||
import { getDestroyManyRecordsMutationResponseField } from '@/object-record/utils/getDestroyManyRecordsMutationResponseField';
|
import { getDestroyManyRecordsMutationResponseField } from '@/object-record/utils/getDestroyManyRecordsMutationResponseField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useDestroyManyRecordsMutation = ({
|
export const useDestroyManyRecordsMutation = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -9,8 +9,8 @@ import { useGetRecordFromCache } from '@/object-record/cache/hooks/useGetRecordF
|
|||||||
import { useDestroyOneRecordMutation } from '@/object-record/hooks/useDestroyOneRecordMutation';
|
import { useDestroyOneRecordMutation } from '@/object-record/hooks/useDestroyOneRecordMutation';
|
||||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||||
import { getDestroyOneRecordMutationResponseField } from '@/object-record/utils/getDestroyOneRecordMutationResponseField';
|
import { getDestroyOneRecordMutationResponseField } from '@/object-record/utils/getDestroyOneRecordMutationResponseField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
type useDestroyOneRecordProps = {
|
type useDestroyOneRecordProps = {
|
||||||
objectNameSingular: string;
|
objectNameSingular: string;
|
||||||
|
|||||||
@ -3,8 +3,8 @@ import gql from 'graphql-tag';
|
|||||||
import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem';
|
import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem';
|
||||||
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
||||||
import { getDestroyOneRecordMutationResponseField } from '@/object-record/utils/getDestroyOneRecordMutationResponseField';
|
import { getDestroyOneRecordMutationResponseField } from '@/object-record/utils/getDestroyOneRecordMutationResponseField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useDestroyOneRecordMutation = ({
|
export const useDestroyOneRecordMutation = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -23,8 +23,8 @@ import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
|||||||
import { OnFindManyRecordsCompleted } from '@/object-record/types/OnFindManyRecordsCompleted';
|
import { OnFindManyRecordsCompleted } from '@/object-record/types/OnFindManyRecordsCompleted';
|
||||||
import { filterUniqueRecordEdgesByCursor } from '@/object-record/utils/filterUniqueRecordEdgesByCursor';
|
import { filterUniqueRecordEdgesByCursor } from '@/object-record/utils/filterUniqueRecordEdgesByCursor';
|
||||||
import { getQueryIdentifier } from '@/object-record/utils/getQueryIdentifier';
|
import { getQueryIdentifier } from '@/object-record/utils/getQueryIdentifier';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
import { cursorFamilyState } from '../states/cursorFamilyState';
|
import { cursorFamilyState } from '../states/cursorFamilyState';
|
||||||
import { hasNextPageFamilyState } from '../states/hasNextPageFamilyState';
|
import { hasNextPageFamilyState } from '../states/hasNextPageFamilyState';
|
||||||
|
|||||||
@ -6,7 +6,7 @@ import { objectMetadataItemsState } from '@/object-metadata/states/objectMetadat
|
|||||||
import { isAggregationEnabled } from '@/object-metadata/utils/isAggregationEnabled';
|
import { isAggregationEnabled } from '@/object-metadata/utils/isAggregationEnabled';
|
||||||
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
||||||
import { getFindDuplicateRecordsQueryResponseField } from '@/object-record/utils/getFindDuplicateRecordsQueryResponseField';
|
import { getFindDuplicateRecordsQueryResponseField } from '@/object-record/utils/getFindDuplicateRecordsQueryResponseField';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const useFindDuplicateRecordsQuery = ({
|
export const useFindDuplicateRecordsQuery = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -5,7 +5,7 @@ import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadata
|
|||||||
import { objectMetadataItemsState } from '@/object-metadata/states/objectMetadataItemsState';
|
import { objectMetadataItemsState } from '@/object-metadata/states/objectMetadataItemsState';
|
||||||
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
||||||
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const useFindOneRecordQuery = ({
|
export const useFindOneRecordQuery = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -12,9 +12,9 @@ import { useRestoreManyRecordsMutation } from '@/object-record/hooks/useRestoreM
|
|||||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||||
import { getRestoreManyRecordsMutationResponseField } from '@/object-record/utils/getRestoreManyRecordsMutationResponseField';
|
import { getRestoreManyRecordsMutationResponseField } from '@/object-record/utils/getRestoreManyRecordsMutationResponseField';
|
||||||
import { useRecoilValue } from 'recoil';
|
import { useRecoilValue } from 'recoil';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { sleep } from '~/utils/sleep';
|
import { sleep } from '~/utils/sleep';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
type useRestoreManyRecordProps = {
|
type useRestoreManyRecordProps = {
|
||||||
objectNameSingular: string;
|
objectNameSingular: string;
|
||||||
|
|||||||
@ -3,8 +3,8 @@ import gql from 'graphql-tag';
|
|||||||
import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem';
|
import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem';
|
||||||
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
||||||
import { getRestoreManyRecordsMutationResponseField } from '@/object-record/utils/getRestoreManyRecordsMutationResponseField';
|
import { getRestoreManyRecordsMutationResponseField } from '@/object-record/utils/getRestoreManyRecordsMutationResponseField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useRestoreManyRecordsMutation = ({
|
export const useRestoreManyRecordsMutation = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -12,8 +12,8 @@ import { useUpdateOneRecordMutation } from '@/object-record/hooks/useUpdateOneRe
|
|||||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||||
import { getUpdateOneRecordMutationResponseField } from '@/object-record/utils/getUpdateOneRecordMutationResponseField';
|
import { getUpdateOneRecordMutationResponseField } from '@/object-record/utils/getUpdateOneRecordMutationResponseField';
|
||||||
import { sanitizeRecordInput } from '@/object-record/utils/sanitizeRecordInput';
|
import { sanitizeRecordInput } from '@/object-record/utils/sanitizeRecordInput';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
type useUpdateOneRecordProps = {
|
type useUpdateOneRecordProps = {
|
||||||
objectNameSingular: string;
|
objectNameSingular: string;
|
||||||
|
|||||||
@ -8,8 +8,8 @@ import { EMPTY_MUTATION } from '@/object-record/constants/EmptyMutation';
|
|||||||
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
||||||
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
||||||
import { getUpdateOneRecordMutationResponseField } from '@/object-record/utils/getUpdateOneRecordMutationResponseField';
|
import { getUpdateOneRecordMutationResponseField } from '@/object-record/utils/getUpdateOneRecordMutationResponseField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
import { isUndefinedOrNull } from '~/utils/isUndefinedOrNull';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useUpdateOneRecordMutation = ({
|
export const useUpdateOneRecordMutation = ({
|
||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
|
|||||||
@ -6,8 +6,8 @@ import { objectMetadataItemsState } from '@/object-metadata/states/objectMetadat
|
|||||||
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
||||||
import { RecordGqlOperationSignature } from '@/object-record/graphql/types/RecordGqlOperationSignature';
|
import { RecordGqlOperationSignature } from '@/object-record/graphql/types/RecordGqlOperationSignature';
|
||||||
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isNonEmptyArray } from '~/utils/isNonEmptyArray';
|
import { isNonEmptyArray } from '~/utils/isNonEmptyArray';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useGenerateCombinedFindManyRecordsQuery = ({
|
export const useGenerateCombinedFindManyRecordsQuery = ({
|
||||||
operationSignatures,
|
operationSignatures,
|
||||||
|
|||||||
@ -7,8 +7,8 @@ import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObje
|
|||||||
import { RecordGqlOperationSignature } from '@/object-record/graphql/types/RecordGqlOperationSignature';
|
import { RecordGqlOperationSignature } from '@/object-record/graphql/types/RecordGqlOperationSignature';
|
||||||
import { getSearchRecordsQueryResponseField } from '@/object-record/utils/getSearchRecordsQueryResponseField';
|
import { getSearchRecordsQueryResponseField } from '@/object-record/utils/getSearchRecordsQueryResponseField';
|
||||||
import { isObjectMetadataItemSearchable } from '@/object-record/utils/isObjectMetadataItemSearchable';
|
import { isObjectMetadataItemSearchable } from '@/object-record/utils/isObjectMetadataItemSearchable';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isNonEmptyArray } from '~/utils/isNonEmptyArray';
|
import { isNonEmptyArray } from '~/utils/isNonEmptyArray';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useGenerateCombinedSearchRecordsQuery = ({
|
export const useGenerateCombinedSearchRecordsQuery = ({
|
||||||
operationSignatures,
|
operationSignatures,
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import { ViewFilterOperand } from '@/views/types/ViewFilterOperand';
|
import { ViewFilterOperand } from '@/views/types/ViewFilterOperand';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { getOperandLabel, getOperandLabelShort } from '../getOperandLabel';
|
import { getOperandLabel, getOperandLabelShort } from '../getOperandLabel';
|
||||||
|
|
||||||
|
|||||||
@ -3,7 +3,7 @@ import {
|
|||||||
VariableDateViewFilterValueUnit,
|
VariableDateViewFilterValueUnit,
|
||||||
} from '@/views/view-filter-value/utils/resolveDateViewFilterValue';
|
} from '@/views/view-filter-value/utils/resolveDateViewFilterValue';
|
||||||
import { plural } from 'pluralize';
|
import { plural } from 'pluralize';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
export const getRelativeDateDisplayValue = (
|
export const getRelativeDateDisplayValue = (
|
||||||
relativeDate: {
|
relativeDate: {
|
||||||
direction: VariableDateViewFilterValueDirection;
|
direction: VariableDateViewFilterValueDirection;
|
||||||
|
|||||||
@ -12,9 +12,9 @@ import { useRecoilComponentValueV2 } from '@/ui/utilities/state/component-state/
|
|||||||
import { ViewType } from '@/views/types/ViewType';
|
import { ViewType } from '@/views/types/ViewType';
|
||||||
import { useIsFeatureEnabled } from '@/workspace/hooks/useIsFeatureEnabled';
|
import { useIsFeatureEnabled } from '@/workspace/hooks/useIsFeatureEnabled';
|
||||||
import { useRecoilValue } from 'recoil';
|
import { useRecoilValue } from 'recoil';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined, useIcons } from 'twenty-ui';
|
import { isDefined, useIcons } from 'twenty-ui';
|
||||||
import { FeatureFlagKey } from '~/generated/graphql';
|
import { FeatureFlagKey } from '~/generated/graphql';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const RecordIndexPageHeader = () => {
|
export const RecordIndexPageHeader = () => {
|
||||||
const { findObjectMetadataItemByNamePlural } =
|
const { findObjectMetadataItemByNamePlural } =
|
||||||
|
|||||||
@ -12,9 +12,9 @@ import { useObjectMetadataItems } from '@/object-metadata/hooks/useObjectMetadat
|
|||||||
import { useFindOneRecord } from '@/object-record/hooks/useFindOneRecord';
|
import { useFindOneRecord } from '@/object-record/hooks/useFindOneRecord';
|
||||||
import { buildFindOneRecordForShowPageOperationSignature } from '@/object-record/record-show/graphql/operations/factories/findOneRecordForShowPageOperationSignatureFactory';
|
import { buildFindOneRecordForShowPageOperationSignature } from '@/object-record/record-show/graphql/operations/factories/findOneRecordForShowPageOperationSignatureFactory';
|
||||||
import { recordStoreFamilyState } from '@/object-record/record-store/states/recordStoreFamilyState';
|
import { recordStoreFamilyState } from '@/object-record/record-store/states/recordStoreFamilyState';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { FieldMetadataType } from '~/generated-metadata/graphql';
|
import { FieldMetadataType } from '~/generated-metadata/graphql';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useRecordShowPage = (
|
export const useRecordShowPage = (
|
||||||
propsObjectNameSingular: string,
|
propsObjectNameSingular: string,
|
||||||
|
|||||||
@ -10,8 +10,8 @@ import { useRecordIdsFromFindManyCacheRootQuery } from '@/object-record/record-s
|
|||||||
import { buildShowPageURL } from '@/object-record/record-show/utils/buildShowPageURL';
|
import { buildShowPageURL } from '@/object-record/record-show/utils/buildShowPageURL';
|
||||||
import { buildIndexTablePageURL } from '@/object-record/record-table/utils/buildIndexTableURL';
|
import { buildIndexTablePageURL } from '@/object-record/record-table/utils/buildIndexTableURL';
|
||||||
import { useQueryVariablesFromActiveFieldsOfViewOrDefaultView } from '@/views/hooks/useQueryVariablesFromActiveFieldsOfViewOrDefaultView';
|
import { useQueryVariablesFromActiveFieldsOfViewOrDefaultView } from '@/views/hooks/useQueryVariablesFromActiveFieldsOfViewOrDefaultView';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from 'twenty-ui';
|
import { isDefined } from 'twenty-ui';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useRecordShowPagePagination = (
|
export const useRecordShowPagePagination = (
|
||||||
propsObjectNameSingular: string,
|
propsObjectNameSingular: string,
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
||||||
import { DEFAULT_SEARCH_REQUEST_LIMIT } from '@/object-record/constants/DefaultSearchRequestLimit';
|
import { DEFAULT_SEARCH_REQUEST_LIMIT } from '@/object-record/constants/DefaultSearchRequestLimit';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useLimitPerMetadataItem = ({
|
export const useLimitPerMetadataItem = ({
|
||||||
objectMetadataItems,
|
objectMetadataItems,
|
||||||
|
|||||||
@ -11,8 +11,8 @@ import {
|
|||||||
} from '@/object-record/relation-picker/hooks/useMultiObjectRecordsQueryResultFormattedAsObjectRecordForSelectArray';
|
} from '@/object-record/relation-picker/hooks/useMultiObjectRecordsQueryResultFormattedAsObjectRecordForSelectArray';
|
||||||
import { useOrderByFieldPerMetadataItem } from '@/object-record/relation-picker/hooks/useOrderByFieldPerMetadataItem';
|
import { useOrderByFieldPerMetadataItem } from '@/object-record/relation-picker/hooks/useOrderByFieldPerMetadataItem';
|
||||||
import { SelectedObjectRecordId } from '@/object-record/types/SelectedObjectRecordId';
|
import { SelectedObjectRecordId } from '@/object-record/types/SelectedObjectRecordId';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const EMPTY_QUERY = gql`
|
export const EMPTY_QUERY = gql`
|
||||||
query Empty {
|
query Empty {
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
||||||
import { getOrderByFieldForObjectMetadataItem } from '@/object-metadata/utils/getObjectOrderByField';
|
import { getOrderByFieldForObjectMetadataItem } from '@/object-metadata/utils/getObjectOrderByField';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useOrderByFieldPerMetadataItem = ({
|
export const useOrderByFieldPerMetadataItem = ({
|
||||||
objectMetadataItems,
|
objectMetadataItems,
|
||||||
|
|||||||
@ -3,7 +3,7 @@ import gql from 'graphql-tag';
|
|||||||
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
||||||
import { RecordGqlFields } from '@/object-record/graphql/types/RecordGqlFields';
|
import { RecordGqlFields } from '@/object-record/graphql/types/RecordGqlFields';
|
||||||
import { getAggregateQueryName } from '@/object-record/utils/getAggregateQueryName';
|
import { getAggregateQueryName } from '@/object-record/utils/getAggregateQueryName';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const generateAggregateQuery = ({
|
export const generateAggregateQuery = ({
|
||||||
objectMetadataItem,
|
objectMetadataItem,
|
||||||
|
|||||||
@ -3,7 +3,7 @@ import gql from 'graphql-tag';
|
|||||||
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
||||||
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
||||||
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export type QueryCursorDirection = 'before' | 'after';
|
export type QueryCursorDirection = 'before' | 'after';
|
||||||
|
|
||||||
|
|||||||
@ -4,7 +4,7 @@ import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
|||||||
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
import { mapObjectMetadataToGraphQLQuery } from '@/object-metadata/utils/mapObjectMetadataToGraphQLQuery';
|
||||||
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
import { RecordGqlOperationGqlRecordFields } from '@/object-record/graphql/types/RecordGqlOperationGqlRecordFields';
|
||||||
import { getSearchRecordsQueryResponseField } from '@/object-record/utils/getSearchRecordsQueryResponseField';
|
import { getSearchRecordsQueryResponseField } from '@/object-record/utils/getSearchRecordsQueryResponseField';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export type QueryCursorDirection = 'before' | 'after';
|
export type QueryCursorDirection = 'before' | 'after';
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const getAggregateQueryName = (
|
export const getAggregateQueryName = (
|
||||||
objectMetadataNamePlural: string,
|
objectMetadataNamePlural: string,
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { FieldMetadataItem } from '@/object-metadata/types/FieldMetadataItem';
|
import { FieldMetadataItem } from '@/object-metadata/types/FieldMetadataItem';
|
||||||
import { AGGREGATE_OPERATIONS } from '@/object-record/record-table/constants/AggregateOperations';
|
import { AGGREGATE_OPERATIONS } from '@/object-record/record-table/constants/AggregateOperations';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { FieldMetadataType } from '~/generated-metadata/graphql';
|
import { FieldMetadataType } from '~/generated-metadata/graphql';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
type NameForAggregation = {
|
type NameForAggregation = {
|
||||||
[T in AGGREGATE_OPERATIONS]?: string;
|
[T in AGGREGATE_OPERATIONS]?: string;
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getCreateManyRecordsMutationResponseField = (
|
export const getCreateManyRecordsMutationResponseField = (
|
||||||
objectNamePlural: string,
|
objectNamePlural: string,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getCreateOneRecordMutationResponseField = (
|
export const getCreateOneRecordMutationResponseField = (
|
||||||
objectNameSingular: string,
|
objectNameSingular: string,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getDeleteManyRecordsMutationResponseField = (
|
export const getDeleteManyRecordsMutationResponseField = (
|
||||||
objectNamePlural: string,
|
objectNamePlural: string,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getDeleteOneRecordMutationResponseField = (
|
export const getDeleteOneRecordMutationResponseField = (
|
||||||
objectNameSingular: string,
|
objectNameSingular: string,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getDestroyManyRecordsMutationResponseField = (
|
export const getDestroyManyRecordsMutationResponseField = (
|
||||||
objectNamePlural: string,
|
objectNamePlural: string,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getDestroyOneRecordMutationResponseField = (
|
export const getDestroyOneRecordMutationResponseField = (
|
||||||
objectNameSingular: string,
|
objectNameSingular: string,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getRestoreManyRecordsMutationResponseField = (
|
export const getRestoreManyRecordsMutationResponseField = (
|
||||||
objectNamePlural: string,
|
objectNamePlural: string,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getSearchRecordsQueryResponseField = (objectNamePlural: string) =>
|
export const getSearchRecordsQueryResponseField = (objectNamePlural: string) =>
|
||||||
`search${capitalize(objectNamePlural)}`;
|
`search${capitalize(objectNamePlural)}`;
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const getUpdateOneRecordMutationResponseField = (
|
export const getUpdateOneRecordMutationResponseField = (
|
||||||
objectNameSingular: string,
|
objectNameSingular: string,
|
||||||
|
|||||||
@ -10,8 +10,8 @@ import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords';
|
|||||||
import { ObjectFieldRow } from '@/settings/data-model/graph-overview/components/SettingsDataModelOverviewField';
|
import { ObjectFieldRow } from '@/settings/data-model/graph-overview/components/SettingsDataModelOverviewField';
|
||||||
import { SettingsDataModelObjectTypeTag } from '@/settings/data-model/objects/components/SettingsDataModelObjectTypeTag';
|
import { SettingsDataModelObjectTypeTag } from '@/settings/data-model/objects/components/SettingsDataModelObjectTypeTag';
|
||||||
import { getObjectTypeLabel } from '@/settings/data-model/utils/getObjectTypeLabel';
|
import { getObjectTypeLabel } from '@/settings/data-model/utils/getObjectTypeLabel';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { FieldMetadataType } from '~/generated/graphql';
|
import { FieldMetadataType } from '~/generated/graphql';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
import { ObjectFieldRowWithoutRelation } from '@/settings/data-model/graph-overview/components/SettingsDataModelOverviewFieldWithoutRelation';
|
import { ObjectFieldRowWithoutRelation } from '@/settings/data-model/graph-overview/components/SettingsDataModelOverviewFieldWithoutRelation';
|
||||||
import '@xyflow/react/dist/style.css';
|
import '@xyflow/react/dist/style.css';
|
||||||
|
|||||||
@ -6,6 +6,7 @@ import { SnackBarVariant } from '@/ui/feedback/snack-bar-manager/components/Snac
|
|||||||
import { useSnackBar } from '@/ui/feedback/snack-bar-manager/hooks/useSnackBar';
|
import { useSnackBar } from '@/ui/feedback/snack-bar-manager/hooks/useSnackBar';
|
||||||
import styled from '@emotion/styled';
|
import styled from '@emotion/styled';
|
||||||
import { useRecoilState, useRecoilValue } from 'recoil';
|
import { useRecoilState, useRecoilValue } from 'recoil';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import {
|
import {
|
||||||
Card,
|
Card,
|
||||||
IconGoogle,
|
IconGoogle,
|
||||||
@ -15,7 +16,6 @@ import {
|
|||||||
} from 'twenty-ui';
|
} from 'twenty-ui';
|
||||||
import { AuthProviders } from '~/generated-metadata/graphql';
|
import { AuthProviders } from '~/generated-metadata/graphql';
|
||||||
import { useUpdateWorkspaceMutation } from '~/generated/graphql';
|
import { useUpdateWorkspaceMutation } from '~/generated/graphql';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
const StyledSettingsSecurityOptionsList = styled.div`
|
const StyledSettingsSecurityOptionsList = styled.div`
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import styled from '@emotion/styled';
|
|||||||
import { ReactNode } from 'react';
|
import { ReactNode } from 'react';
|
||||||
import { Link } from 'react-router-dom';
|
import { Link } from 'react-router-dom';
|
||||||
import { useRecoilState } from 'recoil';
|
import { useRecoilState } from 'recoil';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import {
|
import {
|
||||||
IconComponent,
|
IconComponent,
|
||||||
MOBILE_VIEWPORT,
|
MOBILE_VIEWPORT,
|
||||||
@ -18,7 +19,6 @@ import {
|
|||||||
TablerIconsProps,
|
TablerIconsProps,
|
||||||
} from 'twenty-ui';
|
} from 'twenty-ui';
|
||||||
import { isDefined } from '~/utils/isDefined';
|
import { isDefined } from '~/utils/isDefined';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
const DEFAULT_INDENTATION_LEVEL = 1;
|
const DEFAULT_INDENTATION_LEVEL = 1;
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@ import { useParams } from 'react-router-dom';
|
|||||||
|
|
||||||
import { PageTitle } from '@/ui/utilities/page-title/components/PageTitle';
|
import { PageTitle } from '@/ui/utilities/page-title/components/PageTitle';
|
||||||
import { useGetCurrentView } from '@/views/hooks/useGetCurrentView';
|
import { useGetCurrentView } from '@/views/hooks/useGetCurrentView';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export type ViewBarPageTitleProps = {
|
export type ViewBarPageTitleProps = {
|
||||||
viewBarId: string;
|
viewBarId: string;
|
||||||
|
|||||||
@ -4,12 +4,12 @@ import { useSnackBar } from '@/ui/feedback/snack-bar-manager/hooks/useSnackBar';
|
|||||||
import { RUN_WORKFLOW_VERSION } from '@/workflow/graphql/mutations/runWorkflowVersion';
|
import { RUN_WORKFLOW_VERSION } from '@/workflow/graphql/mutations/runWorkflowVersion';
|
||||||
import { useMutation } from '@apollo/client';
|
import { useMutation } from '@apollo/client';
|
||||||
import { useTheme } from '@emotion/react';
|
import { useTheme } from '@emotion/react';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { IconSettingsAutomation } from 'twenty-ui';
|
import { IconSettingsAutomation } from 'twenty-ui';
|
||||||
import {
|
import {
|
||||||
RunWorkflowVersionMutation,
|
RunWorkflowVersionMutation,
|
||||||
RunWorkflowVersionMutationVariables,
|
RunWorkflowVersionMutationVariables,
|
||||||
} from '~/generated/graphql';
|
} from '~/generated/graphql';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const useRunWorkflowVersion = () => {
|
export const useRunWorkflowVersion = () => {
|
||||||
const apolloMetadataClient = useApolloMetadataClient();
|
const apolloMetadataClient = useApolloMetadataClient();
|
||||||
|
|||||||
@ -2,8 +2,8 @@ import { WorkflowDiagramStepNodeData } from '@/workflow/workflow-diagram/types/W
|
|||||||
import styled from '@emotion/styled';
|
import styled from '@emotion/styled';
|
||||||
import { Handle, Position } from '@xyflow/react';
|
import { Handle, Position } from '@xyflow/react';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined, OverflowingTextWithTooltip } from 'twenty-ui';
|
import { isDefined, OverflowingTextWithTooltip } from 'twenty-ui';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
type Variant = 'placeholder';
|
type Variant = 'placeholder';
|
||||||
|
|
||||||
|
|||||||
@ -9,9 +9,9 @@ import {
|
|||||||
|
|
||||||
import { TRIGGER_STEP_ID } from '@/workflow/workflow-trigger/constants/TriggerStepId';
|
import { TRIGGER_STEP_ID } from '@/workflow/workflow-trigger/constants/TriggerStepId';
|
||||||
import { MarkerType } from '@xyflow/react';
|
import { MarkerType } from '@xyflow/react';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from 'twenty-ui';
|
import { isDefined } from 'twenty-ui';
|
||||||
import { v4 } from 'uuid';
|
import { v4 } from 'uuid';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const generateWorkflowDiagram = ({
|
export const generateWorkflowDiagram = ({
|
||||||
trigger,
|
trigger,
|
||||||
|
|||||||
@ -3,8 +3,8 @@ import {
|
|||||||
WorkflowTrigger,
|
WorkflowTrigger,
|
||||||
} from '@/workflow/types/Workflow';
|
} from '@/workflow/types/Workflow';
|
||||||
import { assertUnreachable } from '@/workflow/utils/assertUnreachable';
|
import { assertUnreachable } from '@/workflow/utils/assertUnreachable';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { isDefined } from 'twenty-ui';
|
import { isDefined } from 'twenty-ui';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
|
||||||
|
|
||||||
export const getTriggerStepName = (trigger: WorkflowTrigger): string => {
|
export const getTriggerStepName = (trigger: WorkflowTrigger): string => {
|
||||||
switch (trigger.type) {
|
switch (trigger.type) {
|
||||||
|
|||||||
@ -19,7 +19,7 @@ import { PageContainer } from '@/ui/layout/page/components/PageContainer';
|
|||||||
import { PageTitle } from '@/ui/utilities/page-title/components/PageTitle';
|
import { PageTitle } from '@/ui/utilities/page-title/components/PageTitle';
|
||||||
import { ViewComponentInstanceContext } from '@/views/states/contexts/ViewComponentInstanceContext';
|
import { ViewComponentInstanceContext } from '@/views/states/contexts/ViewComponentInstanceContext';
|
||||||
import { useRecoilCallback } from 'recoil';
|
import { useRecoilCallback } from 'recoil';
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
const StyledIndexContainer = styled.div`
|
const StyledIndexContainer = styled.div`
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import camelCase from 'lodash.camelcase';
|
import camelCase from 'lodash.camelcase';
|
||||||
|
|
||||||
import { capitalize } from '~/utils/string/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const pascalCase = (str: string) => capitalize(camelCase(str));
|
export const pascalCase = (str: string) => capitalize(camelCase(str));
|
||||||
|
|||||||
@ -24,8 +24,7 @@
|
|||||||
"@/*": ["packages/twenty-front/src/modules/*"],
|
"@/*": ["packages/twenty-front/src/modules/*"],
|
||||||
"~/*": ["packages/twenty-front/src/*"],
|
"~/*": ["packages/twenty-front/src/*"],
|
||||||
"twenty-ui": ["packages/twenty-ui/src/index.ts"],
|
"twenty-ui": ["packages/twenty-ui/src/index.ts"],
|
||||||
"@ui/*": ["packages/twenty-ui/src/*"],
|
"@ui/*": ["packages/twenty-ui/src/*"]
|
||||||
"twenty-shared": ["packages/twenty-shared/dist"]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"files": [],
|
"files": [],
|
||||||
|
|||||||
@ -1,7 +1,13 @@
|
|||||||
{
|
{
|
||||||
"extends": "./tsconfig.json",
|
"extends": "./tsconfig.json",
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"types": ["jest", "node"]
|
"types": ["jest", "node"],
|
||||||
|
"paths": {
|
||||||
|
"@/*": ["packages/twenty-front/src/modules/*"],
|
||||||
|
"~/*": ["packages/twenty-front/src/*"],
|
||||||
|
"twenty-ui": ["packages/twenty-ui/src/index.ts"],
|
||||||
|
"@ui/*": ["packages/twenty-ui/src/*"]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"include": [
|
"include": [
|
||||||
"**/__mocks__/**/*",
|
"**/__mocks__/**/*",
|
||||||
|
|||||||
@ -1,3 +1,4 @@
|
|||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { WhereExpressionBuilder } from 'typeorm';
|
import { WhereExpressionBuilder } from 'typeorm';
|
||||||
|
|
||||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||||
@ -11,7 +12,6 @@ import { compositeTypeDefinitions } from 'src/engine/metadata-modules/field-meta
|
|||||||
import { isCompositeFieldMetadataType } from 'src/engine/metadata-modules/field-metadata/utils/is-composite-field-metadata-type.util';
|
import { isCompositeFieldMetadataType } from 'src/engine/metadata-modules/field-metadata/utils/is-composite-field-metadata-type.util';
|
||||||
import { FieldMetadataMap } from 'src/engine/metadata-modules/types/field-metadata-map';
|
import { FieldMetadataMap } from 'src/engine/metadata-modules/types/field-metadata-map';
|
||||||
import { CompositeFieldMetadataType } from 'src/engine/metadata-modules/workspace-migration/factories/composite-column-action.factory';
|
import { CompositeFieldMetadataType } from 'src/engine/metadata-modules/workspace-migration/factories/composite-column-action.factory';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
|
|
||||||
const ARRAY_OPERATORS = ['in', 'contains', 'notContains'];
|
const ARRAY_OPERATORS = ['in', 'contains', 'notContains'];
|
||||||
|
|
||||||
|
|||||||
@ -1,3 +1,5 @@
|
|||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
ObjectRecordOrderBy,
|
ObjectRecordOrderBy,
|
||||||
OrderByDirection,
|
OrderByDirection,
|
||||||
@ -12,7 +14,6 @@ import { compositeTypeDefinitions } from 'src/engine/metadata-modules/field-meta
|
|||||||
import { isCompositeFieldMetadataType } from 'src/engine/metadata-modules/field-metadata/utils/is-composite-field-metadata-type.util';
|
import { isCompositeFieldMetadataType } from 'src/engine/metadata-modules/field-metadata/utils/is-composite-field-metadata-type.util';
|
||||||
import { FieldMetadataMap } from 'src/engine/metadata-modules/types/field-metadata-map';
|
import { FieldMetadataMap } from 'src/engine/metadata-modules/types/field-metadata-map';
|
||||||
import { CompositeFieldMetadataType } from 'src/engine/metadata-modules/workspace-migration/factories/composite-column-action.factory';
|
import { CompositeFieldMetadataType } from 'src/engine/metadata-modules/workspace-migration/factories/composite-column-action.factory';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
export class GraphqlQueryOrderFieldParser {
|
export class GraphqlQueryOrderFieldParser {
|
||||||
private fieldMetadataMapByName: FieldMetadataMap;
|
private fieldMetadataMapByName: FieldMetadataMap;
|
||||||
|
|
||||||
|
|||||||
@ -1,3 +1,5 @@
|
|||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||||
|
|
||||||
import { GraphqlQuerySelectedFieldsAggregateParser } from 'src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields-aggregate.parser';
|
import { GraphqlQuerySelectedFieldsAggregateParser } from 'src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields-aggregate.parser';
|
||||||
@ -7,7 +9,6 @@ import { isCompositeFieldMetadataType } from 'src/engine/metadata-modules/field-
|
|||||||
import { ObjectMetadataMaps } from 'src/engine/metadata-modules/types/object-metadata-maps';
|
import { ObjectMetadataMaps } from 'src/engine/metadata-modules/types/object-metadata-maps';
|
||||||
import { CompositeFieldMetadataType } from 'src/engine/metadata-modules/workspace-migration/factories/composite-column-action.factory';
|
import { CompositeFieldMetadataType } from 'src/engine/metadata-modules/workspace-migration/factories/composite-column-action.factory';
|
||||||
import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util';
|
import { isRelationFieldMetadataType } from 'src/engine/utils/is-relation-field-metadata-type.util';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
|
|
||||||
export type GraphqlQuerySelectedFieldsResult = {
|
export type GraphqlQuerySelectedFieldsResult = {
|
||||||
select: Record<string, any>;
|
select: Record<string, any>;
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Inject, Injectable } from '@nestjs/common';
|
import { Inject, Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import graphqlFields from 'graphql-fields';
|
import graphqlFields from 'graphql-fields';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { DataSource, ObjectLiteral } from 'typeorm';
|
import { DataSource, ObjectLiteral } from 'typeorm';
|
||||||
|
|
||||||
import { ObjectRecord } from 'src/engine/api/graphql/workspace-query-builder/interfaces/object-record.interface';
|
import { ObjectRecord } from 'src/engine/api/graphql/workspace-query-builder/interfaces/object-record.interface';
|
||||||
@ -22,7 +23,6 @@ import { workspaceQueryRunnerGraphqlApiExceptionHandler } from 'src/engine/api/g
|
|||||||
import { WorkspaceQueryHookService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/workspace-query-hook.service';
|
import { WorkspaceQueryHookService } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/workspace-query-hook.service';
|
||||||
import { WorkspaceRepository } from 'src/engine/twenty-orm/repository/workspace.repository';
|
import { WorkspaceRepository } from 'src/engine/twenty-orm/repository/workspace.repository';
|
||||||
import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager';
|
import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
|
|
||||||
export type GraphqlQueryResolverExecutionArgs<Input extends ResolverArgs> = {
|
export type GraphqlQueryResolverExecutionArgs<Input extends ResolverArgs> = {
|
||||||
args: Input;
|
args: Input;
|
||||||
|
|||||||
@ -1,13 +1,13 @@
|
|||||||
import { GraphQLISODateTime } from '@nestjs/graphql';
|
import { GraphQLISODateTime } from '@nestjs/graphql';
|
||||||
|
|
||||||
import { GraphQLFloat, GraphQLInt, GraphQLScalarType } from 'graphql';
|
import { GraphQLFloat, GraphQLInt, GraphQLScalarType } from 'graphql';
|
||||||
import { getSubfieldsForAggregateOperation } from 'twenty-shared';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
import { FieldMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata.interface';
|
||||||
|
|
||||||
import { AGGREGATE_OPERATIONS } from 'src/engine/api/graphql/graphql-query-runner/constants/aggregate-operations.constant';
|
import { AGGREGATE_OPERATIONS } from 'src/engine/api/graphql/graphql-query-runner/constants/aggregate-operations.constant';
|
||||||
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { getSubfieldsForAggregateOperation } from 'src/engine/twenty-orm/utils/get-subfields-for-aggregate-operation.util';
|
||||||
|
|
||||||
export type AggregationField = {
|
export type AggregationField = {
|
||||||
type: GraphQLScalarType;
|
type: GraphQLScalarType;
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class DeleteQueryFactory {
|
export class DeleteQueryFactory {
|
||||||
|
|||||||
@ -1,7 +1,8 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class FindDuplicatesQueryFactory {
|
export class FindDuplicatesQueryFactory {
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
import { mapFieldMetadataToGraphqlQuery } from 'src/engine/api/rest/core/query-builder/utils/map-field-metadata-to-graphql-query.utils';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { fetchMetadataFields } from 'src/engine/api/rest/metadata/query-builder/utils/fetch-metadata-fields.utils';
|
import { fetchMetadataFields } from 'src/engine/api/rest/metadata/query-builder/utils/fetch-metadata-fields.utils';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class DeleteMetadataQueryFactory {
|
export class DeleteMetadataQueryFactory {
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { fetchMetadataFields } from 'src/engine/api/rest/metadata/query-builder/utils/fetch-metadata-fields.utils';
|
import { fetchMetadataFields } from 'src/engine/api/rest/metadata/query-builder/utils/fetch-metadata-fields.utils';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { fetchMetadataFields } from 'src/engine/api/rest/metadata/query-builder/utils/fetch-metadata-fields.utils';
|
import { fetchMetadataFields } from 'src/engine/api/rest/metadata/query-builder/utils/fetch-metadata-fields.utils';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { fetchMetadataFields } from 'src/engine/api/rest/metadata/query-builder/utils/fetch-metadata-fields.utils';
|
import { fetchMetadataFields } from 'src/engine/api/rest/metadata/query-builder/utils/fetch-metadata-fields.utils';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
|||||||
@ -2,7 +2,9 @@ import { Injectable } from '@nestjs/common';
|
|||||||
|
|
||||||
import { Request } from 'express';
|
import { Request } from 'express';
|
||||||
import { OpenAPIV3_1 } from 'openapi-types';
|
import { OpenAPIV3_1 } from 'openapi-types';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
|
import { DatabaseEventAction } from 'src/engine/api/graphql/graphql-query-runner/enums/database-event-action';
|
||||||
import { AccessTokenService } from 'src/engine/core-modules/auth/token/services/access-token.service';
|
import { AccessTokenService } from 'src/engine/core-modules/auth/token/services/access-token.service';
|
||||||
import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service';
|
import { EnvironmentService } from 'src/engine/core-modules/environment/environment.service';
|
||||||
import { baseSchema } from 'src/engine/core-modules/open-api/utils/base-schema.utils';
|
import { baseSchema } from 'src/engine/core-modules/open-api/utils/base-schema.utils';
|
||||||
@ -35,9 +37,7 @@ import {
|
|||||||
getUpdateOneResponse200,
|
getUpdateOneResponse200,
|
||||||
} from 'src/engine/core-modules/open-api/utils/responses.utils';
|
} from 'src/engine/core-modules/open-api/utils/responses.utils';
|
||||||
import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service';
|
import { ObjectMetadataService } from 'src/engine/metadata-modules/object-metadata/object-metadata.service';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
import { getServerUrl } from 'src/utils/get-server-url';
|
import { getServerUrl } from 'src/utils/get-server-url';
|
||||||
import { DatabaseEventAction } from 'src/engine/api/graphql/graphql-query-runner/enums/database-event-action';
|
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class OpenApiService {
|
export class OpenApiService {
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
import { OpenAPIV3_1 } from 'openapi-types';
|
import { OpenAPIV3_1 } from 'openapi-types';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
computeDepthParameters,
|
computeDepthParameters,
|
||||||
@ -15,7 +16,6 @@ import {
|
|||||||
} from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
} from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
|
||||||
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
||||||
import { RelationMetadataType } from 'src/engine/metadata-modules/relation-metadata/relation-metadata.entity';
|
import { RelationMetadataType } from 'src/engine/metadata-modules/relation-metadata/relation-metadata.entity';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
|
|
||||||
type Property = OpenAPIV3_1.SchemaObject;
|
type Property = OpenAPIV3_1.SchemaObject;
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { OpenAPIV3_1 } from 'openapi-types';
|
import { OpenAPIV3_1 } from 'openapi-types';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
|
|
||||||
export const computeSchemaTags = (
|
export const computeSchemaTags = (
|
||||||
items: ObjectMetadataEntity[],
|
items: ObjectMetadataEntity[],
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
import { OpenAPIV3_1 } from 'openapi-types';
|
import { OpenAPIV3_1 } from 'openapi-types';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
import { DatabaseEventAction } from 'src/engine/api/graphql/graphql-query-runner/enums/database-event-action';
|
import { DatabaseEventAction } from 'src/engine/api/graphql/graphql-query-runner/enums/database-event-action';
|
||||||
|
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
||||||
|
|
||||||
export const computeWebhooks = (
|
export const computeWebhooks = (
|
||||||
type: DatabaseEventAction,
|
type: DatabaseEventAction,
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
import { OpenAPIV3_1 } from 'openapi-types';
|
import { OpenAPIV3_1 } from 'openapi-types';
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
getArrayRequestBody,
|
getArrayRequestBody,
|
||||||
@ -17,7 +18,6 @@ import {
|
|||||||
getUpdateOneResponse200,
|
getUpdateOneResponse200,
|
||||||
} from 'src/engine/core-modules/open-api/utils/responses.utils';
|
} from 'src/engine/core-modules/open-api/utils/responses.utils';
|
||||||
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
|
|
||||||
export const computeBatchPath = (
|
export const computeBatchPath = (
|
||||||
item: ObjectMetadataEntity,
|
item: ObjectMetadataEntity,
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
|
|
||||||
export const getFindManyResponse200 = (
|
export const getFindManyResponse200 = (
|
||||||
item: Pick<ObjectMetadataEntity, 'nameSingular' | 'namePlural'>,
|
item: Pick<ObjectMetadataEntity, 'nameSingular' | 'namePlural'>,
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
import { InjectRepository } from '@nestjs/typeorm';
|
import { InjectRepository } from '@nestjs/typeorm';
|
||||||
|
|
||||||
|
import { capitalize } from 'twenty-shared';
|
||||||
import { In, Repository } from 'typeorm';
|
import { In, Repository } from 'typeorm';
|
||||||
|
|
||||||
import { FieldMetadataSettings } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata-settings.interface';
|
import { FieldMetadataSettings } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata-settings.interface';
|
||||||
@ -29,7 +30,6 @@ import {
|
|||||||
createForeignKeyDeterministicUuid,
|
createForeignKeyDeterministicUuid,
|
||||||
createRelationDeterministicUuid,
|
createRelationDeterministicUuid,
|
||||||
} from 'src/engine/workspace-manager/workspace-sync-metadata/utils/create-deterministic-uuid.util';
|
} from 'src/engine/workspace-manager/workspace-sync-metadata/utils/create-deterministic-uuid.util';
|
||||||
import { capitalize } from 'src/utils/capitalize';
|
|
||||||
|
|
||||||
const DEFAULT_RELATIONS_OBJECTS_STANDARD_IDS = [
|
const DEFAULT_RELATIONS_OBJECTS_STANDARD_IDS = [
|
||||||
STANDARD_OBJECT_IDS.timelineActivity,
|
STANDARD_OBJECT_IDS.timelineActivity,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const buildDescriptionForRelationFieldMetadataOnFromField = ({
|
export const buildDescriptionForRelationFieldMetadataOnFromField = ({
|
||||||
relationObjectMetadataNamePlural,
|
relationObjectMetadataNamePlural,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { capitalize } from 'src/utils/capitalize';
|
import { capitalize } from 'twenty-shared';
|
||||||
|
|
||||||
export const buildDescriptionForRelationFieldMetadataOnToField = ({
|
export const buildDescriptionForRelationFieldMetadataOnToField = ({
|
||||||
relationObjectMetadataNamePlural,
|
relationObjectMetadataNamePlural,
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user