appwrite 2.2.0 → 3.0.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 (168) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +134 -57
  3. data/lib/appwrite/exception.rb +5 -7
  4. data/lib/appwrite/file.rb +5 -13
  5. data/lib/appwrite/models/attribute_boolean.rb +52 -0
  6. data/lib/appwrite/models/attribute_email.rb +57 -0
  7. data/lib/appwrite/models/attribute_enum.rb +62 -0
  8. data/lib/appwrite/models/attribute_float.rb +62 -0
  9. data/lib/appwrite/models/attribute_integer.rb +62 -0
  10. data/lib/appwrite/models/attribute_ip.rb +57 -0
  11. data/lib/appwrite/models/attribute_list.rb +32 -0
  12. data/lib/appwrite/models/attribute_string.rb +57 -0
  13. data/lib/appwrite/models/attribute_url.rb +57 -0
  14. data/lib/appwrite/models/collection.rb +62 -0
  15. data/lib/appwrite/models/collection_list.rb +32 -0
  16. data/lib/appwrite/models/continent.rb +32 -0
  17. data/lib/appwrite/models/continent_list.rb +32 -0
  18. data/lib/appwrite/models/country.rb +32 -0
  19. data/lib/appwrite/models/country_list.rb +32 -0
  20. data/lib/appwrite/models/currency.rb +57 -0
  21. data/lib/appwrite/models/currency_list.rb +32 -0
  22. data/lib/appwrite/models/document.rb +50 -0
  23. data/lib/appwrite/models/document_list.rb +36 -0
  24. data/lib/appwrite/models/execution.rb +72 -0
  25. data/lib/appwrite/models/execution_list.rb +32 -0
  26. data/lib/appwrite/models/file.rb +62 -0
  27. data/lib/appwrite/models/file_list.rb +32 -0
  28. data/lib/appwrite/models/function.rb +92 -0
  29. data/lib/appwrite/models/function_list.rb +32 -0
  30. data/lib/appwrite/models/health_antivirus.rb +32 -0
  31. data/lib/appwrite/models/health_queue.rb +27 -0
  32. data/lib/appwrite/models/health_status.rb +32 -0
  33. data/lib/appwrite/models/health_time.rb +37 -0
  34. data/lib/appwrite/models/index.rb +47 -0
  35. data/lib/appwrite/models/index_list.rb +32 -0
  36. data/lib/appwrite/models/language.rb +37 -0
  37. data/lib/appwrite/models/language_list.rb +32 -0
  38. data/lib/appwrite/models/locale.rb +57 -0
  39. data/lib/appwrite/models/log.rb +127 -0
  40. data/lib/appwrite/models/log_list.rb +32 -0
  41. data/lib/appwrite/models/membership.rb +67 -0
  42. data/lib/appwrite/models/membership_list.rb +32 -0
  43. data/lib/appwrite/models/phone.rb +37 -0
  44. data/lib/appwrite/models/phone_list.rb +32 -0
  45. data/lib/appwrite/models/preferences.rb +30 -0
  46. data/lib/appwrite/models/runtime.rb +57 -0
  47. data/lib/appwrite/models/runtime_list.rb +32 -0
  48. data/lib/appwrite/models/session.rb +132 -0
  49. data/lib/appwrite/models/session_list.rb +32 -0
  50. data/lib/appwrite/models/tag.rb +47 -0
  51. data/lib/appwrite/models/tag_list.rb +32 -0
  52. data/lib/appwrite/models/team.rb +42 -0
  53. data/lib/appwrite/models/team_list.rb +32 -0
  54. data/lib/appwrite/models/token.rb +42 -0
  55. data/lib/appwrite/models/user.rb +62 -0
  56. data/lib/appwrite/models/user_list.rb +32 -0
  57. data/lib/appwrite/query.rb +42 -0
  58. data/lib/appwrite/service.rb +0 -5
  59. data/lib/appwrite/services/account.rb +380 -133
  60. data/lib/appwrite/services/avatars.rb +189 -125
  61. data/lib/appwrite/services/database.rb +876 -130
  62. data/lib/appwrite/services/functions.rb +366 -184
  63. data/lib/appwrite/services/health.rb +202 -58
  64. data/lib/appwrite/services/locale.rb +134 -32
  65. data/lib/appwrite/services/storage.rb +211 -118
  66. data/lib/appwrite/services/teams.rb +299 -118
  67. data/lib/appwrite/services/users.rb +372 -85
  68. data/lib/appwrite.rb +55 -0
  69. metadata +72 -103
  70. data/.travis.yml +0 -16
  71. data/CHANGELOG.md +0 -1
  72. data/Gemfile +0 -4
  73. data/LICENSE +0 -12
  74. data/README.md +0 -97
  75. data/appwrite.gemspec +0 -11
  76. data/docs/examples/account/create-recovery.md +0 -15
  77. data/docs/examples/account/create-verification.md +0 -15
  78. data/docs/examples/account/delete-session.md +0 -15
  79. data/docs/examples/account/delete-sessions.md +0 -15
  80. data/docs/examples/account/delete.md +0 -15
  81. data/docs/examples/account/get-logs.md +0 -15
  82. data/docs/examples/account/get-prefs.md +0 -15
  83. data/docs/examples/account/get-sessions.md +0 -15
  84. data/docs/examples/account/get.md +0 -15
  85. data/docs/examples/account/update-email.md +0 -15
  86. data/docs/examples/account/update-name.md +0 -15
  87. data/docs/examples/account/update-password.md +0 -15
  88. data/docs/examples/account/update-prefs.md +0 -15
  89. data/docs/examples/account/update-recovery.md +0 -15
  90. data/docs/examples/account/update-verification.md +0 -15
  91. data/docs/examples/avatars/get-browser.md +0 -15
  92. data/docs/examples/avatars/get-credit-card.md +0 -15
  93. data/docs/examples/avatars/get-favicon.md +0 -15
  94. data/docs/examples/avatars/get-flag.md +0 -15
  95. data/docs/examples/avatars/get-image.md +0 -15
  96. data/docs/examples/avatars/get-initials.md +0 -15
  97. data/docs/examples/avatars/get-q-r.md +0 -15
  98. data/docs/examples/database/create-collection.md +0 -15
  99. data/docs/examples/database/create-document.md +0 -15
  100. data/docs/examples/database/delete-collection.md +0 -15
  101. data/docs/examples/database/delete-document.md +0 -15
  102. data/docs/examples/database/get-collection.md +0 -15
  103. data/docs/examples/database/get-document.md +0 -15
  104. data/docs/examples/database/list-collections.md +0 -15
  105. data/docs/examples/database/list-documents.md +0 -15
  106. data/docs/examples/database/update-collection.md +0 -15
  107. data/docs/examples/database/update-document.md +0 -15
  108. data/docs/examples/functions/create-execution.md +0 -15
  109. data/docs/examples/functions/create-tag.md +0 -15
  110. data/docs/examples/functions/create.md +0 -15
  111. data/docs/examples/functions/delete-tag.md +0 -15
  112. data/docs/examples/functions/delete.md +0 -15
  113. data/docs/examples/functions/get-execution.md +0 -15
  114. data/docs/examples/functions/get-tag.md +0 -15
  115. data/docs/examples/functions/get.md +0 -15
  116. data/docs/examples/functions/list-executions.md +0 -15
  117. data/docs/examples/functions/list-tags.md +0 -15
  118. data/docs/examples/functions/list.md +0 -15
  119. data/docs/examples/functions/update-tag.md +0 -15
  120. data/docs/examples/functions/update.md +0 -15
  121. data/docs/examples/health/get-anti-virus.md +0 -15
  122. data/docs/examples/health/get-cache.md +0 -15
  123. data/docs/examples/health/get-d-b.md +0 -15
  124. data/docs/examples/health/get-queue-certificates.md +0 -15
  125. data/docs/examples/health/get-queue-functions.md +0 -15
  126. data/docs/examples/health/get-queue-logs.md +0 -15
  127. data/docs/examples/health/get-queue-tasks.md +0 -15
  128. data/docs/examples/health/get-queue-usage.md +0 -15
  129. data/docs/examples/health/get-queue-webhooks.md +0 -15
  130. data/docs/examples/health/get-storage-local.md +0 -15
  131. data/docs/examples/health/get-time.md +0 -15
  132. data/docs/examples/health/get.md +0 -15
  133. data/docs/examples/locale/get-continents.md +0 -15
  134. data/docs/examples/locale/get-countries-e-u.md +0 -15
  135. data/docs/examples/locale/get-countries-phones.md +0 -15
  136. data/docs/examples/locale/get-countries.md +0 -15
  137. data/docs/examples/locale/get-currencies.md +0 -15
  138. data/docs/examples/locale/get-languages.md +0 -15
  139. data/docs/examples/locale/get.md +0 -15
  140. data/docs/examples/storage/create-file.md +0 -15
  141. data/docs/examples/storage/delete-file.md +0 -15
  142. data/docs/examples/storage/get-file-download.md +0 -15
  143. data/docs/examples/storage/get-file-preview.md +0 -15
  144. data/docs/examples/storage/get-file-view.md +0 -15
  145. data/docs/examples/storage/get-file.md +0 -15
  146. data/docs/examples/storage/list-files.md +0 -15
  147. data/docs/examples/storage/update-file.md +0 -15
  148. data/docs/examples/teams/create-membership.md +0 -15
  149. data/docs/examples/teams/create.md +0 -15
  150. data/docs/examples/teams/delete-membership.md +0 -15
  151. data/docs/examples/teams/delete.md +0 -15
  152. data/docs/examples/teams/get-memberships.md +0 -15
  153. data/docs/examples/teams/get.md +0 -15
  154. data/docs/examples/teams/list.md +0 -15
  155. data/docs/examples/teams/update-membership-roles.md +0 -15
  156. data/docs/examples/teams/update-membership-status.md +0 -15
  157. data/docs/examples/teams/update.md +0 -15
  158. data/docs/examples/users/create.md +0 -15
  159. data/docs/examples/users/delete-session.md +0 -15
  160. data/docs/examples/users/delete-sessions.md +0 -15
  161. data/docs/examples/users/delete.md +0 -15
  162. data/docs/examples/users/get-logs.md +0 -15
  163. data/docs/examples/users/get-prefs.md +0 -15
  164. data/docs/examples/users/get-sessions.md +0 -15
  165. data/docs/examples/users/get.md +0 -15
  166. data/docs/examples/users/list.md +0 -15
  167. data/docs/examples/users/update-prefs.md +0 -15
  168. data/docs/examples/users/update-status.md +0 -15
