appwrite 10.1.2 → 11.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 (52) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +36 -7
  3. data/lib/appwrite/enums/authentication_factor.rb +10 -0
  4. data/lib/appwrite/enums/authenticator_type.rb +7 -0
  5. data/lib/appwrite/enums/browser.rb +20 -0
  6. data/lib/appwrite/enums/compression.rb +9 -0
  7. data/lib/appwrite/enums/credit_card.rb +22 -0
  8. data/lib/appwrite/enums/execution_method.rb +12 -0
  9. data/lib/appwrite/enums/flag.rb +200 -0
  10. data/lib/appwrite/enums/image_format.rb +11 -0
  11. data/lib/appwrite/enums/image_gravity.rb +15 -0
  12. data/lib/appwrite/enums/index_type.rb +9 -0
  13. data/lib/appwrite/enums/messaging_provider_type.rb +9 -0
  14. data/lib/appwrite/enums/name.rb +19 -0
  15. data/lib/appwrite/enums/o_auth_provider.rb +45 -0
  16. data/lib/appwrite/enums/password_hash.rb +17 -0
  17. data/lib/appwrite/enums/relation_mutate.rb +9 -0
  18. data/lib/appwrite/enums/relationship_type.rb +10 -0
  19. data/lib/appwrite/enums/runtime.rb +50 -0
  20. data/lib/appwrite/enums/smtp_encryption.rb +9 -0
  21. data/lib/appwrite/models/health_certificate.rb +52 -0
  22. data/lib/appwrite/models/jwt.rb +27 -0
  23. data/lib/appwrite/models/membership.rb +5 -0
  24. data/lib/appwrite/models/message.rb +87 -0
  25. data/lib/appwrite/models/message_list.rb +32 -0
  26. data/lib/appwrite/models/mfa_challenge.rb +42 -0
  27. data/lib/appwrite/models/mfa_factors.rb +37 -0
  28. data/lib/appwrite/models/mfa_recovery_codes.rb +27 -0
  29. data/lib/appwrite/models/mfa_type.rb +32 -0
  30. data/lib/appwrite/models/provider.rb +67 -0
  31. data/lib/appwrite/models/provider_list.rb +32 -0
  32. data/lib/appwrite/models/session.rb +18 -3
  33. data/lib/appwrite/models/subscriber.rb +67 -0
  34. data/lib/appwrite/models/subscriber_list.rb +32 -0
  35. data/lib/appwrite/models/target.rb +62 -0
  36. data/lib/appwrite/models/target_list.rb +32 -0
  37. data/lib/appwrite/models/token.rb +8 -3
  38. data/lib/appwrite/models/topic.rb +62 -0
  39. data/lib/appwrite/models/topic_list.rb +32 -0
  40. data/lib/appwrite/models/user.rb +10 -0
  41. data/lib/appwrite/query.rb +53 -28
  42. data/lib/appwrite/services/account.rb +935 -168
  43. data/lib/appwrite/services/avatars.rb +3 -3
  44. data/lib/appwrite/services/databases.rb +22 -16
  45. data/lib/appwrite/services/functions.rb +3 -3
  46. data/lib/appwrite/services/health.rb +138 -0
  47. data/lib/appwrite/services/messaging.rb +1886 -0
  48. data/lib/appwrite/services/storage.rb +4 -4
  49. data/lib/appwrite/services/teams.rb +1 -1
  50. data/lib/appwrite/services/users.rb +475 -4
  51. data/lib/appwrite.rb +36 -0
  52. metadata +37 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3c3513d47f58765031f885723a7a4a020b7eea2ac8beec3cb18bd7e5fdaf4099
4
- data.tar.gz: 302e236698a2d4bc83ee6812b34ce15fd032a2d40bec64aed2ee4da9b1cbfd5b
3
+ metadata.gz: dd31e4d3077b0e16537b4b69b6de4ad4544449c619d41220b2f738d0f6e4553f
4
+ data.tar.gz: d2c72892a533a8a0e56418a6c8c6413907747825560256cc29b8c8fa69d03dba
5
5
  SHA512:
6
- metadata.gz: 4957407b9edc4848bbc8b14b4f637d03ecde2bb00c4f3829a54b1f48eb92ac7913da66bf50a685e95bc1b3a0d175ba87bae2c45f01dff784ead37e70ebd8d7cd
7
- data.tar.gz: 0b474db15e5537d923df350bea38ee98079aa14fa8ccd8842a25aeefc6e87a0f12941e4fe108ad1e890319c49dc228cf02217127bd1d46c6e30c5e576146d307
6
+ metadata.gz: 96e0adb27cadeb348aedb9e7087269f19654fd8b6c2cf74a3c213a80c88fedbfa9bf7da3bd08d7acd0ef55bea6f8df64e3220fcd2474a46ac051a2ee69bdd7f7
7
+ data.tar.gz: af720aa7bbf5d2de3c044d240c21e0ad740cd7319ca597f3791b05819018469eaef591c55ff93ce421b86c138e9908b47461d595bad15ec69bd89eec3339d09c
@@ -15,10 +15,10 @@ module Appwrite
15
15
  'x-sdk-name'=> 'Ruby',
16
16
  'x-sdk-platform'=> 'server',
17
17
  'x-sdk-language'=> 'ruby',
18
- 'x-sdk-version'=> '10.1.2',
19
- 'X-Appwrite-Response-Format' => '1.4.0'
18
+ 'x-sdk-version'=> '11.0.0',
19
+ 'X-Appwrite-Response-Format' => '1.5.0'
20
20
  }
21
- @endpoint = 'https://HOSTNAME/v1'
21
+ @endpoint = 'https://cloud.appwrite.io/v1'
22
22
  end
23
23
 
24
24
  # Set Project
@@ -71,6 +71,32 @@ module Appwrite
71
71
  self
72
72
  end
73
73
 
74
+ # Set Session
75
+ #
76
+ # The user session to authenticate with
77
+ #
78
+ # @param [String] value The value to set for the Session header
79
+ #
80
+ # @return [self]
81
+ def set_session(value)
82
+ add_header('x-appwrite-session', value)
83
+
84
+ self
85
+ end
86
+
87
+ # Set ForwardedUserAgent
88
+ #
89
+ # The user agent string of the client that made the request
90
+ #
91
+ # @param [String] value The value to set for the ForwardedUserAgent header
92
+ #
93
+ # @return [self]
94
+ def set_forwarded_user_agent(value)
95
+ add_header('x-forwarded-user-agent', value)
96
+
97
+ self
98
+ end
99
+
74
100
  # Set endpoint.
75
101
  #
76
102
  # @param [String] endpoint The endpoint to set
@@ -199,7 +225,7 @@ module Appwrite
199
225
  offset += @chunk_size
200
226
 
201
227
  if defined? result['$id']
202
- headers['x-Appwrite-id'] = result['$id']
228
+ headers['x-appwrite-id'] = result['$id']
203
229
  end
204
230
 
