appwrite 16.0.0 → 17.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +2 -2
  3. data/lib/appwrite/enums/build_runtime.rb +2 -0
  4. data/lib/appwrite/enums/image_format.rb +1 -0
  5. data/lib/appwrite/enums/runtime.rb +2 -0
  6. data/lib/appwrite/models/attribute_string.rb +8 -3
  7. data/lib/appwrite/models/column_boolean.rb +67 -0
  8. data/lib/appwrite/models/column_datetime.rb +72 -0
  9. data/lib/appwrite/models/column_email.rb +72 -0
  10. data/lib/appwrite/models/column_enum.rb +77 -0
  11. data/lib/appwrite/models/column_float.rb +77 -0
  12. data/lib/appwrite/models/column_index.rb +72 -0
  13. data/lib/appwrite/models/column_index_list.rb +32 -0
  14. data/lib/appwrite/models/column_integer.rb +77 -0
  15. data/lib/appwrite/models/column_ip.rb +72 -0
  16. data/lib/appwrite/models/column_list.rb +32 -0
  17. data/lib/appwrite/models/column_relationship.rb +92 -0
  18. data/lib/appwrite/models/column_string.rb +77 -0
  19. data/lib/appwrite/models/column_url.rb +72 -0
  20. data/lib/appwrite/models/database.rb +8 -3
  21. data/lib/appwrite/models/document.rb +5 -0
  22. data/lib/appwrite/models/execution.rb +5 -0
  23. data/lib/appwrite/models/index.rb +18 -13
  24. data/lib/appwrite/models/row.rb +66 -0
  25. data/lib/appwrite/models/row_list.rb +36 -0
  26. data/lib/appwrite/models/table.rb +72 -0
  27. data/lib/appwrite/models/table_list.rb +32 -0
  28. data/lib/appwrite/query.rb +36 -0
  29. data/lib/appwrite/services/account.rb +15 -48
  30. data/lib/appwrite/services/avatars.rb +0 -7
  31. data/lib/appwrite/services/databases.rb +356 -97
  32. data/lib/appwrite/services/functions.rb +0 -26
  33. data/lib/appwrite/services/graphql.rb +0 -2
  34. data/lib/appwrite/services/health.rb +0 -22
  35. data/lib/appwrite/services/locale.rb +0 -8
  36. data/lib/appwrite/services/messaging.rb +0 -46
  37. data/lib/appwrite/services/sites.rb +0 -25
  38. data/lib/appwrite/services/storage.rb +0 -13
  39. data/lib/appwrite/services/tables_db.rb +2318 -0
  40. data/lib/appwrite/services/teams.rb +0 -13
  41. data/lib/appwrite/services/tokens.rb +1 -6
  42. data/lib/appwrite/services/users.rb +1 -43
  43. data/lib/appwrite.rb +18 -0
  44. metadata +20 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 74029806cde14021311f40f48adfede60c9d3e1ae52ebbe04f48dbed5abe022f
4
- data.tar.gz: 7494ff3488db66c5b45d4fe0af6fc75ec4bc2e89a6146938d39f12db244da72a
3
+ metadata.gz: 804930b89ed7f912408660f9bfa295452b67ea0d0589c4f987dc08cf69211945
4
+ data.tar.gz: 0e91bd7bdfdc10360f9741f445f2bc75bf6617f0f0a60f8603a0546ad91911bb
5
5
  SHA512:
6
- metadata.gz: 40688ce1eb9301bfbb0d722ad8ce3e2ca0930b3f069bdd9684e8703c923a45020a52d050aed6d75f9619b8f1e2e107f79ebec9e6809c4d6f623d8a23bf4a7952
7
- data.tar.gz: a3a5c89b3f1489aa616272691b9c3d763bca0716fdf1dda57eb03a3c21dc06b7e736365de548dc27aaa6895b232edd6f35fb01a0d5f51fc7f88b53448e777413
6
+ metadata.gz: 130e16b783f9b16cc176aed461eb401a4372b15c26fbbcd943f0b9e41ca13eacc2ae14f3a91261433d028c6241e67ebf6c004e26c8eff5c3c0e4afa91975a8ee
7
+ data.tar.gz: f616ba9aa5b89f95ee808d012560a579d529cf8c9d29e469cc10c58304795cb9b224a67ea9db8409b0c586922a9dfa9a1458802bf8fc2343c9bcb358de62ddf0
@@ -15,8 +15,8 @@ module Appwrite
15
15
  'x-sdk-name'=> 'Ruby',
