appwrite 28.4.0 → 30.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 (349) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +19 -19
  3. data/lib/appwrite/enums/billing_plan_group.rb +0 -1
  4. data/lib/appwrite/enums/execution_trigger.rb +1 -0
  5. data/lib/appwrite/enums/proxy_rule_protocol.rb +8 -0
  6. data/lib/appwrite/models/account.rb +8 -8
  7. data/lib/appwrite/models/activity_event.rb +1 -0
  8. data/lib/appwrite/models/activity_event_list.rb +1 -0
  9. data/lib/appwrite/models/additional_resource.rb +1 -0
  10. data/lib/appwrite/models/algo_argon2.rb +1 -0
  11. data/lib/appwrite/models/algo_bcrypt.rb +1 -0
  12. data/lib/appwrite/models/algo_md5.rb +1 -0
  13. data/lib/appwrite/models/algo_phpass.rb +1 -0
  14. data/lib/appwrite/models/algo_scrypt.rb +1 -0
  15. data/lib/appwrite/models/algo_scrypt_modified.rb +1 -0
  16. data/lib/appwrite/models/algo_sha.rb +1 -0
  17. data/lib/appwrite/models/app.rb +1 -0
  18. data/lib/appwrite/models/app_installation.rb +2 -1
  19. data/lib/appwrite/models/app_installation_list.rb +1 -0
  20. data/lib/appwrite/models/app_key.rb +2 -1
  21. data/lib/appwrite/models/app_key_list.rb +1 -0
  22. data/lib/appwrite/models/app_scope.rb +1 -0
  23. data/lib/appwrite/models/app_scope_list.rb +1 -0
  24. data/lib/appwrite/models/app_secret.rb +2 -1
  25. data/lib/appwrite/models/app_secret_list.rb +1 -0
  26. data/lib/appwrite/models/app_secret_plaintext.rb +2 -1
  27. data/lib/appwrite/models/apps_list.rb +1 -0
  28. data/lib/appwrite/models/attribute_bigint.rb +10 -4
  29. data/lib/appwrite/models/attribute_boolean.rb +8 -2
  30. data/lib/appwrite/models/attribute_datetime.rb +8 -2
  31. data/lib/appwrite/models/attribute_email.rb +8 -2
  32. data/lib/appwrite/models/attribute_enum.rb +8 -2
  33. data/lib/appwrite/models/attribute_float.rb +10 -4
  34. data/lib/appwrite/models/attribute_integer.rb +10 -4
  35. data/lib/appwrite/models/attribute_ip.rb +8 -2
  36. data/lib/appwrite/models/attribute_line.rb +8 -2
  37. data/lib/appwrite/models/attribute_list.rb +1 -0
  38. data/lib/appwrite/models/attribute_longtext.rb +9 -3
  39. data/lib/appwrite/models/attribute_mediumtext.rb +9 -3
  40. data/lib/appwrite/models/attribute_object.rb +7 -1
  41. data/lib/appwrite/models/attribute_point.rb +8 -2
  42. data/lib/appwrite/models/attribute_polygon.rb +8 -2
  43. data/lib/appwrite/models/attribute_relationship.rb +7 -1
  44. data/lib/appwrite/models/attribute_string.rb +9 -3
  45. data/lib/appwrite/models/attribute_text.rb +9 -3
  46. data/lib/appwrite/models/attribute_url.rb +8 -2
  47. data/lib/appwrite/models/attribute_varchar.rb +9 -3
  48. data/lib/appwrite/models/attribute_vector.rb +7 -1
  49. data/lib/appwrite/models/backup_archive.rb +5 -4
  50. data/lib/appwrite/models/backup_archive_list.rb +1 -0
  51. data/lib/appwrite/models/backup_policy.rb +3 -2
  52. data/lib/appwrite/models/backup_policy_list.rb +1 -0
  53. data/lib/appwrite/models/backup_restoration.rb +2 -1
  54. data/lib/appwrite/models/backup_restoration_list.rb +1 -0
  55. data/lib/appwrite/models/billing_limits.rb +8 -8
  56. data/lib/appwrite/models/billing_plan.rb +19 -14
  57. data/lib/appwrite/models/billing_plan_addon.rb +2 -2
  58. data/lib/appwrite/models/billing_plan_addon_details.rb +2 -1
  59. data/lib/appwrite/models/billing_plan_dedicated_database_limits.rb +19 -19
  60. data/lib/appwrite/models/billing_plan_limits.rb +2 -2
  61. data/lib/appwrite/models/billing_plan_supported_addons.rb +1 -0
  62. data/lib/appwrite/models/block.rb +4 -33
  63. data/lib/appwrite/models/bucket.rb +11 -0
  64. data/lib/appwrite/models/bucket_list.rb +1 -0
  65. data/lib/appwrite/models/collection.rb +6 -0
  66. data/lib/appwrite/models/collection_list.rb +1 -0
  67. data/lib/appwrite/models/column_bigint.rb +10 -4
  68. data/lib/appwrite/models/column_boolean.rb +8 -2
  69. data/lib/appwrite/models/column_datetime.rb +8 -2
  70. data/lib/appwrite/models/column_email.rb +8 -2
  71. data/lib/appwrite/models/column_enum.rb +8 -2
  72. data/lib/appwrite/models/column_float.rb +10 -4
  73. data/lib/appwrite/models/column_index.rb +7 -1
  74. data/lib/appwrite/models/column_index_list.rb +1 -0
  75. data/lib/appwrite/models/column_integer.rb +10 -4
  76. data/lib/appwrite/models/column_ip.rb +8 -2
  77. data/lib/appwrite/models/column_line.rb +8 -2
  78. data/lib/appwrite/models/column_list.rb +1 -0
  79. data/lib/appwrite/models/column_longtext.rb +9 -3
  80. data/lib/appwrite/models/column_mediumtext.rb +9 -3
  81. data/lib/appwrite/models/column_point.rb +8 -2
  82. data/lib/appwrite/models/column_polygon.rb +8 -2
  83. data/lib/appwrite/models/column_relationship.rb +7 -1
  84. data/lib/appwrite/models/column_string.rb +9 -3
  85. data/lib/appwrite/models/column_text.rb +9 -3
  86. data/lib/appwrite/models/column_url.rb +8 -2
  87. data/lib/appwrite/models/column_varchar.rb +9 -3
  88. data/lib/appwrite/models/continent.rb +1 -0
  89. data/lib/appwrite/models/continent_list.rb +1 -0
  90. data/lib/appwrite/models/country.rb +1 -0
  91. data/lib/appwrite/models/country_list.rb +1 -0
  92. data/lib/appwrite/models/currency.rb +1 -0
  93. data/lib/appwrite/models/currency_list.rb +1 -0
  94. data/lib/appwrite/models/database.rb +15 -9
  95. data/lib/appwrite/models/database_list.rb +1 -0
  96. data/lib/appwrite/models/database_migration.rb +1 -0
  97. data/lib/appwrite/models/database_migration_list.rb +1 -0
  98. data/lib/appwrite/models/database_status.rb +6 -5
  99. data/lib/appwrite/models/database_status_connections.rb +1 -0
  100. data/lib/appwrite/models/database_status_replica.rb +3 -2
  101. data/lib/appwrite/models/database_status_volume.rb +1 -0
  102. data/lib/appwrite/models/dedicated_database.rb +8 -7
  103. data/lib/appwrite/models/dedicated_database_backup.rb +6 -5
  104. data/lib/appwrite/models/dedicated_database_backup_list.rb +1 -0
  105. data/lib/appwrite/models/dedicated_database_backup_storage.rb +1 -0
  106. data/lib/appwrite/models/dedicated_database_branch.rb +2 -1
  107. data/lib/appwrite/models/dedicated_database_branch_list.rb +1 -0
  108. data/lib/appwrite/models/dedicated_database_execution.rb +1 -0
  109. data/lib/appwrite/models/dedicated_database_execution_column.rb +1 -0
  110. data/lib/appwrite/models/dedicated_database_extensions.rb +1 -0
  111. data/lib/appwrite/models/dedicated_database_list.rb +1 -0
  112. data/lib/appwrite/models/dedicated_database_member.rb +3 -2
  113. data/lib/appwrite/models/dedicated_database_operation.rb +4 -3
  114. data/lib/appwrite/models/dedicated_database_operation_list.rb +1 -0
  115. data/lib/appwrite/models/dedicated_database_pitr_windows.rb +1 -0
  116. data/lib/appwrite/models/dedicated_database_pooler.rb +1 -0
  117. data/lib/appwrite/models/dedicated_database_replicas.rb +3 -2
  118. data/lib/appwrite/models/dedicated_database_restoration.rb +11 -5
  119. data/lib/appwrite/models/dedicated_database_restoration_list.rb +1 -0
  120. data/lib/appwrite/models/dedicated_database_specification.rb +1 -0
  121. data/lib/appwrite/models/dedicated_database_specification_list.rb +4 -8
  122. data/lib/appwrite/models/deployment.rb +1 -0
  123. data/lib/appwrite/models/deployment_list.rb +1 -0
  124. data/lib/appwrite/models/document.rb +1 -0
  125. data/lib/appwrite/models/document_list.rb +1 -0
  126. data/lib/appwrite/models/domain.rb +1 -1
  127. data/lib/appwrite/models/domain_price.rb +2 -2
  128. data/lib/appwrite/models/email_template.rb +1 -0
  129. data/lib/appwrite/models/email_template_list.rb +1 -0
  130. data/lib/appwrite/models/embedding.rb +1 -0
  131. data/lib/appwrite/models/embedding_list.rb +1 -0
  132. data/lib/appwrite/models/ephemeral_key.rb +6 -0
  133. data/lib/appwrite/models/execution.rb +3 -1
  134. data/lib/appwrite/models/execution_list.rb +1 -0
  135. data/lib/appwrite/models/file.rb +1 -0
  136. data/lib/appwrite/models/file_list.rb +1 -0
  137. data/lib/appwrite/models/framework.rb +1 -0
  138. data/lib/appwrite/models/framework_adapter.rb +2 -1
  139. data/lib/appwrite/models/framework_list.rb +1 -0
  140. data/lib/appwrite/models/function.rb +15 -4
  141. data/lib/appwrite/models/function_list.rb +1 -0
  142. data/lib/appwrite/models/headers.rb +1 -0
  143. data/lib/appwrite/models/identity.rb +1 -0
  144. data/lib/appwrite/models/identity_list.rb +1 -0
  145. data/lib/appwrite/models/index.rb +7 -1
  146. data/lib/appwrite/models/index_list.rb +1 -0
  147. data/lib/appwrite/models/insight.rb +4 -3
  148. data/lib/appwrite/models/insight_cta.rb +1 -0
  149. data/lib/appwrite/models/insight_list.rb +1 -0
  150. data/lib/appwrite/models/jwt.rb +1 -0
  151. data/lib/appwrite/models/key.rb +6 -0
  152. data/lib/appwrite/models/key_list.rb +1 -0
  153. data/lib/appwrite/models/language.rb +1 -0
  154. data/lib/appwrite/models/language_list.rb +1 -0
  155. data/lib/appwrite/models/locale.rb +12 -11
  156. data/lib/appwrite/models/locale_code.rb +1 -0
  157. data/lib/appwrite/models/locale_code_list.rb +1 -0
  158. data/lib/appwrite/models/membership.rb +1 -0
  159. data/lib/appwrite/models/membership_list.rb +1 -0
  160. data/lib/appwrite/models/message.rb +4 -3
  161. data/lib/appwrite/models/message_list.rb +1 -0
  162. data/lib/appwrite/models/mfa_challenge.rb +1 -0
  163. data/lib/appwrite/models/mfa_challenge_secret.rb +1 -0
  164. data/lib/appwrite/models/mfa_factors.rb +1 -0
  165. data/lib/appwrite/models/mfa_recovery_codes.rb +1 -0
  166. data/lib/appwrite/models/mfa_type.rb +1 -0
  167. data/lib/appwrite/models/mock_number.rb +1 -0
  168. data/lib/appwrite/models/mock_number_list.rb +1 -0
  169. data/lib/appwrite/models/o_auth2_amazon.rb +1 -0
  170. data/lib/appwrite/models/o_auth2_apple.rb +1 -0
  171. data/lib/appwrite/models/o_auth2_appwrite.rb +1 -0
  172. data/lib/appwrite/models/o_auth2_auth0.rb +2 -1
  173. data/lib/appwrite/models/o_auth2_authentik.rb +1 -0
  174. data/lib/appwrite/models/o_auth2_autodesk.rb +1 -0
  175. data/lib/appwrite/models/o_auth2_bitbucket.rb +1 -0
  176. data/lib/appwrite/models/o_auth2_bitly.rb +1 -0
  177. data/lib/appwrite/models/o_auth2_box.rb +1 -0
  178. data/lib/appwrite/models/o_auth2_cloudflare.rb +1 -0
  179. data/lib/appwrite/models/o_auth2_dailymotion.rb +1 -0
  180. data/lib/appwrite/models/o_auth2_discord.rb +2 -1
  181. data/lib/appwrite/models/o_auth2_disqus.rb +1 -0
  182. data/lib/appwrite/models/o_auth2_dropbox.rb +1 -0
  183. data/lib/appwrite/models/o_auth2_etsy.rb +1 -0
  184. data/lib/appwrite/models/o_auth2_facebook.rb +1 -0
  185. data/lib/appwrite/models/o_auth2_figma.rb +1 -0
  186. data/lib/appwrite/models/o_auth2_fusion_auth.rb +1 -0
  187. data/lib/appwrite/models/o_auth2_github.rb +2 -1
  188. data/lib/appwrite/models/o_auth2_gitlab.rb +1 -0
  189. data/lib/appwrite/models/o_auth2_google.rb +1 -0
  190. data/lib/appwrite/models/o_auth2_hugging_face.rb +1 -0
  191. data/lib/appwrite/models/o_auth2_keycloak.rb +1 -0
  192. data/lib/appwrite/models/o_auth2_kick.rb +1 -0
  193. data/lib/appwrite/models/o_auth2_linkedin.rb +1 -0
  194. data/lib/appwrite/models/o_auth2_microsoft.rb +2 -1
  195. data/lib/appwrite/models/o_auth2_notion.rb +1 -0
  196. data/lib/appwrite/models/o_auth2_oidc.rb +7 -6
  197. data/lib/appwrite/models/o_auth2_okta.rb +2 -1
  198. data/lib/appwrite/models/o_auth2_paypal.rb +1 -0
  199. data/lib/appwrite/models/o_auth2_podio.rb +1 -0
  200. data/lib/appwrite/models/o_auth2_provider_list.rb +1 -0
  201. data/lib/appwrite/models/o_auth2_resend.rb +1 -0
  202. data/lib/appwrite/models/o_auth2_salesforce.rb +2 -1
  203. data/lib/appwrite/models/o_auth2_slack.rb +1 -0
  204. data/lib/appwrite/models/o_auth2_spotify.rb +1 -0
  205. data/lib/appwrite/models/o_auth2_stripe.rb +1 -0
  206. data/lib/appwrite/models/o_auth2_tradeshift.rb +1 -0
  207. data/lib/appwrite/models/o_auth2_twitch.rb +1 -0
  208. data/lib/appwrite/models/o_auth2_word_press.rb +1 -0
  209. data/lib/appwrite/models/o_auth2_x.rb +1 -0
  210. data/lib/appwrite/models/o_auth2_yahoo.rb +1 -0
  211. data/lib/appwrite/models/o_auth2_yandex.rb +1 -0
  212. data/lib/appwrite/models/o_auth2_zoho.rb +2 -1
  213. data/lib/appwrite/models/o_auth2_zoom.rb +1 -0
  214. data/lib/appwrite/models/oauth2_approve.rb +1 -0
  215. data/lib/appwrite/models/oauth2_authorize.rb +1 -0
  216. data/lib/appwrite/models/oauth2_consent.rb +1 -0
  217. data/lib/appwrite/models/oauth2_consent_list.rb +1 -0
  218. data/lib/appwrite/models/oauth2_consent_token.rb +1 -0
  219. data/lib/appwrite/models/oauth2_consent_token_list.rb +1 -0
  220. data/lib/appwrite/models/oauth2_device_authorization.rb +1 -0
  221. data/lib/appwrite/models/oauth2_grant.rb +1 -0
  222. data/lib/appwrite/models/oauth2_introspection.rb +11 -11
  223. data/lib/appwrite/models/oauth2_organization.rb +1 -0
  224. data/lib/appwrite/models/oauth2_organization_list.rb +1 -0
  225. data/lib/appwrite/models/oauth2_par.rb +1 -0
  226. data/lib/appwrite/models/oauth2_project.rb +1 -0
  227. data/lib/appwrite/models/oauth2_project_list.rb +1 -0
  228. data/lib/appwrite/models/oauth2_reject.rb +1 -0
  229. data/lib/appwrite/models/oauth2_token.rb +3 -2
  230. data/lib/appwrite/models/organization.rb +21 -20
  231. data/lib/appwrite/models/passkey.rb +1 -0
  232. data/lib/appwrite/models/passkey_challenge.rb +1 -0
  233. data/lib/appwrite/models/passkey_list.rb +1 -0
  234. data/lib/appwrite/models/phone.rb +1 -0
  235. data/lib/appwrite/models/phone_list.rb +1 -0
  236. data/lib/appwrite/models/platform_android.rb +1 -0
  237. data/lib/appwrite/models/platform_apple.rb +1 -0
  238. data/lib/appwrite/models/platform_linux.rb +1 -0
  239. data/lib/appwrite/models/platform_list.rb +1 -0
  240. data/lib/appwrite/models/platform_web.rb +1 -0
  241. data/lib/appwrite/models/platform_windows.rb +1 -0
  242. data/lib/appwrite/models/policy_deny_aliased_email.rb +1 -0
  243. data/lib/appwrite/models/policy_deny_corporate_email.rb +1 -0
  244. data/lib/appwrite/models/policy_deny_disposable_email.rb +1 -0
  245. data/lib/appwrite/models/policy_deny_free_email.rb +1 -0
  246. data/lib/appwrite/models/policy_list.rb +1 -0
  247. data/lib/appwrite/models/policy_membership_privacy.rb +1 -0
  248. data/lib/appwrite/models/policy_mfa_factors.rb +1 -0
  249. data/lib/appwrite/models/policy_passkey.rb +1 -0
  250. data/lib/appwrite/models/policy_password_dictionary.rb +9 -3
  251. data/lib/appwrite/models/policy_password_history.rb +1 -0
  252. data/lib/appwrite/models/policy_password_personal_data.rb +9 -3
  253. data/lib/appwrite/models/policy_password_strength.rb +1 -0
  254. data/lib/appwrite/models/policy_session_alert.rb +1 -0
  255. data/lib/appwrite/models/policy_session_duration.rb +1 -0
  256. data/lib/appwrite/models/policy_session_invalidation.rb +1 -0
  257. data/lib/appwrite/models/policy_session_limit.rb +1 -0
  258. data/lib/appwrite/models/policy_user_limit.rb +1 -0
  259. data/lib/appwrite/models/postgres_extension.rb +1 -0
  260. data/lib/appwrite/models/presence.rb +4 -3
  261. data/lib/appwrite/models/presence_list.rb +1 -0
  262. data/lib/appwrite/models/program.rb +1 -0
  263. data/lib/appwrite/models/project.rb +23 -27
  264. data/lib/appwrite/models/project_auth_method.rb +1 -0
  265. data/lib/appwrite/models/project_list.rb +1 -0
  266. data/lib/appwrite/models/project_protocol.rb +1 -0
  267. data/lib/appwrite/models/project_service.rb +1 -0
  268. data/lib/appwrite/models/provider.rb +2 -1
  269. data/lib/appwrite/models/provider_list.rb +1 -0
  270. data/lib/appwrite/models/proxy_invalidation.rb +1 -0
  271. data/lib/appwrite/models/proxy_rule.rb +23 -4
  272. data/lib/appwrite/models/proxy_rule_list.rb +1 -0
  273. data/lib/appwrite/models/report.rb +2 -1
  274. data/lib/appwrite/models/report_list.rb +1 -0
  275. data/lib/appwrite/models/resource_token.rb +1 -0
  276. data/lib/appwrite/models/resource_token_list.rb +1 -0
  277. data/lib/appwrite/models/row.rb +1 -0
  278. data/lib/appwrite/models/row_list.rb +1 -0
  279. data/lib/appwrite/models/runtime.rb +1 -0
  280. data/lib/appwrite/models/runtime_list.rb +1 -0
  281. data/lib/appwrite/models/session.rb +1 -0
  282. data/lib/appwrite/models/session_list.rb +1 -0
  283. data/lib/appwrite/models/site.rb +6 -0
  284. data/lib/appwrite/models/site_list.rb +1 -0
  285. data/lib/appwrite/models/specification.rb +1 -0
  286. data/lib/appwrite/models/specification_list.rb +1 -0
  287. data/lib/appwrite/models/subscriber.rb +1 -0
  288. data/lib/appwrite/models/subscriber_list.rb +1 -0
  289. data/lib/appwrite/models/table.rb +6 -0
  290. data/lib/appwrite/models/table_list.rb +1 -0
  291. data/lib/appwrite/models/target.rb +2 -1
  292. data/lib/appwrite/models/target_list.rb +1 -0
  293. data/lib/appwrite/models/team.rb +1 -0
  294. data/lib/appwrite/models/team_list.rb +1 -0
  295. data/lib/appwrite/models/token.rb +1 -0
  296. data/lib/appwrite/models/token_secret.rb +1 -0
  297. data/lib/appwrite/models/topic.rb +8 -2
  298. data/lib/appwrite/models/topic_list.rb +1 -0
  299. data/lib/appwrite/models/transaction.rb +1 -0
  300. data/lib/appwrite/models/transaction_list.rb +1 -0
  301. data/lib/appwrite/models/usage_billing_plan.rb +27 -27
  302. data/lib/appwrite/models/user.rb +12 -11
  303. data/lib/appwrite/models/user_list.rb +1 -0
  304. data/lib/appwrite/models/variable.rb +6 -0
  305. data/lib/appwrite/models/variable_list.rb +1 -0
  306. data/lib/appwrite/models/vectorsdb_collection.rb +6 -0
  307. data/lib/appwrite/models/vectorsdb_collection_list.rb +1 -0
  308. data/lib/appwrite/models/webhook.rb +6 -0
  309. data/lib/appwrite/models/webhook_list.rb +1 -0
  310. data/lib/appwrite/query/builder.rb +361 -0
  311. data/lib/appwrite/query.rb +190 -0
  312. data/lib/appwrite/services/account.rb +135 -107
  313. data/lib/appwrite/services/activities.rb +8 -5
  314. data/lib/appwrite/services/advisor.rb +19 -18
  315. data/lib/appwrite/services/apps.rb +89 -89
  316. data/lib/appwrite/services/avatars.rb +21 -21
  317. data/lib/appwrite/services/backups.rb +42 -33
  318. data/lib/appwrite/services/databases.rb +727 -488
  319. data/lib/appwrite/services/documents_db.rb +266 -190
  320. data/lib/appwrite/services/domains.rb +63 -57
  321. data/lib/appwrite/services/embeddings.rb +2 -2
  322. data/lib/appwrite/services/functions.rb +132 -112
  323. data/lib/appwrite/services/graphql.rb +4 -4
  324. data/lib/appwrite/services/messaging.rb +172 -156
  325. data/lib/appwrite/services/mongo.rb +206 -133
  326. data/lib/appwrite/services/mysql.rb +224 -147
  327. data/lib/appwrite/services/oauth2.rb +27 -27
  328. data/lib/appwrite/services/organization.rb +59 -247
  329. data/lib/appwrite/services/postgresql.rb +238 -161
  330. data/lib/appwrite/services/presences.rb +17 -16
  331. data/lib/appwrite/services/project.rb +187 -147
  332. data/lib/appwrite/services/proxy.rb +70 -23
  333. data/lib/appwrite/services/sites.rb +124 -108
  334. data/lib/appwrite/services/storage.rb +77 -62
  335. data/lib/appwrite/services/tables_db.rb +832 -589
  336. data/lib/appwrite/services/teams.rb +83 -81
  337. data/lib/appwrite/services/tokens.rb +25 -24
  338. data/lib/appwrite/services/users.rb +170 -199
  339. data/lib/appwrite/services/vectors_db.rb +199 -179
  340. data/lib/appwrite/services/waf.rb +7 -7
  341. data/lib/appwrite/services/webhooks.rb +31 -24
  342. data/lib/appwrite/topic.rb +53 -0
  343. data/lib/appwrite.rb +6 -9
  344. metadata +6 -8
  345. data/lib/appwrite/enums/organization_key_scopes.rb +0 -22
  346. data/lib/appwrite/models/dedicated_database_specification_pricing.rb +0 -42
  347. data/lib/appwrite/models/dev_key.rb +0 -62
  348. data/lib/appwrite/models/log.rb +0 -132
  349. data/lib/appwrite/models/log_list.rb +0 -32
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 062d166c84de8d1922e7723fbbe7a74e5846f436c1bb7479405be6d0a930ff8b
4
- data.tar.gz: 11d0067e314a64e574a70242dc0458e985d965a899ef7bb88a80789c3c5e4617
3
+ metadata.gz: 38a4b4fc64ceb1106553d044c6c978fc4af657d986209153b94297950f7a0e34
4
+ data.tar.gz: 943b460cb8cee3660e3c670ffc2d143dc140328977a389e1f39054a310a44cc7
5
5
  SHA512:
