trophy_api_client 1.0.29 → 1.0.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/gemconfig.rb +1 -1
- data/lib/trophy_api_client/achievements/client.rb +2 -2
- data/lib/trophy_api_client/leaderboards/client.rb +9 -5
- data/lib/trophy_api_client/leaderboards/types/leaderboards_all_response_item.rb +186 -0
- data/lib/trophy_api_client/leaderboards/types/leaderboards_all_response_item_status.rb +12 -0
- data/lib/trophy_api_client/metrics/client.rb +2 -2
- data/lib/trophy_api_client/streaks/client.rb +2 -2
- data/lib/trophy_api_client/types/achievement_completion_response.rb +9 -11
- data/lib/trophy_api_client/types/achievement_completion_response_achievement.rb +171 -0
- data/lib/trophy_api_client/types/achievement_response.rb +5 -19
- data/lib/trophy_api_client/types/achievement_with_stats_response.rb +9 -23
- data/lib/trophy_api_client/types/bulk_streak_response_item.rb +4 -6
- data/lib/trophy_api_client/types/completed_achievement_response.rb +7 -21
- data/lib/trophy_api_client/types/event_response.rb +10 -10
- data/lib/trophy_api_client/types/get_user_points_response.rb +21 -4
- data/lib/trophy_api_client/types/leaderboard_response.rb +8 -16
- data/lib/trophy_api_client/types/leaderboard_response_run_unit.rb +11 -0
- data/lib/trophy_api_client/types/leaderboard_response_with_rankings.rb +17 -16
- data/lib/trophy_api_client/types/{leaderboard_response_status.rb → leaderboard_response_with_rankings_status.rb} +1 -1
- data/lib/trophy_api_client/types/metric_event_leaderboard_response.rb +11 -19
- data/lib/trophy_api_client/types/metric_event_points_response.rb +24 -8
- data/lib/trophy_api_client/types/metric_event_streak_response.rb +4 -4
- data/lib/trophy_api_client/types/points_award.rb +6 -6
- data/lib/trophy_api_client/types/points_range.rb +14 -16
- data/lib/trophy_api_client/types/points_system_response.rb +10 -1
- data/lib/trophy_api_client/types/points_trigger.rb +30 -11
- data/lib/trophy_api_client/types/points_trigger_response.rb +39 -22
- data/lib/trophy_api_client/types/points_trigger_response_time_unit.rb +9 -0
- data/lib/trophy_api_client/types/points_trigger_response_type.rb +2 -0
- data/lib/trophy_api_client/types/points_trigger_time_unit.rb +9 -0
- data/lib/trophy_api_client/types/points_trigger_type.rb +2 -0
- data/lib/trophy_api_client/types/updated_user.rb +11 -11
- data/lib/trophy_api_client/types/upserted_user.rb +12 -12
- data/lib/trophy_api_client/types/user.rb +18 -18
- data/lib/trophy_api_client/types/user_leaderboard_response.rb +8 -28
- data/lib/trophy_api_client/types/user_leaderboard_response_with_history.rb +208 -0
- data/lib/trophy_api_client/types/webhook_user_leaderboard_response.rb +212 -0
- data/lib/trophy_api_client/types/webhooks_achievement_completed_payload.rb +84 -0
- data/lib/trophy_api_client/types/webhooks_leaderboard_changed_payload.rb +71 -0
- data/lib/trophy_api_client/types/webhooks_leaderboard_finished_payload.rb +71 -0
- data/lib/trophy_api_client/types/webhooks_leaderboard_rank_changed_payload.rb +85 -0
- data/lib/trophy_api_client/types/webhooks_leaderboard_started_payload.rb +71 -0
- data/lib/trophy_api_client/types/webhooks_points_changed_payload.rb +84 -0
- data/lib/trophy_api_client/types/webhooks_streak_extended_payload.rb +84 -0
- data/lib/trophy_api_client/types/webhooks_streak_freeze_consumed_payload.rb +85 -0
- data/lib/trophy_api_client/types/webhooks_streak_freeze_earned_payload.rb +85 -0
- data/lib/trophy_api_client/types/webhooks_streak_lost_payload.rb +78 -0
- data/lib/trophy_api_client/types/webhooks_streak_started_payload.rb +84 -0
- data/lib/trophy_api_client/users/client.rb +25 -17
- data/lib/trophy_api_client/version.rb +1 -1
- data/lib/types_export.rb +20 -1
- metadata +21 -2
@@ -0,0 +1,85 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "user"
|
4
|
+
require_relative "webhook_user_leaderboard_response"
|
5
|
+
require "ostruct"
|
6
|
+
require "json"
|
7
|
+
|
8
|
+
module TrophyApiClient
|
9
|
+
class WebhooksLeaderboardRankChangedPayload
|
10
|
+
# @return [String] The webhook event type.
|
11
|
+
attr_reader :type
|
12
|
+
# @return [TrophyApiClient::User] The user whose rank changed.
|
13
|
+
attr_reader :user
|
14
|
+
# @return [TrophyApiClient::WebhookUserLeaderboardResponse] The user's leaderboard data that changed.
|
15
|
+
attr_reader :leaderboard
|
16
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
17
|
+
attr_reader :additional_properties
|
18
|
+
# @return [Object]
|
19
|
+
attr_reader :_field_set
|
20
|
+
protected :_field_set
|
21
|
+
|
22
|
+
OMIT = Object.new
|
23
|
+
|
24
|
+
# @param type [String] The webhook event type.
|
25
|
+
# @param user [TrophyApiClient::User] The user whose rank changed.
|
26
|
+
# @param leaderboard [TrophyApiClient::WebhookUserLeaderboardResponse] The user's leaderboard data that changed.
|
27
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
28
|
+
# @return [TrophyApiClient::WebhooksLeaderboardRankChangedPayload]
|
29
|
+
def initialize(type:, user:, leaderboard:, additional_properties: nil)
|
30
|
+
@type = type
|
31
|
+
@user = user
|
32
|
+
@leaderboard = leaderboard
|
33
|
+
@additional_properties = additional_properties
|
34
|
+
@_field_set = { "type": type, "user": user, "leaderboard": leaderboard }
|
35
|
+
end
|
36
|
+
|
37
|
+
# Deserialize a JSON object to an instance of
|
38
|
+
# WebhooksLeaderboardRankChangedPayload
|
39
|
+
#
|
40
|
+
# @param json_object [String]
|
41
|
+
# @return [TrophyApiClient::WebhooksLeaderboardRankChangedPayload]
|
42
|
+
def self.from_json(json_object:)
|
43
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
44
|
+
parsed_json = JSON.parse(json_object)
|
45
|
+
type = parsed_json["type"]
|
46
|
+
if parsed_json["user"].nil?
|
47
|
+
user = nil
|
48
|
+
else
|
49
|
+
user = parsed_json["user"].to_json
|
50
|
+
user = TrophyApiClient::User.from_json(json_object: user)
|
51
|
+
end
|
52
|
+
if parsed_json["leaderboard"].nil?
|
53
|
+
leaderboard = nil
|
54
|
+
else
|
55
|
+
leaderboard = parsed_json["leaderboard"].to_json
|
56
|
+
leaderboard = TrophyApiClient::WebhookUserLeaderboardResponse.from_json(json_object: leaderboard)
|
57
|
+
end
|
58
|
+
new(
|
59
|
+
type: type,
|
60
|
+
user: user,
|
61
|
+
leaderboard: leaderboard,
|
62
|
+
additional_properties: struct
|
63
|
+
)
|
64
|
+
end
|
65
|
+
|
66
|
+
# Serialize an instance of WebhooksLeaderboardRankChangedPayload to a JSON object
|
67
|
+
#
|
68
|
+
# @return [String]
|
69
|
+
def to_json(*_args)
|
70
|
+
@_field_set&.to_json
|
71
|
+
end
|
72
|
+
|
73
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
74
|
+
# hash and check each fields type against the current object's property
|
75
|
+
# definitions.
|
76
|
+
#
|
77
|
+
# @param obj [Object]
|
78
|
+
# @return [Void]
|
79
|
+
def self.validate_raw(obj:)
|
80
|
+
obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
81
|
+
TrophyApiClient::User.validate_raw(obj: obj.user)
|
82
|
+
TrophyApiClient::WebhookUserLeaderboardResponse.validate_raw(obj: obj.leaderboard)
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "leaderboard_response_with_rankings"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module TrophyApiClient
|
8
|
+
class WebhooksLeaderboardStartedPayload
|
9
|
+
# @return [String] The webhook event type.
|
10
|
+
attr_reader :type
|
11
|
+
# @return [TrophyApiClient::LeaderboardResponseWithRankings] The leaderboard run that started and its initial rankings.
|
12
|
+
attr_reader :leaderboard
|
13
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
14
|
+
attr_reader :additional_properties
|
15
|
+
# @return [Object]
|
16
|
+
attr_reader :_field_set
|
17
|
+
protected :_field_set
|
18
|
+
|
19
|
+
OMIT = Object.new
|
20
|
+
|
21
|
+
# @param type [String] The webhook event type.
|
22
|
+
# @param leaderboard [TrophyApiClient::LeaderboardResponseWithRankings] The leaderboard run that started and its initial rankings.
|
23
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
24
|
+
# @return [TrophyApiClient::WebhooksLeaderboardStartedPayload]
|
25
|
+
def initialize(type:, leaderboard:, additional_properties: nil)
|
26
|
+
@type = type
|
27
|
+
@leaderboard = leaderboard
|
28
|
+
@additional_properties = additional_properties
|
29
|
+
@_field_set = { "type": type, "leaderboard": leaderboard }
|
30
|
+
end
|
31
|
+
|
32
|
+
# Deserialize a JSON object to an instance of WebhooksLeaderboardStartedPayload
|
33
|
+
#
|
34
|
+
# @param json_object [String]
|
35
|
+
# @return [TrophyApiClient::WebhooksLeaderboardStartedPayload]
|
36
|
+
def self.from_json(json_object:)
|
37
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
38
|
+
parsed_json = JSON.parse(json_object)
|
39
|
+
type = parsed_json["type"]
|
40
|
+
if parsed_json["leaderboard"].nil?
|
41
|
+
leaderboard = nil
|
42
|
+
else
|
43
|
+
leaderboard = parsed_json["leaderboard"].to_json
|
44
|
+
leaderboard = TrophyApiClient::LeaderboardResponseWithRankings.from_json(json_object: leaderboard)
|
45
|
+
end
|
46
|
+
new(
|
47
|
+
type: type,
|
48
|
+
leaderboard: leaderboard,
|
49
|
+
additional_properties: struct
|
50
|
+
)
|
51
|
+
end
|
52
|
+
|
53
|
+
# Serialize an instance of WebhooksLeaderboardStartedPayload to a JSON object
|
54
|
+
#
|
55
|
+
# @return [String]
|
56
|
+
def to_json(*_args)
|
57
|
+
@_field_set&.to_json
|
58
|
+
end
|
59
|
+
|
60
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
61
|
+
# hash and check each fields type against the current object's property
|
62
|
+
# definitions.
|
63
|
+
#
|
64
|
+
# @param obj [Object]
|
65
|
+
# @return [Void]
|
66
|
+
def self.validate_raw(obj:)
|
67
|
+
obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
68
|
+
TrophyApiClient::LeaderboardResponseWithRankings.validate_raw(obj: obj.leaderboard)
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,84 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "user"
|
4
|
+
require_relative "get_user_points_response"
|
5
|
+
require "ostruct"
|
6
|
+
require "json"
|
7
|
+
|
8
|
+
module TrophyApiClient
|
9
|
+
class WebhooksPointsChangedPayload
|
10
|
+
# @return [String] The webhook event type.
|
11
|
+
attr_reader :type
|
12
|
+
# @return [TrophyApiClient::User] The user whose points increased or decreased.
|
13
|
+
attr_reader :user
|
14
|
+
# @return [TrophyApiClient::GetUserPointsResponse] The user's points after the event.
|
15
|
+
attr_reader :points
|
16
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
17
|
+
attr_reader :additional_properties
|
18
|
+
# @return [Object]
|
19
|
+
attr_reader :_field_set
|
20
|
+
protected :_field_set
|
21
|
+
|
22
|
+
OMIT = Object.new
|
23
|
+
|
24
|
+
# @param type [String] The webhook event type.
|
25
|
+
# @param user [TrophyApiClient::User] The user whose points increased or decreased.
|
26
|
+
# @param points [TrophyApiClient::GetUserPointsResponse] The user's points after the event.
|
27
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
28
|
+
# @return [TrophyApiClient::WebhooksPointsChangedPayload]
|
29
|
+
def initialize(type:, user:, points:, additional_properties: nil)
|
30
|
+
@type = type
|
31
|
+
@user = user
|
32
|
+
@points = points
|
33
|
+
@additional_properties = additional_properties
|
34
|
+
@_field_set = { "type": type, "user": user, "points": points }
|
35
|
+
end
|
36
|
+
|
37
|
+
# Deserialize a JSON object to an instance of WebhooksPointsChangedPayload
|
38
|
+
#
|
39
|
+
# @param json_object [String]
|
40
|
+
# @return [TrophyApiClient::WebhooksPointsChangedPayload]
|
41
|
+
def self.from_json(json_object:)
|
42
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
43
|
+
parsed_json = JSON.parse(json_object)
|
44
|
+
type = parsed_json["type"]
|
45
|
+
if parsed_json["user"].nil?
|
46
|
+
user = nil
|
47
|
+
else
|
48
|
+
user = parsed_json["user"].to_json
|
49
|
+
user = TrophyApiClient::User.from_json(json_object: user)
|
50
|
+
end
|
51
|
+
if parsed_json["points"].nil?
|
52
|
+
points = nil
|
53
|
+
else
|
54
|
+
points = parsed_json["points"].to_json
|
55
|
+
points = TrophyApiClient::GetUserPointsResponse.from_json(json_object: points)
|
56
|
+
end
|
57
|
+
new(
|
58
|
+
type: type,
|
59
|
+
user: user,
|
60
|
+
points: points,
|
61
|
+
additional_properties: struct
|
62
|
+
)
|
63
|
+
end
|
64
|
+
|
65
|
+
# Serialize an instance of WebhooksPointsChangedPayload to a JSON object
|
66
|
+
#
|
67
|
+
# @return [String]
|
68
|
+
def to_json(*_args)
|
69
|
+
@_field_set&.to_json
|
70
|
+
end
|
71
|
+
|
72
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
73
|
+
# hash and check each fields type against the current object's property
|
74
|
+
# definitions.
|
75
|
+
#
|
76
|
+
# @param obj [Object]
|
77
|
+
# @return [Void]
|
78
|
+
def self.validate_raw(obj:)
|
79
|
+
obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
80
|
+
TrophyApiClient::User.validate_raw(obj: obj.user)
|
81
|
+
TrophyApiClient::GetUserPointsResponse.validate_raw(obj: obj.points)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
@@ -0,0 +1,84 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "user"
|
4
|
+
require_relative "base_streak_response"
|
5
|
+
require "ostruct"
|
6
|
+
require "json"
|
7
|
+
|
8
|
+
module TrophyApiClient
|
9
|
+
class WebhooksStreakExtendedPayload
|
10
|
+
# @return [String] The webhook event type.
|
11
|
+
attr_reader :type
|
12
|
+
# @return [TrophyApiClient::User] The user who extended the streak.
|
13
|
+
attr_reader :user
|
14
|
+
# @return [TrophyApiClient::BaseStreakResponse] The streak that was extended.
|
15
|
+
attr_reader :streak
|
16
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
17
|
+
attr_reader :additional_properties
|
18
|
+
# @return [Object]
|
19
|
+
attr_reader :_field_set
|
20
|
+
protected :_field_set
|
21
|
+
|
22
|
+
OMIT = Object.new
|
23
|
+
|
24
|
+
# @param type [String] The webhook event type.
|
25
|
+
# @param user [TrophyApiClient::User] The user who extended the streak.
|
26
|
+
# @param streak [TrophyApiClient::BaseStreakResponse] The streak that was extended.
|
27
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
28
|
+
# @return [TrophyApiClient::WebhooksStreakExtendedPayload]
|
29
|
+
def initialize(type:, user:, streak:, additional_properties: nil)
|
30
|
+
@type = type
|
31
|
+
@user = user
|
32
|
+
@streak = streak
|
33
|
+
@additional_properties = additional_properties
|
34
|
+
@_field_set = { "type": type, "user": user, "streak": streak }
|
35
|
+
end
|
36
|
+
|
37
|
+
# Deserialize a JSON object to an instance of WebhooksStreakExtendedPayload
|
38
|
+
#
|
39
|
+
# @param json_object [String]
|
40
|
+
# @return [TrophyApiClient::WebhooksStreakExtendedPayload]
|
41
|
+
def self.from_json(json_object:)
|
42
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
43
|
+
parsed_json = JSON.parse(json_object)
|
44
|
+
type = parsed_json["type"]
|
45
|
+
if parsed_json["user"].nil?
|
46
|
+
user = nil
|
47
|
+
else
|
48
|
+
user = parsed_json["user"].to_json
|
49
|
+
user = TrophyApiClient::User.from_json(json_object: user)
|
50
|
+
end
|
51
|
+
if parsed_json["streak"].nil?
|
52
|
+
streak = nil
|
53
|
+
else
|
54
|
+
streak = parsed_json["streak"].to_json
|
55
|
+
streak = TrophyApiClient::BaseStreakResponse.from_json(json_object: streak)
|
56
|
+
end
|
57
|
+
new(
|
58
|
+
type: type,
|
59
|
+
user: user,
|
60
|
+
streak: streak,
|
61
|
+
additional_properties: struct
|
62
|
+
)
|
63
|
+
end
|
64
|
+
|
65
|
+
# Serialize an instance of WebhooksStreakExtendedPayload to a JSON object
|
66
|
+
#
|
67
|
+
# @return [String]
|
68
|
+
def to_json(*_args)
|
69
|
+
@_field_set&.to_json
|
70
|
+
end
|
71
|
+
|
72
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
73
|
+
# hash and check each fields type against the current object's property
|
74
|
+
# definitions.
|
75
|
+
#
|
76
|
+
# @param obj [Object]
|
77
|
+
# @return [Void]
|
78
|
+
def self.validate_raw(obj:)
|
79
|
+
obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
80
|
+
TrophyApiClient::User.validate_raw(obj: obj.user)
|
81
|
+
TrophyApiClient::BaseStreakResponse.validate_raw(obj: obj.streak)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
@@ -0,0 +1,85 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "user"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module TrophyApiClient
|
8
|
+
class WebhooksStreakFreezeConsumedPayload
|
9
|
+
# @return [String] The webhook event type.
|
10
|
+
attr_reader :type
|
11
|
+
# @return [TrophyApiClient::User] The user whose streak freeze was consumed.
|
12
|
+
attr_reader :user
|
13
|
+
# @return [Integer] The number of freezes consumed.
|
14
|
+
attr_reader :consumed
|
15
|
+
# @return [Integer] The total number of freezes the user has left after the consumption.
|
16
|
+
attr_reader :freezes
|
17
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
18
|
+
attr_reader :additional_properties
|
19
|
+
# @return [Object]
|
20
|
+
attr_reader :_field_set
|
21
|
+
protected :_field_set
|
22
|
+
|
23
|
+
OMIT = Object.new
|
24
|
+
|
25
|
+
# @param type [String] The webhook event type.
|
26
|
+
# @param user [TrophyApiClient::User] The user whose streak freeze was consumed.
|
27
|
+
# @param consumed [Integer] The number of freezes consumed.
|
28
|
+
# @param freezes [Integer] The total number of freezes the user has left after the consumption.
|
29
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
30
|
+
# @return [TrophyApiClient::WebhooksStreakFreezeConsumedPayload]
|
31
|
+
def initialize(type:, user:, consumed:, freezes:, additional_properties: nil)
|
32
|
+
@type = type
|
33
|
+
@user = user
|
34
|
+
@consumed = consumed
|
35
|
+
@freezes = freezes
|
36
|
+
@additional_properties = additional_properties
|
37
|
+
@_field_set = { "type": type, "user": user, "consumed": consumed, "freezes": freezes }
|
38
|
+
end
|
39
|
+
|
40
|
+
# Deserialize a JSON object to an instance of WebhooksStreakFreezeConsumedPayload
|
41
|
+
#
|
42
|
+
# @param json_object [String]
|
43
|
+
# @return [TrophyApiClient::WebhooksStreakFreezeConsumedPayload]
|
44
|
+
def self.from_json(json_object:)
|
45
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
46
|
+
parsed_json = JSON.parse(json_object)
|
47
|
+
type = parsed_json["type"]
|
48
|
+
if parsed_json["user"].nil?
|
49
|
+
user = nil
|
50
|
+
else
|
51
|
+
user = parsed_json["user"].to_json
|
52
|
+
user = TrophyApiClient::User.from_json(json_object: user)
|
53
|
+
end
|
54
|
+
consumed = parsed_json["consumed"]
|
55
|
+
freezes = parsed_json["freezes"]
|
56
|
+
new(
|
57
|
+
type: type,
|
58
|
+
user: user,
|
59
|
+
consumed: consumed,
|
60
|
+
freezes: freezes,
|
61
|
+
additional_properties: struct
|
62
|
+
)
|
63
|
+
end
|
64
|
+
|
65
|
+
# Serialize an instance of WebhooksStreakFreezeConsumedPayload to a JSON object
|
66
|
+
#
|
67
|
+
# @return [String]
|
68
|
+
def to_json(*_args)
|
69
|
+
@_field_set&.to_json
|
70
|
+
end
|
71
|
+
|
72
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
73
|
+
# hash and check each fields type against the current object's property
|
74
|
+
# definitions.
|
75
|
+
#
|
76
|
+
# @param obj [Object]
|
77
|
+
# @return [Void]
|
78
|
+
def self.validate_raw(obj:)
|
79
|
+
obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
80
|
+
TrophyApiClient::User.validate_raw(obj: obj.user)
|
81
|
+
obj.consumed.is_a?(Integer) != false || raise("Passed value for field obj.consumed is not the expected type, validation failed.")
|
82
|
+
obj.freezes.is_a?(Integer) != false || raise("Passed value for field obj.freezes is not the expected type, validation failed.")
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
@@ -0,0 +1,85 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "user"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module TrophyApiClient
|
8
|
+
class WebhooksStreakFreezeEarnedPayload
|
9
|
+
# @return [String] The webhook event type.
|
10
|
+
attr_reader :type
|
11
|
+
# @return [TrophyApiClient::User] The user who earned streak freezes.
|
12
|
+
attr_reader :user
|
13
|
+
# @return [Integer] The number of freezes earned.
|
14
|
+
attr_reader :earned
|
15
|
+
# @return [Integer] The total number of freezes the user has after the event.
|
16
|
+
attr_reader :freezes
|
17
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
18
|
+
attr_reader :additional_properties
|
19
|
+
# @return [Object]
|
20
|
+
attr_reader :_field_set
|
21
|
+
protected :_field_set
|
22
|
+
|
23
|
+
OMIT = Object.new
|
24
|
+
|
25
|
+
# @param type [String] The webhook event type.
|
26
|
+
# @param user [TrophyApiClient::User] The user who earned streak freezes.
|
27
|
+
# @param earned [Integer] The number of freezes earned.
|
28
|
+
# @param freezes [Integer] The total number of freezes the user has after the event.
|
29
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
30
|
+
# @return [TrophyApiClient::WebhooksStreakFreezeEarnedPayload]
|
31
|
+
def initialize(type:, user:, earned:, freezes:, additional_properties: nil)
|
32
|
+
@type = type
|
33
|
+
@user = user
|
34
|
+
@earned = earned
|
35
|
+
@freezes = freezes
|
36
|
+
@additional_properties = additional_properties
|
37
|
+
@_field_set = { "type": type, "user": user, "earned": earned, "freezes": freezes }
|
38
|
+
end
|
39
|
+
|
40
|
+
# Deserialize a JSON object to an instance of WebhooksStreakFreezeEarnedPayload
|
41
|
+
#
|
42
|
+
# @param json_object [String]
|
43
|
+
# @return [TrophyApiClient::WebhooksStreakFreezeEarnedPayload]
|
44
|
+
def self.from_json(json_object:)
|
45
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
46
|
+
parsed_json = JSON.parse(json_object)
|
47
|
+
type = parsed_json["type"]
|
48
|
+
if parsed_json["user"].nil?
|
49
|
+
user = nil
|
50
|
+
else
|
51
|
+
user = parsed_json["user"].to_json
|
52
|
+
user = TrophyApiClient::User.from_json(json_object: user)
|
53
|
+
end
|
54
|
+
earned = parsed_json["earned"]
|
55
|
+
freezes = parsed_json["freezes"]
|
56
|
+
new(
|
57
|
+
type: type,
|
58
|
+
user: user,
|
59
|
+
earned: earned,
|
60
|
+
freezes: freezes,
|
61
|
+
additional_properties: struct
|
62
|
+
)
|
63
|
+
end
|
64
|
+
|
65
|
+
# Serialize an instance of WebhooksStreakFreezeEarnedPayload to a JSON object
|
66
|
+
#
|
67
|
+
# @return [String]
|
68
|
+
def to_json(*_args)
|
69
|
+
@_field_set&.to_json
|
70
|
+
end
|
71
|
+
|
72
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
73
|
+
# hash and check each fields type against the current object's property
|
74
|
+
# definitions.
|
75
|
+
#
|
76
|
+
# @param obj [Object]
|
77
|
+
# @return [Void]
|
78
|
+
def self.validate_raw(obj:)
|
79
|
+
obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
80
|
+
TrophyApiClient::User.validate_raw(obj: obj.user)
|
81
|
+
obj.earned.is_a?(Integer) != false || raise("Passed value for field obj.earned is not the expected type, validation failed.")
|
82
|
+
obj.freezes.is_a?(Integer) != false || raise("Passed value for field obj.freezes is not the expected type, validation failed.")
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
@@ -0,0 +1,78 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "user"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module TrophyApiClient
|
8
|
+
class WebhooksStreakLostPayload
|
9
|
+
# @return [String] The webhook event type.
|
10
|
+
attr_reader :type
|
11
|
+
# @return [TrophyApiClient::User] The user who lost the streak.
|
12
|
+
attr_reader :user
|
13
|
+
# @return [Integer] The length of the streak that was lost.
|
14
|
+
attr_reader :length
|
15
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
16
|
+
attr_reader :additional_properties
|
17
|
+
# @return [Object]
|
18
|
+
attr_reader :_field_set
|
19
|
+
protected :_field_set
|
20
|
+
|
21
|
+
OMIT = Object.new
|
22
|
+
|
23
|
+
# @param type [String] The webhook event type.
|
24
|
+
# @param user [TrophyApiClient::User] The user who lost the streak.
|
25
|
+
# @param length [Integer] The length of the streak that was lost.
|
26
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
27
|
+
# @return [TrophyApiClient::WebhooksStreakLostPayload]
|
28
|
+
def initialize(type:, user:, length:, additional_properties: nil)
|
29
|
+
@type = type
|
30
|
+
@user = user
|
31
|
+
@length = length
|
32
|
+
@additional_properties = additional_properties
|
33
|
+
@_field_set = { "type": type, "user": user, "length": length }
|
34
|
+
end
|
35
|
+
|
36
|
+
# Deserialize a JSON object to an instance of WebhooksStreakLostPayload
|
37
|
+
#
|
38
|
+
# @param json_object [String]
|
39
|
+
# @return [TrophyApiClient::WebhooksStreakLostPayload]
|
40
|
+
def self.from_json(json_object:)
|
41
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
42
|
+
parsed_json = JSON.parse(json_object)
|
43
|
+
type = parsed_json["type"]
|
44
|
+
if parsed_json["user"].nil?
|
45
|
+
user = nil
|
46
|
+
else
|
47
|
+
user = parsed_json["user"].to_json
|
48
|
+
user = TrophyApiClient::User.from_json(json_object: user)
|
49
|
+
end
|
50
|
+
length = parsed_json["length"]
|
51
|
+
new(
|
52
|
+
type: type,
|
53
|
+
user: user,
|
54
|
+
length: length,
|
55
|
+
additional_properties: struct
|
56
|
+
)
|
57
|
+
end
|
58
|
+
|
59
|
+
# Serialize an instance of WebhooksStreakLostPayload to a JSON object
|
60
|
+
#
|
61
|
+
# @return [String]
|
62
|
+
def to_json(*_args)
|
63
|
+
@_field_set&.to_json
|
64
|
+
end
|
65
|
+
|
66
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
67
|
+
# hash and check each fields type against the current object's property
|
68
|
+
# definitions.
|
69
|
+
#
|
70
|
+
# @param obj [Object]
|
71
|
+
# @return [Void]
|
72
|
+
def self.validate_raw(obj:)
|
73
|
+
obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
74
|
+
TrophyApiClient::User.validate_raw(obj: obj.user)
|
75
|
+
obj.length.is_a?(Integer) != false || raise("Passed value for field obj.length is not the expected type, validation failed.")
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
@@ -0,0 +1,84 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "user"
|
4
|
+
require_relative "base_streak_response"
|
5
|
+
require "ostruct"
|
6
|
+
require "json"
|
7
|
+
|
8
|
+
module TrophyApiClient
|
9
|
+
class WebhooksStreakStartedPayload
|
10
|
+
# @return [String] The webhook event type.
|
11
|
+
attr_reader :type
|
12
|
+
# @return [TrophyApiClient::User] The user who started the streak.
|
13
|
+
attr_reader :user
|
14
|
+
# @return [TrophyApiClient::BaseStreakResponse] The streak that was started.
|
15
|
+
attr_reader :streak
|
16
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
17
|
+
attr_reader :additional_properties
|
18
|
+
# @return [Object]
|
19
|
+
attr_reader :_field_set
|
20
|
+
protected :_field_set
|
21
|
+
|
22
|
+
OMIT = Object.new
|
23
|
+
|
24
|
+
# @param type [String] The webhook event type.
|
25
|
+
# @param user [TrophyApiClient::User] The user who started the streak.
|
26
|
+
# @param streak [TrophyApiClient::BaseStreakResponse] The streak that was started.
|
27
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
28
|
+
# @return [TrophyApiClient::WebhooksStreakStartedPayload]
|
29
|
+
def initialize(type:, user:, streak:, additional_properties: nil)
|
30
|
+
@type = type
|
31
|
+
@user = user
|
32
|
+
@streak = streak
|
33
|
+
@additional_properties = additional_properties
|
34
|
+
@_field_set = { "type": type, "user": user, "streak": streak }
|
35
|
+
end
|
36
|
+
|
37
|
+
# Deserialize a JSON object to an instance of WebhooksStreakStartedPayload
|
38
|
+
#
|
39
|
+
# @param json_object [String]
|
40
|
+
# @return [TrophyApiClient::WebhooksStreakStartedPayload]
|
41
|
+
def self.from_json(json_object:)
|
42
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
43
|
+
parsed_json = JSON.parse(json_object)
|
44
|
+
type = parsed_json["type"]
|
45
|
+
if parsed_json["user"].nil?
|
46
|
+
user = nil
|
47
|
+
else
|
48
|
+
user = parsed_json["user"].to_json
|
49
|
+
user = TrophyApiClient::User.from_json(json_object: user)
|
50
|
+
end
|
51
|
+
if parsed_json["streak"].nil?
|
52
|
+
streak = nil
|
53
|
+
else
|
54
|
+
streak = parsed_json["streak"].to_json
|
55
|
+
streak = TrophyApiClient::BaseStreakResponse.from_json(json_object: streak)
|
56
|
+
end
|
57
|
+
new(
|
58
|
+
type: type,
|
59
|
+
user: user,
|
60
|
+
streak: streak,
|
61
|
+
additional_properties: struct
|
62
|
+
)
|
63
|
+
end
|
64
|
+
|
65
|
+
# Serialize an instance of WebhooksStreakStartedPayload to a JSON object
|
66
|
+
#
|
67
|
+
# @return [String]
|
68
|
+
def to_json(*_args)
|
69
|
+
@_field_set&.to_json
|
70
|
+
end
|
71
|
+
|
72
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
73
|
+
# hash and check each fields type against the current object's property
|
74
|
+
# definitions.
|
75
|
+
#
|
76
|
+
# @param obj [Object]
|
77
|
+
# @return [Void]
|
78
|
+
def self.validate_raw(obj:)
|
79
|
+
obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
80
|
+
TrophyApiClient::User.validate_raw(obj: obj.user)
|
81
|
+
TrophyApiClient::BaseStreakResponse.validate_raw(obj: obj.streak)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|