16
16
  'x-sdk-platform'=> 'server',
17
17
  'x-sdk-language'=> 'ruby',
18
- 'x-sdk-version'=> '16.0.0',
19
- 'X-Appwrite-Response-Format' => '1.7.0'
18
+ 'x-sdk-version'=> '17.0.0',
19
+ 'X-Appwrite-Response-Format' => '1.8.0'
20
20
  }
21
21
  @endpoint = 'https://cloud.appwrite.io/v1'
22
22
  end
@@ -38,6 +38,7 @@ module Appwrite
38
38
  DART_3_1 = 'dart-3.1'
39
39
  DART_3_3 = 'dart-3.3'
40
40
  DART_3_5 = 'dart-3.5'
41
+ DART_3_8 = 'dart-3.8'
41
42
  DOTNET_6_0 = 'dotnet-6.0'
42
43
  DOTNET_7_0 = 'dotnet-7.0'
43
44
  DOTNET_8_0 = 'dotnet-8.0'
@@ -64,6 +65,7 @@ module Appwrite
64
65
  FLUTTER_3_24 = 'flutter-3.24'
65
66
  FLUTTER_3_27 = 'flutter-3.27'
66
67
  FLUTTER_3_29 = 'flutter-3.29'
68
+ FLUTTER_3_32 = 'flutter-3.32'
67
69
  end
68
70
  end
69
71
  end
@@ -7,6 +7,7 @@ module Appwrite
7
7
  WEBP = 'webp'
8
8
  HEIC = 'heic'
9
9
  AVIF = 'avif'
10
+ GIF = 'gif'
10
11
  end
11
12
  end
12
13
  end
@@ -38,6 +38,7 @@ module Appwrite
38
38
  DART_3_1 = 'dart-3.1'
39
39
  DART_3_3 = 'dart-3.3'
40
40
  DART_3_5 = 'dart-3.5'
41
+ DART_3_8 = 'dart-3.8'
41
42
  DOTNET_6_0 = 'dotnet-6.0'
42
43
  DOTNET_7_0 = 'dotnet-7.0'
43
44
  DOTNET_8_0 = 'dotnet-8.0'
@@ -64,6 +65,7 @@ module Appwrite
64
65
  FLUTTER_3_24 = 'flutter-3.24'
65
66
  FLUTTER_3_27 = 'flutter-3.27'
66
67
  FLUTTER_3_29 = 'flutter-3.29'
68
+ FLUTTER_3_32 = 'flutter-3.32'
67
69
  end
68
70
  end
69
71
  end
@@ -13,6 +13,7 @@ module Appwrite
13
13
  attr_reader :updated_at
14
14
  attr_reader :size
15
15
  attr_reader :default
16
+ attr_reader :encrypt
16
17
 
17
18
  def initialize(
18
19
  key:,
@@ -24,7 +25,8 @@ module Appwrite
24
25
  created_at:,
25
26
  updated_at:,
26
27
  size:,
27
- default:
28
+ default: ,
29
+ encrypt:
28
30
  )
29
31
  @key = key
30
32
  @type = type
@@ -36,6 +38,7 @@ module Appwrite
36
38
  @updated_at = updated_at
37
39
  @size = size
38
40
  @default = default
41
+ @encrypt = encrypt
39
42
  end
40
43
 
41
44
  def self.from(map:)
@@ -49,7 +52,8 @@ module Appwrite
49
52
  created_at: map["$createdAt"],
50
53
  updated_at: map["$updatedAt"],
51
54
  size: map["size"],
52
- default: map["default"]
55
+ default: map["default"],
56
+ encrypt: map["encrypt"]
53
57
  )
54
58
  end
55
59
 
@@ -64,7 +68,8 @@ module Appwrite
64
68
  "$createdAt": @created_at,
65
69
  "$updatedAt": @updated_at,
66
70
  "size": @size,
67
- "default": @default
71
+ "default": @default,
72
+ "encrypt": @encrypt
68
73
  }
69
74
  end
70
75
  end