@@ -0,0 +1,127 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Log
6
+ attr_reader :event
7
+ attr_reader :user_id
8
+ attr_reader :user_email
9
+ attr_reader :user_name
10
+ attr_reader :mode
11
+ attr_reader :ip
12
+ attr_reader :time
13
+ attr_reader :os_code
14
+ attr_reader :os_name
15
+ attr_reader :os_version
16
+ attr_reader :client_type
17
+ attr_reader :client_code
18
+ attr_reader :client_name
19
+ attr_reader :client_version
20
+ attr_reader :client_engine
21
+ attr_reader :client_engine_version
22
+ attr_reader :device_name
23
+ attr_reader :device_brand
24
+ attr_reader :device_model
25
+ attr_reader :country_code
26
+ attr_reader :country_name
27
+
28
+ def initialize(
29
+ event:,
30
+ user_id:,
31
+ user_email:,
32
+ user_name:,
33
+ mode:,
34
+ ip:,
35
+ time:,
36
+ os_code:,
37
+ os_name:,
38
+ os_version:,
39
+ client_type:,
40
+ client_code:,
41
+ client_name:,
42
+ client_version:,
43
+ client_engine:,
44
+ client_engine_version:,
45
+ device_name:,
46
+ device_brand:,
47
+ device_model:,
48
+ country_code:,
49
+ country_name:
50
+ )
51
+ @event = event
52
+ @user_id = user_id
53
+ @user_email = user_email
54
+ @user_name = user_name
55
+ @mode = mode
56
+ @ip = ip
57
+ @time = time
58
+ @os_code = os_code
59
+ @os_name = os_name
60
+ @os_version = os_version
61
+ @client_type = client_type
62
+ @client_code = client_code
63
+ @client_name = client_name
64
+ @client_version = client_version
65
+ @client_engine = client_engine
66
+ @client_engine_version = client_engine_version
67
+ @device_name = device_name
68
+ @device_brand = device_brand
69
+ @device_model = device_model
70
+ @country_code = country_code
71
+ @country_name = country_name
72
+ end
73
+
74
+ def self.from(map:)
75
+ Log.new(
76
+ event: map["event"],
77
+ user_id: map["userId"],
78
+ user_email: map["userEmail"],
79
+ user_name: map["userName"],
80
+ mode: map["mode"],
81
+ ip: map["ip"],
82
+ time: map["time"],
83
+ os_code: map["osCode"],
84
+ os_name: map["osName"],
85
+ os_version: map["osVersion"],
86
+ client_type: map["clientType"],
87
+ client_code: map["clientCode"],
88
+ client_name: map["clientName"],
89
+ client_version: map["clientVersion"],
90
+ client_engine: map["clientEngine"],
91
+ client_engine_version: map["clientEngineVersion"],
92
+ device_name: map["deviceName"],
93
+ device_brand: map["deviceBrand"],
94
+ device_model: map["deviceModel"],
95
+ country_code: map["countryCode"],
96
+ country_name: map["countryName"]
97
+ )
98
+ end
99
+
100
+ def to_map
101
+ {
102
+ "event": @event,
103
+ "userId": @user_id,
104
+ "userEmail": @user_email,
105
+ "userName": @user_name,
106
+ "mode": @mode,
107
+ "ip": @ip,
108
+ "time": @time,
109
+ "osCode": @os_code,
110
+ "osName": @os_name,
111
+ "osVersion": @os_version,
112
+ "clientType": @client_type,
113
+ "clientCode": @client_code,
114
+ "clientName": @client_name,
115
+ "clientVersion": @client_version,
116
+ "clientEngine": @client_engine,
117
+ "clientEngineVersion": @client_engine_version,
118
+ "deviceName": @device_name,
119
+ "deviceBrand": @device_brand,
120
+ "deviceModel": @device_model,
121
+ "countryCode": @country_code,
122
+ "countryName": @country_name
123
+ }
124
+ end
125
+ end
126
+ end
127
+ end
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class LogList
6
+ attr_reader :sum
7
+ attr_reader :logs
8
+
9
+ def initialize(
10
+ sum:,
11
+ logs:
12
+ )
13
+ @sum = sum
14
+ @logs = logs
15
+ end
16
+
17
+ def self.from(map:)
18
+ LogList.new(
19
+ sum: map["sum"],
20
+ logs: map["logs"].map { |it| Log.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "sum": @sum,
27
+ "logs": @logs.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,67 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Membership
6
+ attr_reader :id
7
+ attr_reader :user_id
8
+ attr_reader :team_id
9
+ attr_reader :name
10
+ attr_reader :email
11
+ attr_reader :invited
12
+ attr_reader :joined
13
+ attr_reader :confirm
14
+ attr_reader :roles
15
+
16
+ def initialize(
17
+ id:,
18
+ user_id:,
19
+ team_id:,
20
+ name:,
21
+ email:,
22
+ invited:,
23
+ joined:,
24
+ confirm:,
25
+ roles:
26
+ )
27
+ @id = id
28
+ @user_id = user_id
29
+ @team_id = team_id
30
+ @name = name
31
+ @email = email
32
+ @invited = invited
33
+ @joined = joined
34
+ @confirm = confirm
35
+ @roles = roles
36
+ end
37
+
38
+ def self.from(map:)
39
+ Membership.new(
40
+ id: map["$id"],
41
+ user_id: map["userId"],
42
+ team_id: map["teamId"],
43
+ name: map["name"],
44
+ email: map["email"],
45
+ invited: map["invited"],
46
+ joined: map["joined"],
47
+ confirm: map["confirm"],
48
+ roles: map["roles"]
49
+ )
50
+ end
51
+
52
+ def to_map
53
+ {
54
+ "$id": @id,
55
+ "userId": @user_id,
56
+ "teamId": @team_id,
57
+ "name": @name,
58
+ "email": @email,
59
+ "invited": @invited,
60
+ "joined": @joined,
61
+ "confirm": @confirm,
62
+ "roles": @roles
63
+ }
64
+ end
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class MembershipList
6
+ attr_reader :sum
7
+ attr_reader :memberships
8
+
9
+ def initialize(
10
+ sum:,
11
+ memberships:
12
+ )
13
+ @sum = sum
14
+ @memberships = memberships
15
+ end
16
+
17
+ def self.from(map:)
18
+ MembershipList.new(
19
+ sum: map["sum"],
20
+ memberships: map["memberships"].map { |it| Membership.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "sum": @sum,
27
+ "memberships": @memberships.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,37 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Phone
6
+ attr_reader :code
7
+ attr_reader :country_code
8
+ attr_reader :country_name
9
+
10
+ def initialize(
11
+ code:,
12
+ country_code:,
13
+ country_name:
14
+ )
15
+ @code = code
16
+ @country_code = country_code
17
+ @country_name = country_name
18
+ end
19
+
20
+ def self.from(map:)
21
+ Phone.new(
22
+ code: map["code"],
23
+ country_code: map["countryCode"],
24
+ country_name: map["countryName"]
25
+ )
26
+ end
27
+
28
+ def to_map
29
+ {
30
+ "code": @code,
31
+ "countryCode": @country_code,
32
+ "countryName": @country_name
33
+ }
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class PhoneList
6
+ attr_reader :sum
7
+ attr_reader :phones
8
+
9
+ def initialize(
10
+ sum:,
11
+ phones:
12
+ )
13
+ @sum = sum
14
+ @phones = phones
15
+ end
16
+
17
+ def self.from(map:)
18
+ PhoneList.new(
19
+ sum: map["sum"],
20
+ phones: map["phones"].map { |it| Phone.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "sum": @sum,
27
+ "phones": @phones.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,30 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Preferences
6
+
7
+ def initialize(
8
+ data:
9
+ )
10
+ @data = data
11
+ end
12
+
13
+ def self.from(map:)
14
+ Preferences.new(
15
+ data: map["data"]
16
+ )
17
+ end
18
+
19
+ def to_map
20
+ {
21
+ "data": @data
22
+ }
23
+ end
24
+
25
+ def convert_to(from_json)
26
+ from_json.call(data)
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,57 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Runtime
6
+ attr_reader :id
7
+ attr_reader :name
8
+ attr_reader :version
9
+ attr_reader :base
10
+ attr_reader :image
11
+ attr_reader :logo
12
+ attr_reader :supports
13
+
14
+ def initialize(
15
+ id:,
16
+ name:,
17
+ version:,
18
+ base:,
19
+ image:,
20
+ logo:,
21
+ supports:
22
+ )
23
+ @id = id
24
+ @name = name
25
+ @version = version
26
+ @base = base
27
+ @image = image
28
+ @logo = logo
29
+ @supports = supports
30
+ end
31
+
32
+ def self.from(map:)
33
+ Runtime.new(
34
+ id: map["$id"],
35
+ name: map["name"],
36
+ version: map["version"],
37
+ base: map["base"],
38
+ image: map["image"],
39
+ logo: map["logo"],
40
+ supports: map["supports"]
41
+ )
42
+ end
43
+
44
+ def to_map
45
+ {
46
+ "$id": @id,
47
+ "name": @name,
48
+ "version": @version,
49
+ "base": @base,
50
+ "image": @image,
51
+ "logo": @logo,
52
+ "supports": @supports
53
+ }
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class RuntimeList
6
+ attr_reader :sum
7
+ attr_reader :runtimes
8
+
9
+ def initialize(
10
+ sum:,
11
+ runtimes:
12
+ )
13
+ @sum = sum
14
+ @runtimes = runtimes
15
+ end
16
+
17
+ def self.from(map:)
18
+ RuntimeList.new(
19
+ sum: map["sum"],
20
+ runtimes: map["runtimes"].map { |it| Runtime.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "sum": @sum,
27
+ "runtimes": @runtimes.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,132 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Session
6
+ attr_reader :id
7
+ attr_reader :user_id
8
+ attr_reader :expire
9
+ attr_reader :provider
10
+ attr_reader :provider_uid
11
+ attr_reader :provider_token
12
+ attr_reader :ip
13
+ attr_reader :os_code
14
+ attr_reader :os_name
15
+ attr_reader :os_version
16
+ attr_reader :client_type
17
+ attr_reader :client_code
18
+ attr_reader :client_name
19
+ attr_reader :client_version
20
+ attr_reader :client_engine
21
+ attr_reader :client_engine_version
22
+ attr_reader :device_name
23
+ attr_reader :device_brand
24
+ attr_reader :device_model
25
+ attr_reader :country_code
26
+ attr_reader :country_name
27
+ attr_reader :current
28
+
29
+ def initialize(
30
+ id:,
31
+ user_id:,
32
+ expire:,
33
+ provider:,
34
+ provider_uid:,
35
+ provider_token:,
36
+ ip:,
37
+ os_code:,
38
+ os_name:,
39
+ os_version:,
40
+ client_type:,
41
+ client_code:,
42
+ client_name:,
43
+ client_version:,
44
+ client_engine:,
45
+ client_engine_version:,
46
+ device_name:,
47
+ device_brand:,
48
+ device_model:,
49
+ country_code:,
50
+ country_name:,
51
+ current:
52
+ )
53
+ @id = id
54
+ @user_id = user_id
55
+ @expire = expire
56
+ @provider = provider
57
+ @provider_uid = provider_uid
58
+ @provider_token = provider_token
59
+ @ip = ip
60
+ @os_code = os_code
61
+ @os_name = os_name
62
+ @os_version = os_version
63
+ @client_type = client_type
64
+ @client_code = client_code
65
+ @client_name = client_name
66
+ @client_version = client_version
67
+ @client_engine = client_engine
68
+ @client_engine_version = client_engine_version
69
+ @device_name = device_name
70
+ @device_brand = device_brand
71
+ @device_model = device_model
72
+ @country_code = country_code
73
+ @country_name = country_name
74
+ @current = current
75
+ end
76
+
77
+ def self.from(map:)
78
+ Session.new(
79
+ id: map["$id"],
80
+ user_id: map["userId"],
81
+ expire: map["expire"],
82
+ provider: map["provider"],
83
+ provider_uid: map["providerUid"],
84
+ provider_token: map["providerToken"],
85
+ ip: map["ip"],
86
+ os_code: map["osCode"],
87
+ os_name: map["osName"],
88
+ os_version: map["osVersion"],
89
+ client_type: map["clientType"],
90
+ client_code: map["clientCode"],
91
+ client_name: map["clientName"],
92
+ client_version: map["clientVersion"],
93
+ client_engine: map["clientEngine"],
94
+ client_engine_version: map["clientEngineVersion"],
95
+ device_name: map["deviceName"],
96
+ device_brand: map["deviceBrand"],
97
+ device_model: map["deviceModel"],
98
+ country_code: map["countryCode"],
99
+ country_name: map["countryName"],
100
+ current: map["current"]
101
+ )
102
+ end
103
+
104
+ def to_map
105
+ {
106
+ "$id": @id,
107
+ "userId": @user_id,
108
+ "expire": @expire,
109
+ "provider": @provider,
110
+ "providerUid": @provider_uid,
111
+ "providerToken": @provider_token,
112
+ "ip": @ip,
113
+ "osCode": @os_code,
114
+ "osName": @os_name,
115
+ "osVersion": @os_version,
116
+ "clientType": @client_type,
117
+ "clientCode": @client_code,
118
+ "clientName": @client_name,
119
+ "clientVersion": @client_version,
120
+ "clientEngine": @client_engine,
121
+ "clientEngineVersion": @client_engine_version,
122
+ "deviceName": @device_name,
123
+ "deviceBrand": @device_brand,
124
+ "deviceModel": @device_model,
125
+ "countryCode": @country_code,
126
+ "countryName": @country_name,
127
+ "current": @current
128
+ }
129
+ end
130
+ end
131
+ end
132
+ end
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class SessionList
6
+ attr_reader :sum
7
+ attr_reader :sessions
8
+
9
+ def initialize(
10
+ sum:,
11
+ sessions:
12
+ )
13
+ @sum = sum
14
+ @sessions = sessions
15
+ end
16
+
17
+ def self.from(map:)
18
+ SessionList.new(
19
+ sum: map["sum"],
20
+ sessions: map["sessions"].map { |it| Session.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "sum": @sum,
27
+ "sessions": @sessions.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,47 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Tag
6
+ attr_reader :id
7
+ attr_reader :function_id
8
+ attr_reader :date_created
9
+ attr_reader :command
10
+ attr_reader :size
11
+
12
+ def initialize(
13
+ id:,
14
+ function_id:,
15
+ date_created:,
16
+ command:,
17
+ size:
18
+ )
19
+ @id = id
20
+ @function_id = function_id
21
+ @date_created = date_created
22
+ @command = command
23
+ @size = size
24
+ end
25
+
26
+ def self.from(map:)
27
+ Tag.new(
28
+ id: map["$id"],
29
+ function_id: map["functionId"],
30
+ date_created: map["dateCreated"],
31
+ command: map["command"],
32
+ size: map["size"]
33
+ )
34
+ end
35
+
36
+ def to_map
37
+ {
38
+ "$id": @id,
39
+ "functionId": @function_id,
40
+ "dateCreated": @date_created,
41
+ "command": @command,
42
+ "size": @size
43
+ }
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class TagList
6
+ attr_reader :sum
7
+ attr_reader :tags
8
+
9
+ def initialize(
10
+ sum:,
11
+ tags:
12
+ )
13
+ @sum = sum
14
+ @tags = tags
15
+ end
16
+
17
+ def self.from(map:)
18
+ TagList.new(
19
+ sum: map["sum"],
20
+ tags: map["tags"].map { |it| Tag.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "sum": @sum,
27
+ "tags": @tags.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end