kleister 1.14.1 → 1.15.0

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.
Files changed (111) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +3 -3
  4. data/lib/kleister/api/auth_api.rb +137 -73
  5. data/lib/kleister/api/fabric_api.rb +37 -42
  6. data/lib/kleister/api/forge_api.rb +37 -42
  7. data/lib/kleister/api/{team_api.rb → group_api.rb} +359 -379
  8. data/lib/kleister/api/minecraft_api.rb +37 -42
  9. data/lib/kleister/api/mod_api.rb +471 -232
  10. data/lib/kleister/api/neoforge_api.rb +37 -42
  11. data/lib/kleister/api/pack_api.rb +215 -240
  12. data/lib/kleister/api/profile_api.rb +16 -16
  13. data/lib/kleister/api/quilt_api.rb +37 -42
  14. data/lib/kleister/api/user_api.rb +259 -279
  15. data/lib/kleister/api_client.rb +1 -1
  16. data/lib/kleister/api_error.rb +1 -1
  17. data/lib/kleister/configuration.rb +1 -8
  18. data/lib/kleister/models/{build_version_params.rb → attach_build_to_version_request.rb} +8 -20
  19. data/lib/kleister/models/{quilt_build_params.rb → attach_minecraft_to_build_request.rb} +8 -20
  20. data/lib/kleister/models/auth_token.rb +1 -1
  21. data/lib/kleister/models/auth_verify.rb +1 -1
  22. data/lib/kleister/models/build.rb +3 -13
  23. data/lib/kleister/models/build_version.rb +2 -3
  24. data/lib/kleister/models/{pack_back.rb → create_build_request.rb} +76 -58
  25. data/lib/kleister/models/{mods.rb → create_group_request.rb} +19 -18
  26. data/lib/kleister/models/{pack_icon.rb → create_mod_request.rb} +48 -54
  27. data/lib/kleister/models/{forge_builds.rb → create_pack_request.rb} +33 -23
  28. data/lib/kleister/models/create_user_request.rb +257 -0
  29. data/lib/kleister/models/{builds.rb → create_version_request.rb} +25 -23
  30. data/lib/kleister/models/{packs.rb → delete_group_from_mod_request.rb} +20 -21
  31. data/lib/kleister/models/delete_group_from_pack_request.rb +219 -0
  32. data/lib/kleister/models/delete_pack_from_group_request.rb +219 -0
  33. data/lib/kleister/models/{users.rb → delete_pack_from_user_request.rb} +20 -21
  34. data/lib/kleister/models/fabric.rb +1 -1
  35. data/lib/kleister/models/forge.rb +1 -1
  36. data/lib/kleister/models/{team.rb → group.rb} +5 -5
  37. data/lib/kleister/models/{team_mod.rb → group_mod.rb} +21 -21
  38. data/lib/kleister/models/{team_pack.rb → group_pack.rb} +21 -21
  39. data/lib/kleister/models/{build_versions.rb → list_build_versions200_response.rb} +56 -18
  40. data/lib/kleister/models/{pack_teams.rb → list_builds200_response.rb} +59 -20
  41. data/lib/kleister/models/{fabric_builds.rb → list_fabric_builds200_response.rb} +56 -18
  42. data/lib/kleister/models/{fabrics.rb → list_fabrics200_response.rb} +52 -13
  43. data/lib/kleister/models/list_forge_builds200_response.rb +266 -0
  44. data/lib/kleister/models/{forges.rb → list_forges200_response.rb} +52 -13
  45. data/lib/kleister/models/list_group_mods200_response.rb +266 -0
  46. data/lib/kleister/models/list_group_packs200_response.rb +266 -0
  47. data/lib/kleister/models/list_group_users200_response.rb +266 -0
  48. data/lib/kleister/models/list_groups200_response.rb +259 -0
  49. data/lib/kleister/models/{minecraft_builds.rb → list_minecraft_builds200_response.rb} +56 -18
  50. data/lib/kleister/models/list_minecrafts200_response.rb +259 -0
  51. data/lib/kleister/models/list_mod_groups200_response.rb +266 -0
  52. data/lib/kleister/models/list_mod_users200_response.rb +266 -0
  53. data/lib/kleister/models/{team_mods.rb → list_mods200_response.rb} +52 -20
  54. data/lib/kleister/models/{neoforge_builds.rb → list_neoforge_builds200_response.rb} +56 -18
  55. data/lib/kleister/models/{neoforges.rb → list_neoforges200_response.rb} +52 -13
  56. data/lib/kleister/models/list_pack_groups200_response.rb +266 -0
  57. data/lib/kleister/models/{pack_users.rb → list_pack_users200_response.rb} +56 -17
  58. data/lib/kleister/models/list_packs200_response.rb +259 -0
  59. data/lib/kleister/models/{mod_teams.rb → list_providers200_response.rb} +31 -23
  60. data/lib/kleister/models/{quilt_builds.rb → list_quilt_builds200_response.rb} +56 -17
  61. data/lib/kleister/models/{quilts.rb → list_quilts200_response.rb} +52 -13
  62. data/lib/kleister/models/list_user_groups200_response.rb +266 -0
  63. data/lib/kleister/models/{user_teams.rb → list_user_mods200_response.rb} +59 -20
  64. data/lib/kleister/models/{user_packs.rb → list_user_packs200_response.rb} +56 -17
  65. data/lib/kleister/models/{team_users.rb → list_users200_response.rb} +52 -20
  66. data/lib/kleister/models/{version_builds.rb → list_version_builds200_response.rb} +56 -18
  67. data/lib/kleister/models/{versions.rb → list_versions200_response.rb} +52 -13
  68. data/lib/kleister/models/{auth_login.rb → login_auth_request.rb} +4 -4
  69. data/lib/kleister/models/minecraft.rb +1 -1
  70. data/lib/kleister/models/mod.rb +10 -3
  71. data/lib/kleister/models/{team_packs.rb → mod_avatar.rb} +32 -23
  72. data/lib/kleister/models/neoforge.rb +1 -1
  73. data/lib/kleister/models/notification.rb +2 -3
  74. data/lib/kleister/models/pack.rb +8 -22
  75. data/lib/kleister/models/{minecrafts.rb → pack_avatar.rb} +34 -18
  76. data/lib/kleister/models/{mod_users.rb → permit_group_mod_request.rb} +29 -25
  77. data/lib/kleister/models/{forge_build_params.rb → permit_group_pack_request.rb} +15 -17
  78. data/lib/kleister/models/{fabric_build_params.rb → permit_pack_group_request.rb} +24 -26
  79. data/lib/kleister/models/{user_mods.rb → permit_pack_user_request.rb} +29 -25
  80. data/lib/kleister/models/profile.rb +20 -20
  81. data/lib/kleister/models/provider.rb +1 -1
  82. data/lib/kleister/models/quilt.rb +1 -1
  83. data/lib/kleister/models/{teams.rb → redirect_auth_request.rb} +20 -21
  84. data/lib/kleister/models/update_profile_request.rb +237 -0
  85. data/lib/kleister/models/update_user_request.rb +253 -0
  86. data/lib/kleister/models/user.rb +1 -1
  87. data/lib/kleister/models/user_auth.rb +1 -1
  88. data/lib/kleister/models/{user_team.rb → user_group.rb} +23 -23
  89. data/lib/kleister/models/user_mod.rb +1 -1
  90. data/lib/kleister/models/user_pack.rb +1 -1
  91. data/lib/kleister/models/validation.rb +1 -1
  92. data/lib/kleister/models/version.rb +3 -11
  93. data/lib/kleister/models/version_file.rb +3 -18
  94. data/lib/kleister/version.rb +2 -2
  95. data/lib/kleister.rb +57 -56
  96. metadata +58 -57
  97. data/lib/kleister/models/minecraft_build_params.rb +0 -233
  98. data/lib/kleister/models/mod_team_params.rb +0 -265
  99. data/lib/kleister/models/mod_user_params.rb +0 -265
  100. data/lib/kleister/models/neoforge_build_params.rb +0 -233
  101. data/lib/kleister/models/pack_logo.rb +0 -275
  102. data/lib/kleister/models/pack_team_params.rb +0 -265
  103. data/lib/kleister/models/pack_user_params.rb +0 -265
  104. data/lib/kleister/models/providers.rb +0 -220
  105. data/lib/kleister/models/team_mod_params.rb +0 -265
  106. data/lib/kleister/models/team_pack_params.rb +0 -265
  107. data/lib/kleister/models/team_user_params.rb +0 -265
  108. data/lib/kleister/models/user_mod_params.rb +0 -265
  109. data/lib/kleister/models/user_pack_params.rb +0 -265
  110. data/lib/kleister/models/user_team_params.rb +0 -265
  111. data/lib/kleister/models/version_build_params.rb +0 -233
