appwrite 2.4.0 → 4.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/appwrite/client.rb +197 -56
- data/lib/appwrite/exception.rb +7 -7
- data/lib/appwrite/file.rb +9 -15
- data/lib/appwrite/models/attribute_boolean.rb +52 -0
- data/lib/appwrite/models/attribute_email.rb +57 -0
- data/lib/appwrite/models/attribute_enum.rb +62 -0
- data/lib/appwrite/models/attribute_float.rb +62 -0
- data/lib/appwrite/models/attribute_integer.rb +62 -0
- data/lib/appwrite/models/attribute_ip.rb +57 -0
- data/lib/appwrite/models/attribute_list.rb +32 -0
- data/lib/appwrite/models/attribute_string.rb +57 -0
- data/lib/appwrite/models/attribute_url.rb +57 -0
- data/lib/appwrite/models/bucket.rb +82 -0
- data/lib/appwrite/models/bucket_list.rb +32 -0
- data/lib/appwrite/models/collection.rb +62 -0
- data/lib/appwrite/models/collection_list.rb +32 -0
- data/lib/appwrite/models/continent.rb +32 -0
- data/lib/appwrite/models/continent_list.rb +32 -0
- data/lib/appwrite/models/country.rb +32 -0
- data/lib/appwrite/models/country_list.rb +32 -0
- data/lib/appwrite/models/currency.rb +57 -0
- data/lib/appwrite/models/currency_list.rb +32 -0
- data/lib/appwrite/models/deployment.rb +77 -0
- data/lib/appwrite/models/deployment_list.rb +32 -0
- data/lib/appwrite/models/document.rb +50 -0
- data/lib/appwrite/models/document_list.rb +36 -0
- data/lib/appwrite/models/execution.rb +72 -0
- data/lib/appwrite/models/execution_list.rb +32 -0
- data/lib/appwrite/models/file.rb +77 -0
- data/lib/appwrite/models/file_list.rb +32 -0
- data/lib/appwrite/models/function.rb +92 -0
- data/lib/appwrite/models/function_list.rb +32 -0
- data/lib/appwrite/models/health_antivirus.rb +32 -0
- data/lib/appwrite/models/health_queue.rb +27 -0
- data/lib/appwrite/models/health_status.rb +32 -0
- data/lib/appwrite/models/health_time.rb +37 -0
- data/lib/appwrite/models/index.rb +47 -0
- data/lib/appwrite/models/index_list.rb +32 -0
- data/lib/appwrite/models/language.rb +37 -0
- data/lib/appwrite/models/language_list.rb +32 -0
- data/lib/appwrite/models/locale.rb +57 -0
- data/lib/appwrite/models/log.rb +127 -0
- data/lib/appwrite/models/log_list.rb +32 -0
- data/lib/appwrite/models/membership.rb +67 -0
- data/lib/appwrite/models/membership_list.rb +32 -0
- data/lib/appwrite/models/phone.rb +37 -0
- data/lib/appwrite/models/phone_list.rb +32 -0
- data/lib/appwrite/models/preferences.rb +30 -0
- data/lib/appwrite/models/runtime.rb +57 -0
- data/lib/appwrite/models/runtime_list.rb +32 -0
- data/lib/appwrite/models/session.rb +142 -0
- data/lib/appwrite/models/session_list.rb +32 -0
- data/lib/appwrite/models/team.rb +42 -0
- data/lib/appwrite/models/team_list.rb +32 -0
- data/lib/appwrite/models/token.rb +42 -0
- data/lib/appwrite/models/user.rb +62 -0
- data/lib/appwrite/models/user_list.rb +32 -0
- data/lib/appwrite/query.rb +42 -0
- data/lib/appwrite/service.rb +0 -5
- data/lib/appwrite/services/account.rb +400 -138
- data/lib/appwrite/services/avatars.rb +188 -125
- data/lib/appwrite/services/database.rb +875 -130
- data/lib/appwrite/services/functions.rb +439 -207
- data/lib/appwrite/services/health.rb +201 -58
- data/lib/appwrite/services/locale.rb +133 -32
- data/lib/appwrite/services/storage.rb +469 -118
- data/lib/appwrite/services/teams.rb +302 -118
- data/lib/appwrite/services/users.rb +322 -127
- data/lib/appwrite.rb +57 -0
- metadata +74 -108
- data/.travis.yml +0 -16
- data/CHANGELOG.md +0 -1
- data/Gemfile +0 -4
- data/LICENSE +0 -12
- data/README.md +0 -96
- data/appwrite.gemspec +0 -11
- data/docs/examples/account/create-recovery.md +0 -15
- data/docs/examples/account/create-verification.md +0 -15
- data/docs/examples/account/delete-session.md +0 -15
- data/docs/examples/account/delete-sessions.md +0 -15
- data/docs/examples/account/delete.md +0 -15
- data/docs/examples/account/get-logs.md +0 -15
- data/docs/examples/account/get-prefs.md +0 -15
- data/docs/examples/account/get-session.md +0 -15
- data/docs/examples/account/get-sessions.md +0 -15
- data/docs/examples/account/get.md +0 -15
- data/docs/examples/account/update-email.md +0 -15
- data/docs/examples/account/update-name.md +0 -15
- data/docs/examples/account/update-password.md +0 -15
- data/docs/examples/account/update-prefs.md +0 -15
- data/docs/examples/account/update-recovery.md +0 -15
- data/docs/examples/account/update-verification.md +0 -15
- data/docs/examples/avatars/get-browser.md +0 -15
- data/docs/examples/avatars/get-credit-card.md +0 -15
- data/docs/examples/avatars/get-favicon.md +0 -15
- data/docs/examples/avatars/get-flag.md +0 -15
- data/docs/examples/avatars/get-image.md +0 -15
- data/docs/examples/avatars/get-initials.md +0 -15
- data/docs/examples/avatars/get-q-r.md +0 -15
- data/docs/examples/database/create-collection.md +0 -15
- data/docs/examples/database/create-document.md +0 -15
- data/docs/examples/database/delete-collection.md +0 -15
- data/docs/examples/database/delete-document.md +0 -15
- data/docs/examples/database/get-collection.md +0 -15
- data/docs/examples/database/get-document.md +0 -15
- data/docs/examples/database/list-collections.md +0 -15
- data/docs/examples/database/list-documents.md +0 -15
- data/docs/examples/database/update-collection.md +0 -15
- data/docs/examples/database/update-document.md +0 -15
- data/docs/examples/functions/create-execution.md +0 -15
- data/docs/examples/functions/create-tag.md +0 -15
- data/docs/examples/functions/create.md +0 -15
- data/docs/examples/functions/delete-tag.md +0 -15
- data/docs/examples/functions/delete.md +0 -15
- data/docs/examples/functions/get-execution.md +0 -15
- data/docs/examples/functions/get-tag.md +0 -15
- data/docs/examples/functions/get.md +0 -15
- data/docs/examples/functions/list-executions.md +0 -15
- data/docs/examples/functions/list-tags.md +0 -15
- data/docs/examples/functions/list.md +0 -15
- data/docs/examples/functions/update-tag.md +0 -15
- data/docs/examples/functions/update.md +0 -15
- data/docs/examples/health/get-anti-virus.md +0 -15
- data/docs/examples/health/get-cache.md +0 -15
- data/docs/examples/health/get-d-b.md +0 -15
- data/docs/examples/health/get-queue-certificates.md +0 -15
- data/docs/examples/health/get-queue-functions.md +0 -15
- data/docs/examples/health/get-queue-logs.md +0 -15
- data/docs/examples/health/get-queue-tasks.md +0 -15
- data/docs/examples/health/get-queue-usage.md +0 -15
- data/docs/examples/health/get-queue-webhooks.md +0 -15
- data/docs/examples/health/get-storage-local.md +0 -15
- data/docs/examples/health/get-time.md +0 -15
- data/docs/examples/health/get.md +0 -15
- data/docs/examples/locale/get-continents.md +0 -15
- data/docs/examples/locale/get-countries-e-u.md +0 -15
- data/docs/examples/locale/get-countries-phones.md +0 -15
- data/docs/examples/locale/get-countries.md +0 -15
- data/docs/examples/locale/get-currencies.md +0 -15
- data/docs/examples/locale/get-languages.md +0 -15
- data/docs/examples/locale/get.md +0 -15
- data/docs/examples/storage/create-file.md +0 -15
- data/docs/examples/storage/delete-file.md +0 -15
- data/docs/examples/storage/get-file-download.md +0 -15
- data/docs/examples/storage/get-file-preview.md +0 -15
- data/docs/examples/storage/get-file-view.md +0 -15
- data/docs/examples/storage/get-file.md +0 -15
- data/docs/examples/storage/list-files.md +0 -15
- data/docs/examples/storage/update-file.md +0 -15
- data/docs/examples/teams/create-membership.md +0 -15
- data/docs/examples/teams/create.md +0 -15
- data/docs/examples/teams/delete-membership.md +0 -15
- data/docs/examples/teams/delete.md +0 -15
- data/docs/examples/teams/get-memberships.md +0 -15
- data/docs/examples/teams/get.md +0 -15
- data/docs/examples/teams/list.md +0 -15
- data/docs/examples/teams/update-membership-roles.md +0 -15
- data/docs/examples/teams/update-membership-status.md +0 -15
- data/docs/examples/teams/update.md +0 -15
- data/docs/examples/users/create.md +0 -15
- data/docs/examples/users/delete-session.md +0 -15
- data/docs/examples/users/delete-sessions.md +0 -15
- data/docs/examples/users/delete.md +0 -15
- data/docs/examples/users/get-logs.md +0 -15
- data/docs/examples/users/get-prefs.md +0 -15
- data/docs/examples/users/get-sessions.md +0 -15
- data/docs/examples/users/get.md +0 -15
- data/docs/examples/users/list.md +0 -15
- data/docs/examples/users/update-email.md +0 -15
- data/docs/examples/users/update-name.md +0 -15
- data/docs/examples/users/update-password.md +0 -15
- data/docs/examples/users/update-prefs.md +0 -15
- data/docs/examples/users/update-status.md +0 -15
- data/docs/examples/users/update-verification.md +0 -15
@@ -1,6 +1,19 @@
|
|
1
|
+
#frozen_string_literal: true
|
2
|
+
|
1
3
|
module Appwrite
|
2
4
|
class Avatars < Service
|
3
5
|
|
6
|
+
# You can use this endpoint to show different browser icons to your users.
|
7
|
+
# The code argument receives the browser code as it appears in your user
|
8
|
+
# /account/sessions endpoint. Use width, height and quality arguments to
|
9
|
+
# change the output settings.
|
10
|
+
#
|
11
|
+
# @param [string] code Browser Code.
|
12
|
+
# @param [number] width Image width. Pass an integer between 0 to 2000. Defaults to 100.
|
13
|
+
# @param [number] height Image height. Pass an integer between 0 to 2000. Defaults to 100.
|
14
|
+
# @param [number] quality Image quality. Pass an integer between 0 to 100. Defaults to 100.
|
15
|
+
#
|
16
|
+
# @return []
|
4
17
|
def get_browser(code:, width: nil, height: nil, quality: nil)
|
5
18
|
if code.nil?
|
6
19
|
raise Appwrite::Exception.new('Missing required parameter: "code"')
|
@@ -9,25 +22,34 @@ module Appwrite
|
|
9
22
|
path = '/avatars/browsers/{code}'
|
10
23
|
.gsub('{code}', code)
|
11
24
|
|
12
|
-
params = {
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
}, params);
|
25
|
+
params = {
|
26
|
+
width: width,
|
27
|
+
height: height,
|
28
|
+
quality: quality,
|
29
|
+
}
|
30
|
+
|
31
|
+
headers = {
|
32
|
+
"content-type": 'application/json',
|
33
|
+
}
|
34
|
+
|
35
|
+
@client.call(
|
36
|
+
method: 'GET',
|
37
|
+
path: path,
|
38
|
+
headers: headers,
|
39
|
+
params: params,
|
40
|
+
)
|
29
41
|
end
|
30
42
|
|
43
|
+
# The credit card endpoint will return you the icon of the credit card
|
44
|
+
# provider you need. Use width, height and quality arguments to change the
|
45
|
+
# output settings.
|
46
|
+
#
|
47
|
+
# @param [string] code Credit Card Code. Possible values: amex, argencard, cabal, censosud, diners, discover, elo, hipercard, jcb, mastercard, naranja, targeta-shopping, union-china-pay, visa, mir, maestro.
|
48
|
+
# @param [number] width Image width. Pass an integer between 0 to 2000. Defaults to 100.
|
49
|
+
# @param [number] height Image height. Pass an integer between 0 to 2000. Defaults to 100.
|
50
|
+
# @param [number] quality Image quality. Pass an integer between 0 to 100. Defaults to 100.
|
51
|
+
#
|
52
|
+
# @return []
|
31
53
|
def get_credit_card(code:, width: nil, height: nil, quality: nil)
|
32
54
|
if code.nil?
|
33
55
|
raise Appwrite::Exception.new('Missing required parameter: "code"')
|
@@ -36,25 +58,31 @@ module Appwrite
|
|
36
58
|
path = '/avatars/credit-cards/{code}'
|
37
59
|
.gsub('{code}', code)
|
38
60
|
|
39
|
-
params = {
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
}, params);
|
61
|
+
params = {
|
62
|
+
width: width,
|
63
|
+
height: height,
|
64
|
+
quality: quality,
|
65
|
+
}
|
66
|
+
|
67
|
+
headers = {
|
68
|
+
"content-type": 'application/json',
|
69
|
+
}
|
70
|
+
|
71
|
+
@client.call(
|
72
|
+
method: 'GET',
|
73
|
+
path: path,
|
74
|
+
headers: headers,
|
75
|
+
params: params,
|
76
|
+
)
|
56
77
|
end
|
57
78
|
|
79
|
+
# Use this endpoint to fetch the favorite icon (AKA favicon) of any remote
|
80
|
+
# website URL.
|
81
|
+
#
|
82
|
+
#
|
83
|
+
# @param [string] url Website URL which you want to fetch the favicon from.
|
84
|
+
#
|
85
|
+
# @return []
|
58
86
|
def get_favicon(url:)
|
59
87
|
if url.nil?
|
60
88
|
raise Appwrite::Exception.new('Missing required parameter: "url"')
|
@@ -62,17 +90,32 @@ module Appwrite
|
|
62
90
|
|
63
91
|
path = '/avatars/favicon'
|
64
92
|
|
65
|
-
params = {
|
93
|
+
params = {
|
94
|
+
url: url,
|
95
|
+
}
|
66
96
|
|
67
|
-
|
68
|
-
|
69
|
-
|
97
|
+
headers = {
|
98
|
+
"content-type": 'application/json',
|
99
|
+
}
|
70
100
|
|
71
|
-
|
72
|
-
|
73
|
-
|
101
|
+
@client.call(
|
102
|
+
method: 'GET',
|
103
|
+
path: path,
|
104
|
+
headers: headers,
|
105
|
+
params: params,
|
106
|
+
)
|
74
107
|
end
|
75
108
|
|
109
|
+
# You can use this endpoint to show different country flags icons to your
|
110
|
+
# users. The code argument receives the 2 letter country code. Use width,
|
111
|
+
# height and quality arguments to change the output settings.
|
112
|
+
#
|
113
|
+
# @param [string] code Country Code. ISO Alpha-2 country code format.
|
114
|
+
# @param [number] width Image width. Pass an integer between 0 to 2000. Defaults to 100.
|
115
|
+
# @param [number] height Image height. Pass an integer between 0 to 2000. Defaults to 100.
|
116
|
+
# @param [number] quality Image quality. Pass an integer between 0 to 100. Defaults to 100.
|
117
|
+
#
|
118
|
+
# @return []
|
76
119
|
def get_flag(code:, width: nil, height: nil, quality: nil)
|
77
120
|
if code.nil?
|
78
121
|
raise Appwrite::Exception.new('Missing required parameter: "code"')
|
@@ -81,25 +124,34 @@ module Appwrite
|
|
81
124
|
path = '/avatars/flags/{code}'
|
82
125
|
.gsub('{code}', code)
|
83
126
|
|
84
|
-
params = {
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
}, params);
|
127
|
+
params = {
|
128
|
+
width: width,
|
129
|
+
height: height,
|
130
|
+
quality: quality,
|
131
|
+
}
|
132
|
+
|
133
|
+
headers = {
|
134
|
+
"content-type": 'application/json',
|
135
|
+
}
|
136
|
+
|
137
|
+
@client.call(
|
138
|
+
method: 'GET',
|
139
|
+
path: path,
|
140
|
+
headers: headers,
|
141
|
+
params: params,
|
142
|
+
)
|
101
143
|
end
|
102
144
|
|
145
|
+
# Use this endpoint to fetch a remote image URL and crop it to any image size
|
146
|
+
# you want. This endpoint is very useful if you need to crop and display
|
147
|
+
# remote images in your app or in case you want to make sure a 3rd party
|
148
|
+
# image is properly served using a TLS protocol.
|
149
|
+
#
|
150
|
+
# @param [string] url Image URL which you want to crop.
|
151
|
+
# @param [number] width Resize preview image width, Pass an integer between 0 to 2000.
|
152
|
+
# @param [number] height Resize preview image height, Pass an integer between 0 to 2000.
|
153
|
+
#
|
154
|
+
# @return []
|
103
155
|
def get_image(url:, width: nil, height: nil)
|
104
156
|
if url.nil?
|
105
157
|
raise Appwrite::Exception.new('Missing required parameter: "url"')
|
@@ -107,55 +159,74 @@ module Appwrite
|
|
107
159
|
|
108
160
|
path = '/avatars/image'
|
109
161
|
|
110
|
-
params = {
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
}, params);
|
162
|
+
params = {
|
163
|
+
url: url,
|
164
|
+
width: width,
|
165
|
+
height: height,
|
166
|
+
}
|
167
|
+
|
168
|
+
headers = {
|
169
|
+
"content-type": 'application/json',
|
170
|
+
}
|
171
|
+
|
172
|
+
@client.call(
|
173
|
+
method: 'GET',
|
174
|
+
path: path,
|
175
|
+
headers: headers,
|
176
|
+
params: params,
|
177
|
+
)
|
127
178
|
end
|
128
179
|
|
180
|
+
# Use this endpoint to show your user initials avatar icon on your website or
|
181
|
+
# app. By default, this route will try to print your logged-in user name or
|
182
|
+
# email initials. You can also overwrite the user name if you pass the 'name'
|
183
|
+
# parameter. If no name is given and no user is logged, an empty avatar will
|
184
|
+
# be returned.
|
185
|
+
#
|
186
|
+
# You can use the color and background params to change the avatar colors. By
|
187
|
+
# default, a random theme will be selected. The random theme will persist for
|
188
|
+
# the user's initials when reloading the same theme will always return for
|
189
|
+
# the same initials.
|
190
|
+
#
|
191
|
+
# @param [string] name Full Name. When empty, current user name or email will be used. Max length: 128 chars.
|
192
|
+
# @param [number] width Image width. Pass an integer between 0 to 2000. Defaults to 100.
|
193
|
+
# @param [number] height Image height. Pass an integer between 0 to 2000. Defaults to 100.
|
194
|
+
# @param [string] color Changes text color. By default a random color will be picked and stay will persistent to the given name.
|
195
|
+
# @param [string] background Changes background color. By default a random color will be picked and stay will persistent to the given name.
|
196
|
+
#
|
197
|
+
# @return []
|
129
198
|
def get_initials(name: nil, width: nil, height: nil, color: nil, background: nil)
|
130
199
|
path = '/avatars/initials'
|
131
200
|
|
132
|
-
params = {
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
if !background.nil?
|
151
|
-
params[:background] = background
|
152
|
-
end
|
153
|
-
|
154
|
-
return @client.call('get', path, {
|
155
|
-
'content-type' => 'application/json',
|
156
|
-
}, params);
|
201
|
+
params = {
|
202
|
+
name: name,
|
203
|
+
width: width,
|
204
|
+
height: height,
|
205
|
+
color: color,
|
206
|
+
background: background,
|
207
|
+
}
|
208
|
+
|
209
|
+
headers = {
|
210
|
+
"content-type": 'application/json',
|
211
|
+
}
|
212
|
+
|
213
|
+
@client.call(
|
214
|
+
method: 'GET',
|
215
|
+
path: path,
|
216
|
+
headers: headers,
|
217
|
+
params: params,
|
218
|
+
)
|
157
219
|
end
|
158
220
|
|
221
|
+
# Converts a given plain text to a QR code image. You can use the query
|
222
|
+
# parameters to change the size and style of the resulting image.
|
223
|
+
#
|
224
|
+
# @param [string] text Plain text to be converted to QR code image.
|
225
|
+
# @param [number] size QR code size. Pass an integer between 0 to 1000. Defaults to 400.
|
226
|
+
# @param [number] margin Margin from edge. Pass an integer between 0 to 10. Defaults to 1.
|
227
|
+
# @param [boolean] download Return resulting image with 'Content-Disposition: attachment ' headers for the browser to start downloading it. Pass 0 for no header, or 1 for otherwise. Default value is set to 0.
|
228
|
+
#
|
229
|
+
# @return []
|
159
230
|
def get_qr(text:, size: nil, margin: nil, download: nil)
|
160
231
|
if text.nil?
|
161
232
|
raise Appwrite::Exception.new('Missing required parameter: "text"')
|
@@ -163,32 +234,24 @@ module Appwrite
|
|
163
234
|
|
164
235
|
path = '/avatars/qr'
|
165
236
|
|
166
|
-
params = {
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
params
|
182
|
-
|
183
|
-
|
184
|
-
return @client.call('get', path, {
|
185
|
-
'content-type' => 'application/json',
|
186
|
-
}, params);
|
237
|
+
params = {
|
238
|
+
text: text,
|
239
|
+
size: size,
|
240
|
+
margin: margin,
|
241
|
+
download: download,
|
242
|
+
}
|
243
|
+
|
244
|
+
headers = {
|
245
|
+
"content-type": 'application/json',
|
246
|
+
}
|
247
|
+
|
248
|
+
@client.call(
|
249
|
+
method: 'GET',
|
250
|
+
path: path,
|
251
|
+
headers: headers,
|
252
|
+
params: params,
|
253
|
+
)
|
187
254
|
end
|
188
255
|
|
189
|
-
|
190
|
-
protected
|
191
|
-
|
192
|
-
private
|
193
256
|
end
|
194
257
|
end
|