appwrite 25.1.0 → 26.1.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 (109) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +18 -4
  3. data/lib/appwrite/enums/billing_plan_group.rb +9 -0
  4. data/lib/appwrite/enums/database_status.rb +20 -0
  5. data/lib/appwrite/enums/database_type.rb +3 -0
  6. data/lib/appwrite/enums/o_auth2_oidc_prompt.rb +10 -0
  7. data/lib/appwrite/enums/o_auth_provider.rb +1 -0
  8. data/lib/appwrite/enums/organization_key_scopes.rb +6 -0
  9. data/lib/appwrite/enums/project_key_scopes.rb +10 -2
  10. data/lib/appwrite/enums/project_o_auth2_oidc_prompt.rb +10 -0
  11. data/lib/appwrite/enums/project_o_auth_provider_id.rb +1 -0
  12. data/lib/appwrite/enums/project_policy_id.rb +1 -0
  13. data/lib/appwrite/enums/project_service_id.rb +1 -0
  14. data/lib/appwrite/models/activity_event.rb +55 -70
  15. data/lib/appwrite/models/additional_resource.rb +52 -0
  16. data/lib/appwrite/models/app.rb +152 -0
  17. data/lib/appwrite/models/app_installation.rb +72 -0
  18. data/lib/appwrite/models/app_installation_list.rb +32 -0
  19. data/lib/appwrite/models/app_key.rb +67 -0
  20. data/lib/appwrite/models/{usage_gauge_list.rb → app_key_list.rb} +7 -7
  21. data/lib/appwrite/models/app_scope.rb +47 -0
  22. data/lib/appwrite/models/{usage_event_list.rb → app_scope_list.rb} +7 -7
  23. data/lib/appwrite/models/app_secret.rb +67 -0
  24. data/lib/appwrite/models/{health_status_list.rb → app_secret_list.rb} +7 -7
  25. data/lib/appwrite/models/app_secret_plaintext.rb +67 -0
  26. data/lib/appwrite/models/apps_list.rb +32 -0
  27. data/lib/appwrite/models/backup_policy.rb +5 -0
  28. data/lib/appwrite/models/billing_plan.rb +384 -0
  29. data/lib/appwrite/models/billing_plan_addon.rb +32 -0
  30. data/lib/appwrite/models/billing_plan_addon_details.rb +62 -0
  31. data/lib/appwrite/models/billing_plan_dedicated_database_limits.rb +117 -0
  32. data/lib/appwrite/models/billing_plan_limits.rb +32 -0
  33. data/lib/appwrite/models/billing_plan_supported_addons.rb +37 -0
  34. data/lib/appwrite/models/block.rb +5 -0
  35. data/lib/appwrite/models/database.rb +54 -6
  36. data/lib/appwrite/models/database_status.rb +62 -0
  37. data/lib/appwrite/models/database_status_connections.rb +32 -0
  38. data/lib/appwrite/models/database_status_replica.rb +42 -0
  39. data/lib/appwrite/models/database_status_volume.rb +42 -0
  40. data/lib/appwrite/models/dedicated_database.rb +267 -0
  41. data/lib/appwrite/models/dedicated_database_member.rb +42 -0
  42. data/lib/appwrite/models/dedicated_database_replicas.rb +37 -0
  43. data/lib/appwrite/models/dedicated_database_specification.rb +67 -0
  44. data/lib/appwrite/models/dedicated_database_specification_list.rb +37 -0
  45. data/lib/appwrite/models/dedicated_database_specification_pricing.rb +47 -0
  46. data/lib/appwrite/models/locale.rb +58 -3
  47. data/lib/appwrite/models/membership.rb +5 -0
  48. data/lib/appwrite/models/o_auth2_appwrite.rb +42 -0
  49. data/lib/appwrite/models/o_auth2_oidc.rb +13 -3
  50. data/lib/appwrite/models/oauth2_approve.rb +27 -0
  51. data/lib/appwrite/models/oauth2_authorize.rb +32 -0
  52. data/lib/appwrite/models/oauth2_consent.rb +72 -0
  53. data/lib/appwrite/models/oauth2_consent_list.rb +32 -0
  54. data/lib/appwrite/models/oauth2_consent_token.rb +77 -0
  55. data/lib/appwrite/models/oauth2_consent_token_list.rb +32 -0
  56. data/lib/appwrite/models/oauth2_device_authorization.rb +52 -0
  57. data/lib/appwrite/models/oauth2_grant.rb +82 -0
  58. data/lib/appwrite/models/{health_queue.rb → oauth2_organization.rb} +7 -7
  59. data/lib/appwrite/models/oauth2_organization_list.rb +32 -0
  60. data/lib/appwrite/models/oauth2_par.rb +32 -0
  61. data/lib/appwrite/models/oauth2_project.rb +37 -0
  62. data/lib/appwrite/models/oauth2_project_list.rb +32 -0
  63. data/lib/appwrite/models/oauth2_reject.rb +27 -0
  64. data/lib/appwrite/models/oauth2_token.rb +57 -0
  65. data/lib/appwrite/models/organization.rb +197 -0
  66. data/lib/appwrite/models/policy_deny_corporate_email.rb +32 -0
  67. data/lib/appwrite/models/policy_membership_privacy.rb +8 -3
  68. data/lib/appwrite/models/program.rb +67 -0
  69. data/lib/appwrite/models/project.rb +56 -11
  70. data/lib/appwrite/models/project_auth_method.rb +3 -3
  71. data/lib/appwrite/models/usage_billing_plan.rb +77 -0
  72. data/lib/appwrite/models/user.rb +25 -0
  73. data/lib/appwrite/query.rb +13 -1
  74. data/lib/appwrite/services/account.rb +251 -1
  75. data/lib/appwrite/services/activities.rb +2 -0
  76. data/lib/appwrite/services/advisor.rb +4 -0
  77. data/lib/appwrite/services/apps.rb +813 -0
  78. data/lib/appwrite/services/avatars.rb +8 -0
  79. data/lib/appwrite/services/backups.rb +38 -1
  80. data/lib/appwrite/services/databases.rb +107 -0
  81. data/lib/appwrite/services/functions.rb +30 -4
  82. data/lib/appwrite/services/graphql.rb +2 -0
  83. data/lib/appwrite/services/locale.rb +8 -0
  84. data/lib/appwrite/services/messaging.rb +42 -136
  85. data/lib/appwrite/services/oauth2.rb +525 -0
  86. data/lib/appwrite/services/organization.rb +436 -3
  87. data/lib/appwrite/services/presences.rb +4 -0
  88. data/lib/appwrite/services/project.rb +192 -9
  89. data/lib/appwrite/services/proxy.rb +7 -0
  90. data/lib/appwrite/services/sites.rb +28 -2
  91. data/lib/appwrite/services/storage.rb +11 -0
  92. data/lib/appwrite/services/tables_db.rb +201 -2
  93. data/lib/appwrite/services/teams.rb +209 -0
  94. data/lib/appwrite/services/tokens.rb +4 -0
  95. data/lib/appwrite/services/users.rb +38 -1
  96. data/lib/appwrite/services/webhooks.rb +5 -0
  97. data/lib/appwrite.rb +54 -15
  98. metadata +56 -17
  99. data/lib/appwrite/enums/health_antivirus_status.rb +0 -9
  100. data/lib/appwrite/enums/health_check_status.rb +0 -8
  101. data/lib/appwrite/enums/health_queue_name.rb +0 -19
  102. data/lib/appwrite/models/health_antivirus.rb +0 -49
  103. data/lib/appwrite/models/health_certificate.rb +0 -52
  104. data/lib/appwrite/models/health_status.rb +0 -53
  105. data/lib/appwrite/models/health_time.rb +0 -37
  106. data/lib/appwrite/models/usage_event.rb +0 -72
  107. data/lib/appwrite/models/usage_gauge.rb +0 -47
  108. data/lib/appwrite/services/health.rb +0 -681
  109. data/lib/appwrite/services/usage.rb +0 -88
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class AppInstallationList
6
+ attr_reader :total
7
+ attr_reader :installations
8
+
9
+ def initialize(
10
+ total:,
11
+ installations:
12
+ )
13
+ @total = total
14
+ @installations = installations
15
+ end
16
+
17
+ def self.from(map:)
18
+ AppInstallationList.new(
19
+ total: map["total"],
20
+ installations: map["installations"].map { |it| AppInstallation.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "total": @total,
27
+ "installations": @installations.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,67 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class AppKey
6
+ attr_reader :id
7
+ attr_reader :created_at
8
+ attr_reader :updated_at
9
+ attr_reader :app_id
10
+ attr_reader :secret
11
+ attr_reader :hint
12
+ attr_reader :created_by_id
13
+ attr_reader :created_by_name
14
+ attr_reader :last_accessed_at
15
+
16
+ def initialize(
17
+ id:,
18
+ created_at:,
19
+ updated_at:,
20
+ app_id:,
21
+ secret:,
22
+ hint:,
23
+ created_by_id:,
24
+ created_by_name:,
25
+ last_accessed_at:
26
+ )
27
+ @id = id
28
+ @created_at = created_at
29
+ @updated_at = updated_at
30
+ @app_id = app_id
31
+ @secret = secret
32
+ @hint = hint
33
+ @created_by_id = created_by_id
34
+ @created_by_name = created_by_name
35
+ @last_accessed_at = last_accessed_at
36
+ end
37
+
38
+ def self.from(map:)
39
+ AppKey.new(
40
+ id: map["$id"],
41
+ created_at: map["$createdAt"],
42
+ updated_at: map["$updatedAt"],
43
+ app_id: map["appId"],
44
+ secret: map["secret"],
45
+ hint: map["hint"],
46
+ created_by_id: map["createdById"],
47
+ created_by_name: map["createdByName"],
48
+ last_accessed_at: map["lastAccessedAt"]
49
+ )
50
+ end
51
+
52
+ def to_map
53
+ {
54
+ "$id": @id,
55
+ "$createdAt": @created_at,
56
+ "$updatedAt": @updated_at,
57
+ "appId": @app_id,
58
+ "secret": @secret,
59
+ "hint": @hint,
60
+ "createdById": @created_by_id,
61
+ "createdByName": @created_by_name,
62
+ "lastAccessedAt": @last_accessed_at
63
+ }
64
+ end
65
+ end
66
+ end
67
+ end
@@ -2,29 +2,29 @@
2
2
 
3
3
  module Appwrite
4
4
  module Models
5
- class UsageGaugeList
5
+ class AppKeyList
6
6
  attr_reader :total
7
- attr_reader :gauges
7
+ attr_reader :keys
8
8
 
9
9
  def initialize(
10
10
  total:,
11
- gauges:
11
+ keys:
12
12
  )
13
13
  @total = total
14
- @gauges = gauges
14
+ @keys = keys
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
- UsageGaugeList.new(
18
+ AppKeyList.new(
19
19
  total: map["total"],
20
- gauges: map["gauges"].map { |it| UsageGauge.from(map: it) }
20
+ keys: map["keys"].map { |it| AppKey.from(map: it) }
21
21
  )
22
22
  end
23
23
 
24
24
  def to_map
25
25
  {
26
26
  "total": @total,
27
- "gauges": @gauges.map { |it| it.to_map }
27
+ "keys": @keys.map { |it| it.to_map }
28
28
  }
29
29
  end
30
30
  end
@@ -0,0 +1,47 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class AppScope
6
+ attr_reader :value
7
+ attr_reader :description
8
+ attr_reader :type
9
+ attr_reader :category
10
+ attr_reader :deprecated
11
+
12
+ def initialize(
13
+ value:,
14
+ description:,
15
+ type:,
16
+ category:,
17
+ deprecated:
18
+ )
19
+ @value = value
20
+ @description = description
21
+ @type = type
22
+ @category = category
23
+ @deprecated = deprecated
24
+ end
25
+
26
+ def self.from(map:)
27
+ AppScope.new(
28
+ value: map["value"],
29
+ description: map["description"],
30
+ type: map["type"],
31
+ category: map["category"],
32
+ deprecated: map["deprecated"]
33
+ )
34
+ end
35
+
36
+ def to_map
37
+ {
38
+ "value": @value,
39
+ "description": @description,
40
+ "type": @type,
41
+ "category": @category,
42
+ "deprecated": @deprecated
43
+ }
44
+ end
45
+ end
46
+ end
47
+ end
@@ -2,29 +2,29 @@
2
2
 
3
3
  module Appwrite
4
4
  module Models
5
- class UsageEventList
5
+ class AppScopeList
6
6
  attr_reader :total
7
- attr_reader :events
7
+ attr_reader :scopes
8
8
 
9
9
  def initialize(
10
10
  total:,
11
- events:
11
+ scopes:
12
12
  )
13
13
  @total = total
14
- @events = events
14
+ @scopes = scopes
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
- UsageEventList.new(
18
+ AppScopeList.new(
19
19
  total: map["total"],
20
- events: map["events"].map { |it| UsageEvent.from(map: it) }
20
+ scopes: map["scopes"].map { |it| AppScope.from(map: it) }
21
21
  )
22
22
  end
23
23
 
24
24
  def to_map
25
25
  {
26
26
  "total": @total,
27
- "events": @events.map { |it| it.to_map }
27
+ "scopes": @scopes.map { |it| it.to_map }
28
28
  }
29
29
  end
30
30
  end
@@ -0,0 +1,67 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class AppSecret
6
+ attr_reader :id
7
+ attr_reader :created_at
8
+ attr_reader :updated_at
9
+ attr_reader :app_id
10
+ attr_reader :secret
11
+ attr_reader :hint
12
+ attr_reader :created_by_id
13
+ attr_reader :created_by_name
14
+ attr_reader :last_accessed_at
15
+
16
+ def initialize(
17
+ id:,
18
+ created_at:,
19
+ updated_at:,
20
+ app_id:,
21
+ secret:,
22
+ hint:,
23
+ created_by_id:,
24
+ created_by_name:,
25
+ last_accessed_at:
26
+ )
27
+ @id = id
28
+ @created_at = created_at
29
+ @updated_at = updated_at
30
+ @app_id = app_id
31
+ @secret = secret
32
+ @hint = hint
33
+ @created_by_id = created_by_id
34
+ @created_by_name = created_by_name
35
+ @last_accessed_at = last_accessed_at
36
+ end
37
+
38
+ def self.from(map:)
39
+ AppSecret.new(
40
+ id: map["$id"],
41
+ created_at: map["$createdAt"],
42
+ updated_at: map["$updatedAt"],
43
+ app_id: map["appId"],
44
+ secret: map["secret"],
45
+ hint: map["hint"],
46
+ created_by_id: map["createdById"],
47
+ created_by_name: map["createdByName"],
48
+ last_accessed_at: map["lastAccessedAt"]
49
+ )
50
+ end
51
+
52
+ def to_map
53
+ {
54
+ "$id": @id,
55
+ "$createdAt": @created_at,
56
+ "$updatedAt": @updated_at,
57
+ "appId": @app_id,
58
+ "secret": @secret,
59
+ "hint": @hint,
60
+ "createdById": @created_by_id,
61
+ "createdByName": @created_by_name,
62
+ "lastAccessedAt": @last_accessed_at
63
+ }
64
+ end
65
+ end
66
+ end
67
+ end
@@ -2,29 +2,29 @@
2
2
 
3
3
  module Appwrite
4
4
  module Models
5
- class HealthStatusList
5
+ class AppSecretList
6
6
  attr_reader :total
7
- attr_reader :statuses
7
+ attr_reader :secrets
8
8
 
9
9
  def initialize(
10
10
  total:,
11
- statuses:
11
+ secrets:
12
12
  )
13
13
  @total = total
14
- @statuses = statuses
14
+ @secrets = secrets
15
15
  end
16
16
 
17
17
  def self.from(map:)
18
- HealthStatusList.new(
18
+ AppSecretList.new(
19
19
  total: map["total"],
20
- statuses: map["statuses"].map { |it| HealthStatus.from(map: it) }
20
+ secrets: map["secrets"].map { |it| AppSecret.from(map: it) }
21
21
  )
22
22
  end
23
23
 
24
24
  def to_map
25
25
  {
26
26
  "total": @total,
27
- "statuses": @statuses.map { |it| it.to_map }
27
+ "secrets": @secrets.map { |it| it.to_map }
28
28
  }
29
29
  end
30
30
  end
@@ -0,0 +1,67 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class AppSecretPlaintext
6
+ attr_reader :id
7
+ attr_reader :created_at
8
+ attr_reader :updated_at
9
+ attr_reader :app_id
10
+ attr_reader :secret
11
+ attr_reader :hint
12
+ attr_reader :created_by_id
13
+ attr_reader :created_by_name
14
+ attr_reader :last_accessed_at
15
+
16
+ def initialize(
17
+ id:,
18
+ created_at:,
19
+ updated_at:,
20
+ app_id:,
21
+ secret:,
22
+ hint:,
23
+ created_by_id:,
24
+ created_by_name:,
25
+ last_accessed_at:
26
+ )
27
+ @id = id
28
+ @created_at = created_at
29
+ @updated_at = updated_at
30
+ @app_id = app_id
31
+ @secret = secret
32
+ @hint = hint
33
+ @created_by_id = created_by_id
34
+ @created_by_name = created_by_name
35
+ @last_accessed_at = last_accessed_at
36
+ end
37
+
38
+ def self.from(map:)
39
+ AppSecretPlaintext.new(
40
+ id: map["$id"],
41
+ created_at: map["$createdAt"],
42
+ updated_at: map["$updatedAt"],
43
+ app_id: map["appId"],
44
+ secret: map["secret"],
45
+ hint: map["hint"],
46
+ created_by_id: map["createdById"],
47
+ created_by_name: map["createdByName"],
48
+ last_accessed_at: map["lastAccessedAt"]
49
+ )
50
+ end
51
+
52
+ def to_map
53
+ {
54
+ "$id": @id,
55
+ "$createdAt": @created_at,
56
+ "$updatedAt": @updated_at,
57
+ "appId": @app_id,
58
+ "secret": @secret,
59
+ "hint": @hint,
60
+ "createdById": @created_by_id,
61
+ "createdByName": @created_by_name,
62
+ "lastAccessedAt": @last_accessed_at
63
+ }
64
+ end
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class AppsList
6
+ attr_reader :total
7
+ attr_reader :apps
8
+
9
+ def initialize(
10
+ total:,
11
+ apps:
12
+ )
13
+ @total = total
14
+ @apps = apps
15
+ end
16
+
17
+ def self.from(map:)
18
+ AppsList.new(
19
+ total: map["total"],
20
+ apps: map["apps"].map { |it| App.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "total": @total,
27
+ "apps": @apps.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -13,6 +13,7 @@ module Appwrite
13
13
  attr_reader :resource_type
14
14
  attr_reader :retention
15
15
  attr_reader :schedule
16
+ attr_reader :type
16
17
  attr_reader :enabled
17
18
 
18
19
  def initialize(
@@ -26,6 +27,7 @@ module Appwrite
26
27
  resource_type: ,
27
28
  retention:,
28
29
  schedule:,
30
+ type:,
29
31
  enabled:
30
32
  )
31
33
  @id = id
@@ -38,6 +40,7 @@ module Appwrite
38
40
  @resource_type = resource_type
39
41
  @retention = retention
40
42
  @schedule = schedule
43
+ @type = type
41
44
  @enabled = enabled
42
45
  end
43
46
 
@@ -53,6 +56,7 @@ module Appwrite
53
56
  resource_type: map["resourceType"],
54
57
  retention: map["retention"],
55
58
  schedule: map["schedule"],
59
+ type: map["type"],
56
60
  enabled: map["enabled"]
57
61
  )
58
62
  end
@@ -69,6 +73,7 @@ module Appwrite
69
73
  "resourceType": @resource_type,
70
74
  "retention": @retention,
71
75
  "schedule": @schedule,
76
+ "type": @type,
72
77
  "enabled": @enabled
73
78
  }
74
79
  end