@@ -5,29 +5,27 @@
5
5
  # The version of the OpenAPI document: 1.0.0-alpha1
6
6
  # Contact: kleister@webhippie.de
7
7
  # Generated by: https://openapi-generator.tech
8
- # Generator version: 7.6.0
8
+ # Generator version: 7.12.0
9
9
  #
10
10
 
11
11
  require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Kleister
15
- # Model to represent pack icon
16
- class PackIcon
17
- attr_accessor :id, :slug, :content_type, :md5, :path, :url, :upload, :created_at, :updated_at
15
+ class CreateModRequest
16
+ attr_accessor :slug, :name, :side, :description, :author, :website, :donate, :public
18
17
 
19
18
  # Attribute mapping from ruby-style variable name to JSON key.
20
19
  def self.attribute_map
21
20
  {
22
- id: :id,
23
21
  slug: :slug,
24
- content_type: :content_type,
25
- md5: :md5,
26
- path: :path,
27
- url: :url,
28
- upload: :upload,
29
- created_at: :created_at,
30
- updated_at: :updated_at
22
+ name: :name,
23
+ side: :side,
24
+ description: :description,
25
+ author: :author,
26
+ website: :website,
27
+ donate: :donate,
28
+ public: :public
31
29
  }
32
30
  end
33
31
 
