From ccfc9bcc59e52239dd804ca6ff038b20147debcb Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 13 Sep 2026 17:56:24 +0000 Subject: [PATCH] feat: Updated OpenAPI spec --- .../Zep.Batch.JsonSerializerContext.g.cs | 250 ++++++++++++++++ src/libs/Zep/Generated/Zep.BatchClient.g.cs | 2 +- .../Zep.Context.JsonSerializerContext.g.cs | 134 +++++++++ src/libs/Zep/Generated/Zep.ContextClient.g.cs | 2 +- .../Zep.Data.JsonSerializerContext.g.cs | 191 ++++++++++++ src/libs/Zep/Generated/Zep.DataClient.g.cs | 2 +- .../Zep.Document.JsonSerializerContext.g.cs | 185 ++++++++++++ .../Zep/Generated/Zep.DocumentClient.g.cs | 2 +- ...DocumentSummary.JsonSerializerContext.g.cs | 198 +++++++++++++ .../Generated/Zep.DocumentSummaryClient.g.cs | 2 +- .../Zep.Entity.JsonSerializerContext.g.cs | 253 ++++++++++++++++ src/libs/Zep/Generated/Zep.EntityClient.g.cs | 2 +- .../Zep.Episodes.JsonSerializerContext.g.cs | 195 ++++++++++++ .../Zep/Generated/Zep.EpisodesClient.g.cs | 2 +- ...ep.GraphEpisode.JsonSerializerContext.g.cs | 187 ++++++++++++ .../Zep/Generated/Zep.GraphEpisodeClient.g.cs | 2 +- .../Zep.GraphNode.JsonSerializerContext.g.cs | 204 +++++++++++++ .../Zep/Generated/Zep.GraphNodeClient.g.cs | 2 +- ...Zep.Observation.JsonSerializerContext.g.cs | 200 +++++++++++++ .../Zep/Generated/Zep.ObservationClient.g.cs | 2 +- .../Zep.Project.JsonSerializerContext.g.cs | 134 +++++++++ src/libs/Zep/Generated/Zep.ProjectClient.g.cs | 2 +- .../Zep.Search.JsonSerializerContext.g.cs | 280 ++++++++++++++++++ src/libs/Zep/Generated/Zep.SearchClient.g.cs | 2 +- .../Zep.Task.JsonSerializerContext.g.cs | 131 ++++++++ src/libs/Zep/Generated/Zep.TaskClient.g.cs | 2 +- .../Zep.Thread.JsonSerializerContext.g.cs | 203 +++++++++++++ src/libs/Zep/Generated/Zep.ThreadClient.g.cs | 2 +- ...p.ThreadSummary.JsonSerializerContext.g.cs | 198 +++++++++++++ .../Generated/Zep.ThreadSummaryClient.g.cs | 2 +- .../Zep.User.JsonSerializerContext.g.cs | 154 ++++++++++ src/libs/Zep/Generated/Zep.UserClient.g.cs | 2 +- .../Zep.UserGroup.JsonSerializerContext.g.cs | 185 ++++++++++++ .../Zep/Generated/Zep.UserGroupClient.g.cs | 2 +- 34 files changed, 3299 insertions(+), 17 deletions(-) create mode 100644 src/libs/Zep/Generated/Zep.Batch.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Context.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Data.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Document.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.DocumentSummary.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Entity.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Episodes.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.GraphEpisode.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.GraphNode.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Observation.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Project.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Search.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Task.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.Thread.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.ThreadSummary.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.User.JsonSerializerContext.g.cs create mode 100644 src/libs/Zep/Generated/Zep.UserGroup.JsonSerializerContext.g.cs diff --git a/src/libs/Zep/Generated/Zep.Batch.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Batch.JsonSerializerContext.g.cs new file mode 100644 index 0000000..8988138 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Batch.JsonSerializerContext.g.cs @@ -0,0 +1,250 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataSuccessResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType), TypeInfoPropertyName = "ApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType), TypeInfoPropertyName = "ModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataCreateBatchRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataBatchProgress))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsBatchStatus), TypeInfoPropertyName = "ModelsBatchStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataBatchSummary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsBatchItemKind), TypeInfoPropertyName = "ModelsBatchItemKind2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataBatchAddItem))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAddBatchItemsRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsBatchItemStatus), TypeInfoPropertyName = "ModelsBatchItemStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataBatchItemDetail))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataBatchInvalidItem))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataBatchInvalidReferencesError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataBatchListResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataBatchItemListResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType?), TypeInfoPropertyName = "NullableApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType?), TypeInfoPropertyName = "NullableModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsBatchStatus?), TypeInfoPropertyName = "NullableModelsBatchStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsBatchItemKind?), TypeInfoPropertyName = "NullableModelsBatchItemKind2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsBatchItemStatus?), TypeInfoPropertyName = "NullableModelsBatchItemStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class BatchSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class BatchSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static BatchSourceGenerationContext Default { get; } = new(DefaultOptions); + + private BatchSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.ApidataRoleType) + + || typeToConvert == typeof(global::Zep.ApidataRoleType?) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType?) + + || typeToConvert == typeof(global::Zep.ModelsBatchStatus) + + || typeToConvert == typeof(global::Zep.ModelsBatchStatus?) + + || typeToConvert == typeof(global::Zep.ModelsBatchItemKind) + + || typeToConvert == typeof(global::Zep.ModelsBatchItemKind?) + + || typeToConvert == typeof(global::Zep.ModelsBatchItemStatus) + + || typeToConvert == typeof(global::Zep.ModelsBatchItemStatus?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.ApidataRoleType)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ApidataRoleType?)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType?)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsBatchStatus)) + { + return new global::Zep.JsonConverters.ModelsBatchStatusJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsBatchStatus?)) + { + return new global::Zep.JsonConverters.ModelsBatchStatusNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsBatchItemKind)) + { + return new global::Zep.JsonConverters.ModelsBatchItemKindJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsBatchItemKind?)) + { + return new global::Zep.JsonConverters.ModelsBatchItemKindNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsBatchItemStatus)) + { + return new global::Zep.JsonConverters.ModelsBatchItemStatusJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsBatchItemStatus?)) + { + return new global::Zep.JsonConverters.ModelsBatchItemStatusNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new BatchSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.BatchClient.g.cs b/src/libs/Zep/Generated/Zep.BatchClient.g.cs index b77b6f1..1e357b2 100644 --- a/src/libs/Zep/Generated/Zep.BatchClient.g.cs +++ b/src/libs/Zep/Generated/Zep.BatchClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class BatchClient : global::Zep.IBatchClient, global::Syst /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.BatchSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Context.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Context.JsonSerializerContext.g.cs new file mode 100644 index 0000000..20a71c9 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Context.JsonSerializerContext.g.cs @@ -0,0 +1,134 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataSuccessResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataCreateContextTemplateRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataContextTemplateResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUpdateContextTemplateRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataListContextTemplatesResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class ContextSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class ContextSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static ContextSourceGenerationContext Default { get; } = new(DefaultOptions); + + private ContextSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new ContextSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.ContextClient.g.cs b/src/libs/Zep/Generated/Zep.ContextClient.g.cs index 3e2c655..88d5db7 100644 --- a/src/libs/Zep/Generated/Zep.ContextClient.g.cs +++ b/src/libs/Zep/Generated/Zep.ContextClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class ContextClient : global::Zep.IContextClient, global:: /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.ContextSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Data.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Data.JsonSerializerContext.g.cs new file mode 100644 index 0000000..7f0bf70 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Data.JsonSerializerContext.g.cs @@ -0,0 +1,191 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType), TypeInfoPropertyName = "ApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType), TypeInfoPropertyName = "ModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAddDataRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataEpisodeData))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAddDataBatchRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataCloneGraphRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataCloneGraphResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType?), TypeInfoPropertyName = "NullableApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType?), TypeInfoPropertyName = "NullableModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class DataSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class DataSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static DataSourceGenerationContext Default { get; } = new(DefaultOptions); + + private DataSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.ApidataRoleType) + + || typeToConvert == typeof(global::Zep.ApidataRoleType?) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.ApidataRoleType)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ApidataRoleType?)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType?)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new DataSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.DataClient.g.cs b/src/libs/Zep/Generated/Zep.DataClient.g.cs index 94adf14..7ad1db4 100644 --- a/src/libs/Zep/Generated/Zep.DataClient.g.cs +++ b/src/libs/Zep/Generated/Zep.DataClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class DataClient : global::Zep.IDataClient, global::System /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.DataSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Document.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Document.JsonSerializerContext.g.cs new file mode 100644 index 0000000..d85d8de --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Document.JsonSerializerContext.g.cs @@ -0,0 +1,185 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType), TypeInfoPropertyName = "ApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType), TypeInfoPropertyName = "ModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisodeResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType?), TypeInfoPropertyName = "NullableApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType?), TypeInfoPropertyName = "NullableModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class DocumentSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class DocumentSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static DocumentSourceGenerationContext Default { get; } = new(DefaultOptions); + + private DocumentSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.ApidataRoleType) + + || typeToConvert == typeof(global::Zep.ApidataRoleType?) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.ApidataRoleType)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ApidataRoleType?)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType?)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new DocumentSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.DocumentClient.g.cs b/src/libs/Zep/Generated/Zep.DocumentClient.g.cs index 0ac6fac..54e48de 100644 --- a/src/libs/Zep/Generated/Zep.DocumentClient.g.cs +++ b/src/libs/Zep/Generated/Zep.DocumentClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class DocumentClient : global::Zep.IDocumentClient, global /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.DocumentSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.DocumentSummary.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.DocumentSummary.JsonSerializerContext.g.cs new file mode 100644 index 0000000..6fdd207 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.DocumentSummary.JsonSerializerContext.g.cs @@ -0,0 +1,198 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator), TypeInfoPropertyName = "GraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiDateFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEpisodeMetadataFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType), TypeInfoPropertyName = "GraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroup))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiPropertyFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiSearchFilters))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphDocumentSummariesRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataDocumentSummary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator?), TypeInfoPropertyName = "NullableGraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType?), TypeInfoPropertyName = "NullableGraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class DocumentSummarySourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class DocumentSummarySourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static DocumentSummarySourceGenerationContext Default { get; } = new(DefaultOptions); + + private DocumentSummarySourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.GraphitiComparisonOperator) + + || typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new DocumentSummarySourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.DocumentSummaryClient.g.cs b/src/libs/Zep/Generated/Zep.DocumentSummaryClient.g.cs index 459ba82..9b0b183 100644 --- a/src/libs/Zep/Generated/Zep.DocumentSummaryClient.g.cs +++ b/src/libs/Zep/Generated/Zep.DocumentSummaryClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class DocumentSummaryClient : global::Zep.IDocumentSummary /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.DocumentSummarySourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Entity.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Entity.JsonSerializerContext.g.cs new file mode 100644 index 0000000..3449ba4 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Entity.JsonSerializerContext.g.cs @@ -0,0 +1,253 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataSuccessResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType), TypeInfoPropertyName = "ApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType), TypeInfoPropertyName = "ModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisodeResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEntityNode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiAddTripleRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEntityEdge))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiAddTripleResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator), TypeInfoPropertyName = "GraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiDateFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEpisodeMetadataFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType), TypeInfoPropertyName = "GraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroup))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiPropertyFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiSearchFilters))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEdgesRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiAddNodeItem))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiAddNodesRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiAddedNode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiAddNodesResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphNodesRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType?), TypeInfoPropertyName = "NullableApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType?), TypeInfoPropertyName = "NullableModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator?), TypeInfoPropertyName = "NullableGraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType?), TypeInfoPropertyName = "NullableGraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class EntitySourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class EntitySourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static EntitySourceGenerationContext Default { get; } = new(DefaultOptions); + + private EntitySourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.ApidataRoleType) + + || typeToConvert == typeof(global::Zep.ApidataRoleType?) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType?) + + || typeToConvert == typeof(global::Zep.GraphitiComparisonOperator) + + || typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.ApidataRoleType)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ApidataRoleType?)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType?)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new EntitySourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.EntityClient.g.cs b/src/libs/Zep/Generated/Zep.EntityClient.g.cs index 6f4cba7..d172fc7 100644 --- a/src/libs/Zep/Generated/Zep.EntityClient.g.cs +++ b/src/libs/Zep/Generated/Zep.EntityClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class EntityClient : global::Zep.IEntityClient, global::Sy /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.EntitySourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Episodes.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Episodes.JsonSerializerContext.g.cs new file mode 100644 index 0000000..2f86bfb --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Episodes.JsonSerializerContext.g.cs @@ -0,0 +1,195 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType), TypeInfoPropertyName = "ApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType), TypeInfoPropertyName = "ModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisodeResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEntityNode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEntityEdge))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUpdateEpisodeRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataEpisodeMentions))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType?), TypeInfoPropertyName = "NullableApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType?), TypeInfoPropertyName = "NullableModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class EpisodesSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class EpisodesSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static EpisodesSourceGenerationContext Default { get; } = new(DefaultOptions); + + private EpisodesSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.ApidataRoleType) + + || typeToConvert == typeof(global::Zep.ApidataRoleType?) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.ApidataRoleType)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ApidataRoleType?)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType?)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new EpisodesSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.EpisodesClient.g.cs b/src/libs/Zep/Generated/Zep.EpisodesClient.g.cs index 06d5b7a..010041d 100644 --- a/src/libs/Zep/Generated/Zep.EpisodesClient.g.cs +++ b/src/libs/Zep/Generated/Zep.EpisodesClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class EpisodesClient : global::Zep.IEpisodesClient, global /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.EpisodesSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.GraphEpisode.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.GraphEpisode.JsonSerializerContext.g.cs new file mode 100644 index 0000000..8326c28 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.GraphEpisode.JsonSerializerContext.g.cs @@ -0,0 +1,187 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType), TypeInfoPropertyName = "ApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType), TypeInfoPropertyName = "ModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisodeListRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType?), TypeInfoPropertyName = "NullableApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType?), TypeInfoPropertyName = "NullableModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class GraphEpisodeSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class GraphEpisodeSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static GraphEpisodeSourceGenerationContext Default { get; } = new(DefaultOptions); + + private GraphEpisodeSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.ApidataRoleType) + + || typeToConvert == typeof(global::Zep.ApidataRoleType?) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.ApidataRoleType)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ApidataRoleType?)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType?)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new GraphEpisodeSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.GraphEpisodeClient.g.cs b/src/libs/Zep/Generated/Zep.GraphEpisodeClient.g.cs index 01c98e3..5a078de 100644 --- a/src/libs/Zep/Generated/Zep.GraphEpisodeClient.g.cs +++ b/src/libs/Zep/Generated/Zep.GraphEpisodeClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class GraphEpisodeClient : global::Zep.IGraphEpisodeClient /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.GraphEpisodeSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.GraphNode.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.GraphNode.JsonSerializerContext.g.cs new file mode 100644 index 0000000..ac58c8e --- /dev/null +++ b/src/libs/Zep/Generated/Zep.GraphNode.JsonSerializerContext.g.cs @@ -0,0 +1,204 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEntityNode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEntityEdge))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator), TypeInfoPropertyName = "GraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiDateFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEpisodeMetadataFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType), TypeInfoPropertyName = "GraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroup))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiPropertyFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiSearchFilters))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphNodeNeighborsRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphNodeNeighbor))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator?), TypeInfoPropertyName = "NullableGraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType?), TypeInfoPropertyName = "NullableGraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class GraphNodeSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class GraphNodeSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static GraphNodeSourceGenerationContext Default { get; } = new(DefaultOptions); + + private GraphNodeSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.GraphitiComparisonOperator) + + || typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new GraphNodeSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.GraphNodeClient.g.cs b/src/libs/Zep/Generated/Zep.GraphNodeClient.g.cs index 0410724..a79d749 100644 --- a/src/libs/Zep/Generated/Zep.GraphNodeClient.g.cs +++ b/src/libs/Zep/Generated/Zep.GraphNodeClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class GraphNodeClient : global::Zep.IGraphNodeClient, glob /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.GraphNodeSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Observation.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Observation.JsonSerializerContext.g.cs new file mode 100644 index 0000000..1dc0b1a --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Observation.JsonSerializerContext.g.cs @@ -0,0 +1,200 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator), TypeInfoPropertyName = "GraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiDateFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEpisodeMetadataFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType), TypeInfoPropertyName = "GraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroup))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiPropertyFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiSearchFilters))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiDerivedNode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphObservationsRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator?), TypeInfoPropertyName = "NullableGraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType?), TypeInfoPropertyName = "NullableGraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class ObservationSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class ObservationSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static ObservationSourceGenerationContext Default { get; } = new(DefaultOptions); + + private ObservationSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.GraphitiComparisonOperator) + + || typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new ObservationSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.ObservationClient.g.cs b/src/libs/Zep/Generated/Zep.ObservationClient.g.cs index 843b917..9f6d61e 100644 --- a/src/libs/Zep/Generated/Zep.ObservationClient.g.cs +++ b/src/libs/Zep/Generated/Zep.ObservationClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class ObservationClient : global::Zep.IObservationClient, /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.ObservationSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Project.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Project.JsonSerializerContext.g.cs new file mode 100644 index 0000000..f99ea53 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Project.JsonSerializerContext.g.cs @@ -0,0 +1,134 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataProjectInfo))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataProjectInfoResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUpdateProjectInfoRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataObservationType))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataObservationSteeringConfig))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class ProjectSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class ProjectSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static ProjectSourceGenerationContext Default { get; } = new(DefaultOptions); + + private ProjectSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new ProjectSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.ProjectClient.g.cs b/src/libs/Zep/Generated/Zep.ProjectClient.g.cs index d1102f0..78c5126 100644 --- a/src/libs/Zep/Generated/Zep.ProjectClient.g.cs +++ b/src/libs/Zep/Generated/Zep.ProjectClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class ProjectClient : global::Zep.IProjectClient, global:: /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.ProjectSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Search.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Search.JsonSerializerContext.g.cs new file mode 100644 index 0000000..327bbc8 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Search.JsonSerializerContext.g.cs @@ -0,0 +1,280 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType), TypeInfoPropertyName = "ApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType), TypeInfoPropertyName = "ModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEntityNode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEntityEdge))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator), TypeInfoPropertyName = "GraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiDateFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEpisodeMetadataFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType), TypeInfoPropertyName = "GraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroup))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiPropertyFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiSearchFilters))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiReranker), TypeInfoPropertyName = "GraphitiReranker2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiGraphSearchScope), TypeInfoPropertyName = "GraphitiGraphSearchScope2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiGraphSearchQuery))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiDerivedNode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphSearchResponseMetadata))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiSagaNode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphSearchResults))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType?), TypeInfoPropertyName = "NullableApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType?), TypeInfoPropertyName = "NullableModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator?), TypeInfoPropertyName = "NullableGraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType?), TypeInfoPropertyName = "NullableGraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiReranker?), TypeInfoPropertyName = "NullableGraphitiReranker2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiGraphSearchScope?), TypeInfoPropertyName = "NullableGraphitiGraphSearchScope2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class SearchSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class SearchSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static SearchSourceGenerationContext Default { get; } = new(DefaultOptions); + + private SearchSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.ApidataRoleType) + + || typeToConvert == typeof(global::Zep.ApidataRoleType?) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType?) + + || typeToConvert == typeof(global::Zep.GraphitiComparisonOperator) + + || typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?) + + || typeToConvert == typeof(global::Zep.GraphitiReranker) + + || typeToConvert == typeof(global::Zep.GraphitiReranker?) + + || typeToConvert == typeof(global::Zep.GraphitiGraphSearchScope) + + || typeToConvert == typeof(global::Zep.GraphitiGraphSearchScope?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.ApidataRoleType)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ApidataRoleType?)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType?)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiReranker)) + { + return new global::Zep.JsonConverters.GraphitiRerankerJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiReranker?)) + { + return new global::Zep.JsonConverters.GraphitiRerankerNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiGraphSearchScope)) + { + return new global::Zep.JsonConverters.GraphitiGraphSearchScopeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiGraphSearchScope?)) + { + return new global::Zep.JsonConverters.GraphitiGraphSearchScopeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new SearchSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.SearchClient.g.cs b/src/libs/Zep/Generated/Zep.SearchClient.g.cs index 10f29f3..dc2a3eb 100644 --- a/src/libs/Zep/Generated/Zep.SearchClient.g.cs +++ b/src/libs/Zep/Generated/Zep.SearchClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class SearchClient : global::Zep.ISearchClient, global::Sy /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SearchSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Task.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Task.JsonSerializerContext.g.cs new file mode 100644 index 0000000..eed33cb --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Task.JsonSerializerContext.g.cs @@ -0,0 +1,131 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataTaskErrorResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataTaskProgress))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGetTaskResponse))] + internal sealed partial class TaskSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class TaskSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static TaskSourceGenerationContext Default { get; } = new(DefaultOptions); + + private TaskSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new TaskSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.TaskClient.g.cs b/src/libs/Zep/Generated/Zep.TaskClient.g.cs index b371e07..7c1f3ca 100644 --- a/src/libs/Zep/Generated/Zep.TaskClient.g.cs +++ b/src/libs/Zep/Generated/Zep.TaskClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class TaskClient : global::Zep.ITaskClient, global::System /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.TaskSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.Thread.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.Thread.JsonSerializerContext.g.cs new file mode 100644 index 0000000..a5880ab --- /dev/null +++ b/src/libs/Zep/Generated/Zep.Thread.JsonSerializerContext.g.cs @@ -0,0 +1,203 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataThread))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataThreadListResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsCreateThreadRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataSuccessResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataThreadContextResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType), TypeInfoPropertyName = "ApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataThreadMessage))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataThreadMessageListResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType), TypeInfoPropertyName = "ModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphEpisodeResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAddThreadMessagesRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAddThreadMessagesResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataThreadSummary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataRoleType?), TypeInfoPropertyName = "NullableApidataRoleType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsGraphDataType?), TypeInfoPropertyName = "NullableModelsGraphDataType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class ThreadSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class ThreadSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static ThreadSourceGenerationContext Default { get; } = new(DefaultOptions); + + private ThreadSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.ApidataRoleType) + + || typeToConvert == typeof(global::Zep.ApidataRoleType?) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType) + + || typeToConvert == typeof(global::Zep.ModelsGraphDataType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.ApidataRoleType)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ApidataRoleType?)) + { + return new global::Zep.JsonConverters.ApidataRoleTypeNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsGraphDataType?)) + { + return new global::Zep.JsonConverters.ModelsGraphDataTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new ThreadSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.ThreadClient.g.cs b/src/libs/Zep/Generated/Zep.ThreadClient.g.cs index e9f735e..f8f01f9 100644 --- a/src/libs/Zep/Generated/Zep.ThreadClient.g.cs +++ b/src/libs/Zep/Generated/Zep.ThreadClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class ThreadClient : global::Zep.IThreadClient, global::Sy /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.ThreadSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.ThreadSummary.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.ThreadSummary.JsonSerializerContext.g.cs new file mode 100644 index 0000000..9a70cf9 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.ThreadSummary.JsonSerializerContext.g.cs @@ -0,0 +1,198 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataThreadSummary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator), TypeInfoPropertyName = "GraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiDateFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEpisodeMetadataFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType), TypeInfoPropertyName = "GraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroup))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiPropertyFilter))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiSearchFilters))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataGraphThreadSummariesRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiComparisonOperator?), TypeInfoPropertyName = "NullableGraphitiComparisonOperator2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiMetadataFilterGroupType?), TypeInfoPropertyName = "NullableGraphitiMetadataFilterGroupType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List>))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class ThreadSummarySourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class ThreadSummarySourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static ThreadSummarySourceGenerationContext Default { get; } = new(DefaultOptions); + + private ThreadSummarySourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.GraphitiComparisonOperator) + + || typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType) + + || typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiComparisonOperator?)) + { + return new global::Zep.JsonConverters.GraphitiComparisonOperatorNullableJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.GraphitiMetadataFilterGroupType?)) + { + return new global::Zep.JsonConverters.GraphitiMetadataFilterGroupTypeNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new ThreadSummarySourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.ThreadSummaryClient.g.cs b/src/libs/Zep/Generated/Zep.ThreadSummaryClient.g.cs index 4784df9..f14b9b4 100644 --- a/src/libs/Zep/Generated/Zep.ThreadSummaryClient.g.cs +++ b/src/libs/Zep/Generated/Zep.ThreadSummaryClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class ThreadSummaryClient : global::Zep.IThreadSummaryClie /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.ThreadSummarySourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.User.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.User.JsonSerializerContext.g.cs new file mode 100644 index 0000000..1f74e13 --- /dev/null +++ b/src/libs/Zep/Generated/Zep.User.JsonSerializerContext.g.cs @@ -0,0 +1,154 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataThread))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataSuccessResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataCreateUserRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUser))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUserListResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUpdateUserRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.GraphitiEntityNode))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUserNodeResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUserInstruction))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataListUserInstructionsResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAddUserInstructionsRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataDeleteUserInstructionsRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class UserSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class UserSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static UserSourceGenerationContext Default { get; } = new(DefaultOptions); + + private UserSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new UserSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.UserClient.g.cs b/src/libs/Zep/Generated/Zep.UserClient.g.cs index 5f78cc8..c3832b9 100644 --- a/src/libs/Zep/Generated/Zep.UserClient.g.cs +++ b/src/libs/Zep/Generated/Zep.UserClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class UserClient : global::Zep.IUserClient, global::System /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.UserSourceGenerationContext.Default); /// /// diff --git a/src/libs/Zep/Generated/Zep.UserGroup.JsonSerializerContext.g.cs b/src/libs/Zep/Generated/Zep.UserGroup.JsonSerializerContext.g.cs new file mode 100644 index 0000000..13bc67a --- /dev/null +++ b/src/libs/Zep/Generated/Zep.UserGroup.JsonSerializerContext.g.cs @@ -0,0 +1,185 @@ + +#nullable enable + +#pragma warning disable CS0618 // Type or member is obsolete +#pragma warning disable CS3016 // Arrays as attribute arguments is not CLS-compliant + +namespace Zep +{ + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List), TypeInfoPropertyName = "SystemCollectionsGeneric_ObjectList")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(string))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAPIError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(object))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUser))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsUserGroupQuota))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsUserGroupKind), TypeInfoPropertyName = "ModelsUserGroupKind2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsUserGroup))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUserGroupListResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataCreateUserGroupRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUserGroupResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUserMembershipGroupsResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUpdateUserGroupRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUserGroupMembersResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataMutateUserGroupMembersRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataUserGroupMembershipResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataPolicySetSummaryResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAttachedPolicySetsResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ApidataAttachPolicySetRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Zep.ModelsUserGroupKind?), TypeInfoPropertyName = "NullableModelsUserGroupKind2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class UserGroupSourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// + public sealed partial class UserGroupSourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext + { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = new LazyChunkResolver(); + + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static UserGroupSourceGenerationContext Default { get; } = new(DefaultOptions); + + private UserGroupSourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + /// + /// Adds this package's converters to . + /// + /// + /// A converter has to be on the options a chained resolver builds its JsonTypeInfo against, + /// and a context resolves types from every package below it. Each package contributes only + /// what it owns and calls down the chain for the rest, so the family's converter table is + /// written once rather than copied into all of them. + /// + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public static void AddConverters(global::System.Text.Json.JsonSerializerOptions options) + { + options.Converters.Add(new global::Zep.JsonConverters.UnixTimestampJsonConverter()); + options.Converters.Add(new LazyEnumJsonConverterFactory()); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + AddConverters(options); + + return options; + } + + + private sealed class LazyEnumJsonConverterFactory : global::System.Text.Json.Serialization.JsonConverterFactory + { + public override bool CanConvert(global::System.Type typeToConvert) + { + return + typeToConvert == typeof(global::Zep.ModelsUserGroupKind) + + || typeToConvert == typeof(global::Zep.ModelsUserGroupKind?); + } + + public override global::System.Text.Json.Serialization.JsonConverter CreateConverter( + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + if (typeToConvert == typeof(global::Zep.ModelsUserGroupKind)) + { + return new global::Zep.JsonConverters.ModelsUserGroupKindJsonConverter(); + } + + if (typeToConvert == typeof(global::Zep.ModelsUserGroupKind?)) + { + return new global::Zep.JsonConverters.ModelsUserGroupKindNullableJsonConverter(); + } + throw new global::System.NotSupportedException($"No generated enum converter is registered for '{typeToConvert}'."); + } + } + + private sealed class LazyChunkResolver : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver + { + private readonly object _gate = new(); + private readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[] _resolvers = new global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver?[1]; + + public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo( + global::System.Type type, + global::System.Text.Json.JsonSerializerOptions options) + { + for (var index = 0; index < _resolvers.Length; index++) + { + var typeInfo = GetResolver(index).GetTypeInfo(type, options); + if (typeInfo is not null) + { + return typeInfo; + } + } + + return null; + } + + private global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver GetResolver(int index) + { + var resolver = global::System.Threading.Volatile.Read(ref _resolvers[index]); + if (resolver is not null) + { + return resolver; + } + + lock (_gate) + { + return _resolvers[index] ??= CreateResolver(index); + } + } + + private static global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver CreateResolver(int index) + { + return index switch + { + 0 => new UserGroupSourceGenerationContextChunk0(new global::System.Text.Json.JsonSerializerOptions()), + _ => throw new global::System.ArgumentOutOfRangeException(nameof(index)), + }; + } + } + } +} \ No newline at end of file diff --git a/src/libs/Zep/Generated/Zep.UserGroupClient.g.cs b/src/libs/Zep/Generated/Zep.UserGroupClient.g.cs index 4c94287..57b3e80 100644 --- a/src/libs/Zep/Generated/Zep.UserGroupClient.g.cs +++ b/src/libs/Zep/Generated/Zep.UserGroupClient.g.cs @@ -34,7 +34,7 @@ public sealed partial class UserGroupClient : global::Zep.IUserGroupClient, glob /// public global::Zep.AutoSDKClientOptions Options { get; } - internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.SourceGenerationContext.Default); + internal global::System.Lazy JsonSerializerContextProvider { get; set; } = new(() => global::Zep.UserGroupSourceGenerationContext.Default); /// ///