6
- metadata.gz: ba27595497a5133d6033c7d96bc0de5c340eea64ecee4d3b23d457277521bf584422c59f2d068cc8027418d1318baf69c3333f688bf088a2fe0f95527938de44
7
- data.tar.gz: cf0d6a62a303215690733c199f631fabe55889b5364eff2c86701fb18ea726ed1450b55bb82e49408ef516e660115db58c14c379607a586d571d825b54341c2d
6
+ metadata.gz: cf3474db024db0aa0cf919086961e7918a651cec3066cd45aa14aa8c9eab6aa3bba95f42a85d02847daffa8e4043168df7a309218b01191940c2d5822dc2a8a7
7
+ data.tar.gz: 5052165e46772bff52715da5d29a95be041b09eb2f2cd96775ef0723c487ae0702b62155f9b60d966bb7bdd3c56989bcf26e104831ad4b3cbdfcfa456eef4926
@@ -3,7 +3,7 @@
3
3
  require 'net/http'
4
4
  require 'uri'
5
5
  require 'json'
6
- require 'cgi'
6
+ require 'cgi/escape'
7
7
 
8
8
  module Appwrite
9
9
  class Client
@@ -14,8 +14,8 @@ module Appwrite
14
14
  'x-sdk-name' => 'Ruby',
