Skip to content

Commit dd3bb1b

Browse files
feat(specs): add fields for metadata in composition injectedItems (#5241) (generated) [skip ci]
Co-authored-by: Gavin Wade <[email protected]>
1 parent 99f8174 commit dd3bb1b

File tree

41 files changed

+1519
-13
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+1519
-13
lines changed

clients/algoliasearch-client-csharp/algoliasearch/Models/Composition/Hit.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,12 @@ public Hit(string objectID)
6868
[JsonPropertyName("_distinctSeqID")]
6969
public int? DistinctSeqID { get; set; }
7070

71+
/// <summary>
72+
/// Gets or Sets Extra
73+
/// </summary>
74+
[JsonPropertyName("_extra")]
75+
public HitMetadata Extra { get; set; }
76+
7177
/// <summary>
7278
/// Gets or Sets additional properties
7379
/// </summary>
@@ -87,6 +93,7 @@ public override string ToString()
8793
sb.Append(" SnippetResult: ").Append(SnippetResult).Append("\n");
8894
sb.Append(" RankingInfo: ").Append(RankingInfo).Append("\n");
8995
sb.Append(" DistinctSeqID: ").Append(DistinctSeqID).Append("\n");
96+
sb.Append(" Extra: ").Append(Extra).Append("\n");
9097
sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n");
9198
sb.Append("}\n");
9299
return sb.ToString();
@@ -131,6 +138,7 @@ public override bool Equals(object obj)
131138
|| (RankingInfo != null && RankingInfo.Equals(input.RankingInfo))
132139
)
133140
&& (DistinctSeqID == input.DistinctSeqID || DistinctSeqID.Equals(input.DistinctSeqID))
141+
&& (Extra == input.Extra || (Extra != null && Extra.Equals(input.Extra)))
134142
&& (
135143
AdditionalProperties.Count == input.AdditionalProperties.Count
136144
&& !AdditionalProperties.Except(input.AdditionalProperties).Any()
@@ -163,6 +171,10 @@ public override int GetHashCode()
163171
hashCode = (hashCode * 59) + RankingInfo.GetHashCode();
164172
}
165173
hashCode = (hashCode * 59) + DistinctSeqID.GetHashCode();
174+
if (Extra != null)
175+
{
176+
hashCode = (hashCode * 59) + Extra.GetHashCode();
177+
}
166178
if (AdditionalProperties != null)
167179
{
168180
hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode();
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
//
2+
// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
3+
//
4+
using System;
5+
using System.Collections.Generic;
6+
using System.Linq;
7+
using System.Text;
8+
using System.Text.Json;
9+
using System.Text.Json.Serialization;
10+
using Algolia.Search.Serializer;
11+
12+
namespace Algolia.Search.Models.Composition;
13+
14+
/// <summary>
15+
/// An object that contains the extra key-value pairs provided in the injectedItem definition.
16+
/// </summary>
17+
public partial class HitMetadata
18+
{
19+
/// <summary>
20+
/// Initializes a new instance of the HitMetadata class.
21+
/// </summary>
22+
public HitMetadata()
23+
{
24+
AdditionalProperties = new Dictionary<string, object>();
25+
}
26+
27+
/// <summary>
28+
/// The key of the injectedItem that inserted this metadata.
29+
/// </summary>
30+
/// <value>The key of the injectedItem that inserted this metadata.</value>
31+
[JsonPropertyName("_injectedItemKey")]
32+
public string InjectedItemKey { get; set; }
33+
34+
/// <summary>
35+
/// Gets or Sets additional properties
36+
/// </summary>
37+
[JsonExtensionData]
38+
public IDictionary<string, object> AdditionalProperties { get; set; }
39+
40+
/// <summary>
41+
/// Returns the string presentation of the object
42+
/// </summary>
43+
/// <returns>String presentation of the object</returns>
44+
public override string ToString()
45+
{
46+
StringBuilder sb = new StringBuilder();
47+
sb.Append("class HitMetadata {\n");
48+
sb.Append(" InjectedItemKey: ").Append(InjectedItemKey).Append("\n");
49+
sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n");
50+
sb.Append("}\n");
51+
return sb.ToString();
52+
}
53+
54+
/// <summary>
55+
/// Returns the JSON string presentation of the object
56+
/// </summary>
57+
/// <returns>JSON string presentation of the object</returns>
58+
public virtual string ToJson()
59+
{
60+
return JsonSerializer.Serialize(this, JsonConfig.Options);
61+
}
62+
63+
/// <summary>
64+
/// Returns true if objects are equal
65+
/// </summary>
66+
/// <param name="obj">Object to be compared</param>
67+
/// <returns>Boolean</returns>
68+
public override bool Equals(object obj)
69+
{
70+
if (obj is not HitMetadata input)
71+
{
72+
return false;
73+
}
74+
75+
return (
76+
InjectedItemKey == input.InjectedItemKey
77+
|| (InjectedItemKey != null && InjectedItemKey.Equals(input.InjectedItemKey))
78+
)
79+
&& (
80+
AdditionalProperties.Count == input.AdditionalProperties.Count
81+
&& !AdditionalProperties.Except(input.AdditionalProperties).Any()
82+
);
83+
}
84+
85+
/// <summary>
86+
/// Gets the hash code
87+
/// </summary>
88+
/// <returns>Hash code</returns>
89+
public override int GetHashCode()
90+
{
91+
unchecked // Overflow is fine, just wrap
92+
{
93+
int hashCode = 41;
94+
if (InjectedItemKey != null)
95+
{
96+
hashCode = (hashCode * 59) + InjectedItemKey.GetHashCode();
97+
}
98+
if (AdditionalProperties != null)
99+
{
100+
hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode();
101+
}
102+
return hashCode;
103+
}
104+
}
105+
}

clients/algoliasearch-client-dart/packages/client_composition/lib/algolia_client_composition.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ export 'src/model/facet_stats.dart';
2525
export 'src/model/facets.dart';
2626
export 'src/model/highlight_result_option.dart';
2727
export 'src/model/hit.dart';
28+
export 'src/model/hit_metadata.dart';
2829
export 'src/model/hit_ranking_info.dart';
2930
export 'src/model/match_level.dart';
3031
export 'src/model/matched_geo_location.dart';

clients/algoliasearch-client-dart/packages/client_composition/lib/src/deserialize.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import 'package:algolia_client_composition/src/model/facet_stats.dart';
1818
import 'package:algolia_client_composition/src/model/facets.dart';
1919
import 'package:algolia_client_composition/src/model/highlight_result_option.dart';
2020
import 'package:algolia_client_composition/src/model/hit.dart';
21+
import 'package:algolia_client_composition/src/model/hit_metadata.dart';
2122
import 'package:algolia_client_composition/src/model/hit_ranking_info.dart';
2223
import 'package:algolia_client_composition/src/model/match_level.dart';
2324
import 'package:algolia_client_composition/src/model/matched_geo_location.dart';
@@ -119,6 +120,8 @@ ReturnType deserialize<ReturnType, BaseType>(dynamic value, String targetType,
119120
as ReturnType;
120121
case 'Hit':
121122
return Hit.fromJson(value as Map<String, dynamic>) as ReturnType;
123+
case 'HitMetadata':
124+
return HitMetadata.fromJson(value as Map<String, dynamic>) as ReturnType;
122125
case 'HitRankingInfo':
123126
return HitRankingInfo.fromJson(value as Map<String, dynamic>)
124127
as ReturnType;

clients/algoliasearch-client-dart/packages/client_composition/lib/src/model/hit.dart

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
22
// ignore_for_file: unused_element
3+
import 'package:algolia_client_composition/src/model/hit_metadata.dart';
34
import 'package:algolia_client_composition/src/model/hit_ranking_info.dart';
45

56
import 'package:collection/collection.dart';
@@ -16,6 +17,7 @@ final class Hit extends DelegatingMap<String, dynamic> {
1617
this.snippetResult,
1718
this.rankingInfo,
1819
this.distinctSeqID,
20+
this.extra,
1921
Map<String, dynamic> additionalProperties = const {},
2022
}) : super(additionalProperties);
2123

@@ -37,6 +39,9 @@ final class Hit extends DelegatingMap<String, dynamic> {
3739
@JsonKey(name: r'_distinctSeqID')
3840
final int? distinctSeqID;
3941

42+
@JsonKey(name: r'_extra')
43+
final HitMetadata? extra;
44+
4045
@override
4146
bool operator ==(Object other) =>
4247
identical(this, other) ||
@@ -46,6 +51,7 @@ final class Hit extends DelegatingMap<String, dynamic> {
4651
other.snippetResult == snippetResult &&
4752
other.rankingInfo == rankingInfo &&
4853
other.distinctSeqID == distinctSeqID &&
54+
other.extra == extra &&
4955
const MapEquality<String, dynamic>().equals(this, this);
5056

5157
@override
@@ -55,6 +61,7 @@ final class Hit extends DelegatingMap<String, dynamic> {
5561
snippetResult.hashCode +
5662
rankingInfo.hashCode +
5763
distinctSeqID.hashCode +
64+
extra.hashCode +
5865
const MapEquality<String, dynamic>().hash(this);
5966

6067
factory Hit.fromJson(Map<String, dynamic> json) {
@@ -67,6 +74,7 @@ final class Hit extends DelegatingMap<String, dynamic> {
6774
snippetResult: instance.snippetResult,
6875
rankingInfo: instance.rankingInfo,
6976
distinctSeqID: instance.distinctSeqID,
77+
extra: instance.extra,
7078
additionalProperties: additionalProperties,
7179
);
7280
}

clients/algoliasearch-client-dart/packages/client_composition/lib/src/model/hit.g.dart

Lines changed: 9 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2+
// ignore_for_file: unused_element
3+
4+
import 'package:collection/collection.dart';
5+
import 'package:json_annotation/json_annotation.dart';
6+
7+
part 'hit_metadata.g.dart';
8+
9+
@JsonSerializable(createFieldMap: true)
10+
final class HitMetadata extends DelegatingMap<String, dynamic> {
11+
/// Returns a new [HitMetadata] instance.
12+
const HitMetadata({
13+
this.injectedItemKey,
14+
Map<String, dynamic> additionalProperties = const {},
15+
}) : super(additionalProperties);
16+
17+
/// The key of the injectedItem that inserted this metadata.
18+
@JsonKey(name: r'_injectedItemKey')
19+
final String? injectedItemKey;
20+
21+
@override
22+
bool operator ==(Object other) =>
23+
identical(this, other) ||
24+
other is HitMetadata &&
25+
other.injectedItemKey == injectedItemKey &&
26+
const MapEquality<String, dynamic>().equals(this, this);
27+
28+
@override
29+
int get hashCode =>
30+
injectedItemKey.hashCode +
31+
const MapEquality<String, dynamic>().hash(this);
32+
33+
factory HitMetadata.fromJson(Map<String, dynamic> json) {
34+
final instance = _$HitMetadataFromJson(json);
35+
final additionalProperties = Map<String, dynamic>.from(json)
36+
..removeWhere((key, value) => _$HitMetadataFieldMap.containsKey(key));
37+
return HitMetadata(
38+
injectedItemKey: instance.injectedItemKey,
39+
additionalProperties: additionalProperties,
40+
);
41+
}
42+
43+
Map<String, dynamic> toJson() => _$HitMetadataToJson(this)..addAll(this);
44+
45+
@override
46+
String toString() {
47+
return toJson().toString();
48+
}
49+
}

clients/algoliasearch-client-dart/packages/client_composition/lib/src/model/hit_metadata.g.dart

Lines changed: 37 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)