appwrite 27.0.0 → 28.0.0.rc1

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 (404) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +27 -24
  3. data/lib/appwrite/enums/adapter.rb +1 -1
  4. data/lib/appwrite/enums/attribute_status.rb +1 -1
  5. data/lib/appwrite/enums/authentication_factor.rb +1 -1
  6. data/lib/appwrite/enums/authenticator_type.rb +1 -1
  7. data/lib/appwrite/enums/backup_services.rb +1 -1
  8. data/lib/appwrite/enums/billing_plan_group.rb +1 -1
  9. data/lib/appwrite/enums/browser.rb +1 -1
  10. data/lib/appwrite/enums/browser_permission.rb +1 -1
  11. data/lib/appwrite/enums/browser_theme.rb +1 -1
  12. data/lib/appwrite/enums/build_runtime.rb +2 -1
  13. data/lib/appwrite/enums/column_status.rb +1 -1
  14. data/lib/appwrite/enums/compression.rb +1 -1
  15. data/lib/appwrite/enums/credit_card.rb +1 -1
  16. data/lib/appwrite/enums/database_status.rb +1 -1
  17. data/lib/appwrite/enums/database_type.rb +1 -1
  18. data/lib/appwrite/enums/databases_index_type.rb +1 -1
  19. data/lib/appwrite/enums/deployment_download_type.rb +1 -1
  20. data/lib/appwrite/enums/deployment_status.rb +1 -1
  21. data/lib/appwrite/enums/documents_db_index_type.rb +9 -0
  22. data/lib/appwrite/enums/embedding_model.rb +1 -3
  23. data/lib/appwrite/enums/execution_method.rb +1 -1
  24. data/lib/appwrite/enums/execution_resource_type.rb +8 -0
  25. data/lib/appwrite/enums/execution_status.rb +1 -1
  26. data/lib/appwrite/enums/execution_trigger.rb +1 -1
  27. data/lib/appwrite/enums/flag.rb +1 -1
  28. data/lib/appwrite/enums/framework.rb +1 -1
  29. data/lib/appwrite/enums/image_format.rb +1 -1
  30. data/lib/appwrite/enums/image_gravity.rb +1 -1
  31. data/lib/appwrite/enums/index_status.rb +1 -1
  32. data/lib/appwrite/enums/invalidation_type.rb +1 -1
  33. data/lib/appwrite/enums/message_priority.rb +1 -1
  34. data/lib/appwrite/enums/message_status.rb +1 -1
  35. data/lib/appwrite/enums/messaging_provider_type.rb +1 -1
  36. data/lib/appwrite/enums/o_auth2_google_prompt.rb +1 -1
  37. data/lib/appwrite/enums/o_auth2_oidc_prompt.rb +1 -1
  38. data/lib/appwrite/enums/o_auth_provider.rb +2 -1
  39. data/lib/appwrite/enums/order_by.rb +1 -1
  40. data/lib/appwrite/enums/organization_key_scopes.rb +1 -1
  41. data/lib/appwrite/enums/password_hash.rb +1 -1
  42. data/lib/appwrite/enums/platform_type.rb +1 -1
  43. data/lib/appwrite/enums/project_auth_method_id.rb +1 -1
  44. data/lib/appwrite/enums/project_email_template_id.rb +1 -1
  45. data/lib/appwrite/enums/project_email_template_locale.rb +1 -1
  46. data/lib/appwrite/enums/project_key_scopes.rb +14 -3
  47. data/lib/appwrite/enums/project_o_auth2_google_prompt.rb +1 -1
  48. data/lib/appwrite/enums/project_o_auth2_oidc_prompt.rb +1 -1
  49. data/lib/appwrite/enums/project_o_auth_provider_id.rb +2 -1
  50. data/lib/appwrite/enums/project_policy_id.rb +1 -1
  51. data/lib/appwrite/enums/project_protocol_id.rb +1 -1
  52. data/lib/appwrite/enums/project_service_id.rb +1 -1
  53. data/lib/appwrite/enums/project_smtp_secure.rb +1 -1
  54. data/lib/appwrite/enums/proxy_resource_type.rb +1 -1
  55. data/lib/appwrite/enums/proxy_rule_deployment_resource_type.rb +1 -1
  56. data/lib/appwrite/enums/proxy_rule_status.rb +1 -1
  57. data/lib/appwrite/enums/region.rb +1 -1
  58. data/lib/appwrite/enums/relation_mutate.rb +1 -1
  59. data/lib/appwrite/enums/relationship_type.rb +1 -1
  60. data/lib/appwrite/enums/runtime.rb +2 -1
  61. data/lib/appwrite/enums/smtp_encryption.rb +1 -1
  62. data/lib/appwrite/enums/status_code.rb +1 -1
  63. data/lib/appwrite/enums/tables_db_index_type.rb +1 -1
  64. data/lib/appwrite/enums/template_reference_type.rb +1 -1
  65. data/lib/appwrite/enums/timezone.rb +1 -1
  66. data/lib/appwrite/enums/vcs_reference_type.rb +1 -1
  67. data/lib/appwrite/enums/vectors_db_index_type.rb +12 -0
  68. data/lib/appwrite/exception.rb +1 -1
  69. data/lib/appwrite/id.rb +3 -3
  70. data/lib/appwrite/input_file.rb +1 -1
  71. data/lib/appwrite/models/activity_event.rb +1 -1
  72. data/lib/appwrite/models/activity_event_list.rb +1 -1
  73. data/lib/appwrite/models/additional_resource.rb +1 -1
  74. data/lib/appwrite/models/algo_argon2.rb +1 -1
  75. data/lib/appwrite/models/algo_bcrypt.rb +1 -1
  76. data/lib/appwrite/models/algo_md5.rb +1 -1
  77. data/lib/appwrite/models/algo_phpass.rb +1 -1
  78. data/lib/appwrite/models/algo_scrypt.rb +1 -1
  79. data/lib/appwrite/models/algo_scrypt_modified.rb +1 -1
  80. data/lib/appwrite/models/algo_sha.rb +1 -1
  81. data/lib/appwrite/models/app.rb +1 -1
  82. data/lib/appwrite/models/app_installation.rb +2 -2
  83. data/lib/appwrite/models/app_installation_list.rb +1 -1
  84. data/lib/appwrite/models/app_key.rb +2 -2
  85. data/lib/appwrite/models/app_key_list.rb +1 -1
  86. data/lib/appwrite/models/app_scope.rb +1 -1
  87. data/lib/appwrite/models/app_scope_list.rb +1 -1
  88. data/lib/appwrite/models/app_secret.rb +2 -2
  89. data/lib/appwrite/models/app_secret_list.rb +1 -1
  90. data/lib/appwrite/models/app_secret_plaintext.rb +2 -2
  91. data/lib/appwrite/models/apps_list.rb +1 -1
  92. data/lib/appwrite/models/attribute_bigint.rb +5 -6
  93. data/lib/appwrite/models/attribute_boolean.rb +3 -4
  94. data/lib/appwrite/models/attribute_datetime.rb +3 -4
  95. data/lib/appwrite/models/attribute_email.rb +3 -4
  96. data/lib/appwrite/models/attribute_enum.rb +3 -4
  97. data/lib/appwrite/models/attribute_float.rb +5 -6
  98. data/lib/appwrite/models/attribute_integer.rb +5 -6
  99. data/lib/appwrite/models/attribute_ip.rb +3 -4
  100. data/lib/appwrite/models/attribute_line.rb +3 -4
  101. data/lib/appwrite/models/attribute_list.rb +1 -1
  102. data/lib/appwrite/models/attribute_longtext.rb +4 -5
  103. data/lib/appwrite/models/attribute_mediumtext.rb +4 -5
  104. data/lib/appwrite/models/attribute_object.rb +80 -0
  105. data/lib/appwrite/models/attribute_point.rb +3 -4
  106. data/lib/appwrite/models/attribute_polygon.rb +3 -4
  107. data/lib/appwrite/models/attribute_relationship.rb +2 -3
  108. data/lib/appwrite/models/attribute_string.rb +4 -5
  109. data/lib/appwrite/models/attribute_text.rb +4 -5
  110. data/lib/appwrite/models/attribute_url.rb +3 -4
  111. data/lib/appwrite/models/attribute_varchar.rb +4 -5
  112. data/lib/appwrite/models/attribute_vector.rb +85 -0
  113. data/lib/appwrite/models/backup_archive.rb +3 -3
  114. data/lib/appwrite/models/backup_archive_list.rb +1 -1
  115. data/lib/appwrite/models/backup_policy.rb +3 -3
  116. data/lib/appwrite/models/backup_policy_list.rb +1 -1
  117. data/lib/appwrite/models/backup_restoration.rb +1 -1
  118. data/lib/appwrite/models/backup_restoration_list.rb +1 -1
  119. data/lib/appwrite/models/billing_limits.rb +9 -9
  120. data/lib/appwrite/models/billing_plan.rb +19 -10
  121. data/lib/appwrite/models/billing_plan_addon.rb +3 -3
  122. data/lib/appwrite/models/billing_plan_addon_details.rb +2 -2
  123. data/lib/appwrite/models/billing_plan_dedicated_database_limits.rb +20 -20
  124. data/lib/appwrite/models/billing_plan_limits.rb +3 -3
  125. data/lib/appwrite/models/billing_plan_supported_addons.rb +1 -1
  126. data/lib/appwrite/models/block.rb +3 -3
  127. data/lib/appwrite/models/bucket.rb +1 -1
  128. data/lib/appwrite/models/bucket_list.rb +1 -1
  129. data/lib/appwrite/models/collection.rb +1 -1
  130. data/lib/appwrite/models/collection_list.rb +1 -1
  131. data/lib/appwrite/models/column_bigint.rb +5 -6
  132. data/lib/appwrite/models/column_boolean.rb +3 -4
  133. data/lib/appwrite/models/column_datetime.rb +3 -4
  134. data/lib/appwrite/models/column_email.rb +3 -4
  135. data/lib/appwrite/models/column_enum.rb +3 -4
  136. data/lib/appwrite/models/column_float.rb +5 -6
  137. data/lib/appwrite/models/column_index.rb +2 -2
  138. data/lib/appwrite/models/column_index_list.rb +1 -1
  139. data/lib/appwrite/models/column_integer.rb +5 -6
  140. data/lib/appwrite/models/column_ip.rb +3 -4
  141. data/lib/appwrite/models/column_line.rb +3 -4
  142. data/lib/appwrite/models/column_list.rb +1 -1
  143. data/lib/appwrite/models/column_longtext.rb +4 -5
  144. data/lib/appwrite/models/column_mediumtext.rb +4 -5
  145. data/lib/appwrite/models/column_point.rb +3 -4
  146. data/lib/appwrite/models/column_polygon.rb +3 -4
  147. data/lib/appwrite/models/column_relationship.rb +2 -3
  148. data/lib/appwrite/models/column_string.rb +4 -5
  149. data/lib/appwrite/models/column_text.rb +4 -5
  150. data/lib/appwrite/models/column_url.rb +3 -4
  151. data/lib/appwrite/models/column_varchar.rb +4 -5
  152. data/lib/appwrite/models/continent.rb +1 -1
  153. data/lib/appwrite/models/continent_list.rb +1 -1
  154. data/lib/appwrite/models/country.rb +1 -1
  155. data/lib/appwrite/models/country_list.rb +1 -1
  156. data/lib/appwrite/models/currency.rb +1 -1
  157. data/lib/appwrite/models/currency_list.rb +1 -1
  158. data/lib/appwrite/models/database.rb +22 -8
  159. data/lib/appwrite/models/database_list.rb +1 -1
  160. data/lib/appwrite/models/database_migration.rb +6 -1
  161. data/lib/appwrite/models/database_migration_list.rb +1 -1
  162. data/lib/appwrite/models/database_status.rb +3 -3
  163. data/lib/appwrite/models/database_status_connections.rb +1 -1
  164. data/lib/appwrite/models/database_status_replica.rb +7 -2
  165. data/lib/appwrite/models/database_status_volume.rb +1 -1
  166. data/lib/appwrite/models/dedicated_database.rb +3 -3
  167. data/lib/appwrite/models/dedicated_database_backup.rb +107 -0
  168. data/lib/appwrite/models/dedicated_database_backup_list.rb +32 -0
  169. data/lib/appwrite/models/dedicated_database_backup_storage.rb +47 -0
  170. data/lib/appwrite/models/dedicated_database_branch.rb +82 -0
  171. data/lib/appwrite/models/dedicated_database_branch_list.rb +32 -0
  172. data/lib/appwrite/models/dedicated_database_execution.rb +52 -0
  173. data/lib/appwrite/models/dedicated_database_execution_column.rb +32 -0
  174. data/lib/appwrite/models/dedicated_database_extensions.rb +37 -0
  175. data/lib/appwrite/models/dedicated_database_list.rb +32 -0
  176. data/lib/appwrite/models/dedicated_database_member.rb +7 -2
  177. data/lib/appwrite/models/dedicated_database_operation.rb +4 -4
  178. data/lib/appwrite/models/dedicated_database_operation_list.rb +1 -1
  179. data/lib/appwrite/models/dedicated_database_pitr_windows.rb +32 -0
  180. data/lib/appwrite/models/dedicated_database_pooler.rb +72 -0
  181. data/lib/appwrite/models/dedicated_database_replicas.rb +3 -3
  182. data/lib/appwrite/models/dedicated_database_restoration.rb +82 -0
  183. data/lib/appwrite/models/dedicated_database_restoration_list.rb +32 -0
  184. data/lib/appwrite/models/dedicated_database_specification.rb +1 -1
  185. data/lib/appwrite/models/dedicated_database_specification_list.rb +1 -1
  186. data/lib/appwrite/models/dedicated_database_specification_pricing.rb +1 -1
  187. data/lib/appwrite/models/deployment.rb +1 -2
  188. data/lib/appwrite/models/deployment_list.rb +1 -1
  189. data/lib/appwrite/models/dev_key.rb +1 -1
  190. data/lib/appwrite/models/document.rb +1 -1
  191. data/lib/appwrite/models/document_list.rb +1 -1
  192. data/lib/appwrite/models/email_template.rb +1 -1
  193. data/lib/appwrite/models/email_template_list.rb +1 -1
  194. data/lib/appwrite/models/embedding.rb +1 -1
  195. data/lib/appwrite/models/embedding_list.rb +1 -1
  196. data/lib/appwrite/models/ephemeral_key.rb +1 -1
  197. data/lib/appwrite/models/execution.rb +25 -8
  198. data/lib/appwrite/models/execution_list.rb +1 -1
  199. data/lib/appwrite/models/file.rb +1 -1
  200. data/lib/appwrite/models/file_list.rb +1 -1
  201. data/lib/appwrite/models/framework.rb +1 -1
  202. data/lib/appwrite/models/framework_adapter.rb +1 -1
  203. data/lib/appwrite/models/framework_list.rb +1 -1
  204. data/lib/appwrite/models/function.rb +1 -1
  205. data/lib/appwrite/models/function_list.rb +1 -1
  206. data/lib/appwrite/models/headers.rb +1 -1
  207. data/lib/appwrite/models/identity.rb +1 -1
  208. data/lib/appwrite/models/identity_list.rb +1 -1
  209. data/lib/appwrite/models/index.rb +2 -3
  210. data/lib/appwrite/models/index_list.rb +1 -1
  211. data/lib/appwrite/models/insight.rb +4 -4
  212. data/lib/appwrite/models/insight_cta.rb +1 -1
  213. data/lib/appwrite/models/insight_list.rb +1 -1
  214. data/lib/appwrite/models/jwt.rb +1 -1
  215. data/lib/appwrite/models/key.rb +1 -1
  216. data/lib/appwrite/models/key_list.rb +1 -1
  217. data/lib/appwrite/models/language.rb +1 -1
  218. data/lib/appwrite/models/language_list.rb +1 -1
  219. data/lib/appwrite/models/locale.rb +12 -12
  220. data/lib/appwrite/models/locale_code.rb +1 -1
  221. data/lib/appwrite/models/locale_code_list.rb +1 -1
  222. data/lib/appwrite/models/log.rb +1 -1
  223. data/lib/appwrite/models/log_list.rb +1 -1
  224. data/lib/appwrite/models/membership.rb +1 -1
  225. data/lib/appwrite/models/membership_list.rb +1 -1
  226. data/lib/appwrite/models/message.rb +4 -5
  227. data/lib/appwrite/models/message_list.rb +1 -1
  228. data/lib/appwrite/models/mfa_challenge.rb +1 -1
  229. data/lib/appwrite/models/mfa_challenge_secret.rb +1 -1
  230. data/lib/appwrite/models/mfa_factors.rb +1 -1
  231. data/lib/appwrite/models/mfa_recovery_codes.rb +1 -1
  232. data/lib/appwrite/models/mfa_type.rb +1 -1
  233. data/lib/appwrite/models/mock_number.rb +1 -1
  234. data/lib/appwrite/models/mock_number_list.rb +1 -1
  235. data/lib/appwrite/models/o_auth2_amazon.rb +1 -1
  236. data/lib/appwrite/models/o_auth2_apple.rb +1 -1
  237. data/lib/appwrite/models/o_auth2_appwrite.rb +1 -1
  238. data/lib/appwrite/models/o_auth2_auth0.rb +1 -1
  239. data/lib/appwrite/models/o_auth2_authentik.rb +1 -1
  240. data/lib/appwrite/models/o_auth2_autodesk.rb +1 -1
  241. data/lib/appwrite/models/o_auth2_bitbucket.rb +1 -1
  242. data/lib/appwrite/models/o_auth2_bitly.rb +1 -1
  243. data/lib/appwrite/models/o_auth2_box.rb +1 -1
  244. data/lib/appwrite/models/o_auth2_dailymotion.rb +1 -1
  245. data/lib/appwrite/models/o_auth2_discord.rb +1 -1
  246. data/lib/appwrite/models/o_auth2_disqus.rb +1 -1
  247. data/lib/appwrite/models/o_auth2_dropbox.rb +1 -1
  248. data/lib/appwrite/models/o_auth2_etsy.rb +1 -1
  249. data/lib/appwrite/models/o_auth2_facebook.rb +1 -1
  250. data/lib/appwrite/models/o_auth2_figma.rb +1 -1
  251. data/lib/appwrite/models/o_auth2_fusion_auth.rb +1 -1
  252. data/lib/appwrite/models/o_auth2_github.rb +1 -1
  253. data/lib/appwrite/models/o_auth2_gitlab.rb +1 -1
  254. data/lib/appwrite/models/o_auth2_google.rb +18 -2
  255. data/lib/appwrite/models/o_auth2_hugging_face.rb +42 -0
  256. data/lib/appwrite/models/o_auth2_keycloak.rb +1 -1
  257. data/lib/appwrite/models/o_auth2_kick.rb +1 -1
  258. data/lib/appwrite/models/o_auth2_linkedin.rb +1 -1
  259. data/lib/appwrite/models/o_auth2_microsoft.rb +1 -1
  260. data/lib/appwrite/models/o_auth2_notion.rb +1 -1
  261. data/lib/appwrite/models/o_auth2_oidc.rb +20 -3
  262. data/lib/appwrite/models/o_auth2_okta.rb +1 -1
  263. data/lib/appwrite/models/o_auth2_paypal.rb +1 -1
  264. data/lib/appwrite/models/o_auth2_podio.rb +1 -1
  265. data/lib/appwrite/models/o_auth2_provider_list.rb +1 -1
  266. data/lib/appwrite/models/o_auth2_salesforce.rb +1 -1
  267. data/lib/appwrite/models/o_auth2_slack.rb +1 -1
  268. data/lib/appwrite/models/o_auth2_spotify.rb +1 -1
  269. data/lib/appwrite/models/o_auth2_stripe.rb +1 -1
  270. data/lib/appwrite/models/o_auth2_tradeshift.rb +1 -1
  271. data/lib/appwrite/models/o_auth2_twitch.rb +1 -1
  272. data/lib/appwrite/models/o_auth2_word_press.rb +1 -1
  273. data/lib/appwrite/models/o_auth2_x.rb +1 -1
  274. data/lib/appwrite/models/o_auth2_yahoo.rb +1 -1
  275. data/lib/appwrite/models/o_auth2_yandex.rb +1 -1
  276. data/lib/appwrite/models/o_auth2_zoho.rb +1 -1
  277. data/lib/appwrite/models/o_auth2_zoom.rb +1 -1
  278. data/lib/appwrite/models/oauth2_approve.rb +1 -1
  279. data/lib/appwrite/models/oauth2_authorize.rb +1 -1
  280. data/lib/appwrite/models/oauth2_consent.rb +1 -1
  281. data/lib/appwrite/models/oauth2_consent_list.rb +1 -1
  282. data/lib/appwrite/models/oauth2_consent_token.rb +1 -1
  283. data/lib/appwrite/models/oauth2_consent_token_list.rb +1 -1
  284. data/lib/appwrite/models/oauth2_device_authorization.rb +1 -1
  285. data/lib/appwrite/models/oauth2_grant.rb +1 -1
  286. data/lib/appwrite/models/oauth2_organization.rb +1 -1
  287. data/lib/appwrite/models/oauth2_organization_list.rb +1 -1
  288. data/lib/appwrite/models/oauth2_par.rb +1 -1
  289. data/lib/appwrite/models/oauth2_project.rb +1 -1
  290. data/lib/appwrite/models/oauth2_project_list.rb +1 -1
  291. data/lib/appwrite/models/oauth2_reject.rb +1 -1
  292. data/lib/appwrite/models/oauth2_token.rb +3 -3
  293. data/lib/appwrite/models/organization.rb +14 -14
  294. data/lib/appwrite/models/phone.rb +1 -1
  295. data/lib/appwrite/models/phone_list.rb +1 -1
  296. data/lib/appwrite/models/platform_android.rb +1 -2
  297. data/lib/appwrite/models/platform_apple.rb +1 -2
  298. data/lib/appwrite/models/platform_linux.rb +1 -2
  299. data/lib/appwrite/models/platform_list.rb +1 -1
  300. data/lib/appwrite/models/platform_web.rb +1 -2
  301. data/lib/appwrite/models/platform_windows.rb +1 -2
  302. data/lib/appwrite/models/policy_deny_aliased_email.rb +1 -1
  303. data/lib/appwrite/models/policy_deny_corporate_email.rb +1 -1
  304. data/lib/appwrite/models/policy_deny_disposable_email.rb +1 -1
  305. data/lib/appwrite/models/policy_deny_free_email.rb +1 -1
  306. data/lib/appwrite/models/policy_list.rb +1 -1
  307. data/lib/appwrite/models/policy_membership_privacy.rb +1 -1
  308. data/lib/appwrite/models/policy_mfa_factors.rb +1 -1
  309. data/lib/appwrite/models/policy_password_dictionary.rb +1 -1
  310. data/lib/appwrite/models/policy_password_history.rb +1 -1
  311. data/lib/appwrite/models/policy_password_personal_data.rb +1 -1
  312. data/lib/appwrite/models/policy_password_strength.rb +1 -1
  313. data/lib/appwrite/models/policy_session_alert.rb +1 -1
  314. data/lib/appwrite/models/policy_session_duration.rb +1 -1
  315. data/lib/appwrite/models/policy_session_invalidation.rb +1 -1
  316. data/lib/appwrite/models/policy_session_limit.rb +1 -1
  317. data/lib/appwrite/models/policy_user_limit.rb +1 -1
  318. data/lib/appwrite/models/postgres_extension.rb +42 -0
  319. data/lib/appwrite/models/preferences.rb +1 -1
  320. data/lib/appwrite/models/presence.rb +4 -4
  321. data/lib/appwrite/models/presence_list.rb +1 -1
  322. data/lib/appwrite/models/program.rb +1 -1
  323. data/lib/appwrite/models/project.rb +19 -19
  324. data/lib/appwrite/models/project_auth_method.rb +1 -2
  325. data/lib/appwrite/models/project_list.rb +1 -1
  326. data/lib/appwrite/models/project_protocol.rb +1 -2
  327. data/lib/appwrite/models/project_service.rb +1 -2
  328. data/lib/appwrite/models/provider.rb +2 -2
  329. data/lib/appwrite/models/provider_list.rb +1 -1
  330. data/lib/appwrite/models/proxy_invalidation.rb +1 -1
  331. data/lib/appwrite/models/proxy_rule.rb +2 -3
  332. data/lib/appwrite/models/proxy_rule_list.rb +1 -1
  333. data/lib/appwrite/models/report.rb +2 -2
  334. data/lib/appwrite/models/report_list.rb +1 -1
  335. data/lib/appwrite/models/resource_token.rb +1 -1
  336. data/lib/appwrite/models/resource_token_list.rb +1 -1
  337. data/lib/appwrite/models/row.rb +1 -1
  338. data/lib/appwrite/models/row_list.rb +1 -1
  339. data/lib/appwrite/models/runtime.rb +1 -1
  340. data/lib/appwrite/models/runtime_list.rb +1 -1
  341. data/lib/appwrite/models/session.rb +1 -1
  342. data/lib/appwrite/models/session_list.rb +1 -1
  343. data/lib/appwrite/models/site.rb +6 -1
  344. data/lib/appwrite/models/site_list.rb +1 -1
  345. data/lib/appwrite/models/specification.rb +1 -1
  346. data/lib/appwrite/models/specification_list.rb +1 -1
  347. data/lib/appwrite/models/subscriber.rb +1 -1
  348. data/lib/appwrite/models/subscriber_list.rb +1 -1
  349. data/lib/appwrite/models/table.rb +1 -1
  350. data/lib/appwrite/models/table_list.rb +1 -1
  351. data/lib/appwrite/models/target.rb +2 -2
  352. data/lib/appwrite/models/target_list.rb +1 -1
  353. data/lib/appwrite/models/team.rb +1 -1
  354. data/lib/appwrite/models/team_list.rb +1 -1
  355. data/lib/appwrite/models/token.rb +1 -1
  356. data/lib/appwrite/models/topic.rb +1 -1
  357. data/lib/appwrite/models/topic_list.rb +1 -1
  358. data/lib/appwrite/models/transaction.rb +1 -1
  359. data/lib/appwrite/models/transaction_list.rb +1 -1
  360. data/lib/appwrite/models/usage_billing_plan.rb +4 -4
  361. data/lib/appwrite/models/user.rb +11 -11
  362. data/lib/appwrite/models/user_list.rb +1 -1
  363. data/lib/appwrite/models/variable.rb +1 -1
  364. data/lib/appwrite/models/variable_list.rb +1 -1
  365. data/lib/appwrite/models/vectorsdb_collection.rb +87 -0
  366. data/lib/appwrite/models/vectorsdb_collection_list.rb +32 -0
  367. data/lib/appwrite/models/webhook.rb +1 -1
  368. data/lib/appwrite/models/webhook_list.rb +1 -1
  369. data/lib/appwrite/operator.rb +6 -0
  370. data/lib/appwrite/permission.rb +4 -0
  371. data/lib/appwrite/query.rb +4 -4
  372. data/lib/appwrite/role.rb +12 -14
  373. data/lib/appwrite/service.rb +1 -1
  374. data/lib/appwrite/services/account.rb +328 -289
  375. data/lib/appwrite/services/activities.rb +13 -14
  376. data/lib/appwrite/services/advisor.rb +41 -37
  377. data/lib/appwrite/services/apps.rb +185 -130
  378. data/lib/appwrite/services/avatars.rb +156 -55
  379. data/lib/appwrite/services/backups.rb +102 -83
  380. data/lib/appwrite/services/databases.rb +871 -512
  381. data/lib/appwrite/services/documents_db.rb +1683 -0
  382. data/lib/appwrite/services/embeddings.rb +9 -9
  383. data/lib/appwrite/services/functions.rb +276 -172
  384. data/lib/appwrite/services/graphql.rb +12 -12
  385. data/lib/appwrite/services/locale.rb +19 -37
  386. data/lib/appwrite/services/messaging.rb +544 -259
  387. data/lib/appwrite/services/mongo.rb +1359 -0
  388. data/lib/appwrite/services/mysql.rb +1503 -0
  389. data/lib/appwrite/services/oauth2.rb +122 -53
  390. data/lib/appwrite/services/organization.rb +153 -123
  391. data/lib/appwrite/services/postgresql.rb +1615 -0
  392. data/lib/appwrite/services/presences.rb +49 -35
  393. data/lib/appwrite/services/project.rb +842 -528
  394. data/lib/appwrite/services/proxy.rb +73 -58
  395. data/lib/appwrite/services/sites.rb +269 -164
  396. data/lib/appwrite/services/storage.rb +151 -92
  397. data/lib/appwrite/services/tables_db.rb +947 -568
  398. data/lib/appwrite/services/teams.rb +161 -122
  399. data/lib/appwrite/services/tokens.rb +38 -31
  400. data/lib/appwrite/services/users.rb +376 -274
  401. data/lib/appwrite/services/vectors_db.rb +1614 -0
  402. data/lib/appwrite/services/webhooks.rb +59 -40
  403. data/lib/appwrite.rb +27 -0
  404. metadata +31 -4
