appwrite 16.1.0 → 18.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 +2 -2
- data/lib/appwrite/enums/credit_card.rb +1 -1
- data/lib/appwrite/enums/execution_method.rb +1 -0
- data/lib/appwrite/enums/index_type.rb +1 -0
- data/lib/appwrite/models/attribute_line.rb +67 -0
- data/lib/appwrite/models/attribute_point.rb +67 -0
- data/lib/appwrite/models/attribute_polygon.rb +67 -0
- data/lib/appwrite/models/column_boolean.rb +67 -0
- data/lib/appwrite/models/column_datetime.rb +72 -0
- data/lib/appwrite/models/column_email.rb +72 -0
- data/lib/appwrite/models/column_enum.rb +77 -0
- data/lib/appwrite/models/column_float.rb +77 -0
- data/lib/appwrite/models/column_index.rb +72 -0
- data/lib/appwrite/models/column_index_list.rb +32 -0
- data/lib/appwrite/models/column_integer.rb +77 -0
- data/lib/appwrite/models/column_ip.rb +72 -0
- data/lib/appwrite/models/column_line.rb +67 -0
- data/lib/appwrite/models/column_list.rb +32 -0
- data/lib/appwrite/models/column_point.rb +67 -0
- data/lib/appwrite/models/column_polygon.rb +67 -0
- data/lib/appwrite/models/column_relationship.rb +92 -0
- data/lib/appwrite/models/column_string.rb +77 -0
- data/lib/appwrite/models/column_url.rb +72 -0
- data/lib/appwrite/models/database.rb +8 -3
- data/lib/appwrite/models/execution.rb +5 -0
- data/lib/appwrite/models/index.rb +18 -13
- data/lib/appwrite/models/row.rb +66 -0
- data/lib/appwrite/models/row_list.rb +36 -0
- data/lib/appwrite/models/table.rb +72 -0
- data/lib/appwrite/models/table_list.rb +32 -0
- data/lib/appwrite/query.rb +92 -0
- data/lib/appwrite/services/account.rb +15 -48
- data/lib/appwrite/services/avatars.rb +1 -8
- data/lib/appwrite/services/databases.rb +519 -120
- data/lib/appwrite/services/functions.rb +1 -27
- data/lib/appwrite/services/graphql.rb +0 -2
- data/lib/appwrite/services/health.rb +0 -22
- data/lib/appwrite/services/locale.rb +0 -8
- data/lib/appwrite/services/messaging.rb +0 -46
- data/lib/appwrite/services/sites.rb +0 -25
- data/lib/appwrite/services/storage.rb +0 -13
- data/lib/appwrite/services/tables_db.rb +2621 -0
- data/lib/appwrite/services/teams.rb +0 -13
- data/lib/appwrite/services/tokens.rb +0 -5
- data/lib/appwrite/services/users.rb +0 -42
- data/lib/appwrite.rb +24 -0
- metadata +26 -2
@@ -8,19 +8,22 @@ module Appwrite
|
|
8
8
|
attr_reader :created_at
|
9
9
|
attr_reader :updated_at
|
10
10
|
attr_reader :enabled
|
11
|
+
attr_reader :type
|
11
12
|
|
12
13
|
def initialize(
|
13
14
|
id:,
|
14
15
|
name:,
|
15
16
|
created_at:,
|
16
17
|
updated_at:,
|
17
|
-
enabled
|
18
|
+
enabled:,
|
19
|
+
type:
|
18
20
|
)
|
19
21
|
@id = id
|
20
22
|
@name = name
|
21
23
|
@created_at = created_at
|
22
24
|
@updated_at = updated_at
|
23
25
|
@enabled = enabled
|
26
|
+
@type = type
|
24
27
|
end
|
25
28
|
|
26
29
|
def self.from(map:)
|
@@ -29,7 +32,8 @@ module Appwrite
|
|
29
32
|
name: map["name"],
|
30
33
|
created_at: map["$createdAt"],
|
31
34
|
updated_at: map["$updatedAt"],
|
32
|
-
enabled: map["enabled"]
|
35
|
+
enabled: map["enabled"],
|
36
|
+
type: map["type"]
|
33
37
|
)
|
34
38
|
end
|
35
39
|
|
@@ -39,7 +43,8 @@ module Appwrite
|
|
39
43
|
"name": @name,
|
40
44
|
"$createdAt": @created_at,
|
41
45
|
"$updatedAt": @updated_at,
|
42
|
-
"enabled": @enabled
|
46
|
+
"enabled": @enabled,
|
47
|
+
"type": @type
|
43
48
|
}
|
44
49
|
end
|
45
50
|
end
|
@@ -8,6 +8,7 @@ module Appwrite
|
|
8
8
|
attr_reader :updated_at
|
9
9
|
attr_reader :permissions
|
10
10
|
attr_reader :function_id
|
11
|
+
attr_reader :deployment_id
|
11
12
|
attr_reader :trigger
|
12
13
|
attr_reader :status
|
13
14
|
attr_reader :request_method
|
@@ -27,6 +28,7 @@ module Appwrite
|
|
27
28
|
updated_at:,
|
28
29
|
permissions:,
|
29
30
|
function_id:,
|
31
|
+
deployment_id:,
|
30
32
|
trigger:,
|
31
33
|
status:,
|
32
34
|
request_method:,
|
@@ -45,6 +47,7 @@ module Appwrite
|
|
45
47
|
@updated_at = updated_at
|
46
48
|
@permissions = permissions
|
47
49
|
@function_id = function_id
|
50
|
+
@deployment_id = deployment_id
|
48
51
|
@trigger = trigger
|
49
52
|
@status = status
|
50
53
|
@request_method = request_method
|
@@ -66,6 +69,7 @@ module Appwrite
|
|
66
69
|
updated_at: map["$updatedAt"],
|
67
70
|
permissions: map["$permissions"],
|
68
71
|
function_id: map["functionId"],
|
72
|
+
deployment_id: map["deploymentId"],
|
69
73
|
trigger: map["trigger"],
|
70
74
|
status: map["status"],
|
71
75
|
request_method: map["requestMethod"],
|
@@ -88,6 +92,7 @@ module Appwrite
|
|
88
92
|
"$updatedAt": @updated_at,
|
89
93
|
"$permissions": @permissions,
|
90
94
|
"functionId": @function_id,
|
95
|
+
"deploymentId": @deployment_id,
|
91
96
|
"trigger": @trigger,
|
92
97
|
"status": @status,
|
93
98
|
"requestMethod": @request_method,
|
@@ -3,6 +3,9 @@
|
|
3
3
|
module Appwrite
|
4
4
|
module Models
|
5
5
|
class Index
|
6
|
+
attr_reader :id
|
7
|
+
attr_reader :created_at
|
8
|
+
attr_reader :updated_at
|
6
9
|
attr_reader :key
|
7
10
|
attr_reader :type
|
8
11
|
attr_reader :status
|
@@ -10,20 +13,22 @@ module Appwrite
|
|
10
13
|
attr_reader :attributes
|
11
14
|
attr_reader :lengths
|
12
15
|
attr_reader :orders
|
13
|
-
attr_reader :created_at
|
14
|
-
attr_reader :updated_at
|
15
16
|
|
16
17
|
def initialize(
|
18
|
+
id:,
|
19
|
+
created_at:,
|
20
|
+
updated_at:,
|
17
21
|
key:,
|
18
22
|
type:,
|
19
23
|
status:,
|
20
24
|
error:,
|
21
25
|
attributes:,
|
22
26
|
lengths:,
|
23
|
-
orders:
|
24
|
-
created_at:,
|
25
|
-
updated_at:
|
27
|
+
orders:
|
26
28
|
)
|
29
|
+
@id = id
|
30
|
+
@created_at = created_at
|
31
|
+
@updated_at = updated_at
|
27
32
|
@key = key
|
28
33
|
@type = type
|
29
34
|
@status = status
|
@@ -31,35 +36,35 @@ module Appwrite
|
|
31
36
|
@attributes = attributes
|
32
37
|
@lengths = lengths
|
33
38
|
@orders = orders
|
34
|
-
@created_at = created_at
|
35
|
-
@updated_at = updated_at
|
36
39
|
end
|
37
40
|
|
38
41
|
def self.from(map:)
|
39
42
|
Index.new(
|
43
|
+
id: map["$id"],
|
44
|
+
created_at: map["$createdAt"],
|
45
|
+
updated_at: map["$updatedAt"],
|
40
46
|
key: map["key"],
|
41
47
|
type: map["type"],
|
42
48
|
status: map["status"],
|
43
49
|
error: map["error"],
|
44
50
|
attributes: map["attributes"],
|
45
51
|
lengths: map["lengths"],
|
46
|
-
orders: map["orders"]
|
47
|
-
created_at: map["$createdAt"],
|
48
|
-
updated_at: map["$updatedAt"]
|
52
|
+
orders: map["orders"]
|
49
53
|
)
|
50
54
|
end
|
51
55
|
|
52
56
|
def to_map
|
53
57
|
{
|
58
|
+
"$id": @id,
|
59
|
+
"$createdAt": @created_at,
|
60
|
+
"$updatedAt": @updated_at,
|
54
61
|
"key": @key,
|
55
62
|
"type": @type,
|
56
63
|
"status": @status,
|
57
64
|
"error": @error,
|
58
65
|
"attributes": @attributes,
|
59
66
|
"lengths": @lengths,
|
60
|
-
"orders": @orders
|
61
|
-
"$createdAt": @created_at,
|
62
|
-
"$updatedAt": @updated_at
|
67
|
+
"orders": @orders
|
63
68
|
}
|
64
69
|
end
|
65
70
|
end
|
@@ -0,0 +1,66 @@
|
|
1
|
+
#frozen_string_literal: true
|
2
|
+
|
3
|
+
module Appwrite
|
4
|
+
module Models
|
5
|
+
class Row
|
6
|
+
attr_reader :id
|
7
|
+
attr_reader :sequence
|
8
|
+
attr_reader :table_id
|
9
|
+
attr_reader :database_id
|
10
|
+
attr_reader :created_at
|
11
|
+
attr_reader :updated_at
|
12
|
+
attr_reader :permissions
|
13
|
+
attr_reader :data
|
14
|
+
|
15
|
+
def initialize(
|
16
|
+
id:,
|
17
|
+
sequence:,
|
18
|
+
table_id:,
|
19
|
+
database_id:,
|
20
|
+
created_at:,
|
21
|
+
updated_at:,
|
22
|
+
permissions:,
|
23
|
+
data:
|
24
|
+
)
|
25
|
+
@id = id
|
26
|
+
@sequence = sequence
|
27
|
+
@table_id = table_id
|
28
|
+
@database_id = database_id
|
29
|
+
@created_at = created_at
|
30
|
+
@updated_at = updated_at
|
31
|
+
@permissions = permissions
|
32
|
+
@data = data
|
33
|
+
end
|
34
|
+
|
35
|
+
def self.from(map:)
|
36
|
+
Row.new(
|
37
|
+
id: map["$id"],
|
38
|
+
sequence: map["$sequence"],
|
39
|
+
table_id: map["$tableId"],
|
40
|
+
database_id: map["$databaseId"],
|
41
|
+
created_at: map["$createdAt"],
|
42
|
+
updated_at: map["$updatedAt"],
|
43
|
+
permissions: map["$permissions"],
|
44
|
+
data: map
|
45
|
+
)
|
46
|
+
end
|
47
|
+
|
48
|
+
def to_map
|
49
|
+
{
|
50
|
+
"$id": @id,
|
51
|
+
"$sequence": @sequence,
|
52
|
+
"$tableId": @table_id,
|
53
|
+
"$databaseId": @database_id,
|
54
|
+
"$createdAt": @created_at,
|
55
|
+
"$updatedAt": @updated_at,
|
56
|
+
"$permissions": @permissions,
|
57
|
+
"data": @data
|
58
|
+
}
|
59
|
+
end
|
60
|
+
|
61
|
+
def convert_to(from_json)
|
62
|
+
from_json.call(data)
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
#frozen_string_literal: true
|
2
|
+
|
3
|
+
module Appwrite
|
4
|
+
module Models
|
5
|
+
class RowList
|
6
|
+
attr_reader :total
|
7
|
+
attr_reader :rows
|
8
|
+
|
9
|
+
def initialize(
|
10
|
+
total:,
|
11
|
+
rows:
|
12
|
+
)
|
13
|
+
@total = total
|
14
|
+
@rows = rows
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.from(map:)
|
18
|
+
RowList.new(
|
19
|
+
total: map["total"],
|
20
|
+
rows: map["rows"].map { |it| Row.from(map: it) }
|
21
|
+
)
|
22
|
+
end
|
23
|
+
|
24
|
+
def to_map
|
25
|
+
{
|
26
|
+
"total": @total,
|
27
|
+
"rows": @rows.map { |it| it.to_map }
|
28
|
+
}
|
29
|
+
end
|
30
|
+
|
31
|
+
def convert_to(from_json)
|
32
|
+
rows.map { |it| it.convert_to(from_json) }
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,72 @@
|
|
1
|
+
#frozen_string_literal: true
|
2
|
+
|
3
|
+
module Appwrite
|
4
|
+
module Models
|
5
|
+
class Table
|
6
|
+
attr_reader :id
|
7
|
+
attr_reader :created_at
|
8
|
+
attr_reader :updated_at
|
9
|
+
attr_reader :permissions
|
10
|
+
attr_reader :database_id
|
11
|
+
attr_reader :name
|
12
|
+
attr_reader :enabled
|
13
|
+
attr_reader :row_security
|
14
|
+
attr_reader :columns
|
15
|
+
attr_reader :indexes
|
16
|
+
|
17
|
+
def initialize(
|
18
|
+
id:,
|
19
|
+
created_at:,
|
20
|
+
updated_at:,
|
21
|
+
permissions:,
|
22
|
+
database_id:,
|
23
|
+
name:,
|
24
|
+
enabled:,
|
25
|
+
row_security:,
|
26
|
+
columns:,
|
27
|
+
indexes:
|
28
|
+
)
|
29
|
+
@id = id
|
30
|
+
@created_at = created_at
|
31
|
+
@updated_at = updated_at
|
32
|
+
@permissions = permissions
|
33
|
+
@database_id = database_id
|
34
|
+
@name = name
|
35
|
+
@enabled = enabled
|
36
|
+
@row_security = row_security
|
37
|
+
@columns = columns
|
38
|
+
@indexes = indexes
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.from(map:)
|
42
|
+
Table.new(
|
43
|
+
id: map["$id"],
|
44
|
+
created_at: map["$createdAt"],
|
45
|
+
updated_at: map["$updatedAt"],
|
46
|
+
permissions: map["$permissions"],
|
47
|
+
database_id: map["databaseId"],
|
48
|
+
name: map["name"],
|
49
|
+
enabled: map["enabled"],
|
50
|
+
row_security: map["rowSecurity"],
|
51
|
+
columns: map["columns"],
|
52
|
+
indexes: map["indexes"].map { |it| ColumnIndex.from(map: it) }
|
53
|
+
)
|
54
|
+
end
|
55
|
+
|
56
|
+
def to_map
|
57
|
+
{
|
58
|
+
"$id": @id,
|
59
|
+
"$createdAt": @created_at,
|
60
|
+
"$updatedAt": @updated_at,
|
61
|
+
"$permissions": @permissions,
|
62
|
+
"databaseId": @database_id,
|
63
|
+
"name": @name,
|
64
|
+
"enabled": @enabled,
|
65
|
+
"rowSecurity": @row_security,
|
66
|
+
"columns": @columns,
|
67
|
+
"indexes": @indexes.map { |it| it.to_map }
|
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 TableList
|
6
|
+
attr_reader :total
|
7
|
+
attr_reader :tables
|
8
|
+
|
9
|
+
def initialize(
|
10
|
+
total:,
|
11
|
+
tables:
|
12
|
+
)
|
13
|
+
@total = total
|
14
|
+
@tables = tables
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.from(map:)
|
18
|
+
TableList.new(
|
19
|
+
total: map["total"],
|
20
|
+
tables: map["tables"].map { |it| Table.from(map: it) }
|
21
|
+
)
|
22
|
+
end
|
23
|
+
|
24
|
+
def to_map
|
25
|
+
{
|
26
|
+
"total": @total,
|
27
|
+
"tables": @tables.map { |it| it.to_map }
|
28
|
+
}
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
data/lib/appwrite/query.rb
CHANGED
@@ -108,6 +108,50 @@ module Appwrite
|
|
108
108
|
return Query.new("contains", attribute, value).to_s
|
109
109
|
end
|
110
110
|
|
111
|
+
def not_contains(attribute, value)
|
112
|
+
return Query.new("notContains", attribute, value).to_s
|
113
|
+
end
|
114
|
+
|
115
|
+
def not_search(attribute, value)
|
116
|
+
return Query.new("notSearch", attribute, value).to_s
|
117
|
+
end
|
118
|
+
|
119
|
+
def not_between(attribute, start, ending)
|
120
|
+
return Query.new("notBetween", attribute, [start, ending]).to_s
|
121
|
+
end
|
122
|
+
|
123
|
+
def not_starts_with(attribute, value)
|
124
|
+
return Query.new("notStartsWith", attribute, value).to_s
|
125
|
+
end
|
126
|
+
|
127
|
+
def not_ends_with(attribute, value)
|
128
|
+
return Query.new("notEndsWith", attribute, value).to_s
|
129
|
+
end
|
130
|
+
|
131
|
+
def created_before(value)
|
132
|
+
return Query.new("createdBefore", nil, value).to_s
|
133
|
+
end
|
134
|
+
|
135
|
+
def created_after(value)
|
136
|
+
return Query.new("createdAfter", nil, value).to_s
|
137
|
+
end
|
138
|
+
|
139
|
+
def created_between(start, ending)
|
140
|
+
return Query.new("createdBetween", nil, [start, ending]).to_s
|
141
|
+
end
|
142
|
+
|
143
|
+
def updated_before(value)
|
144
|
+
return Query.new("updatedBefore", nil, value).to_s
|
145
|
+
end
|
146
|
+
|
147
|
+
def updated_after(value)
|
148
|
+
return Query.new("updatedAfter", nil, value).to_s
|
149
|
+
end
|
150
|
+
|
151
|
+
def updated_between(start, ending)
|
152
|
+
return Query.new("updatedBetween", nil, [start, ending]).to_s
|
153
|
+
end
|
154
|
+
|
111
155
|
def or(queries)
|
112
156
|
return Query.new("or", nil, queries.map { |query| JSON.parse(query) }).to_s
|
113
157
|
end
|
@@ -115,6 +159,54 @@ module Appwrite
|
|
115
159
|
def and(queries)
|
116
160
|
return Query.new("and", nil, queries.map { |query| JSON.parse(query) }).to_s
|
117
161
|
end
|
162
|
+
|
163
|
+
def distance_equal(attribute, values, distance, meters = true)
|
164
|
+
return Query.new("distanceEqual", attribute, [[values, distance, meters]]).to_s
|
165
|
+
end
|
166
|
+
|
167
|
+
def distance_not_equal(attribute, values, distance, meters = true)
|
168
|
+
return Query.new("distanceNotEqual", attribute, [[values, distance, meters]]).to_s
|
169
|
+
end
|
170
|
+
|
171
|
+
def distance_greater_than(attribute, values, distance, meters = true)
|
172
|
+
return Query.new("distanceGreaterThan", attribute, [[values, distance, meters]]).to_s
|
173
|
+
end
|
174
|
+
|
175
|
+
def distance_less_than(attribute, values, distance, meters = true)
|
176
|
+
return Query.new("distanceLessThan", attribute, [[values, distance, meters]]).to_s
|
177
|
+
end
|
178
|
+
|
179
|
+
def intersects(attribute, values)
|
180
|
+
return Query.new("intersects", attribute, [values]).to_s
|
181
|
+
end
|
182
|
+
|
183
|
+
def not_intersects(attribute, values)
|
184
|
+
return Query.new("notIntersects", attribute, [values]).to_s
|
185
|
+
end
|
186
|
+
|
187
|
+
def crosses(attribute, values)
|
188
|
+
return Query.new("crosses", attribute, [values]).to_s
|
189
|
+
end
|
190
|
+
|
191
|
+
def not_crosses(attribute, values)
|
192
|
+
return Query.new("notCrosses", attribute, [values]).to_s
|
193
|
+
end
|
194
|
+
|
195
|
+
def overlaps(attribute, values)
|
196
|
+
return Query.new("overlaps", attribute, [values]).to_s
|
197
|
+
end
|
198
|
+
|
199
|
+
def not_overlaps(attribute, values)
|
200
|
+
return Query.new("notOverlaps", attribute, [values]).to_s
|
201
|
+
end
|
202
|
+
|
203
|
+
def touches(attribute, values)
|
204
|
+
return Query.new("touches", attribute, [values]).to_s
|
205
|
+
end
|
206
|
+
|
207
|
+
def not_touches(attribute, values)
|
208
|
+
return Query.new("notTouches", attribute, [values]).to_s
|
209
|
+
end
|
118
210
|
end
|
119
211
|
end
|
120
212
|
end
|