15
15
  'x-sdk-platform' => 'server',
16
16
  'x-sdk-language' => 'ruby',
17
- 'x-sdk-version' => '28.4.0',
18
- 'X-Appwrite-Response-Format' => '2.0.0'
17
+ 'x-sdk-version' => '30.0.0',
18
+ 'X-Appwrite-Response-Format' => '2.5.0'
19
19
  }
20
20
  @endpoint = 'https://cloud.appwrite.io/v1'
21
21
  @config = {}
@@ -130,20 +130,6 @@ module Appwrite
130
130
  self
131
131
  end
132
132
 
133
- # Set DevKey
134
- #
135
- # Your secret dev API key
136
- #
137
- # @param [String] value The value to set for the DevKey header
138
- #
139
- # @return [self]
140
- def set_dev_key(value)
141
- add_header('x-appwrite-dev-key', value)
142
- @config['devkey'] = value
143
-
144
- self
145
- end
146
-
147
133
  # Set Cookie
148
134
  #
149
135
  # The user cookie to authenticate with. Used by SDKs that forward an incoming Cookie header in server-side runtimes.
@@ -265,6 +251,8 @@ module Appwrite
265
251
  params: {},
266
252
  response_type: nil
267
253
  )
254
+ params = params.transform_values { |value| Query._flatten(value) }
255
+
268
256
  separator = path.include?('?') ? '&' : '?'