@@ -39,15 +37,14 @@ module Kleister
39
37
  # Attribute type mapping.
40
38
  def self.openapi_types
41
39
  {
42
- id: :String,
43
40
  slug: :String,
44
- content_type: :String,
45
- md5: :String,
46
- path: :String,
47
- url: :String,
48
- upload: :String,
49
- created_at: :Time,
50
- updated_at: :Time
41
+ name: :String,
42
+ side: :String,
43
+ description: :String,
44
+ author: :String,
45
+ website: :String,
46
+ donate: :String,
47
+ public: :Boolean
51
48
  }
52
49
  end
53
50
 
@@ -55,11 +52,13 @@ module Kleister
55
52
  def self.openapi_nullable
56
53
  Set.new(%i[
57
54
  slug
58
- content_type
59
- md5
60
- path
61
- url
62
- upload
55
+ name
56
+ side
57
+ description
58
+ author
59
+ website
60
+ donate
61
+ public
63
62
  ])
64
63
  end
65
64
 
@@ -67,52 +66,48 @@ module Kleister
67
66
  # @param [Hash] attributes Model attributes in the form of hash
68
67
  def initialize(attributes = {})
69
68
  unless attributes.is_a?(Hash)
70
- raise ArgumentError, 'The input argument (attributes) must be a hash in `Kleister::PackIcon` initialize method'
69
+ raise ArgumentError, 'The input argument (attributes) must be a hash in `Kleister::CreateModRequest` initialize method'
71
70
  end
72
71
 
73
72
  # check to see if the attribute exists and convert string to symbol for hash key