@@ -1,8 +1,7 @@
1
- #frozen_string_literal: true
1
+ # frozen_string_literal: true
2
2
 
3
3
  module Appwrite
4
4
  class Backups < Service
5
-
6
5
  def initialize(client)
7
6
  @client = client
8
7
  end
@@ -12,13 +11,15 @@ module Appwrite
12
11
  # @param [Array] queries Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long.
13
12
  #
14
13
  # @return [BackupArchiveList]
15
- def list_archives(queries: nil)
14
+ def list_archives(
15
+ queries: nil
16
+ )
16
17
  api_path = '/backups/archives'
17
18
 
18
19
  api_params = {
19
20
  queries: queries,
20
21
  }
21
-
22
+
22
23
  api_headers = {
23
24
  "X-Appwrite-Project": @client.get_config('project'),
24
25
  "accept": 'application/json',
@@ -31,7 +32,6 @@ module Appwrite
31
32
  params: api_params,
32
33
  response_type: Models::BackupArchiveList
33
34
  )
34
-
35
35
  end
36
36
 
37
37
  # Create a new archive asynchronously for a project.
@@ -40,18 +40,21 @@ module Appwrite
40
40
  # @param [String] resource_id Resource ID. When set, only this single resource will be backed up.
41
41
  #
42
42
  # @return [BackupArchive]
