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
@@ -18,6 +18,7 @@ module Appwrite
18
18
  end
19
19
 
20
20
  def self.from(map:)
21
+ map = { "installed" => [], "available" => [], "metadata" => [] }.merge(map)
21
22
  DedicatedDatabaseExtensions.new(
22
23
  installed: map["installed"],
23
24
  available: map["available"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "databases" => [] }.merge(map)
18
19
  DedicatedDatabaseList.new(
19
20
  total: map["total"],
20
21
  databases: map["databases"].map { |it| DedicatedDatabase.from(map: it) }
@@ -13,8 +13,8 @@ module Appwrite
13
13
  id:,
14
14
  role:,
15
15
  status:,
16
- replicating:,
17
- lag_seconds:
16
+ replicating: nil,
17
+ lag_seconds: nil
18
18
  )
19
19
  @id = id
20
20
  @role = role
@@ -24,6 +24,7 @@ module Appwrite
24
24
  end
25
25
 
26
26
  def self.from(map:)
27
+ map = { "$id" => "", "role" => "unknown", "status" => "" }.merge(map)
27
28
  DedicatedDatabaseMember.new(
28
29
  id: map["$id"],
29
30
  role: map["role"],
@@ -22,9 +22,9 @@ module Appwrite
22
22
  type:,
23
23
  status:,
24
24
  attempts:,
25
- requested_at:,
26
- started_at:,
27
- completed_at:,
25
+ requested_at: nil,
26
+ started_at: nil,
27
+ completed_at: nil,
28
28
  error_code:,
29
29
  error_message:
30
30
  )
@@ -42,6 +42,7 @@ module Appwrite
42
42
  end
43
43
 
44
44
  def self.from(map:)
45
+ map = { "$id" => "", "$createdAt" => "", "databaseId" => "", "type" => "", "status" => "", "attempts" => 0, "errorCode" => "", "errorMessage" => "" }.merge(map)
45
46
  DedicatedDatabaseOperation.new(
46
47
  id: map["$id"],
47
48
  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, "operations" => [] }.merge(map)
18
19
  DedicatedDatabaseOperationList.new(
19
20
  total: map["total"],
20
21
  operations: map["operations"].map { |it| DedicatedDatabaseOperation.from(map: it) }
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "earliest" => "", "latest" => "" }.merge(map)
18
19
  DedicatedDatabasePITRWindows.new(
19
20
  earliest: map["earliest"],
20
21
  latest: map["latest"]
@@ -39,6 +39,7 @@ module Appwrite
39
39
  end
40
40
 
41
41
  def self.from(map:)
42
+ map = { "enabled" => false, "mode" => "transaction", "maxConnections" => 100, "defaultPoolSize" => 20, "port" => 6432, "readWriteSplitting" => false, "poolerCpuRequest" => "", "poolerCpuLimit" => "", "poolerMemoryRequest" => "", "poolerMemoryLimit" => "" }.merge(map)
42
43
  DedicatedDatabasePooler.new(
43
44
  enabled: map["enabled"],
44
45
  mode: map["mode"],
@@ -15,11 +15,11 @@ module Appwrite
15
15
  def initialize(
16
16
  replicas:,
17
17
  sync_mode:,
18
- effective_sync_mode:,
18
+ effective_sync_mode: nil,
19
19
  sync_degraded:,
20
20
  sync_acknowledgements:,
21
21
  sync_standby_count:,
22
- sync_state_confirmed:,
22
+ sync_state_confirmed: nil,
23
23
  members:
24
24
  )
25
25
  @replicas = replicas
@@ -33,6 +33,7 @@ module Appwrite
33
33
  end
34
34
 
35
35
  def self.from(map:)
36
+ map = { "replicas" => 0, "syncMode" => "async", "syncDegraded" => false, "syncAcknowledgements" => 0, "syncStandbyCount" => 0, "members" => [] }.merge(map)
36
37
  DedicatedDatabaseReplicas.new(
37
38
  replicas: map["replicas"],
38
39
  sync_mode: map["syncMode"],
@@ -10,6 +10,7 @@ module Appwrite
10
10
  attr_reader :project_id
11
11
  attr_reader :backup_id
12
12
  attr_reader :type
13
+ attr_reader :restore_mode
13
14
  attr_reader :status
14
15
  attr_reader :target_time
15
16
  attr_reader :started_at
@@ -20,14 +21,15 @@ module Appwrite
20
21
  id:,
21
22
  created_at:,
22
23
  database_id:,
23
- source_database_id:,
24
+ source_database_id: nil,
24
25
  project_id:,
25
- backup_id:,
26
+ backup_id: nil,
26
27
  type:,
28
+ restore_mode:,
27
29
  status:,
28
- target_time:,
29
- started_at:,
30
- completed_at:,
30
+ target_time: nil,
31
+ started_at: nil,
32
+ completed_at: nil,
31
33
  error:
32
34
  )
33
35
  @id = id
@@ -37,6 +39,7 @@ module Appwrite
37
39
  @project_id = project_id
38
40
  @backup_id = backup_id
39
41
  @type = type
42
+ @restore_mode = restore_mode
40
43
  @status = status
41
44
  @target_time = target_time
42
45
  @started_at = started_at
@@ -45,6 +48,7 @@ module Appwrite
45
48
  end
46
49
 
47
50
  def self.from(map:)
51
+ map = { "$id" => "", "$createdAt" => "", "databaseId" => "", "projectId" => "", "type" => "backup", "restoreMode" => "in_place", "status" => "pending", "error" => "" }.merge(map)
48
52
  DedicatedDatabaseRestoration.new(
49
53
  id: map["$id"],
50
54
  created_at: map["$createdAt"],
@@ -53,6 +57,7 @@ module Appwrite
53
57
  project_id: map["projectId"],
54
58
  backup_id: map["backupId"],
55
59
  type: map["type"],
60
+ restore_mode: map["restoreMode"],
56
61
  status: map["status"],
57
62
  target_time: map["targetTime"],
58
63
  started_at: map["startedAt"],
@@ -70,6 +75,7 @@ module Appwrite
70
75
  "projectId": @project_id,
71
76
  "backupId": @backup_id,
72
77
  "type": @type,
78
+ "restoreMode": @restore_mode,
73
79
  "status": @status,
74
80
  "targetTime": @target_time,
75
81
  "startedAt": @started_at,
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "restorations" => [] }.merge(map)
18
19
  DedicatedDatabaseRestorationList.new(
19
20
  total: map["total"],
20
21
  restorations: map["restorations"].map { |it| DedicatedDatabaseRestoration.from(map: it) }
@@ -48,6 +48,7 @@ module Appwrite
48
48
  end
49
49
 
50
50
  def self.from(map:)
51
+ map = { "slug" => "", "name" => "", "price" => 0, "storageOverageRate" => 0, "bandwidthOverageRate" => 0, "replicaRate" => 0, "pitrRate" => 0, "cpu" => 0, "memory" => 0, "maxConnections" => 0, "includedStorage" => 0, "includedBandwidth" => 0, "enabled" => false }.merge(map)
51
52
  DedicatedDatabaseSpecification.new(
52
53
  slug: map["slug"],
53
54
  name: map["name"],
@@ -5,31 +5,27 @@ module Appwrite
5
5
  class DedicatedDatabaseSpecificationList
6
6
  attr_reader :specifications
7
7
  attr_reader :total
8
- attr_reader :pricing
9
8
 
10
9
  def initialize(
11
10
  specifications:,
12
- total:,
13
- pricing:
11
+ total:
14
12
  )
15
13
  @specifications = specifications
16
14
  @total = total
17
- @pricing = pricing
18
15
  end
19
16
 
20
17
  def self.from(map:)
18
+ map = { "specifications" => [], "total" => 0 }.merge(map)
21
19
  DedicatedDatabaseSpecificationList.new(
22
20
  specifications: map["specifications"].map { |it| DedicatedDatabaseSpecification.from(map: it) },
23
- total: map["total"],
24
- pricing: DedicatedDatabaseSpecificationPricing.from(map: map["pricing"])
21
+ total: map["total"]
25
22
  )
26
23
  end
27
24
 
28
25
  def to_map
29
26
  {
30
27
  "specifications": @specifications.map { |it| it.to_map },
31
- "total": @total,
32
- "pricing": @pricing.to_map
28
+ "total": @total
33
29
  }
34
30
  end
35
31
  end
@@ -90,6 +90,7 @@ module Appwrite
90
90
  end
91
91
 
92
92
  def self.from(map:)
93
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "type" => "", "resourceId" => "", "resourceType" => "", "entrypoint" => "", "sourceSize" => 0, "buildSize" => 0, "totalSize" => 0, "buildId" => "", "activate" => false, "screenshotLight" => "", "screenshotDark" => "", "buildLogs" => "", "buildDuration" => 0, "providerRepositoryName" => "", "providerRepositoryOwner" => "", "providerRepositoryUrl" => "", "providerCommitHash" => "", "providerCommitAuthorUrl" => "", "providerCommitAuthor" => "", "providerCommitMessage" => "", "providerCommitUrl" => "", "providerBranch" => "", "providerBranchUrl" => "" }.merge(map)
93
94
  Deployment.new(
94
95
  id: map["$id"],
95
96
  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, "deployments" => [] }.merge(map)
18
19
  DeploymentList.new(
19
20
  total: map["total"],
20
21
  deployments: map["deployments"].map { |it| Deployment.from(map: it) }
@@ -33,6 +33,7 @@ module Appwrite
33
33
  end
34
34
 
35
35
  def self.from(map:)
36
+ map = { "$id" => "", "$sequence" => "", "$collectionId" => "", "$databaseId" => "", "$createdAt" => "", "$updatedAt" => "", "$permissions" => [] }.merge(map)
36
37
  Document.new(
37
38
  id: map["$id"],
38
39
  sequence: map["$sequence"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "documents" => [] }.merge(map)
18
19
  DocumentList.new(
19
20
  total: map["total"],
20
21
  documents: map["documents"].map { |it| Document.from(map: it) }
@@ -28,7 +28,7 @@ module Appwrite
28
28
  renewal:,
29
29
  auto_renewal:,
30
30
  renewal_price:,
31
- transfer_status:,
31
+ transfer_status: nil,
32
32
  team_id:,
33
33
  dns_records:
34
34
  )
@@ -16,10 +16,10 @@ module Appwrite
16
16
  domain:,
17
17
  tld:,
18
18
  available:,
19
- price:,
19
+ price: nil,
20
20
  period_years:,
21
21
  premium:,
22
- renewal_price:,
22
+ renewal_price: nil,
23
23
  renewal_period_years:
24
24
  )
25
25
  @domain = domain
@@ -33,6 +33,7 @@ module Appwrite
33
33
  end
34
34
 
35
35
  def self.from(map:)
36
+ map = { "templateId" => "", "locale" => "", "message" => "", "senderName" => "", "senderEmail" => "", "replyToEmail" => "", "replyToName" => "", "subject" => "" }.merge(map)
36
37
  EmailTemplate.new(
37
38
  template_id: map["templateId"],
38
39
  locale: map["locale"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "templates" => [] }.merge(map)
18
19
  EmailTemplateList.new(
19
20
  total: map["total"],
20
21
  templates: map["templates"].map { |it| EmailTemplate.from(map: it) }
@@ -21,6 +21,7 @@ module Appwrite
21
21
  end
22
22
 
23
23
  def self.from(map:)
24
+ map = { "model" => "", "dimension" => 0, "embedding" => [], "error" => "" }.merge(map)
24
25
  Embedding.new(
25
26
  model: map["model"],
26
27
  dimension: map["dimension"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "embeddings" => [] }.merge(map)
18
19
  EmbeddingList.new(
19
20
  total: map["total"],
20
21
  embeddings: map["embeddings"].map { |it| Embedding.from(map: it) }
@@ -7,6 +7,7 @@ module Appwrite
7
7
  attr_reader :created_at
8
8
  attr_reader :updated_at
9
9
  attr_reader :name
10
+ attr_reader :description
10
11
  attr_reader :expire
11
12
  attr_reader :scopes
12
13
  attr_reader :secret
@@ -18,6 +19,7 @@ module Appwrite
18
19
  created_at:,
19
20
  updated_at:,
20
21
  name:,
22
+ description:,
21
23
  expire:,
22
24
  scopes:,
23
25
  secret:,
@@ -28,6 +30,7 @@ module Appwrite
28
30
  @created_at = created_at
29
31
  @updated_at = updated_at
30
32
  @name = name
33
+ @description = description
31
34
  @expire = expire
32
35
  @scopes = scopes
33
36
  @secret = secret
@@ -36,11 +39,13 @@ module Appwrite
36
39
  end
37
40
 
38
41
  def self.from(map:)
42
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "description" => "", "expire" => "", "scopes" => [], "secret" => "", "accessedAt" => "", "sdks" => [] }.merge(map)
39
43
  EphemeralKey.new(
40
44
  id: map["$id"],
41
45
  created_at: map["$createdAt"],
42
46
  updated_at: map["$updatedAt"],
43
47
  name: map["name"],
48
+ description: map["description"],
44
49
  expire: map["expire"],
45
50
  scopes: map["scopes"],
46
51
  secret: map["secret"],
@@ -55,6 +60,7 @@ module Appwrite
55
60
  "$createdAt": @created_at,
56
61
  "$updatedAt": @updated_at,
57
62
  "name": @name,
63
+ "description": @description,
58
64
  "expire": @expire,
59
65
  "scopes": @scopes,
60
66
  "secret": @secret,
@@ -42,7 +42,7 @@ module Appwrite
42
42
  logs:,
43
43
  errors:,
44
44
  duration:,
45
- scheduled_at:
45
+ scheduled_at: nil
46
46
  )
47
47
  @id = id
48
48
  @created_at = created_at
@@ -66,6 +66,7 @@ module Appwrite
66
66
  end
67
67
 
68
68
  def self.from(map:)
69
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "$permissions" => [], "resourceId" => "", "resourceType" => "functions", "deploymentId" => "", "requestMethod" => "", "requestPath" => "", "requestHeaders" => [], "responseStatusCode" => 0, "responseBody" => "", "responseHeaders" => [], "logs" => "", "errors" => "", "duration" => 0 }.merge(map)
69
70
  Execution.new(
70
71
  id: map["$id"],
71
72
  created_at: map["$createdAt"],
@@ -133,6 +134,7 @@ module Appwrite
133
134
  Appwrite::Enums::ExecutionTrigger::HTTP,
134
135
  Appwrite::Enums::ExecutionTrigger::SCHEDULE,
135
136
  Appwrite::Enums::ExecutionTrigger::EVENT,
137
+ Appwrite::Enums::ExecutionTrigger::EMAIL,
136
138
  ]
137
139
 
138
140
  unless valid_trigger.include?(trigger)
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "executions" => [] }.merge(map)
18
19
  ExecutionList.new(
19
20
  total: map["total"],
20
21
  executions: map["executions"].map { |it| Execution.from(map: it) }
@@ -57,6 +57,7 @@ module Appwrite
57
57
  end
58
58
 
59
59
  def self.from(map:)
60
+ map = { "$id" => "", "bucketId" => "", "$createdAt" => "", "$updatedAt" => "", "$permissions" => [], "name" => "", "folder" => "", "key" => "", "signature" => "", "mimeType" => "", "sizeOriginal" => 0, "sizeActual" => 0, "chunksTotal" => 0, "chunksUploaded" => 0, "encryption" => false, "compression" => "none" }.merge(map)
60
61
  File.new(
61
62
  id: map["$id"],
62
63
  bucket_id: map["bucketId"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "files" => [] }.merge(map)
18
19
  FileList.new(
19
20
  total: map["total"],
20
21
  files: map["files"].map { |it| File.from(map: it) }
@@ -24,6 +24,7 @@ module Appwrite
24
24
  end
25
25
 
26
26
  def self.from(map:)
27
+ map = { "key" => "", "name" => "", "buildRuntime" => "", "runtimes" => [], "adapters" => [] }.merge(map)
27
28
  Framework.new(
28
29
  key: map["key"],
29
30
  name: map["name"],
@@ -14,7 +14,7 @@ module Appwrite
14
14
  install_command:,
15
15
  build_command:,
16
16
  output_directory:,
17
- fallback_file:
17
+ fallback_file: nil
18
18
  )
19
19
  @key = key
20
20
  @install_command = install_command
@@ -24,6 +24,7 @@ module Appwrite
24
24
  end
25
25
 
26
26
  def self.from(map:)
27
+ map = { "key" => "", "installCommand" => "", "buildCommand" => "", "outputDirectory" => "" }.merge(map)
27
28
  FrameworkAdapter.new(
28
29
  key: map["key"],
29
30
  install_command: map["installCommand"],
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "frameworks" => [] }.merge(map)
18
19
  FrameworkList.new(
19
20
  total: map["total"],
20
21
  frameworks: map["frameworks"].map { |it| Framework.from(map: it) }
@@ -8,6 +8,7 @@ module Appwrite
8
8
  attr_reader :updated_at
9
9
  attr_reader :execute
10
10
  attr_reader :name
11
+ attr_reader :description
11
12
  attr_reader :enabled
12
13
  attr_reader :live
13
14
  attr_reader :logging
@@ -36,6 +37,7 @@ module Appwrite
36
37
  attr_reader :provider_paths
37
38
  attr_reader :build_specification
38
39
  attr_reader :runtime_specification
40
+ attr_reader :email_enabled
39
41
 
40
42
  def initialize(
41
43
  id:,
@@ -43,6 +45,7 @@ module Appwrite
43
45
  updated_at:,
44
46
  execute:,
45
47
  name:,
48
+ description:,
46
49
  enabled:,
47
50
  live:,
48
51
  logging:,
@@ -57,7 +60,7 @@ module Appwrite
57
60
  vars:,
58
61
  events:,
59
62
  schedule:,
60
- interval:,
63
+ interval: 0,
61
64
  timeout:,
62
65
  entrypoint:,
63
66
  commands:,
@@ -70,13 +73,15 @@ module Appwrite
70
73
  provider_branches:,
71
74
  provider_paths:,
72
75
  build_specification:,
73
- runtime_specification:
76
+ runtime_specification:,
77
+ email_enabled:
74
78
  )
75
79
  @id = id
76
80
  @created_at = created_at
77
81
  @updated_at = updated_at
78
82
  @execute = execute
79
83
  @name = name
84
+ @description = description
80
85
  @enabled = enabled
81
86
  @live = live
82
87
  @logging = logging
@@ -105,15 +110,18 @@ module Appwrite
105
110
  @provider_paths = provider_paths
106
111
  @build_specification = build_specification
107
112
  @runtime_specification = runtime_specification
113
+ @email_enabled = email_enabled
108
114
  end
109
115
 
110
116
  def self.from(map:)
117
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "execute" => [], "name" => "", "description" => "", "enabled" => true, "live" => true, "logging" => true, "runtime" => "", "deploymentRetention" => 0, "deploymentId" => "", "deploymentCreatedAt" => "", "latestDeploymentId" => "", "latestDeploymentCreatedAt" => "", "latestDeploymentStatus" => "", "scopes" => [], "vars" => [], "events" => [], "schedule" => "", "timeout" => 15, "entrypoint" => "", "commands" => "", "version" => "v5", "installationId" => "", "providerRepositoryId" => "", "providerBranch" => "", "providerRootDirectory" => "", "providerSilentMode" => false, "providerBranches" => [], "providerPaths" => [], "buildSpecification" => "s-1vcpu-512mb", "runtimeSpecification" => "s-1vcpu-512mb", "emailEnabled" => false }.merge(map)
111
118
  Function.new(
112
119
  id: map["$id"],
113
120
  created_at: map["$createdAt"],
114
121
  updated_at: map["$updatedAt"],
115
122
  execute: map["execute"],
116
123
  name: map["name"],
124
+ description: map["description"],
117
125
  enabled: map["enabled"],
118
126
  live: map["live"],
119
127
  logging: map["logging"],
@@ -141,7 +149,8 @@ module Appwrite
141
149
  provider_branches: map["providerBranches"],
142
150
  provider_paths: map["providerPaths"],
143
151
  build_specification: map["buildSpecification"],
144
- runtime_specification: map["runtimeSpecification"]
152
+ runtime_specification: map["runtimeSpecification"],
153
+ email_enabled: map["emailEnabled"]
145
154
  )
146
155
  end
147
156
 
@@ -152,6 +161,7 @@ module Appwrite
152
161
  "$updatedAt": @updated_at,
153
162
  "execute": @execute,
154
163
  "name": @name,
164
+ "description": @description,
155
165
  "enabled": @enabled,
156
166
  "live": @live,
157
167
  "logging": @logging,
@@ -179,7 +189,8 @@ module Appwrite
179
189
  "providerBranches": @provider_branches,
180
190
  "providerPaths": @provider_paths,
181
191
  "buildSpecification": @build_specification,
182
- "runtimeSpecification": @runtime_specification
192
+ "runtimeSpecification": @runtime_specification,
193
+ "emailEnabled": @email_enabled
183
194
  }
184
195
  end
185
196
  end
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "total" => 0, "functions" => [] }.merge(map)
18
19
  FunctionList.new(
19
20
  total: map["total"],
20
21
  functions: map["functions"].map { |it| Function.from(map: it) }
@@ -15,6 +15,7 @@ module Appwrite
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
+ map = { "name" => "", "value" => "" }.merge(map)
18
19
  Headers.new(
19
20
  name: map["name"],
20
21
  value: map["value"]
@@ -42,6 +42,7 @@ module Appwrite
42
42
  end
43
43
 
44
44
  def self.from(map:)
45
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "userId" => "", "provider" => "", "providerUid" => "", "providerEmail" => "", "providerAccessToken" => "", "providerAccessTokenExpiry" => "", "providerRefreshToken" => "", "providerIdToken" => "" }.merge(map)
45
46
  Identity.new(
46
47
  id: map["$id"],
47
48
  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, "identities" => [] }.merge(map)
18
19
  IdentityList.new(
19
20
  total: map["total"],
20
21
  identities: map["identities"].map { |it| Identity.from(map: it) }
@@ -7,6 +7,7 @@ module Appwrite
7
7
  attr_reader :created_at
8
8
  attr_reader :updated_at
9
9
  attr_reader :key
10
+ attr_reader :description
10
11
  attr_reader :type
11
12
  attr_reader :status
12
13
  attr_reader :error
@@ -19,17 +20,19 @@ module Appwrite
19
20
  created_at:,
20
21
  updated_at:,
21
22
  key:,
23
+ description:,
22
24
  type:,
23
25
  status:,
24
26
  error:,
25
27
  attributes:,
26
28
  lengths:,
27
- orders:
29
+ orders: []
28
30
  )
29
31
  @id = id
30
32
  @created_at = created_at
31
33
  @updated_at = updated_at
32
34
  @key = key
35
+ @description = description
33
36
  @type = type
34
37
  @status = validate_status(status)
35
38
  @error = error
@@ -39,11 +42,13 @@ module Appwrite
39
42
  end
40
43
 
41
44
  def self.from(map:)
45
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "key" => "", "description" => "", "type" => "", "error" => "", "attributes" => [], "lengths" => [] }.merge(map)
42
46
  Index.new(
43
47
  id: map["$id"],
44
48
  created_at: map["$createdAt"],
45
49
  updated_at: map["$updatedAt"],
46
50
  key: map["key"],
51
+ description: map["description"],
47
52
  type: map["type"],
48
53
  status: map["status"],
49
54
  error: map["error"],
@@ -59,6 +64,7 @@ module Appwrite
59
64
  "$createdAt": @created_at,
60
65
  "$updatedAt": @updated_at,
61
66
  "key": @key,
67
+ "description": @description,
62
68
  "type": @type,
63
69
  "status": @status,
64
70
  "error": @error,