74
73
  attributes = attributes.each_with_object({}) do |(k, v), h|
75
74
  unless self.class.attribute_map.key?(k.to_sym)
76
- raise ArgumentError, "`#{k}` is not a valid attribute in `Kleister::PackIcon`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
75
+ raise ArgumentError, "`#{k}` is not a valid attribute in `Kleister::CreateModRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
77
76
  end
78
77
 
79
78
  h[k.to_sym] = v
80
79
  end
81
80
 
82
- if attributes.key?(:id)
83
- self.id = attributes[:id]
84
- end
85
-
86
81
  if attributes.key?(:slug)
87
82
  self.slug = attributes[:slug]
88
83
  end
89
84
 
90
- if attributes.key?(:content_type)
91
- self.content_type = attributes[:content_type]
85
+ if attributes.key?(:name)
86
+ self.name = attributes[:name]
92
87
  end
93
88
 
94
- if attributes.key?(:md5)
95
- self.md5 = attributes[:md5]
89
+ if attributes.key?(:side)
90
+ self.side = attributes[:side]
96
91
  end
97
92
 
98
- if attributes.key?(:path)
99
- self.path = attributes[:path]
93
+ if attributes.key?(:description)
94
+ self.description = attributes[:description]
100
95
  end
101
96
 
102
- if attributes.key?(:url)
103
- self.url = attributes[:url]
97
+ if attributes.key?(:author)
98
+ self.author = attributes[:author]
104
99
  end
105
100
 
106
- if attributes.key?(:upload)
107
- self.upload = attributes[:upload]
101
+ if attributes.key?(:website)
102
+ self.website = attributes[:website]
108
103
  end
109
104
 
110
- if attributes.key?(:created_at)
111
- self.created_at = attributes[:created_at]
105
+ if attributes.key?(:donate)
106
+ self.donate = attributes[:donate]
112
107
  end
113
108
 
114
- if attributes.key?(:updated_at)
115
- self.updated_at = attributes[:updated_at]
109
+ if attributes.key?(:public)
110
+ self.public = attributes[:public]
116
111
  end
117
112
  end
118
113
 
@@ -136,15 +131,14 @@ module Kleister
136
131
  return true if equal?(other)
137
132
 
138
133
  self.class == other.class &&
139
- id == other.id &&
140
134
  slug == other.slug &&
141
- content_type == other.content_type &&
142
- md5 == other.md5 &&
143
- path == other.path &&
144
- url == other.url &&
145
- upload == other.upload &&
146
- created_at == other.created_at &&
147
- updated_at == other.updated_at
135
+ name == other.name &&
136
+ side == other.side &&
137
+ description == other.description &&
138
+ author == other.author &&
139
+ website == other.website &&
140
+ donate == other.donate &&
141
+ public == other.public
148
142
  end
149
143
 
150
144
  # @see the `==` method
@@ -156,7 +150,7 @@ module Kleister
156
150
  # Calculates hash code according to all attributes.
157
151
  # @return [Integer] Hash code
158
152
  def hash
159
- [id, slug, content_type, md5, path, url, upload, created_at, updated_at].hash
153
+ [slug, name, side, description, author, website, donate, public].hash
160
154
  end
161
155
 
162
156
  # Builds the object from hash
@@ -5,23 +5,23 @@
5
5
  # The version of the OpenAPI document: 1.0.0-alpha1
6
6
  # Contact: kleister@webhippie.de
7
7
  # Generated by: https://openapi-generator.tech
8
- # Generator version: 7.6.0
8
+ # Generator version: 7.12.0
9
9
  #
10
10
 
11
11
  require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Kleister
15
- # Model to represent forge builds
16
- class ForgeBuilds
17
- attr_accessor :forge, :total, :builds
15
+ class CreatePackRequest
16
+ attr_accessor :slug, :name, :website, :public
18
17
 
19
18
  # Attribute mapping from ruby-style variable name to JSON key.