@@ -0,0 +1,67 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class ColumnBoolean
6
+ attr_reader :key
7
+ attr_reader :type
8
+ attr_reader :status
9
+ attr_reader :error
10
+ attr_reader :required
11
+ attr_reader :array
12
+ attr_reader :created_at
13
+ attr_reader :updated_at
14
+ attr_reader :default
15
+
16
+ def initialize(
17
+ key:,
18
+ type:,
19
+ status:,
20
+ error:,
21
+ required:,
22
+ array: ,
23
+ created_at:,
24
+ updated_at:,
25
+ default:
26
+ )
27
+ @key = key
28
+ @type = type
29
+ @status = status
30
+ @error = error
31
+ @required = required
32
+ @array = array
33
+ @created_at = created_at
34
+ @updated_at = updated_at
35
+ @default = default
36
+ end
37
+
38
+ def self.from(map:)
39
+ ColumnBoolean.new(
40
+ key: map["key"],
41
+ type: map["type"],
42
+ status: map["status"],
43
+ error: map["error"],
44
+ required: map["required"],
45
+ array: map["array"],
46
+ created_at: map["$createdAt"],
47
+ updated_at: map["$updatedAt"],
48
+ default: map["default"]
49
+ )
50
+ end
51
+
52
+ def to_map
53
+ {
54
+ "key": @key,
55
+ "type": @type,
56
+ "status": @status,
57
+ "error": @error,
58
+ "required": @required,
59
+ "array": @array,
60
+ "$createdAt": @created_at,
61
+ "$updatedAt": @updated_at,
62
+ "default": @default
63
+ }
64
+ end
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,72 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class ColumnDatetime
6
+ attr_reader :key
7
+ attr_reader :type
8
+ attr_reader :status
9
+ attr_reader :error
10
+ attr_reader :required
11
+ attr_reader :array
12
+ attr_reader :created_at
13
+ attr_reader :updated_at
14
+ attr_reader :format
15
+ attr_reader :default
16
+
17
+ def initialize(
18
+ key:,
19
+ type:,
20
+ status:,
21
+ error:,
22
+ required:,
23
+ array: ,
24
+ created_at:,
25
+ updated_at:,
26
+ format:,
27
+ default:
28
+ )
29
+ @key = key
30
+ @type = type
31
+ @status = status
32
+ @error = error
33
+ @required = required
34
+ @array = array
35
+ @created_at = created_at
36
+ @updated_at = updated_at
37
+ @format = format
38
+ @default = default
39
+ end
40
+
41
+ def self.from(map:)
42
+ ColumnDatetime.new(
43
+ key: map["key"],
44
+ type: map["type"],
45
+ status: map["status"],
46
+ error: map["error"],
47
+ required: map["required"],
48
+ array: map["array"],
49
+ created_at: map["$createdAt"],
50
+ updated_at: map["$updatedAt"],
51
+ format: map["format"],
52
+ default: map["default"]
53
+ )
54
+ end
55
+
56
+ def to_map
57
+ {
58
+ "key": @key,
59
+ "type": @type,
60
+ "status": @status,
61
+ "error": @error,
62
+ "required": @required,
63
+ "array": @array,
64
+ "$createdAt": @created_at,
65
+ "$updatedAt": @updated_at,
66
+ "format": @format,
67
+ "default": @default
68
+ }
69
+ end
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,72 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class ColumnEmail
6
+ attr_reader :key
7
+ attr_reader :type
8
+ attr_reader :status
9
+ attr_reader :error
10
+ attr_reader :required
11
+ attr_reader :array
12
+ attr_reader :created_at
13
+ attr_reader :updated_at
14
+ attr_reader :format
15
+ attr_reader :default
16
+
17
+ def initialize(
18
+ key:,
19
+ type:,
20
+ status:,
21
+ error:,
22
+ required:,
23
+ array: ,
24
+ created_at:,
25
+ updated_at:,
26
+ format:,
27
+ default:
28
+ )
29
+ @key = key
30
+ @type = type
31
+ @status = status
32
+ @error = error
33
+ @required = required
34
+ @array = array
35
+ @created_at = created_at
36
+ @updated_at = updated_at
37
+ @format = format
38
+ @default = default
39
+ end
40
+
41
+ def self.from(map:)
42
+ ColumnEmail.new(
43
+ key: map["key"],
44
+ type: map["type"],
45
+ status: map["status"],
46
+ error: map["error"],
47
+ required: map["required"],
48
+ array: map["array"],
49
+ created_at: map["$createdAt"],
50
+ updated_at: map["$updatedAt"],
51
+ format: map["format"],
52
+ default: map["default"]
53
+ )
54
+ end
55
+
56
+ def to_map
57
+ {
58
+ "key": @key,
59
+ "type": @type,
60
+ "status": @status,
61
+ "error": @error,
62
+ "required": @required,
63
+ "array": @array,
64
+ "$createdAt": @created_at,
65
+ "$updatedAt": @updated_at,
66
+ "format": @format,
67
+ "default": @default
68
+ }
69
+ end
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,77 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class ColumnEnum
6
+ attr_reader :key
7
+ attr_reader :type
8
+ attr_reader :status
9
+ attr_reader :error
10
+ attr_reader :required
11
+ attr_reader :array
12
+ attr_reader :created_at
13
+ attr_reader :updated_at
14
+ attr_reader :elements
15
+ attr_reader :format
16
+ attr_reader :default
17
+
18
+ def initialize(
19
+ key:,
20
+ type:,
21
+ status:,
22
+ error:,
23
+ required:,
24
+ array: ,
25
+ created_at:,
26
+ updated_at:,
27
+ elements:,
28
+ format:,
29
+ default:
30
+ )
31
+ @key = key
32
+ @type = type
33
+ @status = status
34
+ @error = error
35
+ @required = required
36
+ @array = array
37
+ @created_at = created_at
38
+ @updated_at = updated_at
39
+ @elements = elements
40
+ @format = format
41
+ @default = default
42
+ end
43
+
44
+ def self.from(map:)
45
+ ColumnEnum.new(
46
+ key: map["key"],
47
+ type: map["type"],
48
+ status: map["status"],
49
+ error: map["error"],
50
+ required: map["required"],
51
+ array: map["array"],
52
+ created_at: map["$createdAt"],
53
+ updated_at: map["$updatedAt"],
54
+ elements: map["elements"],
55
+ format: map["format"],
56
+ default: map["default"]
57
+ )
58
+ end
59
+
60
+ def to_map
61
+ {
62
+ "key": @key,
63
+ "type": @type,
64
+ "status": @status,
65
+ "error": @error,
66
+ "required": @required,
67
+ "array": @array,
68
+ "$createdAt": @created_at,
69
+ "$updatedAt": @updated_at,
70
+ "elements": @elements,
71
+ "format": @format,
72
+ "default": @default
73
+ }
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,77 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class ColumnFloat
6
+ attr_reader :key
7
+ attr_reader :type
8
+ attr_reader :status
9
+ attr_reader :error
10
+ attr_reader :required
11
+ attr_reader :array
12
+ attr_reader :created_at
13
+ attr_reader :updated_at
14
+ attr_reader :min
15
+ attr_reader :max
16
+ attr_reader :default
17
+
18
+ def initialize(
19
+ key:,
20
+ type:,
21
+ status:,
22
+ error:,
23
+ required:,
24
+ array: ,
25
+ created_at:,
26
+ updated_at:,
27
+ min: ,
28
+ max: ,
29
+ default:
30
+ )
31
+ @key = key
32
+ @type = type
33
+ @status = status
34
+ @error = error
35
+ @required = required
36
+ @array = array
37
+ @created_at = created_at
38
+ @updated_at = updated_at
39
+ @min = min
40
+ @max = max
41
+ @default = default
42
+ end
43
+
44
+ def self.from(map:)
45
+ ColumnFloat.new(
46
+ key: map["key"],
47
+ type: map["type"],
48
+ status: map["status"],
49
+ error: map["error"],
50
+ required: map["required"],
51
+ array: map["array"],
52
+ created_at: map["$createdAt"],
53
+ updated_at: map["$updatedAt"],
54
+ min: map["min"],
55
+ max: map["max"],
56
+ default: map["default"]
57
+ )
58
+ end
59
+
60
+ def to_map
61
+ {
62
+ "key": @key,
63
+ "type": @type,
64
+ "status": @status,
65
+ "error": @error,
66
+ "required": @required,
67
+ "array": @array,
68
+ "$createdAt": @created_at,
69
+ "$updatedAt": @updated_at,
70
+ "min": @min,
71
+ "max": @max,
72
+ "default": @default
73
+ }
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,72 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class ColumnIndex
6
+ attr_reader :id
7
+ attr_reader :created_at
8
+ attr_reader :updated_at
9
+ attr_reader :key
10
+ attr_reader :type
11
+ attr_reader :status
12
+ attr_reader :error
13
+ attr_reader :columns
14
+ attr_reader :lengths
15
+ attr_reader :orders
16
+
17
+ def initialize(
18
+ id:,
19
+ created_at:,
20
+ updated_at:,
21
+ key:,
22
+ type:,
23
+ status:,
24
+ error:,
25
+ columns:,
26
+ lengths:,
27
+ orders:
28
+ )
29
+ @id = id
30
+ @created_at = created_at
31
+ @updated_at = updated_at
32
+ @key = key
33
+ @type = type
34
+ @status = status
35
+ @error = error
36
+ @columns = columns
37
+ @lengths = lengths
38
+ @orders = orders
39
+ end
40
+
41
+ def self.from(map:)
42
+ ColumnIndex.new(
43
+ id: map["$id"],
44
+ created_at: map["$createdAt"],
45
+ updated_at: map["$updatedAt"],
46
+ key: map["key"],
47
+ type: map["type"],
48
+ status: map["status"],
49
+ error: map["error"],
50
+ columns: map["columns"],
51
+ lengths: map["lengths"],
52
+ orders: map["orders"]
53
+ )
54
+ end
55
+
56
+ def to_map
57
+ {
58
+ "$id": @id,
59
+ "$createdAt": @created_at,
60
+ "$updatedAt": @updated_at,
61
+ "key": @key,
62
+ "type": @type,
63
+ "status": @status,
64
+ "error": @error,
65
+ "columns": @columns,
66
+ "lengths": @lengths,
67
+ "orders": @orders
68
+ }
69
+ end
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,32 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class ColumnIndexList
6
+ attr_reader :total
7
+ attr_reader :indexes
8
+
9
+ def initialize(
10
+ total:,
11
+ indexes:
12
+ )
13
+ @total = total
14
+ @indexes = indexes
15
+ end
16
+
17
+ def self.from(map:)
18
+ ColumnIndexList.new(
19
+ total: map["total"],
20
+ indexes: map["indexes"].map { |it| ColumnIndex.from(map: it) }
21
+ )
22
+ end
23
+
24
+ def to_map
25
+ {
26
+ "total": @total,
27
+ "indexes": @indexes.map { |it| it.to_map }
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,77 @@
1
+ #frozen_string_literal: true
2
+
3
+ module Appwrite
4
+ module Models
5
+ class ColumnInteger
6
+ attr_reader :key
7
+ attr_reader :type
8
+ attr_reader :status
9
+ attr_reader :error
10
+ attr_reader :required
11
+ attr_reader :array
12
+ attr_reader :created_at
13
+ attr_reader :updated_at
14
+ attr_reader :min
15
+ attr_reader :max
16
+ attr_reader :default
17
+
18
+ def initialize(
19
+ key:,
20
+ type:,
21
+ status:,
22
+ error:,
23
+ required:,
24
+ array: ,
25
+ created_at:,
26
+ updated_at:,
27
+ min: ,
28
+ max: ,
29
+ default:
30
+ )
31
+ @key = key
32
+ @type = type
33
+ @status = status
34
+ @error = error
35
+ @required = required
36
+ @array = array
37
+ @created_at = created_at
38
+ @updated_at = updated_at
39
+ @min = min
40
+ @max = max
41
+ @default = default
42
+ end
43
+
44
+ def self.from(map:)
45
+ ColumnInteger.new(
46
+ key: map["key"],
47
+ type: map["type"],
48
+ status: map["status"],
49
+ error: map["error"],
50
+ required: map["required"],
51
+ array: map["array"],
52
+ created_at: map["$createdAt"],
53
+ updated_at: map["$updatedAt"],
54
+ min: map["min"],
55
+ max: map["max"],
56
+ default: map["default"]
57
+ )
58
+ end
59
+
60
+ def to_map
61
+ {
62
+ "key": @key,
63
+ "type": @type,
64
+ "status": @status,
65
+ "error": @error,
66
+ "required": @required,
67
+ "array": @array,
68
+ "$createdAt": @created_at,
69
+ "$updatedAt": @updated_at,
70
+ "min": @min,
71
+ "max": @max,
72
+ "default": @default
73
+ }
74
+ end
75
+ end
76
+ end
77
+ end