appwrite 11.0.2 → 13.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.

Potentially problematic release.


This version of appwrite might be problematic. Click here for more details.

Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +54 -76
  3. data/lib/appwrite/enums/image_format.rb +1 -0
  4. data/lib/appwrite/enums/name.rb +1 -2
  5. data/lib/appwrite/enums/runtime.rb +4 -0
  6. data/lib/appwrite/models/attribute_boolean.rb +10 -0
  7. data/lib/appwrite/models/attribute_datetime.rb +10 -0
  8. data/lib/appwrite/models/attribute_email.rb +10 -0
  9. data/lib/appwrite/models/attribute_enum.rb +10 -0
  10. data/lib/appwrite/models/attribute_float.rb +10 -0
  11. data/lib/appwrite/models/attribute_integer.rb +10 -0
  12. data/lib/appwrite/models/attribute_ip.rb +10 -0
  13. data/lib/appwrite/models/attribute_relationship.rb +10 -0
  14. data/lib/appwrite/models/attribute_string.rb +10 -0
  15. data/lib/appwrite/models/attribute_url.rb +10 -0
  16. data/lib/appwrite/models/build.rb +67 -0
  17. data/lib/appwrite/models/deployment.rb +5 -0
  18. data/lib/appwrite/models/document.rb +4 -9
  19. data/lib/appwrite/models/document_list.rb +1 -2
  20. data/lib/appwrite/models/execution.rb +8 -3
  21. data/lib/appwrite/models/function.rb +13 -3
  22. data/lib/appwrite/models/index.rb +13 -3
  23. data/lib/appwrite/models/preferences.rb +4 -9
  24. data/lib/appwrite/models/runtime.rb +5 -0
  25. data/lib/appwrite/models/specification.rb +42 -0
  26. data/lib/appwrite/models/specification_list.rb +32 -0
  27. data/lib/appwrite/multipart.rb +127 -0
  28. data/lib/appwrite/payload.rb +94 -0
  29. data/lib/appwrite/services/account.rb +52 -58
  30. data/lib/appwrite/services/avatars.rb +23 -21
  31. data/lib/appwrite/services/databases.rb +136 -114
  32. data/lib/appwrite/services/functions.rb +174 -72
  33. data/lib/appwrite/services/graphql.rb +2 -2
  34. data/lib/appwrite/services/health.rb +15 -15
  35. data/lib/appwrite/services/messaging.rb +225 -225
  36. data/lib/appwrite/services/storage.rb +40 -40
  37. data/lib/appwrite/services/teams.rb +19 -19
  38. data/lib/appwrite/services/users.rb +104 -68
  39. data/lib/appwrite.rb +5 -1
  40. metadata +7 -3
  41. data/lib/appwrite/input_file.rb +0 -33
@@ -9,6 +9,8 @@ module Appwrite
9
9
  attr_reader :error
10
10
  attr_reader :required
11
11
  attr_reader :array
12
+ attr_reader :created_at
13
+ attr_reader :updated_at
12
14
  attr_reader :size
13
15
  attr_reader :default
14
16
 
@@ -19,6 +21,8 @@ module Appwrite
19
21
  error:,
20
22
  required:,
21
23
  array: ,
24
+ created_at:,
25
+ updated_at:,
22
26
  size:,
23
27
  default:
24
28
  )
@@ -28,6 +32,8 @@ module Appwrite
28
32
  @error = error
29
33
  @required = required
30
34
  @array = array
35
+ @created_at = created_at
36
+ @updated_at = updated_at
31
37
  @size = size
32
38
  @default = default
33
39
  end
@@ -40,6 +46,8 @@ module Appwrite
40
46
  error: map["error"],
41
47
  required: map["required"],
42
48
  array: map["array"],
49
+ created_at: map["$createdAt"],
50
+ updated_at: map["$updatedAt"],
43
51
  size: map["size"],
44
52
  default: map["default"]
45
53
  )
@@ -53,6 +61,8 @@ module Appwrite
53
61
  "error": @error,
54
62
  "required": @required,
55
63
  "array": @array,