43
- def create_archive(services:, resource_id: nil)
43
+ def create_archive(
44
+ services:,
45
+ resource_id: nil
46
+ )
44
47
  api_path = '/backups/archives'
45
48
 
46
49
  if services.nil?
47
- raise Appwrite::Exception.new('Missing required parameter: "services"')
50
+ raise Appwrite::Exception.new('Missing required parameter: "services"')
48
51
  end
49
52
 
50
53
  api_params = {
51
54
  services: services,
52
55
  resourceId: resource_id,
53
56
  }
54
-
57
+
55
58
  api_headers = {
56
59
  "X-Appwrite-Project": @client.get_config('project'),
57
60
  "content-type": 'application/json',
@@ -65,25 +68,25 @@ module Appwrite
65
68
  params: api_params,
66
69
  response_type: Models::BackupArchive
67
70
  )
68
-
69
71
  end
70
72
 
71
- # Get a backup archive using it's ID.
73
+ # Get a backup archive using it&#039;s ID.
72
74
  #
73
- # @param [String] archive_id Archive ID. Choose a custom ID`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
75
+ # @param [String] archive_id Archive ID. Choose a custom ID`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can&#039;t start with a special char. Max length is 36 chars.
74
76
  #
75
77
  # @return [BackupArchive]
76
- def get_archive(archive_id:)
78
+ def get_archive(
79
+ archive_id:
80
+ )
77
81
  api_path = '/backups/archives/{archiveId}'
