/
githubmirror
/
strapi
Обзор
Документация
Войти
/
githubmirror
/
strapi
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
packages/plugins/graphql/server/src/services/builders/resolvers/component.ts
38 строк
1 KB
Convly
fix: update resolvers to use transformed query parameters for database queries
23 янв 2025, 11:30
23 янв 2025, 11:30
82afe56
Код
Авторство
О чём код?
import type { Internal, Schema } from '@strapi/types'; import type { Context } from '../../types'; export default ({ strapi }: Context) => ({ buildComponentResolver({ contentTypeUID, attributeName, }: { contentTypeUID: Internal.UID.ContentType; attributeName: string; }) { const { transformArgs } = strapi.plugin('graphql').service('builders').utils; return async (parent: any, args: any, ctx: any) => { const contentType = strapi.getModel(contentTypeUID); const { component: componentName } = contentType.attributes[ attributeName ] as Schema.Attribute.Component; const component = strapi.getModel(componentName); const transformedArgs = transformArgs(args, { contentType: component, usePagination: true }); await strapi.contentAPI.validate.query(transformedArgs, component, { auth: ctx?.state?.auth, }); const sanitizedQuery = await strapi.contentAPI.sanitize.query(transformedArgs, component, { auth: ctx?.state?.auth, }); const dbQuery = strapi.get('query-params').transform(component.uid, sanitizedQuery); return strapi.db?.query(contentTypeUID).load(parent, attributeName, dbQuery); }; }, });