269
257
  uri = URI.parse(@endpoint + path + ((method == "GET" && params.length) ? separator + encode(params) : ''))
270
258
 
@@ -283,6 +271,16 @@ module Appwrite
283
271
  )
284
272
  input_file = params[param_name.to_sym]
285
273
 
274
+ if input_file.nil?
275
+ return call(
276
+ method: method,
277
+ path: path,
278
+ headers: headers,
279
+ params: params,
280
+ response_type: response_type,
281
+ )
282
+ end
283
+
286
284
  case input_file.source_type
287
285
  when 'path'
288
286
  size = ::File.size(input_file.path)
@@ -290,7 +288,7 @@ module Appwrite
290
288
  size = input_file.data.bytesize
291
289
  end
292
290
 
293
- if size < @chunk_size
291
+ if size <= @chunk_size || response_type == "text"
294
292
  if input_file.source_type == 'path'
295
293
  input_file.data = IO.read(input_file.path)
296
294
  end
@@ -502,7 +500,7 @@ module Appwrite
502
500
  if response.content_type == 'application/json'
503
501
  begin
504
502
  result = JSON.parse(response.body)
505
- rescue JSON::ParserError => e
503
+ rescue JSON::ParserError
506
504
  raise Appwrite::Exception.new(response.body, response.code, nil, response.body)