78
82
  .gsub('{archiveId}', archive_id)
79
83
 
80
84
  if archive_id.nil?
81
- raise Appwrite::Exception.new('Missing required parameter: "archiveId"')
85
+ raise Appwrite::Exception.new('Missing required parameter: "archiveId"')
82
86
  end
83
87
 
84
- api_params = {
85
- }
86
-
88
+ api_params = {}
89
+
87
90
  api_headers = {
88
91
  "X-Appwrite-Project": @client.get_config('project'),
89
92
  "accept": 'application/json',
@@ -96,25 +99,25 @@ module Appwrite
96
99
  params: api_params,
97
100
  response_type: Models::BackupArchive
98
101
  )
99
-
100
102
  end
101
103
 
102
104
  # Delete an existing archive for a project.
103
105
  #
104
- # @param [String] archive_id Policy ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
106
+ # @param [String] archive_id Policy ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can&#039;t start with a special char. Max length is 36 chars.
105
107
  #
106
108
  # @return []
107
- def delete_archive(archive_id:)
109
+ def delete_archive(
110
+ archive_id:
111
+ )
108
112
  api_path = '/backups/archives/{archiveId}'
109
113
  .gsub('{archiveId}', archive_id)
110
114
 
111
115
  if archive_id.nil?
112
- raise Appwrite::Exception.new('Missing required parameter: "archiveId"')
116
+ raise Appwrite::Exception.new('Missing required parameter: "archiveId"')
113
117
  end
