|
|
@ -7,9 +7,9 @@ |
|
|
|
|
|
|
|
|
using System.Security.Claims; |
|
|
using System.Security.Claims; |
|
|
using GraphQL; |
|
|
using GraphQL; |
|
|
using GraphQL.DI; |
|
|
|
|
|
using GraphQL.Execution; |
|
|
using GraphQL.Execution; |
|
|
using GraphQL.NewtonsoftJson; |
|
|
using GraphQL.NewtonsoftJson; |
|
|
|
|
|
using GraphQL.Server; |
|
|
using Migrations; |
|
|
using Migrations; |
|
|
using Newtonsoft.Json; |
|
|
using Newtonsoft.Json; |
|
|
using Newtonsoft.Json.Converters; |
|
|
using Newtonsoft.Json.Converters; |
|
|
@ -30,6 +30,7 @@ using Squidex.Infrastructure.Json.Objects; |
|
|
using Squidex.Infrastructure.Queries; |
|
|
using Squidex.Infrastructure.Queries; |
|
|
using Squidex.Infrastructure.Queries.Json; |
|
|
using Squidex.Infrastructure.Queries.Json; |
|
|
using Squidex.Infrastructure.Reflection; |
|
|
using Squidex.Infrastructure.Reflection; |
|
|
|
|
|
using IGraphQLBuilder = GraphQL.DI.IGraphQLBuilder; |
|
|
|
|
|
|
|
|
namespace Squidex.Config.Domain |
|
|
namespace Squidex.Config.Domain |
|
|
{ |
|
|
{ |
|
|
@ -44,7 +45,6 @@ namespace Squidex.Config.Domain |
|
|
new CompareOperatorJsonConverter(), |
|
|
new CompareOperatorJsonConverter(), |
|
|
new ContentFieldDataConverter(), |
|
|
new ContentFieldDataConverter(), |
|
|
new EnvelopeHeadersConverter(), |
|
|
new EnvelopeHeadersConverter(), |
|
|
new ExecutionResultJsonConverter(new ErrorInfoProvider()), |
|
|
|
|
|
new JsonValueConverter(), |
|
|
new JsonValueConverter(), |
|
|
new StringEnumConverter(), |
|
|
new StringEnumConverter(), |
|
|
new SurrogateConverter<ClaimsPrincipal, ClaimsPrincipalSurrogate>(), |
|
|
new SurrogateConverter<ClaimsPrincipal, ClaimsPrincipalSurrogate>(), |
|
|
@ -82,7 +82,7 @@ namespace Squidex.Config.Domain |
|
|
services.AddSingletonAs<AutoAssembyTypeProvider<SquidexMigrations>>() |
|
|
services.AddSingletonAs<AutoAssembyTypeProvider<SquidexMigrations>>() |
|
|
.As<ITypeProvider>(); |
|
|
.As<ITypeProvider>(); |
|
|
|
|
|
|
|
|
services.AddSingletonAs<FieldRegistry>() |
|
|
services.AddSingletonAs<FieldTypeProvider>() |
|
|
.As<ITypeProvider>(); |
|
|
.As<ITypeProvider>(); |
|
|
|
|
|
|
|
|
services.AddSingletonAs<NewtonsoftJsonSerializer>() |
|
|
services.AddSingletonAs<NewtonsoftJsonSerializer>() |
|
|
@ -122,5 +122,23 @@ namespace Squidex.Config.Domain |
|
|
|
|
|
|
|
|
return builder; |
|
|
return builder; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public static IGraphQLBuilder AddSquidexJson(this IGraphQLBuilder builder) |
|
|
|
|
|
{ |
|
|
|
|
|
builder.AddDocumentWriter(c => |
|
|
|
|
|
{ |
|
|
|
|
|
var errorInfoProvider = c.GetRequiredService<IErrorInfoProvider>(); |
|
|
|
|
|
|
|
|
|
|
|
return new DocumentWriter(options => |
|
|
|
|
|
{ |
|
|
|
|
|
options.ContractResolver = new ExecutionResultContractResolver(new ErrorInfoProvider()); |
|
|
|
|
|
|
|
|
|
|
|
options.Converters.Add(new JsonValueConverter()); |
|
|
|
|
|
options.Converters.Add(new WriteonlyGeoJsonConverter()); |
|
|
|
|
|
}); |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
return builder; |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|