507
505
  end
508
506
 
@@ -546,6 +544,8 @@ module Appwrite
546
544
  def encode_form_data(value, key = nil)
547
545
  case value
548
546
  when Hash
547
+ return encode_form_data(value.to_json, key) unless key.nil?
548
+
549
549
  value.map { |k, v| encode_form_data(v, k) }.join
550
550
  when Array
551
551
  value.map { |v| encode_form_data(v, "#{key}[]") }.join
@@ -1,7 +1,6 @@
1
1
  module Appwrite
2
2
  module Enums
3
3
  module BillingPlanGroup
4
- STARTER = 'starter'
5
4
  FREE = 'free'
6
5
  START = 'start'
7
6
  PRO = 'pro'
@@ -4,6 +4,7 @@ module Appwrite
4
4
  HTTP = 'http'
5
5
  SCHEDULE = 'schedule'
6
6
  EVENT = 'event'
7
+ EMAIL = 'email'
7
8
  end
8
9
  end
9
10
  end
@@ -0,0 +1,8 @@
1
+ module Appwrite
2
+ module Enums
3
+ module ProxyRuleProtocol
4
+ HTTP = 'http'
5
+ SMTP = 'smtp'
6
+ end
7
+ end
8
+ end
@@ -40,19 +40,19 @@ module Appwrite
40
40
  email:,