114
118
 
115
- api_params = {
116
- }
117
-
119
+ api_params = {}
120
+
118
121
  api_headers = {
119
122
  "X-Appwrite-Project": @client.get_config('project'),
120
123
  "content-type": 'application/json',
@@ -127,7 +130,6 @@ module Appwrite
127
130
  headers: api_headers,
128
131
  params: api_params,
129
132
  )
130
-
131
133
  end
132
134
 
133
135
  # List all policies for a project.
@@ -135,13 +137,15 @@ module Appwrite
135
137
  # @param [Array] queries Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long.
136
138
  #
137
139
  # @return [BackupPolicyList]
138
- def list_policies(queries: nil)
140
+ def list_policies(
141
+ queries: nil
142
+ )
139
143
  api_path = '/backups/policies'
140
144
 
141
145
  api_params = {
142
146
  queries: queries,
143
147
  }
144
-
148
+
145
149
  api_headers = {
146
150
  "X-Appwrite-Project": @client.get_config('project'),
147
151
  "accept": 'application/json',
@@ -154,37 +158,44 @@ module Appwrite
154
158
  params: api_params,
155
159
  response_type: Models::BackupPolicyList
156
160
  )
157
-
158
161
  end
159
162
 
160
163
  # Create a new backup policy.
161
164
  #
