appwrite 28.3.2 → 29.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.
- checksums.yaml +4 -4
- data/lib/appwrite/client.rb +36 -20
- data/lib/appwrite/enums/billing_plan_group.rb +2 -1
- data/lib/appwrite/enums/build_runtime.rb +2 -0
- data/lib/appwrite/enums/databases_index_type.rb +1 -0
- data/lib/appwrite/enums/domain_registration_type.rb +10 -0
- data/lib/appwrite/enums/domain_transfer_status_enum.rb +14 -0
- data/lib/appwrite/enums/execution_trigger.rb +1 -0
- data/lib/appwrite/enums/framework.rb +1 -0
- data/lib/appwrite/enums/id_token_provider.rb +8 -0
- data/lib/appwrite/enums/image_gravity.rb +1 -0
- data/lib/appwrite/enums/o_auth2_auth0_prompt.rb +9 -0
- data/lib/appwrite/enums/o_auth2_discord_prompt.rb +8 -0
- data/lib/appwrite/enums/o_auth2_github_prompt.rb +7 -0
- data/lib/appwrite/enums/o_auth2_kakao_prompt.rb +10 -0
- data/lib/appwrite/enums/o_auth2_microsoft_prompt.rb +10 -0
- data/lib/appwrite/enums/o_auth2_okta_prompt.rb +9 -0
- data/lib/appwrite/enums/o_auth2_salesforce_prompt.rb +8 -0
- data/lib/appwrite/enums/o_auth2_zoho_prompt.rb +7 -0
- data/lib/appwrite/enums/o_auth_provider.rb +3 -0
- data/lib/appwrite/enums/project_email_template_id.rb +2 -0
- data/lib/appwrite/enums/project_key_scopes.rb +4 -0
- data/lib/appwrite/enums/project_o_auth2_auth0_prompt.rb +9 -0
- data/lib/appwrite/enums/project_o_auth2_discord_prompt.rb +8 -0
- data/lib/appwrite/enums/project_o_auth2_git_hub_prompt.rb +7 -0
- data/lib/appwrite/enums/project_o_auth2_kakao_prompt.rb +10 -0
- data/lib/appwrite/enums/project_o_auth2_microsoft_prompt.rb +10 -0
- data/lib/appwrite/enums/project_o_auth2_okta_prompt.rb +9 -0
- data/lib/appwrite/enums/project_o_auth2_salesforce_prompt.rb +8 -0
- data/lib/appwrite/enums/project_o_auth2_zoho_prompt.rb +7 -0
- data/lib/appwrite/enums/project_o_auth_provider_id.rb +3 -0
- data/lib/appwrite/enums/project_policy_id.rb +2 -0
- data/lib/appwrite/enums/proxy_rule_deployment_resource_type.rb +1 -0
- data/lib/appwrite/enums/proxy_rule_protocol.rb +8 -0
- data/lib/appwrite/enums/runtime.rb +2 -0
- data/lib/appwrite/enums/tables_db_index_type.rb +1 -0
- data/lib/appwrite/enums/waf_rule_action.rb +11 -0
- data/lib/appwrite/models/account.rb +143 -0
- data/lib/appwrite/models/activity_event.rb +1 -0
- data/lib/appwrite/models/activity_event_list.rb +1 -0
- data/lib/appwrite/models/additional_resource.rb +1 -0
- data/lib/appwrite/models/algo_argon2.rb +1 -0
- data/lib/appwrite/models/algo_bcrypt.rb +1 -0
- data/lib/appwrite/models/algo_md5.rb +1 -0
- data/lib/appwrite/models/algo_phpass.rb +1 -0
- data/lib/appwrite/models/algo_scrypt.rb +1 -0
- data/lib/appwrite/models/algo_scrypt_modified.rb +1 -0
- data/lib/appwrite/models/algo_sha.rb +1 -0
- data/lib/appwrite/models/app.rb +1 -0
- data/lib/appwrite/models/app_installation.rb +2 -1
- data/lib/appwrite/models/app_installation_list.rb +1 -0
- data/lib/appwrite/models/app_key.rb +2 -1
- data/lib/appwrite/models/app_key_list.rb +1 -0
- data/lib/appwrite/models/app_scope.rb +1 -0
- data/lib/appwrite/models/app_scope_list.rb +1 -0
- data/lib/appwrite/models/app_secret.rb +2 -1
- data/lib/appwrite/models/app_secret_list.rb +1 -0
- data/lib/appwrite/models/app_secret_plaintext.rb +2 -1
- data/lib/appwrite/models/apps_list.rb +1 -0
- data/lib/appwrite/models/attribute_bigint.rb +5 -4
- data/lib/appwrite/models/attribute_boolean.rb +3 -2
- data/lib/appwrite/models/attribute_datetime.rb +3 -2
- data/lib/appwrite/models/attribute_email.rb +3 -2
- data/lib/appwrite/models/attribute_enum.rb +3 -2
- data/lib/appwrite/models/attribute_float.rb +5 -4
- data/lib/appwrite/models/attribute_integer.rb +5 -4
- data/lib/appwrite/models/attribute_ip.rb +3 -2
- data/lib/appwrite/models/attribute_line.rb +3 -2
- data/lib/appwrite/models/attribute_list.rb +1 -0
- data/lib/appwrite/models/attribute_longtext.rb +4 -3
- data/lib/appwrite/models/attribute_mediumtext.rb +4 -3
- data/lib/appwrite/models/attribute_object.rb +2 -1
- data/lib/appwrite/models/attribute_point.rb +3 -2
- data/lib/appwrite/models/attribute_polygon.rb +3 -2
- data/lib/appwrite/models/attribute_relationship.rb +2 -1
- data/lib/appwrite/models/attribute_string.rb +4 -3
- data/lib/appwrite/models/attribute_text.rb +4 -3
- data/lib/appwrite/models/attribute_url.rb +3 -2
- data/lib/appwrite/models/attribute_varchar.rb +4 -3
- data/lib/appwrite/models/attribute_vector.rb +2 -1
- data/lib/appwrite/models/backup_archive.rb +5 -4
- data/lib/appwrite/models/backup_archive_list.rb +1 -0
- data/lib/appwrite/models/backup_policy.rb +3 -2
- data/lib/appwrite/models/backup_policy_list.rb +1 -0
- data/lib/appwrite/models/backup_restoration.rb +2 -1
- data/lib/appwrite/models/backup_restoration_list.rb +1 -0
- data/lib/appwrite/models/billing_limits.rb +8 -8
- data/lib/appwrite/models/billing_plan.rb +25 -13
- data/lib/appwrite/models/billing_plan_addon.rb +2 -2
- data/lib/appwrite/models/billing_plan_addon_details.rb +2 -1
- data/lib/appwrite/models/billing_plan_dedicated_database_limits.rb +19 -19
- data/lib/appwrite/models/billing_plan_limits.rb +2 -2
- data/lib/appwrite/models/billing_plan_supported_addons.rb +1 -0
- data/lib/appwrite/models/block.rb +4 -33
- data/lib/appwrite/models/bucket.rb +1 -0
- data/lib/appwrite/models/bucket_list.rb +1 -0
- data/lib/appwrite/models/collection.rb +1 -0
- data/lib/appwrite/models/collection_list.rb +1 -0
- data/lib/appwrite/models/column_bigint.rb +5 -4
- data/lib/appwrite/models/column_boolean.rb +3 -2
- data/lib/appwrite/models/column_datetime.rb +3 -2
- data/lib/appwrite/models/column_email.rb +3 -2
- data/lib/appwrite/models/column_enum.rb +3 -2
- data/lib/appwrite/models/column_float.rb +5 -4
- data/lib/appwrite/models/column_index.rb +2 -1
- data/lib/appwrite/models/column_index_list.rb +1 -0
- data/lib/appwrite/models/column_integer.rb +5 -4
- data/lib/appwrite/models/column_ip.rb +3 -2
- data/lib/appwrite/models/column_line.rb +3 -2
- data/lib/appwrite/models/column_list.rb +1 -0
- data/lib/appwrite/models/column_longtext.rb +4 -3
- data/lib/appwrite/models/column_mediumtext.rb +4 -3
- data/lib/appwrite/models/column_point.rb +3 -2
- data/lib/appwrite/models/column_polygon.rb +3 -2
- data/lib/appwrite/models/column_relationship.rb +2 -1
- data/lib/appwrite/models/column_string.rb +4 -3
- data/lib/appwrite/models/column_text.rb +4 -3
- data/lib/appwrite/models/column_url.rb +3 -2
- data/lib/appwrite/models/column_varchar.rb +4 -3
- data/lib/appwrite/models/continent.rb +1 -0
- data/lib/appwrite/models/continent_list.rb +1 -0
- data/lib/appwrite/models/country.rb +1 -0
- data/lib/appwrite/models/country_list.rb +1 -0
- data/lib/appwrite/models/currency.rb +1 -0
- data/lib/appwrite/models/currency_list.rb +1 -0
- data/lib/appwrite/models/database.rb +10 -9
- data/lib/appwrite/models/database_list.rb +1 -0
- data/lib/appwrite/models/database_migration.rb +1 -0
- data/lib/appwrite/models/database_migration_list.rb +1 -0
- data/lib/appwrite/models/database_status.rb +6 -5
- data/lib/appwrite/models/database_status_connections.rb +1 -0
- data/lib/appwrite/models/database_status_replica.rb +3 -2
- data/lib/appwrite/models/database_status_volume.rb +1 -0
- data/lib/appwrite/models/dedicated_database.rb +22 -6
- data/lib/appwrite/models/dedicated_database_backup.rb +6 -5
- data/lib/appwrite/models/dedicated_database_backup_list.rb +1 -0
- data/lib/appwrite/models/dedicated_database_backup_storage.rb +1 -0
- data/lib/appwrite/models/dedicated_database_branch.rb +2 -1
- data/lib/appwrite/models/dedicated_database_branch_list.rb +1 -0
- data/lib/appwrite/models/dedicated_database_execution.rb +1 -0
- data/lib/appwrite/models/dedicated_database_execution_column.rb +1 -0
- data/lib/appwrite/models/dedicated_database_extensions.rb +1 -0
- data/lib/appwrite/models/dedicated_database_list.rb +1 -0
- data/lib/appwrite/models/dedicated_database_member.rb +3 -2
- data/lib/appwrite/models/dedicated_database_operation.rb +4 -3
- data/lib/appwrite/models/dedicated_database_operation_list.rb +1 -0
- data/lib/appwrite/models/dedicated_database_pitr_windows.rb +1 -0
- data/lib/appwrite/models/dedicated_database_pooler.rb +1 -0
- data/lib/appwrite/models/dedicated_database_replicas.rb +3 -2
- data/lib/appwrite/models/dedicated_database_restoration.rb +11 -5
- data/lib/appwrite/models/dedicated_database_restoration_list.rb +1 -0
- data/lib/appwrite/models/dedicated_database_specification.rb +21 -0
- data/lib/appwrite/models/dedicated_database_specification_list.rb +4 -8
- data/lib/appwrite/models/deployment.rb +1 -0
- data/lib/appwrite/models/deployment_list.rb +1 -0
- data/lib/appwrite/models/dns_record.rb +83 -0
- data/lib/appwrite/models/dns_records_list.rb +33 -0
- data/lib/appwrite/models/document.rb +1 -0
- data/lib/appwrite/models/document_list.rb +1 -0
- data/lib/appwrite/models/domain.rb +109 -0
- data/lib/appwrite/models/domain_price.rb +63 -0
- data/lib/appwrite/models/domain_prices_list.rb +33 -0
- data/lib/appwrite/models/domain_transfer_status.rb +59 -0
- data/lib/appwrite/models/domains_list.rb +33 -0
- data/lib/appwrite/models/email_template.rb +1 -0
- data/lib/appwrite/models/email_template_list.rb +1 -0
- data/lib/appwrite/models/embedding.rb +1 -0
- data/lib/appwrite/models/embedding_list.rb +1 -0
- data/lib/appwrite/models/ephemeral_key.rb +1 -0
- data/lib/appwrite/models/execution.rb +3 -1
- data/lib/appwrite/models/execution_list.rb +1 -0
- data/lib/appwrite/models/file.rb +1 -0
- data/lib/appwrite/models/file_list.rb +1 -0
- data/lib/appwrite/models/framework.rb +1 -0
- data/lib/appwrite/models/framework_adapter.rb +2 -1
- data/lib/appwrite/models/framework_list.rb +1 -0
- data/lib/appwrite/models/function.rb +10 -4
- data/lib/appwrite/models/function_list.rb +1 -0
- data/lib/appwrite/models/headers.rb +1 -0
- data/lib/appwrite/models/identity.rb +9 -3
- data/lib/appwrite/models/identity_list.rb +1 -0
- data/lib/appwrite/models/index.rb +2 -1
- data/lib/appwrite/models/index_list.rb +1 -0
- data/lib/appwrite/models/insight.rb +4 -3
- data/lib/appwrite/models/insight_cta.rb +1 -0
- data/lib/appwrite/models/insight_list.rb +1 -0
- data/lib/appwrite/models/jwt.rb +1 -0
- data/lib/appwrite/models/key.rb +1 -0
- data/lib/appwrite/models/key_list.rb +1 -0
- data/lib/appwrite/models/language.rb +1 -0
- data/lib/appwrite/models/language_list.rb +1 -0
- data/lib/appwrite/models/locale.rb +12 -11
- data/lib/appwrite/models/locale_code.rb +1 -0
- data/lib/appwrite/models/locale_code_list.rb +1 -0
- data/lib/appwrite/models/membership.rb +1 -0
- data/lib/appwrite/models/membership_list.rb +1 -0
- data/lib/appwrite/models/message.rb +4 -3
- data/lib/appwrite/models/message_list.rb +1 -0
- data/lib/appwrite/models/mfa_challenge.rb +1 -0
- data/lib/appwrite/models/mfa_challenge_secret.rb +1 -0
- data/lib/appwrite/models/mfa_factors.rb +1 -0
- data/lib/appwrite/models/mfa_recovery_codes.rb +1 -0
- data/lib/appwrite/models/mfa_type.rb +1 -0
- data/lib/appwrite/models/mock_number.rb +1 -0
- data/lib/appwrite/models/mock_number_list.rb +1 -0
- data/lib/appwrite/models/o_auth2_amazon.rb +1 -0
- data/lib/appwrite/models/o_auth2_apple.rb +14 -3
- data/lib/appwrite/models/o_auth2_appwrite.rb +1 -0
- data/lib/appwrite/models/o_auth2_auth0.rb +24 -0
- data/lib/appwrite/models/o_auth2_authentik.rb +1 -0
- data/lib/appwrite/models/o_auth2_autodesk.rb +1 -0
- data/lib/appwrite/models/o_auth2_bitbucket.rb +1 -0
- data/lib/appwrite/models/o_auth2_bitly.rb +1 -0
- data/lib/appwrite/models/o_auth2_box.rb +1 -0
- data/lib/appwrite/models/o_auth2_cloudflare.rb +1 -0
- data/lib/appwrite/models/o_auth2_dailymotion.rb +1 -0
- data/lib/appwrite/models/o_auth2_discord.rb +26 -3
- data/lib/appwrite/models/o_auth2_disqus.rb +1 -0
- data/lib/appwrite/models/o_auth2_dropbox.rb +1 -0
- data/lib/appwrite/models/o_auth2_etsy.rb +1 -0
- data/lib/appwrite/models/o_auth2_facebook.rb +1 -0
- data/lib/appwrite/models/o_auth2_figma.rb +1 -0
- data/lib/appwrite/models/o_auth2_fusion_auth.rb +1 -0
- data/lib/appwrite/models/o_auth2_github.rb +25 -3
- data/lib/appwrite/models/o_auth2_gitlab.rb +1 -0
- data/lib/appwrite/models/o_auth2_google.rb +18 -5
- data/lib/appwrite/models/o_auth2_hugging_face.rb +1 -0
- data/lib/appwrite/models/o_auth2_kakao.rb +67 -0
- data/lib/appwrite/models/o_auth2_keycloak.rb +1 -0
- data/lib/appwrite/models/o_auth2_kick.rb +1 -0
- data/lib/appwrite/models/o_auth2_linkedin.rb +1 -0
- data/lib/appwrite/models/o_auth2_microsoft.rb +25 -0
- data/lib/appwrite/models/o_auth2_notion.rb +1 -0
- data/lib/appwrite/models/o_auth2_oidc.rb +11 -8
- data/lib/appwrite/models/o_auth2_okta.rb +24 -0
- data/lib/appwrite/models/o_auth2_paypal.rb +1 -0
- data/lib/appwrite/models/o_auth2_podio.rb +1 -0
- data/lib/appwrite/models/o_auth2_provider_list.rb +1 -0
- data/lib/appwrite/models/o_auth2_resend.rb +1 -0
- data/lib/appwrite/models/o_auth2_salesforce.rb +26 -3
- data/lib/appwrite/models/o_auth2_slack.rb +1 -0
- data/lib/appwrite/models/o_auth2_spotify.rb +1 -0
- data/lib/appwrite/models/o_auth2_stripe.rb +1 -0
- data/lib/appwrite/models/o_auth2_tik_tok.rb +43 -0
- data/lib/appwrite/models/o_auth2_tradeshift.rb +1 -0
- data/lib/appwrite/models/o_auth2_twitch.rb +1 -0
- data/lib/appwrite/models/o_auth2_webflow.rb +43 -0
- data/lib/appwrite/models/o_auth2_word_press.rb +1 -0
- data/lib/appwrite/models/o_auth2_x.rb +1 -0
- data/lib/appwrite/models/o_auth2_yahoo.rb +1 -0
- data/lib/appwrite/models/o_auth2_yandex.rb +1 -0
- data/lib/appwrite/models/o_auth2_zoho.rb +25 -3
- data/lib/appwrite/models/o_auth2_zoom.rb +1 -0
- data/lib/appwrite/models/oauth2_approve.rb +1 -0
- data/lib/appwrite/models/oauth2_authorize.rb +1 -0
- data/lib/appwrite/models/oauth2_consent.rb +1 -0
- data/lib/appwrite/models/oauth2_consent_list.rb +1 -0
- data/lib/appwrite/models/oauth2_consent_token.rb +1 -0
- data/lib/appwrite/models/oauth2_consent_token_list.rb +1 -0
- data/lib/appwrite/models/oauth2_device_authorization.rb +1 -0
- data/lib/appwrite/models/oauth2_grant.rb +1 -0
- data/lib/appwrite/models/oauth2_introspection.rb +83 -0
- data/lib/appwrite/models/oauth2_organization.rb +1 -0
- data/lib/appwrite/models/oauth2_organization_list.rb +1 -0
- data/lib/appwrite/models/oauth2_par.rb +1 -0
- data/lib/appwrite/models/oauth2_project.rb +1 -0
- data/lib/appwrite/models/oauth2_project_list.rb +1 -0
- data/lib/appwrite/models/oauth2_reject.rb +1 -0
- data/lib/appwrite/models/oauth2_token.rb +3 -2
- data/lib/appwrite/models/organization.rb +21 -20
- data/lib/appwrite/models/passkey.rb +1 -0
- data/lib/appwrite/models/passkey_challenge.rb +1 -0
- data/lib/appwrite/models/passkey_list.rb +1 -0
- data/lib/appwrite/models/phone.rb +1 -0
- data/lib/appwrite/models/phone_list.rb +1 -0
- data/lib/appwrite/models/platform_android.rb +9 -3
- data/lib/appwrite/models/platform_apple.rb +1 -0
- data/lib/appwrite/models/platform_linux.rb +1 -0
- data/lib/appwrite/models/platform_list.rb +1 -0
- data/lib/appwrite/models/platform_web.rb +1 -0
- data/lib/appwrite/models/platform_windows.rb +1 -0
- data/lib/appwrite/models/policy_deny_aliased_email.rb +1 -0
- data/lib/appwrite/models/policy_deny_corporate_email.rb +1 -0
- data/lib/appwrite/models/policy_deny_disposable_email.rb +1 -0
- data/lib/appwrite/models/policy_deny_free_email.rb +1 -0
- data/lib/appwrite/models/policy_list.rb +1 -0
- data/lib/appwrite/models/policy_membership_privacy.rb +1 -0
- data/lib/appwrite/models/policy_mfa_factors.rb +1 -0
- data/lib/appwrite/models/policy_passkey.rb +1 -0
- data/lib/appwrite/models/policy_password_dictionary.rb +1 -0
- data/lib/appwrite/models/policy_password_history.rb +1 -0
- data/lib/appwrite/models/policy_password_personal_data.rb +1 -0
- data/lib/appwrite/models/policy_password_pwned.rb +43 -0
- data/lib/appwrite/models/policy_password_rotation.rb +38 -0
- data/lib/appwrite/models/policy_password_strength.rb +1 -0
- data/lib/appwrite/models/policy_session_alert.rb +1 -0
- data/lib/appwrite/models/policy_session_duration.rb +1 -0
- data/lib/appwrite/models/policy_session_invalidation.rb +1 -0
- data/lib/appwrite/models/policy_session_limit.rb +1 -0
- data/lib/appwrite/models/policy_user_limit.rb +1 -0
- data/lib/appwrite/models/postgres_extension.rb +1 -0
- data/lib/appwrite/models/presence.rb +4 -3
- data/lib/appwrite/models/presence_list.rb +1 -0
- data/lib/appwrite/models/program.rb +1 -0
- data/lib/appwrite/models/project.rb +35 -24
- data/lib/appwrite/models/project_auth_method.rb +1 -0
- data/lib/appwrite/models/project_list.rb +1 -0
- data/lib/appwrite/models/project_protocol.rb +1 -0
- data/lib/appwrite/models/project_service.rb +1 -0
- data/lib/appwrite/models/provider.rb +2 -1
- data/lib/appwrite/models/provider_list.rb +1 -0
- data/lib/appwrite/models/proxy_invalidation.rb +1 -0
- data/lib/appwrite/models/proxy_rule.rb +24 -4
- data/lib/appwrite/models/proxy_rule_list.rb +1 -0
- data/lib/appwrite/models/report.rb +2 -1
- data/lib/appwrite/models/report_list.rb +1 -0
- data/lib/appwrite/models/resource_token.rb +1 -0
- data/lib/appwrite/models/resource_token_list.rb +1 -0
- data/lib/appwrite/models/row.rb +1 -0
- data/lib/appwrite/models/row_list.rb +1 -0
- data/lib/appwrite/models/runtime.rb +1 -0
- data/lib/appwrite/models/runtime_list.rb +1 -0
- data/lib/appwrite/models/session.rb +1 -0
- data/lib/appwrite/models/session_list.rb +1 -0
- data/lib/appwrite/models/site.rb +1 -0
- data/lib/appwrite/models/site_list.rb +1 -0
- data/lib/appwrite/models/specification.rb +1 -0
- data/lib/appwrite/models/specification_list.rb +1 -0
- data/lib/appwrite/models/subscriber.rb +1 -0
- data/lib/appwrite/models/subscriber_list.rb +1 -0
- data/lib/appwrite/models/table.rb +1 -0
- data/lib/appwrite/models/table_list.rb +1 -0
- data/lib/appwrite/models/target.rb +2 -1
- data/lib/appwrite/models/target_list.rb +1 -0
- data/lib/appwrite/models/team.rb +1 -0
- data/lib/appwrite/models/team_list.rb +1 -0
- data/lib/appwrite/models/token.rb +1 -0
- data/lib/appwrite/models/token_secret.rb +1 -0
- data/lib/appwrite/models/topic.rb +14 -3
- data/lib/appwrite/models/topic_list.rb +1 -0
- data/lib/appwrite/models/transaction.rb +1 -0
- data/lib/appwrite/models/transaction_list.rb +1 -0
- data/lib/appwrite/models/usage_billing_plan.rb +27 -27
- data/lib/appwrite/models/user.rb +16 -10
- data/lib/appwrite/models/user_list.rb +1 -0
- data/lib/appwrite/models/variable.rb +1 -0
- data/lib/appwrite/models/variable_list.rb +1 -0
- data/lib/appwrite/models/vectorsdb_collection.rb +1 -0
- data/lib/appwrite/models/vectorsdb_collection_list.rb +1 -0
- data/lib/appwrite/models/waf_rule_bypass.rb +111 -0
- data/lib/appwrite/models/waf_rule_challenge.rb +126 -0
- data/lib/appwrite/models/waf_rule_deny.rb +111 -0
- data/lib/appwrite/models/{log_list.rb → waf_rule_list.rb} +8 -7
- data/lib/appwrite/models/waf_rule_rate_limit.rb +136 -0
- data/lib/appwrite/models/waf_rule_redirect.rb +121 -0
- data/lib/appwrite/models/webhook.rb +1 -0
- data/lib/appwrite/models/webhook_list.rb +1 -0
- data/lib/appwrite/query/builder.rb +361 -0
- data/lib/appwrite/query.rb +190 -0
- data/lib/appwrite/services/account.rb +409 -133
- data/lib/appwrite/services/activities.rb +4 -4
- data/lib/appwrite/services/advisor.rb +19 -18
- data/lib/appwrite/services/apps.rb +89 -89
- data/lib/appwrite/services/avatars.rb +92 -21
- data/lib/appwrite/services/backups.rb +30 -30
- data/lib/appwrite/services/databases.rb +504 -453
- data/lib/appwrite/services/documents_db.rb +199 -191
- data/lib/appwrite/services/domains.rb +2318 -0
- data/lib/appwrite/services/embeddings.rb +2 -2
- data/lib/appwrite/services/functions.rb +128 -112
- data/lib/appwrite/services/graphql.rb +4 -4
- data/lib/appwrite/services/locale.rb +49 -14
- data/lib/appwrite/services/messaging.rb +281 -153
- data/lib/appwrite/services/mongo.rb +194 -130
- data/lib/appwrite/services/mysql.rb +212 -144
- data/lib/appwrite/services/oauth2.rb +72 -27
- data/lib/appwrite/services/organization.rb +255 -221
- data/lib/appwrite/services/postgresql.rb +226 -158
- data/lib/appwrite/services/presences.rb +17 -16
- data/lib/appwrite/services/project.rb +588 -157
- data/lib/appwrite/services/proxy.rb +70 -23
- data/lib/appwrite/services/sites.rb +119 -107
- data/lib/appwrite/services/storage.rb +62 -59
- data/lib/appwrite/services/tables_db.rb +617 -558
- data/lib/appwrite/services/teams.rb +87 -82
- data/lib/appwrite/services/tokens.rb +25 -24
- data/lib/appwrite/services/users.rb +170 -199
- data/lib/appwrite/services/vectors_db.rb +185 -177
- data/lib/appwrite/services/waf.rb +859 -0
- data/lib/appwrite/services/webhooks.rb +23 -22
- data/lib/appwrite/topic.rb +53 -0
- data/lib/appwrite.rb +48 -9
- metadata +47 -7
- data/lib/appwrite/enums/organization_key_scopes.rb +0 -22
- data/lib/appwrite/models/dedicated_database_specification_pricing.rb +0 -42
- data/lib/appwrite/models/dev_key.rb +0 -62
- data/lib/appwrite/models/log.rb +0 -132
data/lib/appwrite/query.rb
CHANGED
|
@@ -216,6 +216,15 @@ module Appwrite
|
|
|
216
216
|
return Query.new("elemMatch", attribute, queries.map { |query| JSON.parse(query) }).to_s
|
|
217
217
|
end
|
|
218
218
|
|
|
219
|
+
# Constrain populated related documents on a relationship attribute.
|
|
220
|
+
#
|
|
221
|
+
# @param attribute [String] The relationship attribute to query.
|
|
222
|
+
# @param queries [Array<String>] Filter, order, select, and pagination queries applied to related documents.
|
|
223
|
+
# @return [String] The query string.
|
|
224
|
+
def relationship(attribute, queries)
|
|
225
|
+
return Query.new("relationship", attribute, queries.map { |query| JSON.parse(query) }).to_s
|
|
226
|
+
end
|
|
227
|
+
|
|
219
228
|
def distance_equal(attribute, values, distance, meters = true)
|
|
220
229
|
return Query.new("distanceEqual", attribute, [[values, distance, meters]]).to_s
|
|
221
230
|
end
|
|
@@ -275,6 +284,187 @@ module Appwrite
|
|
|
275
284
|
def not_touches(attribute, values)
|
|
276
285
|
return Query.new("notTouches", attribute, [values]).to_s
|
|
277
286
|
end
|
|
287
|
+
|
|
288
|
+
def count(attribute = '*', alias_name = '')
|
|
289
|
+
return Query.new("count", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
290
|
+
end
|
|
291
|
+
|
|
292
|
+
def count_distinct(attribute, alias_name = '')
|
|
293
|
+
return Query.new("countDistinct", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
294
|
+
end
|
|
295
|
+
|
|
296
|
+
def sum(attribute, alias_name = '')
|
|
297
|
+
return Query.new("sum", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
298
|
+
end
|
|
299
|
+
|
|
300
|
+
def avg(attribute, alias_name = '')
|
|
301
|
+
return Query.new("avg", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
302
|
+
end
|
|
303
|
+
|
|
304
|
+
def min(attribute, alias_name = '')
|
|
305
|
+
return Query.new("min", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
306
|
+
end
|
|
307
|
+
|
|
308
|
+
def max(attribute, alias_name = '')
|
|
309
|
+
return Query.new("max", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
310
|
+
end
|
|
311
|
+
|
|
312
|
+
def stddev(attribute, alias_name = '')
|
|
313
|
+
return Query.new("stddev", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
314
|
+
end
|
|
315
|
+
|
|
316
|
+
def stddev_pop(attribute, alias_name = '')
|
|
317
|
+
return Query.new("stddevPop", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
318
|
+
end
|
|
319
|
+
|
|
320
|
+
def stddev_samp(attribute, alias_name = '')
|
|
321
|
+
return Query.new("stddevSamp", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
322
|
+
end
|
|
323
|
+
|
|
324
|
+
def variance(attribute, alias_name = '')
|
|
325
|
+
return Query.new("variance", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
326
|
+
end
|
|
327
|
+
|
|
328
|
+
def var_pop(attribute, alias_name = '')
|
|
329
|
+
return Query.new("varPop", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
330
|
+
end
|
|
331
|
+
|
|
332
|
+
def var_samp(attribute, alias_name = '')
|
|
333
|
+
return Query.new("varSamp", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
334
|
+
end
|
|
335
|
+
|
|
336
|
+
def bit_and(attribute, alias_name = '')
|
|
337
|
+
return Query.new("bitAnd", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
338
|
+
end
|
|
339
|
+
|
|
340
|
+
def bit_or(attribute, alias_name = '')
|
|
341
|
+
return Query.new("bitOr", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
342
|
+
end
|
|
343
|
+
|
|
344
|
+
def bit_xor(attribute, alias_name = '')
|
|
345
|
+
return Query.new("bitXor", attribute, alias_name != '' ? alias_name : nil).to_s
|
|
346
|
+
end
|
|
347
|
+
|
|
348
|
+
def group_by(attributes)
|
|
349
|
+
return Query.new("groupBy", nil, attributes).to_s
|
|
350
|
+
end
|
|
351
|
+
|
|
352
|
+
def having(queries)
|
|
353
|
+
return Query.new("having", nil, queries.map { |query| JSON.parse(query) }).to_s
|
|
354
|
+
end
|
|
355
|
+
|
|
356
|
+
def distinct()
|
|
357
|
+
return Query.new("distinct", nil, nil).to_s
|
|
358
|
+
end
|
|
359
|
+
|
|
360
|
+
def on(left, right, operator = '=')
|
|
361
|
+
return Query.new("on", nil, [left, operator, right]).to_s
|
|
362
|
+
end
|
|
363
|
+
|
|
364
|
+
def join(table, left, right = '', operator = '=', alias_name = '')
|
|
365
|
+
return create_join("join", table, left, right, operator, alias_name)
|
|
366
|
+
end
|
|
367
|
+
|
|
368
|
+
def left_join(table, left, right = '', operator = '=', alias_name = '')
|
|
369
|
+
return create_join("leftJoin", table, left, right, operator, alias_name)
|
|
370
|
+
end
|
|
371
|
+
|
|
372
|
+
def right_join(table, left, right = '', operator = '=', alias_name = '')
|
|
373
|
+
return create_join("rightJoin", table, left, right, operator, alias_name)
|
|
374
|
+
end
|
|
375
|
+
|
|
376
|
+
def full_outer_join(table, left, right = '', operator = '=', alias_name = '')
|
|
377
|
+
return create_join("fullOuterJoin", table, left, right, operator, alias_name)
|
|
378
|
+
end
|
|
379
|
+
|
|
380
|
+
def cross_join(table, alias_name = '')
|
|
381
|
+
return Query.new("crossJoin", table, alias_name != '' ? alias_name : nil).to_s
|
|
382
|
+
end
|
|
383
|
+
|
|
384
|
+
def covers(attribute, values)
|
|
385
|
+
return Query.new("covers", attribute, [values]).to_s
|
|
386
|
+
end
|
|
387
|
+
|
|
388
|
+
def not_covers(attribute, values)
|
|
389
|
+
return Query.new("notCovers", attribute, [values]).to_s
|
|
390
|
+
end
|
|
391
|
+
|
|
392
|
+
def spatial_equals(attribute, values)
|
|
393
|
+
return Query.new("spatialEquals", attribute, [values]).to_s
|
|
394
|
+
end
|
|
395
|
+
|
|
396
|
+
def not_spatial_equals(attribute, values)
|
|
397
|
+
return Query.new("notSpatialEquals", attribute, [values]).to_s
|
|
398
|
+
end
|
|
399
|
+
|
|
400
|
+
def page(page, per_page = 25)
|
|
401
|
+
if page < 1
|
|
402
|
+
raise ArgumentError, "Page must be >= 1, got #{page}"
|
|
403
|
+
end
|
|
404
|
+
if per_page < 1
|
|
405
|
+
raise ArgumentError, "Per page must be >= 1, got #{per_page}"
|
|
406
|
+
end
|
|
407
|
+
|
|
408
|
+
return [
|
|
409
|
+
limit(per_page),
|
|
410
|
+
offset((page - 1) * per_page),
|
|
411
|
+
]
|
|
412
|
+
end
|
|
413
|
+
|
|
414
|
+
def builder
|
|
415
|
+
return Builder.new
|
|
416
|
+
end
|
|
417
|
+
|
|
418
|
+
def _flatten(value)
|
|
419
|
+
return value.build if value.is_a?(Builder)
|
|
420
|
+
return value.to_s if value.is_a?(Query)
|
|
421
|
+
return value unless value.is_a?(Array)
|
|
422
|
+
|
|
423
|
+
out = []
|
|
424
|
+
changed = false
|
|
425
|
+
value.each do |item|
|
|
426
|
+
flat = _flatten(item)
|
|
427
|
+
if item.is_a?(Builder) || item.is_a?(Query)
|
|
428
|
+
if flat.is_a?(Array)
|
|
429
|
+
out.concat(flat)
|
|
430
|
+
else
|
|
431
|
+
out << flat
|
|
432
|
+
end
|
|
433
|
+
changed = true
|
|
434
|
+
next
|
|
435
|
+
end
|
|
436
|
+
changed = true if flat != item
|
|
437
|
+
out << flat
|
|
438
|
+
end
|
|
439
|
+
|
|
440
|
+
changed ? out : value
|
|
441
|
+
end
|
|
442
|
+
|
|
443
|
+
private
|
|
444
|
+
|
|
445
|
+
def create_join(method, table, left, right, operator, alias_name)
|
|
446
|
+
return nested_join(method, table, '', left) if left.is_a?(Array)
|
|
447
|
+
return nested_join(method, table, left, right) if right.is_a?(Array)
|
|
448
|
+
|
|
449
|
+
return join_query(method, table, left, right, operator, alias_name)
|
|
450
|
+
end
|
|
451
|
+
|
|
452
|
+
def nested_join(method, table, alias_name, on)
|
|
453
|
+
values = []
|
|
454
|
+
values << alias_name if alias_name != ''
|
|
455
|
+
on.each { |query| values << JSON.parse(query) }
|
|
456
|
+
|
|
457
|
+
return Query.new(method, table, values).to_s
|
|
458
|
+
end
|
|
459
|
+
|
|
460
|
+
def join_query(method, table, left, right, operator, alias_name)
|
|
461
|
+
values = [left, operator, right]
|
|
462
|
+
values << alias_name if alias_name != ''
|
|
463
|
+
|
|
464
|
+
return Query.new(method, table, values).to_s
|
|
465
|
+
end
|
|
278
466
|
end
|
|
279
467
|
end
|
|
468
|
+
|
|
469
|
+
require_relative 'query/builder'
|
|
280
470
|
end
|