Added metadata creation (#2086)
* Reworked metadata creation * Fix from PR * Removed consolelog
This commit is contained in:
@ -5,16 +5,16 @@ import { useRecoilState } from 'recoil';
|
||||
|
||||
import { tokenPairState } from '@/auth/states/tokenPairState';
|
||||
|
||||
import { ApolloClientMetadataContext } from '../context/ApolloClientMetadataContext';
|
||||
import { ApolloMetadataClientContext } from '../context/ApolloClientMetadataContext';
|
||||
|
||||
export const ApolloClientMetadataProvider = ({
|
||||
export const ApolloMetadataClientProvider = ({
|
||||
children,
|
||||
}: {
|
||||
children: React.ReactNode;
|
||||
}) => {
|
||||
const [tokenPair] = useRecoilState(tokenPairState);
|
||||
|
||||
const apolloClientMetadata = useMemo(() => {
|
||||
const apolloMetadataClient = useMemo(() => {
|
||||
if (tokenPair?.accessToken.token) {
|
||||
return new ApolloClient({
|
||||
uri: `${process.env.REACT_APP_SERVER_BASE_URL}/metadata`,
|
||||
@ -29,8 +29,8 @@ export const ApolloClientMetadataProvider = ({
|
||||
}, [tokenPair]);
|
||||
|
||||
return (
|
||||
<ApolloClientMetadataContext.Provider value={apolloClientMetadata}>
|
||||
<ApolloMetadataClientContext.Provider value={apolloMetadataClient}>
|
||||
{children}
|
||||
</ApolloClientMetadataContext.Provider>
|
||||
</ApolloMetadataClientContext.Provider>
|
||||
);
|
||||
};
|
||||
|
||||
@ -2,10 +2,10 @@ import { useEffect } from 'react';
|
||||
import { useRecoilState } from 'recoil';
|
||||
|
||||
import { isFlexibleBackendEnabledState } from '@/client-config/states/isFlexibleBackendEnabledState';
|
||||
import { ObjectsQuery } from '~/generated-metadata/graphql';
|
||||
import { MetadataObjectsQuery } from '~/generated-metadata/graphql';
|
||||
|
||||
import { GET_ALL_OBJECTS } from '../graphql/queries';
|
||||
import { useApolloClientMetadata } from '../hooks/useApolloClientMetadata';
|
||||
import { useApolloMetadataClient } from '../hooks/useApolloClientMetadata';
|
||||
import { useSeedCustomObjectsTemp } from '../hooks/useSeedCustomObjectsTemp';
|
||||
import { metadataObjectsState } from '../states/metadataObjectsState';
|
||||
import { MetadataObject } from '../types/MetadataObject';
|
||||
@ -16,7 +16,7 @@ export const FetchMetadataEffect = () => {
|
||||
const [isFlexibleBackendEnabled] = useRecoilState(
|
||||
isFlexibleBackendEnabledState,
|
||||
);
|
||||
const apolloClientMetadata = useApolloClientMetadata();
|
||||
const apolloMetadataClient = useApolloMetadataClient();
|
||||
|
||||
const seedCustomObjectsTemp = useSeedCustomObjectsTemp();
|
||||
|
||||
@ -24,8 +24,8 @@ export const FetchMetadataEffect = () => {
|
||||
if (!isFlexibleBackendEnabled) return;
|
||||
|
||||
(async () => {
|
||||
if (apolloClientMetadata && metadataObjects.length === 0) {
|
||||
const objects = await apolloClientMetadata.query<ObjectsQuery>({
|
||||
if (apolloMetadataClient && metadataObjects.length === 0) {
|
||||
const objects = await apolloMetadataClient.query<MetadataObjectsQuery>({
|
||||
query: GET_ALL_OBJECTS,
|
||||
});
|
||||
|
||||
@ -46,9 +46,10 @@ export const FetchMetadataEffect = () => {
|
||||
try {
|
||||
await seedCustomObjectsTemp();
|
||||
|
||||
const objects = await apolloClientMetadata.query<ObjectsQuery>({
|
||||
query: GET_ALL_OBJECTS,
|
||||
});
|
||||
const objects =
|
||||
await apolloMetadataClient.query<MetadataObjectsQuery>({
|
||||
query: GET_ALL_OBJECTS,
|
||||
});
|
||||
|
||||
const formattedObjects: MetadataObject[] =
|
||||
objects.data.objects.edges.map((object) => ({
|
||||
@ -68,7 +69,7 @@ export const FetchMetadataEffect = () => {
|
||||
isFlexibleBackendEnabled,
|
||||
metadataObjects,
|
||||
setMetadataObjects,
|
||||
apolloClientMetadata,
|
||||
apolloMetadataClient,
|
||||
seedCustomObjectsTemp,
|
||||
]);
|
||||
|
||||
|
||||
@ -14,21 +14,23 @@ import { useFindManyCustomObjects } from '../hooks/useFindManyCustomObjects';
|
||||
import { useSetObjectDataTableData } from '../hooks/useSetDataTableData';
|
||||
|
||||
export const ObjectDataTableEffect = ({
|
||||
objectName,
|
||||
objectNameSingular,
|
||||
objectNamePlural,
|
||||
}: {
|
||||
objectNamePlural: string;
|
||||
objectNameSingular: string;
|
||||
objectName: string;
|
||||
}) => {
|
||||
const setDataTableData = useSetObjectDataTableData();
|
||||
|
||||
const { data } = useFindManyCustomObjects({ objectName });
|
||||
const { objects } = useFindManyCustomObjects({
|
||||
objectNamePlural: objectNamePlural,
|
||||
});
|
||||
|
||||
useEffect(() => {
|
||||
const entities = data?.['findMany' + objectNameSingular]?.edges ?? [];
|
||||
const entities = objects ?? [];
|
||||
|
||||
setDataTableData(entities);
|
||||
}, [data, objectNameSingular, setDataTableData]);
|
||||
}, [objects, objectNameSingular, setDataTableData]);
|
||||
|
||||
const [searchParams] = useSearchParams();
|
||||
const tableRecoilScopeId = useRecoilScopeId(TableRecoilScopeContext);
|
||||
|
||||
@ -9,11 +9,11 @@ import { useTableViews } from '@/views/hooks/useTableViews';
|
||||
import { ObjectDataTableEffect } from './ObjectDataTableEffect';
|
||||
|
||||
export const ObjectTable = ({
|
||||
objectName,
|
||||
objectNamePlural,
|
||||
objectNameSingular,
|
||||
}: {
|
||||
objectNameSingular: string;
|
||||
objectName: string;
|
||||
objectNamePlural: string;
|
||||
}) => {
|
||||
const { createView, deleteView, submitCurrentView, updateView } =
|
||||
useTableViews({
|
||||
@ -32,7 +32,7 @@ export const ObjectTable = ({
|
||||
}}
|
||||
>
|
||||
<ObjectDataTableEffect
|
||||
objectName={objectName}
|
||||
objectNamePlural={objectNamePlural}
|
||||
objectNameSingular={objectNameSingular}
|
||||
/>
|
||||
<ViewBarContext.Provider
|
||||
|
||||
Reference in New Issue
Block a user