162
- # @param [String] policy_id Policy ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
165
+ # @param [String] policy_id Policy ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can&#039;t start with a special char. Max length is 36 chars.
163
166
  # @param [Array] services Array of services to backup
164
167
  # @param [Integer] retention Days to keep backups before deletion
165
168
  # @param [String] schedule Schedule CRON syntax.
166
169
  # @param [String] name Policy name. Max length: 128 chars.
167
170
  # @param [String] resource_id Resource ID. When set, only this single resource will be backed up.
168
- # @param [] enabled Is policy enabled? When set to 'disabled', no backups will be taken
171
+ # @param [] enabled Is policy enabled? When set to &#039;disabled&#039;, no backups will be taken
169
172
  #
170
173
  # @return [BackupPolicy]
171
- def create_policy(policy_id:, services:, retention:, schedule:, name: nil, resource_id: nil, enabled: nil)
174
+ def create_policy(
175
+ policy_id:,
176
+ services:,
177
+ retention:,
178
+ schedule:,
179
+ name: nil,
180
+ resource_id: nil,
181
+ enabled: nil
182
+ )
172
183
  api_path = '/backups/policies'
173
184
 
174
185
  if policy_id.nil?
175
- raise Appwrite::Exception.new('Missing required parameter: "policyId"')
186
+ raise Appwrite::Exception.new('Missing required parameter: "policyId"')
176
187
  end
