Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion codegen/internal/generator/generator.go
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,12 @@ func (g *Generator) buildModels(doc *v3.Document) ([]modelTemplateData, error) {
if schema == nil {
continue
}
typeInfo := g.resolveType(base.CreateSchemaProxy(schema), true)
// For alias components (for example arrays/maps), resolve with an inline base so
// nested inline object items can still become generated models instead of JsonDocument.
typeInfo, err := g.resolveInlineSchemaType(base.CreateSchemaProxy(schema), true, info.TypeName)
if err != nil {
return nil, err
}
info.AliasType = strings.TrimSuffix(typeInfo.TypeName, "?")
info.AliasIsValueType = typeInfo.IsValueType
}
Expand Down Expand Up @@ -1163,6 +1168,9 @@ func (g *Generator) resolveType(schemaRef *base.SchemaProxy, required bool) type
if schema.Nullable != nil && *schema.Nullable {
required = false
}
if len(schema.AllOf) == 1 {
return g.resolveType(schema.AllOf[0], required)
}

switch {
case schemaHasType(schema, "string"):
Expand Down
4 changes: 2 additions & 2 deletions src/SumUp/MembershipsClient.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ internal MembershipsClient(ApiClient client)
/// <param name="roles">Filter the returned memberships by role.</param>
/// <param name="requestOptions">Optional per-request overrides.</param>
/// <param name="cancellationToken">Token used to cancel the request.</param>
public ApiResponse<MembershipsListResponse> List(int? offset = null, int? limit = null, string? kind = null, MembershipStatus? status = null, string? resourceType = null, bool? resourceAttributesSandbox = null, string? resourceName = null, string? resourceParentId = null, JsonDocument? resourceParentType = null, IEnumerable<string>? roles = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
public ApiResponse<MembershipsListResponse> List(int? offset = null, int? limit = null, string? kind = null, MembershipStatus? status = null, string? resourceType = null, bool? resourceAttributesSandbox = null, string? resourceName = null, string? resourceParentId = null, string? resourceParentType = null, IEnumerable<string>? roles = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
{
var request = _client.CreateRequest(HttpMethod.Get, "/v0.1/memberships", builder =>
{
Expand Down Expand Up @@ -95,7 +95,7 @@ public ApiResponse<MembershipsListResponse> List(int? offset = null, int? limit
/// <param name="roles">Filter the returned memberships by role.</param>
/// <param name="requestOptions">Optional per-request overrides.</param>
/// <param name="cancellationToken">Token used to cancel the request.</param>
public async Task<ApiResponse<MembershipsListResponse>> ListAsync(int? offset = null, int? limit = null, string? kind = null, MembershipStatus? status = null, string? resourceType = null, bool? resourceAttributesSandbox = null, string? resourceName = null, string? resourceParentId = null, JsonDocument? resourceParentType = null, IEnumerable<string>? roles = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
public async Task<ApiResponse<MembershipsListResponse>> ListAsync(int? offset = null, int? limit = null, string? kind = null, MembershipStatus? status = null, string? resourceType = null, bool? resourceAttributesSandbox = null, string? resourceName = null, string? resourceParentId = null, string? resourceParentType = null, IEnumerable<string>? roles = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
{
var request = _client.CreateRequest(HttpMethod.Get, "/v0.1/memberships", builder =>
{
Expand Down
27 changes: 27 additions & 0 deletions src/SumUp/Models/BusinessOwnersItem.g.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
// <auto-generated />
#nullable enable

namespace SumUp;

using System.Text.Json.Serialization;
public sealed partial class BusinessOwnersItem
{
/// <summary>Date of birth</summary>
[JsonPropertyName("date_of_birth")]
public string? DateOfBirth { get; set; }
/// <summary>BO's first name</summary>
[JsonPropertyName("first_name")]
public string? FirstName { get; set; }
/// <summary>BO's Landline</summary>
[JsonPropertyName("landline")]
public string? Landline { get; set; }
/// <summary>BO's last name of the user</summary>
[JsonPropertyName("last_name")]
public string? LastName { get; set; }
/// <summary>Mobile phone number</summary>
[JsonPropertyName("mobile_phone")]
public string? MobilePhone { get; set; }
/// <summary>Ownership percentage</summary>
[JsonPropertyName("ownership")]
public decimal? Ownership { get; set; }
}
27 changes: 27 additions & 0 deletions src/SumUp/Models/FinancialPayoutsItem.g.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
// <auto-generated />
#nullable enable

namespace SumUp;

using System.Text.Json.Serialization;
public sealed partial class FinancialPayoutsItem
{
[JsonPropertyName("amount")]
public float? Amount { get; set; }
[JsonPropertyName("currency")]
public string? Currency { get; set; }
[JsonPropertyName("date")]
public DateTime? Date { get; set; }
[JsonPropertyName("fee")]
public float? Fee { get; set; }
[JsonPropertyName("id")]
public int? Id { get; set; }
[JsonPropertyName("reference")]
public string? Reference { get; set; }
[JsonPropertyName("status")]
public string? Status { get; set; }
[JsonPropertyName("transaction_code")]
public string? TransactionCode { get; set; }
[JsonPropertyName("type")]
public string? Type { get; set; }
}
3 changes: 1 addition & 2 deletions src/SumUp/Models/MerchantProfileLegacy.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ namespace SumUp;

using System.Text.Json.Serialization;
using System.Collections.Generic;
using System.Text.Json;
/// <summary>Account's merchant profile</summary>
public sealed partial class MerchantProfileLegacy
{
Expand All @@ -16,7 +15,7 @@ public sealed partial class MerchantProfileLegacy
public IEnumerable<BankAccount>? BankAccounts { get; set; }
/// <summary>Business owners information.</summary>
[JsonPropertyName("business_owners")]
public IEnumerable<JsonDocument>? BusinessOwners { get; set; }
public IEnumerable<BusinessOwnersItem>? BusinessOwners { get; set; }
/// <summary>Company name</summary>
[JsonPropertyName("company_name")]
public string? CompanyName { get; set; }
Expand Down
3 changes: 1 addition & 2 deletions src/SumUp/Models/MerchantProfilePayload.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ namespace SumUp;

using System.Text.Json.Serialization;
using System.Collections.Generic;
using System.Text.Json;
/// <summary>Account's merchant profile</summary>
public sealed partial class MerchantProfilePayload
{
Expand All @@ -14,7 +13,7 @@ public sealed partial class MerchantProfilePayload
public AddressPayloadLegacy Address { get; set; } = default!;
/// <summary>Business owners information.</summary>
[JsonPropertyName("business_owners")]
public IEnumerable<JsonDocument>? BusinessOwners { get; set; }
public IEnumerable<BusinessOwnersItem>? BusinessOwners { get; set; }
/// <summary>Company name</summary>
[JsonPropertyName("company_name")]
public string CompanyName { get; set; } = default!;
Expand Down
24 changes: 12 additions & 12 deletions src/SumUp/PayoutsClient.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ internal PayoutsClient(ApiClient client)
/// <param name="order">Request parameter.</param>
/// <param name="requestOptions">Optional per-request overrides.</param>
/// <param name="cancellationToken">Token used to cancel the request.</param>
public ApiResponse<IEnumerable<JsonDocument>> List(string merchantCode, DateTime startDate, DateTime endDate, string? format = null, int? limit = null, string? order = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
public ApiResponse<IEnumerable<FinancialPayoutsItem>> List(string merchantCode, DateTime startDate, DateTime endDate, string? format = null, int? limit = null, string? order = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
{
var request = _client.CreateRequest(HttpMethod.Get, "/v1.0/merchants/{merchant_code}/payouts", builder =>
{
Expand Down Expand Up @@ -70,8 +70,8 @@ public ApiResponse<IEnumerable<JsonDocument>> List(string merchantCode, DateTime
throw new ApiException(response.StatusCode, fallbackError, responseBody, response.RequestMessage?.RequestUri);
}
using var stream = ApiClient.ReadContentAsStreamAsync(response.Content!, effectiveCancellationToken).GetAwaiter().GetResult();
var result = JsonSerializer.Deserialize<IEnumerable<JsonDocument>>(stream, _client.SerializerOptions);
return ApiResponse<IEnumerable<JsonDocument>>.From(result, response.StatusCode, response.Headers, response.RequestMessage?.RequestUri);
var result = JsonSerializer.Deserialize<IEnumerable<FinancialPayoutsItem>>(stream, _client.SerializerOptions);
return ApiResponse<IEnumerable<FinancialPayoutsItem>>.From(result, response.StatusCode, response.Headers, response.RequestMessage?.RequestUri);
}
finally
{
Expand All @@ -91,7 +91,7 @@ public ApiResponse<IEnumerable<JsonDocument>> List(string merchantCode, DateTime
/// <param name="order">Request parameter.</param>
/// <param name="requestOptions">Optional per-request overrides.</param>
/// <param name="cancellationToken">Token used to cancel the request.</param>
public async Task<ApiResponse<IEnumerable<JsonDocument>>> ListAsync(string merchantCode, DateTime startDate, DateTime endDate, string? format = null, int? limit = null, string? order = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
public async Task<ApiResponse<IEnumerable<FinancialPayoutsItem>>> ListAsync(string merchantCode, DateTime startDate, DateTime endDate, string? format = null, int? limit = null, string? order = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
{
var request = _client.CreateRequest(HttpMethod.Get, "/v1.0/merchants/{merchant_code}/payouts", builder =>
{
Expand Down Expand Up @@ -129,8 +129,8 @@ public async Task<ApiResponse<IEnumerable<JsonDocument>>> ListAsync(string merch
throw new ApiException(response.StatusCode, fallbackError, responseBody, response.RequestMessage?.RequestUri);
}
using var stream = await ApiClient.ReadContentAsStreamAsync(response.Content!, effectiveCancellationToken).ConfigureAwait(false);
var result = await JsonSerializer.DeserializeAsync<IEnumerable<JsonDocument>>(stream, _client.SerializerOptions, effectiveCancellationToken).ConfigureAwait(false);
return ApiResponse<IEnumerable<JsonDocument>>.From(result, response.StatusCode, response.Headers, response.RequestMessage?.RequestUri);
var result = await JsonSerializer.DeserializeAsync<IEnumerable<FinancialPayoutsItem>>(stream, _client.SerializerOptions, effectiveCancellationToken).ConfigureAwait(false);
return ApiResponse<IEnumerable<FinancialPayoutsItem>>.From(result, response.StatusCode, response.Headers, response.RequestMessage?.RequestUri);
}
finally
{
Expand All @@ -149,7 +149,7 @@ public async Task<ApiResponse<IEnumerable<JsonDocument>>> ListAsync(string merch
/// <param name="order">Request parameter.</param>
/// <param name="requestOptions">Optional per-request overrides.</param>
/// <param name="cancellationToken">Token used to cancel the request.</param>
public ApiResponse<IEnumerable<JsonDocument>> ListDeprecated(DateTime startDate, DateTime endDate, string? format = null, int? limit = null, string? order = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
public ApiResponse<IEnumerable<FinancialPayoutsItem>> ListDeprecated(DateTime startDate, DateTime endDate, string? format = null, int? limit = null, string? order = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
{
var request = _client.CreateRequest(HttpMethod.Get, "/v0.1/me/financials/payouts", builder =>
{
Expand Down Expand Up @@ -186,8 +186,8 @@ public ApiResponse<IEnumerable<JsonDocument>> ListDeprecated(DateTime startDate,
throw new ApiException(response.StatusCode, fallbackError, responseBody, response.RequestMessage?.RequestUri);
}
using var stream = ApiClient.ReadContentAsStreamAsync(response.Content!, effectiveCancellationToken).GetAwaiter().GetResult();
var result = JsonSerializer.Deserialize<IEnumerable<JsonDocument>>(stream, _client.SerializerOptions);
return ApiResponse<IEnumerable<JsonDocument>>.From(result, response.StatusCode, response.Headers, response.RequestMessage?.RequestUri);
var result = JsonSerializer.Deserialize<IEnumerable<FinancialPayoutsItem>>(stream, _client.SerializerOptions);
return ApiResponse<IEnumerable<FinancialPayoutsItem>>.From(result, response.StatusCode, response.Headers, response.RequestMessage?.RequestUri);
}
finally
{
Expand All @@ -206,7 +206,7 @@ public ApiResponse<IEnumerable<JsonDocument>> ListDeprecated(DateTime startDate,
/// <param name="order">Request parameter.</param>
/// <param name="requestOptions">Optional per-request overrides.</param>
/// <param name="cancellationToken">Token used to cancel the request.</param>
public async Task<ApiResponse<IEnumerable<JsonDocument>>> ListDeprecatedAsync(DateTime startDate, DateTime endDate, string? format = null, int? limit = null, string? order = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
public async Task<ApiResponse<IEnumerable<FinancialPayoutsItem>>> ListDeprecatedAsync(DateTime startDate, DateTime endDate, string? format = null, int? limit = null, string? order = null, RequestOptions? requestOptions = null, CancellationToken cancellationToken = default)
{
var request = _client.CreateRequest(HttpMethod.Get, "/v0.1/me/financials/payouts", builder =>
{
Expand Down Expand Up @@ -243,8 +243,8 @@ public async Task<ApiResponse<IEnumerable<JsonDocument>>> ListDeprecatedAsync(Da
throw new ApiException(response.StatusCode, fallbackError, responseBody, response.RequestMessage?.RequestUri);
}
using var stream = await ApiClient.ReadContentAsStreamAsync(response.Content!, effectiveCancellationToken).ConfigureAwait(false);
var result = await JsonSerializer.DeserializeAsync<IEnumerable<JsonDocument>>(stream, _client.SerializerOptions, effectiveCancellationToken).ConfigureAwait(false);
return ApiResponse<IEnumerable<JsonDocument>>.From(result, response.StatusCode, response.Headers, response.RequestMessage?.RequestUri);
var result = await JsonSerializer.DeserializeAsync<IEnumerable<FinancialPayoutsItem>>(stream, _client.SerializerOptions, effectiveCancellationToken).ConfigureAwait(false);
return ApiResponse<IEnumerable<FinancialPayoutsItem>>.From(result, response.StatusCode, response.Headers, response.RequestMessage?.RequestUri);
}
finally
{
Expand Down
Loading