20
19
  def self.attribute_map
21
20
  {
22
- forge: :forge,
23
- total: :total,
24
- builds: :builds
21
+ slug: :slug,
22
+ name: :name,
23
+ website: :website,
24
+ public: :public
25
25
  }
26
26
  end
27
27
 
@@ -33,15 +33,20 @@ module Kleister
33
33
  # Attribute type mapping.
34
34
  def self.openapi_types
35
35
  {
36
- forge: :Forge,
37
- total: :Integer,
38
- builds: :'Array<Build>'
36
+ slug: :String,
37
+ name: :String,
38
+ website: :String,
39
+ public: :Boolean
39
40
  }
40
41
  end
41
42
 
42
43
  # List of attributes with nullable: true
43
44
  def self.openapi_nullable
44
- Set.new([
45
+ Set.new(%i[
46
+ slug
47
+ name
48
+ website
49
+ public
45
50
  ])
46
51
  end
47
52
 
@@ -49,28 +54,32 @@ module Kleister
49
54
  # @param [Hash] attributes Model attributes in the form of hash
50
55
  def initialize(attributes = {})
51
56
  unless attributes.is_a?(Hash)
52
- raise ArgumentError, 'The input argument (attributes) must be a hash in `Kleister::ForgeBuilds` initialize method'
57
+ raise ArgumentError, 'The input argument (attributes) must be a hash in `Kleister::CreatePackRequest` initialize method'
53
58
  end
54
59
 
55
60
  # check to see if the attribute exists and convert string to symbol for hash key
56
61
  attributes = attributes.each_with_object({}) do |(k, v), h|
57
62
  unless self.class.attribute_map.key?(k.to_sym)
58
- raise ArgumentError, "`#{k}` is not a valid attribute in `Kleister::ForgeBuilds`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
63
+ raise ArgumentError, "`#{k}` is not a valid attribute in `Kleister::CreatePackRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
59
64
  end
60
65
 
61
66
  h[k.to_sym] = v
62
67
  end
63
68
 
64
- if attributes.key?(:forge)
65
- self.forge = attributes[:forge]
69
+ if attributes.key?(:slug)
70
+ self.slug = attributes[:slug]
66
71
  end
67
72
 
68
- if attributes.key?(:total)
69
- self.total = attributes[:total]
73
+ if attributes.key?(:name)
74
+ self.name = attributes[:name]
70
75
  end
71
76
 
72
- if attributes.key?(:builds) && (value = attributes[:builds]).is_a?(Array)
73
- self.builds = value
77
+ if attributes.key?(:website)
78
+ self.website = attributes[:website]
79
+ end
80
+
81
+ if attributes.key?(:public)
82
+ self.public = attributes[:public]
74
83
  end
75
84
  end
76
85
 
@@ -94,9 +103,10 @@ module Kleister
94
103
  return true if equal?(other)
95
104
 
96
105
  self.class == other.class &&
97
- forge == other.forge &&
98
- total == other.total &&
99
- builds == other.builds
106
+ slug == other.slug &&
107
+ name == other.name &&
108
+ website == other.website &&
109
+ public == other.public
100
110
  end
101
111
 
102
112
  # @see the `==` method
@@ -108,7 +118,7 @@ module Kleister
108
118
  # Calculates hash code according to all attributes.
109
119
  # @return [Integer] Hash code
110
120
  def hash
111
- [forge, total, builds].hash
121
+ [slug, name, website, public].hash
112
122
  end
113
123
 
114
124
  # Builds the object from hash
@@ -0,0 +1,257 @@
1
+ # Kleister OpenAPI
2
+ #
3
+ # API definition for Kleister, manage mod packs for Minecraft
4
+ #
5
+ # The version of the OpenAPI document: 1.0.0-alpha1
6
+ # Contact: kleister@webhippie.de
7
+ # Generated by: https://openapi-generator.tech
8
+ # Generator version: 7.12.0
9
+ #
10
+
11
+ require 'date'
12
+ require 'time'
13
+
14
+ module Kleister
15
+ class CreateUserRequest
16
+ attr_accessor :username, :password, :email, :fullname, :admin, :active
17
+
18
+ # Attribute mapping from ruby-style variable name to JSON key.
19
+ def self.attribute_map
20
+ {
21
+ username: :username,
22
+ password: :password,
23
+ email: :email,
24
+ fullname: :fullname,
25
+ admin: :admin,
26
+ active: :active
27
+ }
28
+ end
29
+
30
+ # Returns all the JSON keys this model knows about
31
+ def self.acceptable_attributes
32
+ attribute_map.values
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ def self.openapi_types
37
+ {
38
+ username: :String,
39
+ password: :String,
40
+ email: :String,
41
+ fullname: :String,
42
+ admin: :Boolean,
43
+ active: :Boolean
44
+ }
45
+ end
46
+
47
+ # List of attributes with nullable: true
48
+ def self.openapi_nullable
49
+ Set.new(%i[
50
+ username
51
+ password
52
+ email
53
+ fullname
54
+ admin
55
+ active
56
+ ])
57
+ end
58
+
59
+ # Initializes the object
60
+ # @param [Hash] attributes Model attributes in the form of hash
61
+ def initialize(attributes = {})
62
+ unless attributes.is_a?(Hash)
63
+ raise ArgumentError, 'The input argument (attributes) must be a hash in `Kleister::CreateUserRequest` initialize method'
64
+ end
65
+
66
+ # check to see if the attribute exists and convert string to symbol for hash key
67
+ attributes = attributes.each_with_object({}) do |(k, v), h|
68
+ unless self.class.attribute_map.key?(k.to_sym)
69
+ raise ArgumentError, "`#{k}` is not a valid attribute in `Kleister::CreateUserRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
70
+ end
71
+
72
+ h[k.to_sym] = v
73
+ end
74
+
75
+ if attributes.key?(:username)
76
+ self.username = attributes[:username]
77
+ end
78
+
79
+ if attributes.key?(:password)
80
+ self.password = attributes[:password]
81
+ end
82
+
83
+ if attributes.key?(:email)
84
+ self.email = attributes[:email]
85
+ end
86
+
87
+ if attributes.key?(:fullname)
88
+ self.fullname = attributes[:fullname]
89
+ end
90
+
91
+ self.admin = if attributes.key?(:admin)
92
+ attributes[:admin]
93
+ else
94
+ false
95
+ end
96
+
97
+ self.active = if attributes.key?(:active)
98
+ attributes[:active]
99
+ else
100
+ true
101
+ end
102
+ end
103
+
104
+ # Show invalid properties with the reasons. Usually used together with valid?
105
+ # @return Array for valid properties with the reasons
106
+ def list_invalid_properties
107
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
108
+ []
109
+ end
110
+
111
+ # Check to see if the all the properties in the model are valid
112
+ # @return true if the model is valid
113
+ def valid?
114
+ warn '[DEPRECATED] the `valid?` method is obsolete'
115
+ true
116
+ end
117
+
118
+ # Checks equality by comparing each attribute.
119
+ # @param [Object] Object to be compared
120
+ def ==(other)
121
+ return true if equal?(other)
122
+
123
+ self.class == other.class &&
124
+ username == other.username &&
125
+ password == other.password &&
126
+ email == other.email &&
127
+ fullname == other.fullname &&
128
+ admin == other.admin &&
129
+ active == other.active
130
+ end
131
+
132
+ # @see the `==` method
133
+ # @param [Object] Object to be compared
134
+ def eql?(other)
135
+ self == other
136
+ end
137
+
138
+ # Calculates hash code according to all attributes.
139
+ # @return [Integer] Hash code
140
+ def hash
141
+ [username, password, email, fullname, admin, active].hash
142
+ end
143
+
144
+ # Builds the object from hash
145
+ # @param [Hash] attributes Model attributes in the form of hash
146
+ # @return [Object] Returns the model itself
147
+ def self.build_from_hash(attributes)
148
+ return nil unless attributes.is_a?(Hash)
149
+
150
+ attributes = attributes.transform_keys(&:to_sym)
151
+ transformed_hash = {}
152
+ openapi_types.each_pair do |key, type|
153
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
154
+ transformed_hash[key.to_s] = nil
155
+ elsif type =~ /\AArray<(.*)>/i
156
+ # check to ensure the input is an array given that the attribute
157
+ # is documented as an array but the input is not
158
+ if attributes[attribute_map[key]].is_a?(Array)
159
+ transformed_hash[key.to_s] = attributes[attribute_map[key]].map { |v| _deserialize(::Regexp.last_match(1), v) }
160
+ end
161
+ elsif !attributes[attribute_map[key]].nil?
162
+ transformed_hash[key.to_s] = _deserialize(type, attributes[attribute_map[key]])
163
+ end
164
+ end
165
+ new(transformed_hash)
166
+ end
167
+
168
+ # Deserializes the data based on type
169
+ # @param string type Data type
170
+ # @param string value Value to be deserialized
171
+ # @return [Object] Deserialized data
172
+ def self._deserialize(type, value)
173
+ case type.to_sym
174
+ when :Time
175
+ Time.parse(value)
176
+ when :Date
177
+ Date.parse(value)
178
+ when :String
179
+ value.to_s
180
+ when :Integer
181
+ value.to_i
182
+ when :Float
183
+ value.to_f
184
+ when :Boolean
185
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
186
+ true
187
+ else
188
+ false
189
+ end
190
+ when :Object
191
+ # generic object (usually a Hash), return directly
192
+ value
193
+ when /\AArray<(?<inner_type>.+)>\z/
194
+ inner_type = Regexp.last_match[:inner_type]
195
+ value.map { |v| _deserialize(inner_type, v) }
196
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
197
+ k_type = Regexp.last_match[:k_type]
198
+ v_type = Regexp.last_match[:v_type]
199
+ {}.tap do |hash|
200
+ value.each do |k, v|
201
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
202
+ end
203
+ end
204
+ else # model
205
+ # models (e.g. Pet) or oneOf
206
+ klass = Kleister.const_get(type)
207
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
208
+ end
209
+ end
210
+
211
+ # Returns the string representation of the object
212
+ # @return [String] String presentation of the object
213
+ def to_s
214
+ to_hash.to_s
215
+ end
216
+
217
+ # to_body is an alias to to_hash (backward compatibility)
218
+ # @return [Hash] Returns the object in the form of hash
219
+ def to_body
220
+ to_hash
221
+ end
222
+
223
+ # Returns the object in the form of hash
224
+ # @return [Hash] Returns the object in the form of hash
225
+ def to_hash
226
+ hash = {}
227
+ self.class.attribute_map.each_pair do |attr, param|
228
+ value = send(attr)
229
+ if value.nil?
230
+ is_nullable = self.class.openapi_nullable.include?(attr)
231
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
232
+ end
233
+
234
+ hash[param] = _to_hash(value)
235
+ end
236
+ hash
237
+ end
238
+
239
+ # Outputs non-array value in the form of hash
240
+ # For object, use to_hash. Otherwise, just return the value
241
+ # @param [Object] value Any valid value
242
+ # @return [Hash] Returns the value in the form of hash
243
+ def _to_hash(value)
244
+ if value.is_a?(Array)
245
+ value.compact.map { |v| _to_hash(v) }
246
+ elsif value.is_a?(Hash)
247
+ {}.tap do |hash|
248
+ value.each { |k, v| hash[k] = _to_hash(v) }
249
+ end
250
+ elsif value.respond_to? :to_hash
251
+ value.to_hash
252
+ else
253
+ value
254
+ end
255
+ end
256
+ end
257
+ end
@@ -5,23 +5,22 @@
5
5
  # The version of the OpenAPI document: 1.0.0-alpha1
6
6
  # Contact: kleister@webhippie.de
7
7
  # Generated by: https://openapi-generator.tech
8
- # Generator version: 7.6.0
8
+ # Generator version: 7.12.0
9
9
  #
10
10
 
11
11
  require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Kleister
15
- # Model to represent list of builds
16
- class Builds
17
- attr_accessor :total, :pack, :builds
15
+ class CreateVersionRequest
16
+ attr_accessor :name, :public, :upload
18
17
 
19
18
  # Attribute mapping from ruby-style variable name to JSON key.
20
19
  def self.attribute_map
21
20
  {
22
- total: :total,
23
- pack: :pack,
24
- builds: :builds
21
+ name: :name,
22
+ public: :public,
23
+ upload: :upload
25
24
  }
26
25
  end
27
26
 
@@ -33,15 +32,18 @@ module Kleister
33
32
  # Attribute type mapping.
34
33
  def self.openapi_types
35
34
  {
36
- total: :Integer,
37
- pack: :Pack,
38
- builds: :'Array<Build>'
35
+ name: :String,
36
+ public: :Boolean,
37
+ upload: :String
39
38
  }
40
39
  end
41
40
 
42
41
  # List of attributes with nullable: true
43
42
  def self.openapi_nullable
44
- Set.new([
43
+ Set.new(%i[
44
+ name
45
+ public
46
+ upload
45
47
  ])
46
48
  end
47
49
 
@@ -49,28 +51,28 @@ module Kleister
49
51
  # @param [Hash] attributes Model attributes in the form of hash
50
52
  def initialize(attributes = {})
51
53
  unless attributes.is_a?(Hash)
52
- raise ArgumentError, 'The input argument (attributes) must be a hash in `Kleister::Builds` initialize method'
54
+ raise ArgumentError, 'The input argument (attributes) must be a hash in `Kleister::CreateVersionRequest` initialize method'
53
55
  end
54
56
 
55
57
  # check to see if the attribute exists and convert string to symbol for hash key
56
58
  attributes = attributes.each_with_object({}) do |(k, v), h|
57
59
  unless self.class.attribute_map.key?(k.to_sym)
58
- raise ArgumentError, "`#{k}` is not a valid attribute in `Kleister::Builds`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
+ raise ArgumentError, "`#{k}` is not a valid attribute in `Kleister::CreateVersionRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
59
61
  end
60
62
 
61
63
  h[k.to_sym] = v
62
64
  end
63
65
 
64
- if attributes.key?(:total)
65
- self.total = attributes[:total]
66
+ if attributes.key?(:name)
67
+ self.name = attributes[:name]
66
68
  end
67
69
 
68
- if attributes.key?(:pack)
69
- self.pack = attributes[:pack]
70
+ if attributes.key?(:public)
71
+ self.public = attributes[:public]
70
72
  end
71
73
 
72
- if attributes.key?(:builds) && (value = attributes[:builds]).is_a?(Array)
73
- self.builds = value
74
+ if attributes.key?(:upload)
75
+ self.upload = attributes[:upload]
74
76
  end
75
77
  end
76
78
 
@@ -94,9 +96,9 @@ module Kleister
94
96
  return true if equal?(other)
95
97
 
96
98
  self.class == other.class &&
97
- total == other.total &&
98
- pack == other.pack &&
99
- builds == other.builds
99
+ name == other.name &&
100
+ public == other.public &&
101
+ upload == other.upload
100
102
  end
101
103
 
102
104
  # @see the `==` method
@@ -108,7 +110,7 @@ module Kleister
108
110
  # Calculates hash code according to all attributes.
109
111
  # @return [Integer] Hash code
110
112
  def hash
111
- [total, pack, builds].hash
113
+ [name, public, upload].hash
112
114
  end
113
115
 
114
116
  # Builds the object from hash