64
+ "$createdAt": @created_at,
65
+ "$updatedAt": @updated_at,
56
66
  "size": @size,
57
67
  "default": @default
58
68
  }
@@ -9,6 +9,8 @@ module Appwrite
9
9
  attr_reader :error
10
10
  attr_reader :required
11
11
  attr_reader :array
12
+ attr_reader :created_at
13
+ attr_reader :updated_at
12
14
  attr_reader :format
13
15
  attr_reader :default
14
16
 
@@ -19,6 +21,8 @@ module Appwrite
19
21
  error:,
20
22
  required:,
21
23
  array: ,
24
+ created_at:,
25
+ updated_at:,
22
26
  format:,
23
27
  default:
24
28
  )
@@ -28,6 +32,8 @@ module Appwrite
28
32
  @error = error
29
33
  @required = required
30
34
  @array = array
35
+ @created_at = created_at
36
+ @updated_at = updated_at
31
37
  @format = format
32
38
  @default = default
33
39
  end
@@ -40,6 +46,8 @@ module Appwrite
40
46
  error: map["error"],
41
47
  required: map["required"],
42
48
  array: map["array"],
49
+ created_at: map["$createdAt"],
50
+ updated_at: map["$updatedAt"],
43
51
  format: map["format"],
44
52
  default: map["default"]
45
53
  )
@@ -53,6 +61,8 @@ module Appwrite
53
61
  "error": @error,
54
62
  "required": @required,
55
63
  "array": @array,
64
+ "$createdAt": @created_at,
65
+ "$updatedAt": @updated_at,
56
66
  "format": @format,
57
67
  "default": @default
58
68
  }
@@ -0,0 +1,67 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Build
6
+ attr_reader :id
7
+ attr_reader :deployment_id
8
+ attr_reader :status
9
+ attr_reader :stdout
10
+ attr_reader :stderr
11
+ attr_reader :start_time
12
+ attr_reader :end_time
13
+ attr_reader :duration
14
+ attr_reader :size
15
+
16
+ def initialize(
17
+ id:,
18
+ deployment_id:,
19
+ status:,
20
+ stdout:,
21
+ stderr:,
22
+ start_time:,
23
+ end_time:,
24
+ duration:,
25
+ size:
26
+ )
27
+ @id = id
28
+ @deployment_id = deployment_id
29
+ @status = status
30
+ @stdout = stdout
31
+ @stderr = stderr
32
+ @start_time = start_time
33
+ @end_time = end_time
34
+ @duration = duration
35
+ @size = size
36
+ end
37
+
38
+ def self.from(map:)
39
+ Build.new(
40
+ id: map["$id"],
41
+ deployment_id: map["deploymentId"],
42
+ status: map["status"],
43
+ stdout: map["stdout"],
44
+ stderr: map["stderr"],
45
+ start_time: map["startTime"],
46
+ end_time: map["endTime"],
47
+ duration: map["duration"],
48
+ size: map["size"]
49
+ )
50
+ end
51
+
52
+ def to_map
53
+ {
54
+ "$id": @id,
55
+ "deploymentId": @deployment_id,
56
+ "status": @status,
57
+ "stdout": @stdout,
58
+ "stderr": @stderr,
59
+ "startTime": @start_time,
60
+ "endTime": @end_time,
61
+ "duration": @duration,
62
+ "size": @size
63
+ }
64
+ end
65
+ end
66
+ end
67
+ end
@@ -11,6 +11,7 @@ module Appwrite
11
11
  attr_reader :resource_type
12
12
  attr_reader :entrypoint
13
13
  attr_reader :size
14
+ attr_reader :build_size
14
15
  attr_reader :build_id
15
16
  attr_reader :activate
16
17
  attr_reader :status
@@ -36,6 +37,7 @@ module Appwrite
36
37
  resource_type:,
37
38
  entrypoint:,
38
39
  size:,
40
+ build_size:,
39
41
  build_id:,
40
42
  activate:,
41
43
  status:,
@@ -60,6 +62,7 @@ module Appwrite
60
62
  @resource_type = resource_type
61
63
  @entrypoint = entrypoint
62
64
  @size = size