41
41
  phone:,
42
42
  email_verification:,
43
- email_canonical:,
44
- email_is_free:,
45
- email_is_disposable:,
46
- email_is_corporate:,
47
- email_is_canonical:,
48
- password_pwned:,
43
+ email_canonical: nil,
44
+ email_is_free: nil,
45
+ email_is_disposable: nil,
46
+ email_is_corporate: nil,
47
+ email_is_canonical: nil,
48
+ password_pwned: nil,
49
49
  phone_verification:,
50
50
  mfa:,
51
51
  prefs:,
52
52
  targets:,
53
53
  accessed_at:,
54
- impersonator:,
55
- impersonator_user_id:
54
+ impersonator: false,
55
+ impersonator_user_id: nil
56
56
  )
57
57
  @id = id
58
58
  @created_at = created_at
@@ -96,6 +96,7 @@ module Appwrite
96
96
  end
97
97
 
98
98
  def self.from(map:)
99
+ map = { "$id" => "", "actorType" => "", "actorId" => "", "actorEmail" => "", "actorName" => "", "resourceParent" => "", "resourceType" => "", "resourceId" => "", "resource" => "", "event" => "", "userAgent" => "", "ip" => "", "mode" => "", "country" => "", "continentCode" => "", "city" => "", "subdivisions" => "", "isp" => "", "autonomousSystemNumber" => "", "autonomousSystemOrganization" => "", "connectionType" => "", "connectionUsageType" => "", "connectionOrganization" => "", "time" => "", "projectId" => "", "teamId" => "", "hostname" => "", "sdk" => "", "sdkVersion" => "" }.merge(map)
99
100
  ActivityEvent.new(
100
101
  id: map["$id"],
101
102
  actor_type: map["actorType"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "events" => [] }.merge(map)
18
19
  ActivityEventList.new(
19
20
  total: map["total"],
20
21
  events: map["events"].map { |it| ActivityEvent.from(map: it) }
@@ -27,6 +27,7 @@ module Appwrite
27
27
  end
28
28
 
29
29
  def self.from(map:)
30
+ map = { "name" => "", "unit" => "", "currency" => "", "price" => 0, "value" => 0, "invoiceDesc" => "" }.merge(map)
30
31
  AdditionalResource.new(
31
32
  name: map["name"],
32
33
  unit: map["unit"],
@@ -21,6 +21,7 @@ module Appwrite
21
21
  end
22
22
 
23
23
  def self.from(map:)
24
+ map = { "type" => "argon2", "memoryCost" => 0, "timeCost" => 0, "threads" => 0 }.merge(map)
24
25
  AlgoArgon2.new(
25
26
  type: map["type"],
26
27
  memory_cost: map["memoryCost"],
@@ -12,6 +12,7 @@ module Appwrite
12
12
  end
13
13
 
14
14
  def self.from(map:)
15
+ map = { "type" => "bcrypt" }.merge(map)
15
16
  AlgoBcrypt.new(
16
17
  type: map["type"]
17
18
  )
@@ -12,6 +12,7 @@ module Appwrite
12
12
  end
13
13
 
14
14
  def self.from(map:)
15
+ map = { "type" => "md5" }.merge(map)
15
16
  AlgoMd5.new(
16
17
  type: map["type"]
17
18
  )
@@ -12,6 +12,7 @@ module Appwrite
12
12
  end
13
13
 
14
14
  def self.from(map:)
15
+ map = { "type" => "phpass" }.merge(map)
15
16
  AlgoPhpass.new(
16
17
  type: map["type"]
17
18
  )
@@ -24,6 +24,7 @@ module Appwrite
24
24
  end
25
25
 
26
26
  def self.from(map:)
27
+ map = { "type" => "scrypt", "costCpu" => 8, "costMemory" => 14, "costParallel" => 1, "length" => 64 }.merge(map)
27
28
  AlgoScrypt.new(
28
29
  type: map["type"],
29
30
  cost_cpu: map["costCpu"],
@@ -21,6 +21,7 @@ module Appwrite
21
21
  end
22
22
 
23
23
  def self.from(map:)
24
+ map = { "type" => "scryptMod", "salt" => "", "saltSeparator" => "", "signerKey" => "" }.merge(map)
24
25
  AlgoScryptModified.new(
25
26
  type: map["type"],
26
27
  salt: map["salt"],
@@ -12,6 +12,7 @@ module Appwrite
12
12
  end
13
13
 
14
14
  def self.from(map:)
15
+ map = { "type" => "sha" }.merge(map)
15
16
  AlgoSha.new(
16
17
  type: map["type"]
17
18
  )
@@ -87,6 +87,7 @@ module Appwrite
87
87
  end
88
88
 
89
89
  def self.from(map:)
90
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "description" => "", "clientUri" => "", "logoUri" => "", "privacyPolicyUrl" => "", "termsUrl" => "", "contacts" => [], "tagline" => "", "tags" => [], "labels" => [], "images" => [], "supportUrl" => "", "dataDeletionUrl" => "", "redirectUris" => [], "postLogoutRedirectUris" => [], "enabled" => true, "type" => "confidential", "deviceFlow" => false, "teamId" => "", "userId" => "", "installationScopes" => [], "installationRedirectUrl" => "", "secrets" => [] }.merge(map)
90
91
  App.new(
91
92
  id: map["$id"],
92
93
  created_at: map["$createdAt"],
@@ -24,7 +24,7 @@ module Appwrite
24
24
  authorization_details:,
25
25
  created_by_id:,
26
26
  created_by_name:,
27
- last_accessed_at:
27
+ last_accessed_at: nil
28
28
  )
29
29
  @id = id
30
30
  @created_at = created_at
@@ -39,6 +39,7 @@ module Appwrite
39
39
  end
40
40
 
41
41
  def self.from(map:)
42
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "appId" => "", "teamId" => "", "scopes" => [], "authorizationDetails" => [], "createdById" => "", "createdByName" => "" }.merge(map)
42
43
  AppInstallation.new(
43
44
  id: map["$id"],
44
45
  created_at: map["$createdAt"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "installations" => [] }.merge(map)
18
19
  AppInstallationList.new(
19
20
  total: map["total"],
20
21
  installations: map["installations"].map { |it| AppInstallation.from(map: it) }
@@ -22,7 +22,7 @@ module Appwrite
22
22
  hint:,
23
23
  created_by_id:,
24
24
  created_by_name:,
25
- last_accessed_at:
25
+ last_accessed_at: nil
26
26
  )
27
27
  @id = id
28
28
  @created_at = created_at
@@ -36,6 +36,7 @@ module Appwrite
36
36
  end
37
37
 
38
38
  def self.from(map:)
39
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "appId" => "", "secret" => "", "hint" => "", "createdById" => "", "createdByName" => "" }.merge(map)
39
40
  AppKey.new(
40
41
  id: map["$id"],
41
42
  created_at: map["$createdAt"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "keys" => [] }.merge(map)
18
19
  AppKeyList.new(
19
20
  total: map["total"],
20
21
  keys: map["keys"].map { |it| AppKey.from(map: it) }
@@ -24,6 +24,7 @@ module Appwrite
24
24
  end
25
25
 
26
26
  def self.from(map:)
27
+ map = { "value" => "", "description" => "", "type" => "", "category" => "", "deprecated" => false }.merge(map)
27
28
  AppScope.new(
28
29
  value: map["value"],
29
30
  description: map["description"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "scopes" => [] }.merge(map)
18
19
  AppScopeList.new(
19
20
  total: map["total"],
20
21
  scopes: map["scopes"].map { |it| AppScope.from(map: it) }
@@ -22,7 +22,7 @@ module Appwrite
22
22
  hint:,
23
23
  created_by_id:,
24
24
  created_by_name:,
25
- last_accessed_at:
25
+ last_accessed_at: nil
26
26
  )
27
27
  @id = id
28
28
  @created_at = created_at
@@ -36,6 +36,7 @@ module Appwrite
36
36
  end
37
37
 
38
38
  def self.from(map:)
39
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "appId" => "", "secret" => "", "hint" => "", "createdById" => "", "createdByName" => "" }.merge(map)
39
40
  AppSecret.new(
40
41
  id: map["$id"],
41
42
  created_at: map["$createdAt"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "secrets" => [] }.merge(map)
18
19
  AppSecretList.new(
19
20
  total: map["total"],
20
21
  secrets: map["secrets"].map { |it| AppSecret.from(map: it) }
@@ -22,7 +22,7 @@ module Appwrite
22
22
  hint:,
23
23
  created_by_id:,
24
24
  created_by_name:,
25
- last_accessed_at:
25
+ last_accessed_at: nil
26
26
  )
27
27
  @id = id
28
28
  @created_at = created_at
@@ -36,6 +36,7 @@ module Appwrite
36
36
  end
37
37
 
38
38
  def self.from(map:)
39
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "appId" => "", "secret" => "", "hint" => "", "createdById" => "", "createdByName" => "" }.merge(map)
39
40
  AppSecretPlaintext.new(
40
41
  id: map["$id"],
41
42
  created_at: map["$createdAt"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "apps" => [] }.merge(map)
18
19
  AppsList.new(
19
20
  total: map["total"],
20
21
  apps: map["apps"].map { |it| App.from(map: it) }
@@ -4,6 +4,7 @@ module Appwrite
4
4
  module Models
5
5
  class AttributeBigint
6
6
  attr_reader :key
7
+ attr_reader :description
7
8
  attr_reader :type
8
9
  attr_reader :status
9
10
  attr_reader :error
@@ -17,18 +18,20 @@ module Appwrite
17
18
 
18
19
  def initialize(
19
20
  key:,
21
+ description:,
20
22
  type:,
21
23
  status:,
22
24
  error:,
23
25
  required:,
24
- array:,
26
+ array: false,
25
27
  created_at:,
26
28
  updated_at:,
27
- min:,
28
- max:,
29
- default:
29
+ min: nil,
30
+ max: nil,
31
+ default: nil
30
32
  )
31
33
  @key = key
34
+ @description = description
32
35
  @type = type
33
36
  @status = validate_status(status)
34
37
  @error = error
@@ -42,8 +45,10 @@ module Appwrite
42
45
  end
43
46
 
44
47
  def self.from(map:)
48
+ map = { "key" => "", "description" => "", "type" => "", "error" => "", "required" => false, "$createdAt" => "", "$updatedAt" => "" }.merge(map)
45
49
  AttributeBigint.new(
46
50
  key: map["key"],
51
+ description: map["description"],
47
52
  type: map["type"],
48
53
  status: map["status"],
49
54
  error: map["error"],
@@ -60,6 +65,7 @@ module Appwrite
60
65
  def to_map
61
66
  {
62
67
  "key": @key,
68
+ "description": @description,
63
69
  "type": @type,
64
70
  "status": @status,
65
71
  "error": @error,
@@ -4,6 +4,7 @@ module Appwrite
4
4
  module Models
5
5
  class AttributeBoolean
6
6
  attr_reader :key
7
+ attr_reader :description
7
8
  attr_reader :type
8
9
  attr_reader :status
9
10
  attr_reader :error
@@ -15,16 +16,18 @@ module Appwrite
15
16
 
16
17
  def initialize(
17
18
  key:,
19
+ description:,
18
20
  type:,
19
21
  status:,
20
22
  error:,
21
23
  required:,
22
- array:,
24
+ array: false,
23
25
  created_at:,
24
26
  updated_at:,
25
- default:
27
+ default: nil
26
28
  )
27
29
  @key = key
30
+ @description = description
28
31
  @type = type
29
32
  @status = validate_status(status)
30
33
  @error = error
@@ -36,8 +39,10 @@ module Appwrite
36
39
  end
37
40
 
38
41
  def self.from(map:)
42
+ map = { "key" => "", "description" => "", "type" => "", "error" => "", "required" => false, "$createdAt" => "", "$updatedAt" => "" }.merge(map)
39
43
  AttributeBoolean.new(
40
44
  key: map["key"],
45
+ description: map["description"],
41
46
  type: map["type"],
42
47
  status: map["status"],
43
48
  error: map["error"],
@@ -52,6 +57,7 @@ module Appwrite
52
57
  def to_map
53
58
  {
54
59
  "key": @key,
60
+ "description": @description,
55
61
  "type": @type,
56
62
  "status": @status,
57
63
  "error": @error,
@@ -4,6 +4,7 @@ module Appwrite
4
4
  module Models
5
5
  class AttributeDatetime
6
6
  attr_reader :key
7
+ attr_reader :description
7
8
  attr_reader :type
8
9
  attr_reader :status
9
10
  attr_reader :error
@@ -16,17 +17,19 @@ module Appwrite
16
17
 
17
18
  def initialize(
18
19
  key:,
20
+ description:,
19
21
  type:,
20
22
  status:,
21
23
  error:,
22
24
  required:,
23
- array:,
25
+ array: false,
24
26
  created_at:,
25
27
  updated_at:,
26
28
  format:,
27
- default:
29
+ default: nil
28
30
  )
29
31
  @key = key
32
+ @description = description
30
33
  @type = type
31
34
  @status = validate_status(status)
32
35
  @error = error
@@ -39,8 +42,10 @@ module Appwrite
39
42
  end
40
43
 
41
44
  def self.from(map:)
45
+ map = { "key" => "", "description" => "", "type" => "", "error" => "", "required" => false, "$createdAt" => "", "$updatedAt" => "" }.merge(map)
42
46
  AttributeDatetime.new(
43
47
  key: map["key"],
48
+ description: map["description"],
44
49
  type: map["type"],
45
50
  status: map["status"],
46
51
  error: map["error"],
@@ -56,6 +61,7 @@ module Appwrite
56
61
  def to_map
57
62
  {
58
63
  "key": @key,
64
+ "description": @description,
59
65
  "type": @type,
60
66
  "status": @status,
61
67
  "error": @error,
@@ -4,6 +4,7 @@ module Appwrite
4
4
  module Models
5
5
  class AttributeEmail
6
6
  attr_reader :key
7
+ attr_reader :description
7
8
  attr_reader :type
8
9
  attr_reader :status
9
10
  attr_reader :error
@@ -16,17 +17,19 @@ module Appwrite
16
17
 
17
18
  def initialize(
18
19
  key:,
20
+ description:,
19
21
  type:,
20
22
  status:,
21
23
  error:,
22
24
  required:,
23
- array:,
25
+ array: false,
24
26
  created_at:,
25
27
  updated_at:,
26
28
  format:,
27
- default:
29
+ default: nil
28
30
  )
29
31
  @key = key
32
+ @description = description
30
33
  @type = type
31
34
  @status = validate_status(status)
32
35
  @error = error
@@ -39,8 +42,10 @@ module Appwrite
39
42
  end
40
43
 
41
44
  def self.from(map:)
45
+ map = { "key" => "", "description" => "", "type" => "", "error" => "", "required" => false, "$createdAt" => "", "$updatedAt" => "", "format" => "email" }.merge(map)
42
46
  AttributeEmail.new(
43
47
  key: map["key"],
48
+ description: map["description"],
44
49
  type: map["type"],
45
50
  status: map["status"],
46
51
  error: map["error"],
@@ -56,6 +61,7 @@ module Appwrite
56
61
  def to_map
57
62
  {
58
63
  "key": @key,
64
+ "description": @description,
59
65
  "type": @type,
60
66
  "status": @status,
61
67
  "error": @error,
@@ -4,6 +4,7 @@ module Appwrite
4
4
  module Models
5
5
  class AttributeEnum
6
6
  attr_reader :key
7
+ attr_reader :description
7
8
  attr_reader :type
8
9
  attr_reader :status
9
10
  attr_reader :error
@@ -17,18 +18,20 @@ module Appwrite
17
18
 
18
19
  def initialize(
19
20
  key:,
21
+ description:,
20
22
  type:,
21
23
  status:,
22
24
  error:,
23
25
  required:,
24
- array:,
26
+ array: false,
25
27
  created_at:,
26
28
  updated_at:,
27
29
  elements:,
28
30
  format:,
29
- default:
31
+ default: nil
30
32
  )
31
33
  @key = key
34
+ @description = description
32
35
  @type = type
33
36
  @status = validate_status(status)
34
37
  @error = error
@@ -42,8 +45,10 @@ module Appwrite
42
45
  end
43
46
 
44
47
  def self.from(map:)
48
+ map = { "key" => "", "description" => "", "type" => "", "error" => "", "required" => false, "$createdAt" => "", "$updatedAt" => "", "elements" => [], "format" => "enum" }.merge(map)
45
49
  AttributeEnum.new(
46
50
  key: map["key"],
51
+ description: map["description"],
47
52
  type: map["type"],
48
53
  status: map["status"],
49
54
  error: map["error"],
@@ -60,6 +65,7 @@ module Appwrite
60
65
  def to_map
61
66
  {
62
67
  "key": @key,
68
+ "description": @description,
63
69
  "type": @type,
64
70
  "status": @status,
65
71
  "error": @error,