177
188
 
178
189
  if services.nil?
179
- raise Appwrite::Exception.new('Missing required parameter: "services"')
190
+ raise Appwrite::Exception.new('Missing required parameter: "services"')
180
191
  end
181
192
 
182
193
  if retention.nil?
183
- raise Appwrite::Exception.new('Missing required parameter: "retention"')
194
+ raise Appwrite::Exception.new('Missing required parameter: "retention"')
184
195
  end
185
196
 
186
197
  if schedule.nil?
187
- raise Appwrite::Exception.new('Missing required parameter: "schedule"')
198
+ raise Appwrite::Exception.new('Missing required parameter: "schedule"')
188
199
  end
189
200
 
190
201
  api_params = {
@@ -196,7 +207,7 @@ module Appwrite
196
207
  retention: retention,
197
208
  schedule: schedule,
198
209
  }
199
-
210
+
200
211
  api_headers = {
201
212
  "X-Appwrite-Project": @client.get_config('project'),
202
213
  "content-type": 'application/json',
@@ -210,25 +221,25 @@ module Appwrite
210
221
  params: api_params,
211
222
  response_type: Models::BackupPolicy
212
223
  )
213
-
214
224
  end
215
225
 
216
- # Get a backup policy using it's ID.
226
+ # Get a backup policy using it&#039;s ID.
217
227
  #
218
- # @param [String] policy_id Policy ID. Choose a custom ID`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
228
+ # @param [String] policy_id Policy ID. Choose a custom ID`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can&#039;t start with a special char. Max length is 36 chars.
219
229
  #
220
230
  # @return [BackupPolicy]
221
- def get_policy(policy_id:)
231
+ def get_policy(
232
+ policy_id:
233
+ )
222
234
  api_path = '/backups/policies/{policyId}'
223
235
  .gsub('{policyId}', policy_id)
224
236
 
225
237
  if policy_id.nil?
226
- raise Appwrite::Exception.new('Missing required parameter: "policyId"')
238
+ raise Appwrite::Exception.new('Missing required parameter: "policyId"')
227
239
  end
228
240
 
229
- api_params = {
230
- }
231
-
241
+ api_params = {}
242
+
232
243
  api_headers = {
233
244
  "X-Appwrite-Project": @client.get_config('project'),
234
245
  "accept": 'application/json',
@@ -241,24 +252,29 @@ module Appwrite
241
252
  params: api_params,
242
253
  response_type: Models::BackupPolicy
243
254
  )
244
-
245
255
  end
246
256
 
247
- # Update an existing policy using it's ID.
257
+ # Update an existing policy using it&#039;s ID.
248
258
  #
249
- # @param [String] policy_id Policy ID. Choose a custom ID`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
259
+ # @param [String] policy_id Policy ID. Choose a custom ID`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can&#039;t start with a special char. Max length is 36 chars.
250
260
  # @param [String] name Policy name. Max length: 128 chars.
251
261
  # @param [Integer] retention Days to keep backups before deletion
252
262
  # @param [String] schedule Cron expression
253
- # @param [] enabled Is Backup enabled? When set to 'disabled', No backup will be taken
263
+ # @param [] enabled Is Backup enabled? When set to &#039;disabled&#039;, No backup will be taken
254
264
  #
255
265
  # @return [BackupPolicy]
256
- def update_policy(policy_id:, name: nil, retention: nil, schedule: nil, enabled: nil)
266
+ def update_policy(
267
+ policy_id:,
268
+ name: nil,
269
+ retention: nil,
270
+ schedule: nil,
271
+ enabled: nil
272
+ )
257
273
  api_path = '/backups/policies/{policyId}'
258
274
  .gsub('{policyId}', policy_id)
259
275
 
260
276
  if policy_id.nil?
261
- raise Appwrite::Exception.new('Missing required parameter: "policyId"')
277
+ raise Appwrite::Exception.new('Missing required parameter: "policyId"')
262
278
  end
263
279
 
264
280
  api_params = {
@@ -267,7 +283,7 @@ module Appwrite
267
283
  schedule: schedule,
268
284
  enabled: enabled,
269
285
  }
270
-
286
+
271
287
  api_headers = {
272
288
  "X-Appwrite-Project": @client.get_config('project'),
273
289
  "content-type": 'application/json',
@@ -281,25 +297,25 @@ module Appwrite
281
297
  params: api_params,
282
298
  response_type: Models::BackupPolicy
283
299
  )
284
-
285
300
  end
286
301
 
287
- # Delete a policy using it's ID.
302
+ # Delete a policy using it&#039;s ID.
288
303
  #
289
- # @param [String] policy_id Policy ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
304
+ # @param [String] policy_id Policy ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can&#039;t start with a special char. Max length is 36 chars.
290
305
  #
291
306
  # @return []
292
- def delete_policy(policy_id:)
307
+ def delete_policy(
308
+ policy_id:
309
+ )
293
310
  api_path = '/backups/policies/{policyId}'
294
311
  .gsub('{policyId}', policy_id)
295
312
 
296
313
  if policy_id.nil?
297
- raise Appwrite::Exception.new('Missing required parameter: "policyId"')
314
+ raise Appwrite::Exception.new('Missing required parameter: "policyId"')
298
315
  end
299
316
 
300
- api_params = {
301
- }
302
-
317
+ api_params = {}
318
+
303
319
  api_headers = {
304
320
  "X-Appwrite-Project": @client.get_config('project'),
305
321
  "content-type": 'application/json',
@@ -312,24 +328,23 @@ module Appwrite
312
328
  headers: api_headers,
313
329
  params: api_params,
314
330
  )
315
-
316
331
  end
317
332
 