65
+ @build_size = build_size
63
66
  @build_id = build_id
64
67
  @activate = activate
65
68
  @status = status
@@ -87,6 +90,7 @@ module Appwrite
87
90
  resource_type: map["resourceType"],
88
91
  entrypoint: map["entrypoint"],
89
92
  size: map["size"],
93
+ build_size: map["buildSize"],
90
94
  build_id: map["buildId"],
91
95
  activate: map["activate"],
92
96
  status: map["status"],
@@ -115,6 +119,7 @@ module Appwrite
115
119
  "resourceType": @resource_type,
116
120
  "entrypoint": @entrypoint,
117
121
  "size": @size,
122
+ "buildSize": @build_size,
118
123
  "buildId": @build_id,
119
124
  "activate": @activate,
120
125
  "status": @status,
@@ -10,7 +10,6 @@ module Appwrite
10
10
  attr_reader :updated_at
11
11
  attr_reader :permissions
12
12
  attr_reader :data
13
-
14
13
  def initialize(
15
14
  id:,
16
15
  collection_id:,
@@ -18,16 +17,14 @@ module Appwrite
18
17
  created_at:,
19
18
  updated_at:,
20
19
  permissions:,
21
- data:
22
- )
20
+ data: )
23
21
  @id = id
24
22
  @collection_id = collection_id
25
23
  @database_id = database_id
26
24
  @created_at = created_at
27
25
  @updated_at = updated_at
28
26
  @permissions = permissions
29
- @data = data
30
- end
27
+ @data = data end
31
28
 
32
29
  def self.from(map:)
33
30
  Document.new(
@@ -37,8 +34,7 @@ module Appwrite
37
34
  created_at: map["$createdAt"],
38
35
  updated_at: map["$updatedAt"],
39
36
  permissions: map["$permissions"],
40
- data: map
41
- )
37
+ data: map )
42
38
  end
43
39
 
44
40
  def to_map
@@ -49,8 +45,7 @@ module Appwrite
49
45
  "$createdAt": @created_at,
50
46
  "$updatedAt": @updated_at,
51
47
  "$permissions": @permissions,
52
- "data": @data
53
- }
48
+ "data": @data }
54
49
  end
55
50
 
56
51
  def convert_to(from_json)
@@ -30,7 +30,6 @@ module Appwrite
30
30
 
31
31
  def convert_to(from_json)
32
32
  documents.map { |it| it.convert_to(from_json) }
33
- end
34
- end
33
+ end end
35
34
  end
36
35
  end
@@ -19,6 +19,7 @@ module Appwrite
19
19
  attr_reader :logs
20
20
  attr_reader :errors
21
21
  attr_reader :duration
22
+ attr_reader :scheduled_at
22
23
 
23
24
  def initialize(
24
25
  id:,
@@ -36,7 +37,8 @@ module Appwrite
36
37
  response_headers:,
37
38
  logs:,
38
39
  errors:,
39
- duration:
40
+ duration:,
41
+ scheduled_at:
40
42
  )
41
43
  @id = id
42
44
  @created_at = created_at
@@ -54,6 +56,7 @@ module Appwrite
54
56
  @logs = logs
55
57
  @errors = errors
56
58
  @duration = duration
59
+ @scheduled_at = scheduled_at
57
60
  end
58
61
 
59
62
  def self.from(map:)
@@ -73,7 +76,8 @@ module Appwrite
73
76
  response_headers: map["responseHeaders"].map { |it| Headers.from(map: it) },
74
77
  logs: map["logs"],
75
78
  errors: map["errors"],
76
- duration: map["duration"]
79
+ duration: map["duration"],
80
+ scheduled_at: map["scheduledAt"]
77
81
  )
78
82
  end
79
83
 
@@ -94,7 +98,8 @@ module Appwrite
94
98
  "responseHeaders": @response_headers.map { |it| it.to_map },
95
99
  "logs": @logs,
96
100
  "errors": @errors,
97
- "duration": @duration
101
+ "duration": @duration,
102
+ "scheduledAt": @scheduled_at
98
103
  }
99
104
  end
100
105
  end
@@ -13,6 +13,7 @@ module Appwrite
13
13
  attr_reader :logging