205
231
  on_progress.call({
@@ -254,12 +280,15 @@ module Appwrite
254
280
  rescue => error
255
281
  raise Appwrite::Exception.new(error.message)
256
282
  end
283
+
284
+ location = response['location']
285
+ if response_type == "location"
286
+ return location
287
+ end
257
288
 
258
289
  # Handle Redirects
259
- if response.class == Net::HTTPRedirection || response.class == Net::HTTPMovedPermanently
260
- location = response['location']
290
+ if (response.class == Net::HTTPRedirection || response.class == Net::HTTPMovedPermanently)
261
291
  uri = URI.parse(uri.scheme + "://" + uri.host + "" + location)
262
-
263
292
  return fetch(method, uri, headers, {}, response_type, limit - 1)
264
293
  end
265
294
 
@@ -0,0 +1,10 @@
1
+ module Appwrite
2
+ module Enums
3
+ module AuthenticationFactor
4
+ EMAIL = 'email'
5
+ PHONE = 'phone'
6
+ TOTP = 'totp'
7
+ RECOVERYCODE = 'recoverycode'
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,7 @@
1
+ module Appwrite
2
+ module Enums
3
+ module AuthenticatorType
4
+ TOTP = 'totp'
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,20 @@
1
+ module Appwrite
2
+ module Enums
3
+ module Browser
4
+ AVANT_BROWSER = 'aa'
5
+ ANDROID_WEBVIEW_BETA = 'an'
6
+ GOOGLE_CHROME = 'ch'
7
+ GOOGLE_CHROME_IOS = 'ci'
8
+ GOOGLE_CHROME_MOBILE = 'cm'
9
+ CHROMIUM = 'cr'
10
+ MOZILLA_FIREFOX = 'ff'
11
+ SAFARI = 'sf'
12
+ MOBILE_SAFARI = 'mf'
13
+ MICROSOFT_EDGE = 'ps'
14
+ MICROSOFT_EDGE_IOS = 'oi'
15
+ OPERA_MINI = 'om'
16
+ OPERA = 'op'
17
+ OPERA_NEXT = 'on'
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,9 @@
1
+ module Appwrite
2
+ module Enums
3
+ module Compression
4
+ NONE = 'none'
5
+ GZIP = 'gzip'
6
+ ZSTD = 'zstd'
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,22 @@
1
+ module Appwrite
2
+ module Enums
3
+ module CreditCard
4
+ AMERICAN_EXPRESS = 'amex'
5
+ ARGENCARD = 'argencard'
6
+ CABAL = 'cabal'
7
+ CONSOSUD = 'censosud'
8
+ DINERS_CLUB = 'diners'
9
+ DISCOVER = 'discover'
10
+ ELO = 'elo'
11
+ HIPERCARD = 'hipercard'
12
+ JCB = 'jcb'
13
+ MASTERCARD = 'mastercard'
14
+ NARANJA = 'naranja'
15
+ TARJETA_SHOPPING = 'targeta-shopping'
16
+ UNION_CHINA_PAY = 'union-china-pay'
17
+ VISA = 'visa'
18
+ MIR = 'mir'
19
+ MAESTRO = 'maestro'
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,12 @@
1
+ module Appwrite
2
+ module Enums
3
+ module ExecutionMethod
4
+ GET = 'GET'
5
+ POST = 'POST'
6
+ PUT = 'PUT'
7
+ PATCH = 'PATCH'
8
+ DELETE = 'DELETE'
9
+ OPTIONS = 'OPTIONS'
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,200 @@
1
+ module Appwrite
2
+ module Enums
3
+ module Flag
4
+ AFGHANISTAN = 'af'
5
+ ANGOLA = 'ao'
6
+ ALBANIA = 'al'
7
+ ANDORRA = 'ad'
8
+ UNITED_ARAB_EMIRATES = 'ae'
9
+ ARGENTINA = 'ar'
10
+ ARMENIA = 'am'
11
+ ANTIGUA_AND_BARBUDA = 'ag'
12
+ AUSTRALIA = 'au'
13
+ AUSTRIA = 'at'
14
+ AZERBAIJAN = 'az'
15
+ BURUNDI = 'bi'
16
+ BELGIUM = 'be'
17
+ BENIN = 'bj'
18
+ BURKINA_FASO = 'bf'
19
+ BANGLADESH = 'bd'
20
+ BULGARIA = 'bg'
21
+ BAHRAIN = 'bh'
22
+ BAHAMAS = 'bs'
23
+ BOSNIA_AND_HERZEGOVINA = 'ba'
24
+ BELARUS = 'by'
25
+ BELIZE = 'bz'
26
+ BOLIVIA = 'bo'
27
+ BRAZIL = 'br'
28
+ BARBADOS = 'bb'
29
+ BRUNEI_DARUSSALAM = 'bn'
30
+ BHUTAN = 'bt'
31
+ BOTSWANA = 'bw'
32
+ CENTRAL_AFRICAN_REPUBLIC = 'cf'
33
+ CANADA = 'ca'
34
+ SWITZERLAND = 'ch'
35
+ CHILE = 'cl'
36
+ CHINA = 'cn'
37
+ COTE_DIVOIRE = 'ci'
38
+ CAMEROON = 'cm'
39
+ DEMOCRATIC_REPUBLIC_OF_THE_CONGO = 'cd'
40
+ REPUBLIC_OF_THE_CONGO = 'cg'
41
+ COLOMBIA = 'co'
42
+ COMOROS = 'km'
43
+ CAPE_VERDE = 'cv'
44
+ COSTA_RICA = 'cr'
45
+ CUBA = 'cu'
46
+ CYPRUS = 'cy'
47
+ CZECH_REPUBLIC = 'cz'
48
+ GERMANY = 'de'
49
+ DJIBOUTI = 'dj'
50
+ DOMINICA = 'dm'
51
+ DENMARK = 'dk'
52
+ DOMINICAN_REPUBLIC = 'do'
53
+ ALGERIA = 'dz'
54
+ ECUADOR = 'ec'
55
+ EGYPT = 'eg'
56
+ ERITREA = 'er'
57
+ SPAIN = 'es'
58
+ ESTONIA = 'ee'
59
+ ETHIOPIA = 'et'
60
+ FINLAND = 'fi'
61
+ FIJI = 'fj'
62
+ FRANCE = 'fr'
63
+ MICRONESIA_FEDERATED_STATES_OF = 'fm'
64
+ GABON = 'ga'
65
+ UNITED_KINGDOM = 'gb'
66
+ GEORGIA = 'ge'
67
+ GHANA = 'gh'
68
+ GUINEA = 'gn'
69
+ GAMBIA = 'gm'
70
+ GUINEA_BISSAU = 'gw'
71
+ EQUATORIAL_GUINEA = 'gq'
72
+ GREECE = 'gr'
73
+ GRENADA = 'gd'
74
+ GUATEMALA = 'gt'
75
+ GUYANA = 'gy'
76
+ HONDURAS = 'hn'
77
+ CROATIA = 'hr'
78
+ HAITI = 'ht'
79
+ HUNGARY = 'hu'
80
+ INDONESIA = 'id'
81
+ INDIA = 'in'
82
+ IRELAND = 'ie'
83
+ IRAN_ISLAMIC_REPUBLIC_OF = 'ir'
84
+ IRAQ = 'iq'
85
+ ICELAND = 'is'
86
+ ISRAEL = 'il'
87
+ ITALY = 'it'
88
+ JAMAICA = 'jm'
89
+ JORDAN = 'jo'
90
+ JAPAN = 'jp'
91
+ KAZAKHSTAN = 'kz'
92
+ KENYA = 'ke'
93
+ KYRGYZSTAN = 'kg'
94
+ CAMBODIA = 'kh'
95
+ KIRIBATI = 'ki'
96
+ SAINT_KITTS_AND_NEVIS = 'kn'
97
+ SOUTH_KOREA = 'kr'
98
+ KUWAIT = 'kw'
99
+ LAO_PEOPLES_DEMOCRATIC_REPUBLIC = 'la'
100
+ LEBANON = 'lb'
101
+ LIBERIA = 'lr'
102
+ LIBYA = 'ly'
103
+ SAINT_LUCIA = 'lc'
104
+ LIECHTENSTEIN = 'li'
105
+ SRI_LANKA = 'lk'
106
+ LESOTHO = 'ls'
107
+ LITHUANIA = 'lt'
108
+ LUXEMBOURG = 'lu'
109
+ LATVIA = 'lv'
110
+ MOROCCO = 'ma'
111
+ MONACO = 'mc'
112
+ MOLDOVA = 'md'
113
+ MADAGASCAR = 'mg'
114
+ MALDIVES = 'mv'
115
+ MEXICO = 'mx'
116
+ MARSHALL_ISLANDS = 'mh'
117
+ NORTH_MACEDONIA = 'mk'
118
+ MALI = 'ml'
119
+ MALTA = 'mt'
120
+ MYANMAR = 'mm'
121
+ MONTENEGRO = 'me'
122
+ MONGOLIA = 'mn'
123
+ MOZAMBIQUE = 'mz'
124
+ MAURITANIA = 'mr'
125
+ MAURITIUS = 'mu'
126
+ MALAWI = 'mw'
127
+ MALAYSIA = 'my'
128
+ NAMIBIA = 'na'
129
+ NIGER = 'ne'
130
+ NIGERIA = 'ng'
131
+ NICARAGUA = 'ni'
132
+ NETHERLANDS = 'nl'
133
+ NORWAY = 'no'
134
+ NEPAL = 'np'
135
+ NAURU = 'nr'
136
+ NEW_ZEALAND = 'nz'
137
+ OMAN = 'om'
138
+ PAKISTAN = 'pk'
139
+ PANAMA = 'pa'
140
+ PERU = 'pe'
141
+ PHILIPPINES = 'ph'
142
+ PALAU = 'pw'
143
+ PAPUA_NEW_GUINEA = 'pg'
144
+ POLAND = 'pl'
145
+ NORTH_KOREA = 'kp'
146
+ PORTUGAL = 'pt'
147
+ PARAGUAY = 'py'
148
+ QATAR = 'qa'
149
+ ROMANIA = 'ro'
150
+ RUSSIA = 'ru'
151
+ RWANDA = 'rw'
152
+ SAUDI_ARABIA = 'sa'
153
+ SUDAN = 'sd'
154
+ SENEGAL = 'sn'
155
+ SINGAPORE = 'sg'
156
+ SOLOMON_ISLANDS = 'sb'
157
+ SIERRA_LEONE = 'sl'
158
+ EL_SALVADOR = 'sv'
159
+ SAN_MARINO = 'sm'
160
+ SOMALIA = 'so'
161
+ SERBIA = 'rs'
162
+ SOUTH_SUDAN = 'ss'
163
+ SAO_TOME_AND_PRINCIPE = 'st'
164
+ SURINAME = 'sr'
165
+ SLOVAKIA = 'sk'
166
+ SLOVENIA = 'si'
167
+ SWEDEN = 'se'
168
+ ESWATINI = 'sz'
169
+ SEYCHELLES = 'sc'
170
+ SYRIA = 'sy'
171
+ CHAD = 'td'
172
+ TOGO = 'tg'
173
+ THAILAND = 'th'
174
+ TAJIKISTAN = 'tj'
175
+ TURKMENISTAN = 'tm'
176
+ TIMOR_LESTE = 'tl'
177
+ TONGA = 'to'
178
+ TRINIDAD_AND_TOBAGO = 'tt'
179
+ TUNISIA = 'tn'
180
+ TURKEY = 'tr'
181
+ TUVALU = 'tv'
182
+ TANZANIA = 'tz'
183
+ UGANDA = 'ug'
184
+ UKRAINE = 'ua'
185
+ URUGUAY = 'uy'
186
+ UNITED_STATES = 'us'
187
+ UZBEKISTAN = 'uz'
188
+ VATICAN_CITY = 'va'
189
+ SAINT_VINCENT_AND_THE_GRENADINES = 'vc'
190
+ VENEZUELA = 've'
191
+ VIETNAM = 'vn'
192
+ VANUATU = 'vu'
193
+ SAMOA = 'ws'
194
+ YEMEN = 'ye'
195
+ SOUTH_AFRICA = 'za'
196
+ ZAMBIA = 'zm'
197
+ ZIMBABWE = 'zw'
198
+ end
199
+ end
200
+ end
@@ -0,0 +1,11 @@
1
+ module Appwrite
2
+ module Enums
3
+ module ImageFormat
4
+ JPG = 'jpg'
5
+ JPEG = 'jpeg'
6
+ GIF = 'gif'
7
+ PNG = 'png'
8
+ WEBP = 'webp'
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,15 @@
1
+ module Appwrite
2
+ module Enums
3
+ module ImageGravity
4
+ CENTER = 'center'
5
+ TOP_LEFT = 'top-left'
6
+ TOP = 'top'
7
+ TOP_RIGHT = 'top-right'
8
+ LEFT = 'left'
9
+ RIGHT = 'right'
10
+ BOTTOM_LEFT = 'bottom-left'
11
+ BOTTOM = 'bottom'
12
+ BOTTOM_RIGHT = 'bottom-right'
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,9 @@
1
+ module Appwrite
2
+ module Enums
3
+ module IndexType
4
+ KEY = 'key'
5
+ FULLTEXT = 'fulltext'
6
+ UNIQUE = 'unique'
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module Appwrite
2
+ module Enums
3
+ module MessagingProviderType
4
+ EMAIL = 'email'
5
+ SMS = 'sms'
6
+ PUSH = 'push'
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,19 @@
1
+ module Appwrite
2
+ module Enums
3
+ module Name
4
+ V1_DATABASE = 'v1-database'
5
+ V1_DELETES = 'v1-deletes'
6
+ V1_AUDITS = 'v1-audits'
7
+ V1_MAILS = 'v1-mails'
8
+ V1_FUNCTIONS = 'v1-functions'
9
+ V1_USAGE = 'v1-usage'
10
+ V1_USAGE_DUMP = 'v1-usage-dump'
11
+ WEBHOOKSV1 = 'webhooksv1'
12
+ V1_CERTIFICATES = 'v1-certificates'
13
+ V1_BUILDS = 'v1-builds'
14
+ V1_MESSAGING = 'v1-messaging'
15
+ V1_MIGRATIONS = 'v1-migrations'
16
+ HAMSTERV1 = 'hamsterv1'
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,45 @@
1
+ module Appwrite
2
+ module Enums
3
+ module OAuthProvider
4
+ AMAZON = 'amazon'
5
+ APPLE = 'apple'
6
+ AUTH0 = 'auth0'
7
+ AUTHENTIK = 'authentik'
8
+ AUTODESK = 'autodesk'
9
+ BITBUCKET = 'bitbucket'
10
+ BITLY = 'bitly'
11
+ BOX = 'box'
12
+ DAILYMOTION = 'dailymotion'
13
+ DISCORD = 'discord'
14
+ DISQUS = 'disqus'
15
+ DROPBOX = 'dropbox'
16
+ ETSY = 'etsy'
17
+ FACEBOOK = 'facebook'
18
+ GITHUB = 'github'
19
+ GITLAB = 'gitlab'
20
+ GOOGLE = 'google'
21
+ LINKEDIN = 'linkedin'
22
+ MICROSOFT = 'microsoft'
23
+ NOTION = 'notion'
24
+ OIDC = 'oidc'
25
+ OKTA = 'okta'
26
+ PAYPAL = 'paypal'
27
+ PAYPALSANDBOX = 'paypalSandbox'
28
+ PODIO = 'podio'
29
+ SALESFORCE = 'salesforce'
30
+ SLACK = 'slack'
31
+ SPOTIFY = 'spotify'
32
+ STRIPE = 'stripe'
33
+ TRADESHIFT = 'tradeshift'
34
+ TRADESHIFTBOX = 'tradeshiftBox'
35
+ TWITCH = 'twitch'
36
+ WORDPRESS = 'wordpress'
37
+ YAHOO = 'yahoo'
38
+ YAMMER = 'yammer'
39
+ YANDEX = 'yandex'
40
+ ZOHO = 'zoho'
41
+ ZOOM = 'zoom'
42
+ MOCK = 'mock'
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,17 @@
1
+ module Appwrite
2
+ module Enums
3
+ module PasswordHash
4
+ SHA1 = 'sha1'
5
+ SHA224 = 'sha224'
6
+ SHA256 = 'sha256'
7
+ SHA384 = 'sha384'
8
+ SHA512_224 = 'sha512/224'
9
+ SHA512_256 = 'sha512/256'
10
+ SHA512 = 'sha512'
11
+ SHA3_224 = 'sha3-224'
12
+ SHA3_256 = 'sha3-256'
13
+ SHA3_384 = 'sha3-384'
14
+ SHA3_512 = 'sha3-512'
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,9 @@
1
+ module Appwrite
2
+ module Enums
3
+ module RelationMutate
4
+ CASCADE = 'cascade'
5
+ RESTRICT = 'restrict'
6
+ SETNULL = 'setNull'
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,10 @@
1
+ module Appwrite
2
+ module Enums
3
+ module RelationshipType
4
+ ONETOONE = 'oneToOne'
5
+ MANYTOONE = 'manyToOne'
6
+ MANYTOMANY = 'manyToMany'
7
+ ONETOMANY = 'oneToMany'
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,50 @@
1
+ module Appwrite
2
+ module Enums
3
+ module Runtime
4
+ NODE_14_5 = 'node-14.5'
5
+ NODE_16_0 = 'node-16.0'
6
+ NODE_18_0 = 'node-18.0'
7
+ NODE_19_0 = 'node-19.0'
8
+ NODE_20_0 = 'node-20.0'
9
+ NODE_21_0 = 'node-21.0'
10
+ PHP_8_0 = 'php-8.0'
11
+ PHP_8_1 = 'php-8.1'
12
+ PHP_8_2 = 'php-8.2'
13
+ PHP_8_3 = 'php-8.3'
14
+ RUBY_3_0 = 'ruby-3.0'
15
+ RUBY_3_1 = 'ruby-3.1'
16
+ RUBY_3_2 = 'ruby-3.2'
17
+ RUBY_3_3 = 'ruby-3.3'
18
+ PYTHON_3_8 = 'python-3.8'
19
+ PYTHON_3_9 = 'python-3.9'
20
+ PYTHON_3_10 = 'python-3.10'
21
+ PYTHON_3_11 = 'python-3.11'
22
+ PYTHON_3_12 = 'python-3.12'
23
+ DENO_1_40 = 'deno-1.40'
24
+ DART_2_15 = 'dart-2.15'
25
+ DART_2_16 = 'dart-2.16'
26
+ DART_2_17 = 'dart-2.17'
27
+ DART_2_18 = 'dart-2.18'
28
+ DART_3_0 = 'dart-3.0'
29
+ DART_3_1 = 'dart-3.1'
30
+ DART_3_3 = 'dart-3.3'
31
+ DOTNET_3_1 = 'dotnet-3.1'
32
+ DOTNET_6_0 = 'dotnet-6.0'
33
+ DOTNET_7_0 = 'dotnet-7.0'
34
+ JAVA_8_0 = 'java-8.0'
35
+ JAVA_11_0 = 'java-11.0'
36
+ JAVA_17_0 = 'java-17.0'
37
+ JAVA_18_0 = 'java-18.0'
38
+ JAVA_21_0 = 'java-21.0'
39
+ SWIFT_5_5 = 'swift-5.5'
40
+ SWIFT_5_8 = 'swift-5.8'
41
+ SWIFT_5_9 = 'swift-5.9'
42
+ KOTLIN_1_6 = 'kotlin-1.6'
43
+ KOTLIN_1_8 = 'kotlin-1.8'
44
+ KOTLIN_1_9 = 'kotlin-1.9'
45
+ CPP_17 = 'cpp-17'
46
+ CPP_20 = 'cpp-20'
47
+ BUN_1_0 = 'bun-1.0'
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,9 @@
1
+ module Appwrite
2
+ module Enums
3
+ module SmtpEncryption
4
+ NONE = 'none'
5
+ SSL = 'ssl'
6
+ TLS = 'tls'
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,52 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class HealthCertificate
6
+ attr_reader :name
7
+ attr_reader :subject_sn
8
+ attr_reader :issuer_organisation
9
+ attr_reader :valid_from
10
+ attr_reader :valid_to
11
+ attr_reader :signature_type_sn
12
+
13
+ def initialize(
14
+ name:,
15
+ subject_sn:,
16
+ issuer_organisation:,
17
+ valid_from:,
18
+ valid_to:,
19
+ signature_type_sn:
20
+ )
21
+ @name = name
22
+ @subject_sn = subject_sn
23
+ @issuer_organisation = issuer_organisation
24
+ @valid_from = valid_from
25
+ @valid_to = valid_to
26
+ @signature_type_sn = signature_type_sn
27
+ end
28
+
29
+ def self.from(map:)
30
+ HealthCertificate.new(
31
+ name: map["name"],
32
+ subject_sn: map["subjectSN"],
33
+ issuer_organisation: map["issuerOrganisation"],
34
+ valid_from: map["validFrom"],
35
+ valid_to: map["validTo"],
36
+ signature_type_sn: map["signatureTypeSN"]
37
+ )
38
+ end
39
+
40
+ def to_map
41
+ {
42
+ "name": @name,
43
+ "subjectSN": @subject_sn,
44
+ "issuerOrganisation": @issuer_organisation,
45
+ "validFrom": @valid_from,
46
+ "validTo": @valid_to,
47
+ "signatureTypeSN": @signature_type_sn
48
+ }
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,27 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Jwt
6
+ attr_reader :jwt
7
+
8
+ def initialize(
9
+ jwt:
10
+ )
11
+ @jwt = jwt
12
+ end
13
+
14
+ def self.from(map:)
15
+ Jwt.new(
16
+ jwt: map["jwt"]
17
+ )
18
+ end
19
+
20
+ def to_map
21
+ {
22
+ "jwt": @jwt
23
+ }
24
+ end
25
+ end
26
+ end
27
+ end