318
333
  # Create and trigger a new restoration for a backup on a project.
319
- #
334
+ #
320
335
  # For a backup of one database, the restoration resolves its destination
321
336
  # before it is queued. When `newResourceId` is omitted, the archived database
322
337
  # is restored in place and its own ID is returned in `options`. Pass a
323
338
  # different `newResourceId` to restore alongside it as a new database
324
339
  # instead.
325
- #
340
+ #
326
341
  # The restoration migration records the archived database in `resourceId` and
327
342
  # `resourceType`, and the resolved database in `destinationResourceId` and
328
343
  # `destinationResourceType`. Database types are stored canonically as
329
344
  # `database`, `documentsdb`, or `vectorsdb`. Project-wide restorations leave
330
345
  # these fields empty because they do not have a single source or destination
331
346
  # database.
332
- #
347
+ #
333
348
  # To list every migration related to one database, use its canonical type in
334
349
  # a nested `OR(AND(...), AND(...), AND(...))` across the root, parent, and
335
350
  # destination relation pairs: `(resourceType, resourceId)`,
@@ -337,32 +352,37 @@ module Appwrite
337
352
  # destinationResourceId)`. Legacy and TablesDB databases use `database`; the
338
353
  # operational `resourceType` of a table migration is not rewritten to
339
354
  # `tablesdb`.
340
- #
355
+ #
341
356
  # When restoring a DocumentsDB or VectorsDB database from a dedicated source,
342
357
  # the restore provisions a fresh dedicated backing database at the source
343
- # database's own specification and lands the data there. An in-place restore
358
+ # database&#039;s own specification and lands the data there. An in-place restore
344
359
  # swaps the database onto that backing only once the restore has succeeded,
345
360
  # and retires the backing it displaced only once that swap is confirmed, so
346
361
  # the source keeps serving its own data until the restored data is in place
347
362
  # and any failure leaves it untouched. A serverless source has no dedicated
348
363
  # backing to clone and restores onto the archived database instead.
349
- #
364
+ #
350
365
  #
351
366
  # @param [String] archive_id Backup archive ID to restore
352
367
  # @param [Array] services Array of services to restore
353
- # @param [String] new_resource_id Destination resource ID. Omit to restore the archived resource in place, or pass a different ID to restore alongside it as a new resource. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
368
+ # @param [String] new_resource_id Destination resource ID. Omit to restore the archived resource in place, or pass a different ID to restore alongside it as a new resource. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can&#039;t start with a special char. Max length is 36 chars.
354
369
  # @param [String] new_resource_name Database name. Max length: 128 chars.
355
370
  #
356
371
  # @return [BackupRestoration]
357
- def create_restoration(archive_id:, services:, new_resource_id: nil, new_resource_name: nil)
372
+ def create_restoration(
373
+ archive_id:,
374
+ services:,
375
+ new_resource_id: nil,
376
+ new_resource_name: nil
377
+ )
358
378
  api_path = '/backups/restoration'
359
379
 
360
380
  if archive_id.nil?
361
- raise Appwrite::Exception.new('Missing required parameter: "archiveId"')
381
+ raise Appwrite::Exception.new('Missing required parameter: "archiveId"')
362
382
  end
363
383
 
364
384
  if services.nil?
365
- raise Appwrite::Exception.new('Missing required parameter: "services"')
385
+ raise Appwrite::Exception.new('Missing required parameter: "services"')
366
386
  end
367
387
 
368
388
  api_params = {
@@ -371,7 +391,7 @@ module Appwrite
371
391
  newResourceId: new_resource_id,
372
392
  newResourceName: new_resource_name,
373
393
  }
374
-
394
+
375
395
  api_headers = {
376
396
  "X-Appwrite-Project": @client.get_config('project'),
377
397
  "content-type": 'application/json',
@@ -385,7 +405,6 @@ module Appwrite
385
405
  params: api_params,
386
406
  response_type: Models::BackupRestoration
387
407
  )
388
-
389
408
  end
390
409
 
391
410
  # List all backup restorations for a project.
@@ -393,13 +412,15 @@ module Appwrite
393
412
  # @param [Array] queries Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long.
394
413
  #
395
414
  # @return [BackupRestorationList]
396
- def list_restorations(queries: nil)
415
+ def list_restorations(
416
+ queries: nil
417
+ )
397
418
  api_path = '/backups/restorations'
398
419
 
399
420
  api_params = {
400
421
  queries: queries,
401
422
  }
402
-
423
+
403
424
  api_headers = {
404
425
  "X-Appwrite-Project": @client.get_config('project'),
405
426
  "accept": 'application/json',
@@ -412,25 +433,25 @@ module Appwrite
412
433
  params: api_params,
413
434
  response_type: Models::BackupRestorationList
414
435
  )
415
-
416
436
  end
417
437
 
418
438
  # Get the current status of a backup restoration.
419
439
  #
420
- # @param [String] restoration_id Restoration ID. Choose a custom ID`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
440
+ # @param [String] restoration_id Restoration ID. Choose a custom ID`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can&#039;t start with a special char. Max length is 36 chars.
421
441
  #
422
442
  # @return [BackupRestoration]
423
- def get_restoration(restoration_id:)
443
+ def get_restoration(
444
+ restoration_id:
445
+ )
424
446
  api_path = '/backups/restorations/{restorationId}'
425
447
  .gsub('{restorationId}', restoration_id)
426
448
 
427
449
  if restoration_id.nil?
428
- raise Appwrite::Exception.new('Missing required parameter: "restorationId"')
450
+ raise Appwrite::Exception.new('Missing required parameter: "restorationId"')
429
451
  end
430
452
 
431
- api_params = {
432
- }
433
-
453
+ api_params = {}
454
+
434
455
  api_headers = {
435
456
  "X-Appwrite-Project": @client.get_config('project'),
436
457
  "accept": 'application/json',
@@ -443,8 +464,6 @@ module Appwrite
443
464
  params: api_params,
444
465
  response_type: Models::BackupRestoration
445
466
  )
446
-
447
467
  end
448
-
449
- end
468
+ end
450
469
  end