14
14
  attr_reader :runtime
15
15
  attr_reader :deployment
16
+ attr_reader :scopes
16
17
  attr_reader :vars
17
18
  attr_reader :events
18
19
  attr_reader :schedule
@@ -25,6 +26,7 @@ module Appwrite
25
26
  attr_reader :provider_branch
26
27
  attr_reader :provider_root_directory
27
28
  attr_reader :provider_silent_mode
29
+ attr_reader :specification
28
30
 
29
31
  def initialize(
30
32
  id:,
@@ -37,6 +39,7 @@ module Appwrite
37
39
  logging:,
38
40
  runtime:,
39
41
  deployment:,
42
+ scopes:,
40
43
  vars:,
41
44
  events:,
42
45
  schedule:,
@@ -48,7 +51,8 @@ module Appwrite
48
51
  provider_repository_id:,
49
52
  provider_branch:,
50
53
  provider_root_directory:,
51
- provider_silent_mode:
54
+ provider_silent_mode:,
55
+ specification:
52
56
  )
53
57
  @id = id
54
58
  @created_at = created_at
@@ -60,6 +64,7 @@ module Appwrite
60
64
  @logging = logging
61
65
  @runtime = runtime
62
66
  @deployment = deployment
67
+ @scopes = scopes
63
68
  @vars = vars
64
69
  @events = events
65
70
  @schedule = schedule
@@ -72,6 +77,7 @@ module Appwrite
72
77
  @provider_branch = provider_branch
73
78
  @provider_root_directory = provider_root_directory
74
79
  @provider_silent_mode = provider_silent_mode
80
+ @specification = specification
75
81
  end
76
82
 
77
83
  def self.from(map:)
@@ -86,6 +92,7 @@ module Appwrite
86
92
  logging: map["logging"],
87
93
  runtime: map["runtime"],
88
94
  deployment: map["deployment"],
95
+ scopes: map["scopes"],
89
96
  vars: map["vars"].map { |it| Variable.from(map: it) },
90
97
  events: map["events"],
91
98
  schedule: map["schedule"],
@@ -97,7 +104,8 @@ module Appwrite
97
104
  provider_repository_id: map["providerRepositoryId"],
98
105
  provider_branch: map["providerBranch"],
99
106
  provider_root_directory: map["providerRootDirectory"],
100
- provider_silent_mode: map["providerSilentMode"]
107
+ provider_silent_mode: map["providerSilentMode"],
108
+ specification: map["specification"]
101
109
  )
102
110
  end
103
111
 
@@ -113,6 +121,7 @@ module Appwrite
113
121
  "logging": @logging,
114
122
  "runtime": @runtime,
115
123
  "deployment": @deployment,
124
+ "scopes": @scopes,
116
125
  "vars": @vars.map { |it| it.to_map },
117
126
  "events": @events,
118
127
  "schedule": @schedule,
@@ -124,7 +133,8 @@ module Appwrite
124
133
  "providerRepositoryId": @provider_repository_id,
125
134
  "providerBranch": @provider_branch,
126
135
  "providerRootDirectory": @provider_root_directory,
127
- "providerSilentMode": @provider_silent_mode
136
+ "providerSilentMode": @provider_silent_mode,
137
+ "specification": @specification
128
138
  }
129
139
  end
130
140
  end
@@ -9,6 +9,8 @@ module Appwrite
9
9
  attr_reader :error
10
10
  attr_reader :attributes
11
11
  attr_reader :orders
12
+ attr_reader :created_at
13
+ attr_reader :updated_at
12
14
 
13
15
  def initialize(
14
16
  key:,
@@ -16,7 +18,9 @@ module Appwrite
16
18
  status:,
17
19
  error:,
18
20
  attributes:,
19
- orders:
21
+ orders: ,
22
+ created_at:,
23
+ updated_at:
20
24
  )
21
25
  @key = key
22
26
  @type = type
@@ -24,6 +28,8 @@ module Appwrite
24
28
  @error = error
25
29
  @attributes = attributes
26
30
  @orders = orders
