fix rest api metadata (#13720)
Introduce in [MCP Metadata PR](https://github.com/twentyhq/twenty/pull/13150/files#diff-1c17892e6bc91125638b0cc195ab9f4661c39042e36a6eaac95a83f32d1f70bdR4) [Fix issue opened in Discord ](https://discord.com/channels/1130383047699738754/1155864201068286043/1402921467468972032)
This commit is contained in:
+4
-1
@@ -1,3 +1,4 @@
|
||||
import { hasSelectAllFieldsSelector } from 'src/engine/api/rest/metadata/query-builder/utils/has-select-all-fields-selector.util';
|
||||
import { Selectors } from 'src/engine/api/rest/metadata/types/metadata-query.type';
|
||||
|
||||
export const fetchMetadataFields = (
|
||||
@@ -41,7 +42,9 @@ export const fetchMetadataFields = (
|
||||
}
|
||||
`;
|
||||
|
||||
const fieldsSelection = selector?.fields?.join('\n') ?? defaultFields;
|
||||
const fieldsSelection = hasSelectAllFieldsSelector(selector)
|
||||
? defaultFields
|
||||
: (selector?.fields?.join('\n') ?? defaultFields);
|
||||
|
||||
switch (objectNamePlural) {
|
||||
case 'objects': {
|
||||
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
import { Selectors } from 'src/engine/api/rest/metadata/types/metadata-query.type';
|
||||
|
||||
export const hasSelectAllFieldsSelector = (selector: Selectors) => {
|
||||
return (
|
||||
selector?.fields?.length &&
|
||||
selector?.fields.length === 1 &&
|
||||
selector?.fields.includes('*')
|
||||
);
|
||||
};
|
||||
@@ -24,7 +24,9 @@ export class RestApiMetadataService {
|
||||
async get(request: Request) {
|
||||
await this.accessTokenService.validateTokenByRequest(request);
|
||||
const requestContext = this.getRequestContext(request);
|
||||
const data = await this.metadataQueryBuilderFactory.get(requestContext);
|
||||
const data = await this.metadataQueryBuilderFactory.get(requestContext, {
|
||||
fields: ['*'],
|
||||
});
|
||||
|
||||
return await this.restApiService.call(
|
||||
GraphqlApiType.METADATA,
|
||||
@@ -36,7 +38,9 @@ export class RestApiMetadataService {
|
||||
async create(request: Request) {
|
||||
await this.accessTokenService.validateTokenByRequest(request);
|
||||
const requestContext = this.getRequestContext(request);
|
||||
const data = await this.metadataQueryBuilderFactory.create(requestContext);
|
||||
const data = await this.metadataQueryBuilderFactory.create(requestContext, {
|
||||
fields: ['*'],
|
||||
});
|
||||
|
||||
return await this.restApiService.call(
|
||||
GraphqlApiType.METADATA,
|
||||
@@ -48,7 +52,9 @@ export class RestApiMetadataService {
|
||||
async update(request: Request) {
|
||||
await this.accessTokenService.validateTokenByRequest(request);
|
||||
const requestContext = this.getRequestContext(request);
|
||||
const data = await this.metadataQueryBuilderFactory.update(requestContext);
|
||||
const data = await this.metadataQueryBuilderFactory.update(requestContext, {
|
||||
fields: ['*'],
|
||||
});
|
||||
|
||||
return await this.restApiService.call(
|
||||
GraphqlApiType.METADATA,
|
||||
|
||||
Reference in New Issue
Block a user