31
+ @created_at = created_at
32
+ @updated_at = updated_at
27
33
  end
28
34
 
29
35
  def self.from(map:)
@@ -33,7 +39,9 @@ module Appwrite
33
39
  status: map["status"],
34
40
  error: map["error"],
35
41
  attributes: map["attributes"],
36
- orders: map["orders"]
42
+ orders: map["orders"],
43
+ created_at: map["$createdAt"],
44
+ updated_at: map["$updatedAt"]
37
45
  )
38
46
  end
39
47
 
@@ -44,7 +52,9 @@ module Appwrite
44
52
  "status": @status,
45
53
  "error": @error,
46
54
  "attributes": @attributes,
47
- "orders": @orders
55
+ "orders": @orders,
56
+ "$createdAt": @created_at,
57
+ "$updatedAt": @updated_at
48
58
  }
49
59
  end
50
60
  end
@@ -4,23 +4,18 @@ module Appwrite
4
4
  module Models
5
5
  class Preferences
6
6
  attr_reader :data
7
-
8
7
  def initialize(
9
- data:
10
- )
11
- @data = data
12
- end
8
+ data: )
9
+ @data = data end
13
10
 
14
11
  def self.from(map:)
15
12
  Preferences.new(
16
- data: map
17
- )
13
+ data: map )
18
14
  end
19
15
 
20
16
  def to_map
21
17
  {
22
- "data": @data
23
- }
18
+ "data": @data }
24
19
  end
25
20
 
26
21
  def convert_to(from_json)
@@ -4,6 +4,7 @@ module Appwrite
4
4
  module Models
5
5
  class Runtime
6
6
  attr_reader :id
7
+ attr_reader :key
7
8
  attr_reader :name
8
9
  attr_reader :version
9
10
  attr_reader :base
@@ -13,6 +14,7 @@ module Appwrite
13
14
 
14
15
  def initialize(
15
16
  id:,
17
+ key:,
16
18
  name:,
17
19
  version:,
18
20
  base:,
@@ -21,6 +23,7 @@ module Appwrite
21
23
  supports:
22
24
  )
23
25
  @id = id
26
+ @key = key
24
27
  @name = name
25
28
  @version = version
26
29
  @base = base
@@ -32,6 +35,7 @@ module Appwrite
32
35
  def self.from(map:)
33
36
  Runtime.new(
34
37
  id: map["$id"],
38
+ key: map["key"],
35
39
  name: map["name"],
36
40
  version: map["version"],
37
41
  base: map["base"],
@@ -44,6 +48,7 @@ module Appwrite
44
48
  def to_map
45
49
  {
46
50
  "$id": @id,
51
+ "key": @key,
47
52
  "name": @name,
48
53
  "version": @version,
49
54
  "base": @base,
@@ -0,0 +1,42 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class Specification
6
+ attr_reader :memory
7
+ attr_reader :cpus
8
+ attr_reader :enabled
9
+ attr_reader :slug
10
+
11
+ def initialize(
12
+ memory:,
13
+ cpus:,
14
+ enabled:,
15
+ slug:
16
+ )
17
+ @memory = memory
18
+ @cpus = cpus
19
+ @enabled = enabled
20
+ @slug = slug
21
+ end
22
+
23
+ def self.from(map:)
24
+ Specification.new(
25
+ memory: map["memory"],
26
+ cpus: map["cpus"],
27
+ enabled: map["enabled"],
28
+ slug: map["slug"]
29
+ )
30
+ end
31
+
32
+ def to_map
33
+ {
34
+ "memory": @memory,
35
+ "cpus": @cpus,
36
+ "enabled": @enabled,
37
+ "slug": @slug
38
+ }
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class SpecificationList
6
+ attr_reader :total
7
+ attr_reader :specifications
8
+
9
+ def initialize(
10
+ total:,
11
+ specifications:
12
+ )
13
+ @total = total
14
+ @specifications = specifications
15
+ end
16
+
17
+ def self.from(map:)
18
+ SpecificationList.new(
19
+ total: map["total"],
20
+ specifications: map["specifications"].map { |it| Specification.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "total": @total,
27
+ "specifications": @specifications.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end