appwrite 22.0.0 → 23.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 +9 -2
- data/lib/appwrite/enums/build_runtime.rb +2 -0
- data/lib/appwrite/enums/o_auth_provider.rb +1 -0
- data/lib/appwrite/enums/platform_type.rb +11 -0
- data/lib/appwrite/enums/protocol_id.rb +9 -0
- data/lib/appwrite/enums/runtime.rb +2 -0
- data/lib/appwrite/enums/scopes.rb +4 -0
- data/lib/appwrite/enums/service_id.rb +23 -0
- data/lib/appwrite/models/auth_provider.rb +47 -0
- data/lib/appwrite/models/billing_limits.rb +62 -0
- data/lib/appwrite/models/block.rb +47 -0
- data/lib/appwrite/models/dev_key.rb +62 -0
- data/lib/appwrite/models/key.rb +67 -0
- data/lib/appwrite/models/key_list.rb +32 -0
- data/lib/appwrite/models/log.rb +5 -0
- data/lib/appwrite/models/mock_number.rb +32 -0
- data/lib/appwrite/models/platform_android.rb +71 -0
- data/lib/appwrite/models/platform_apple.rb +71 -0
- data/lib/appwrite/models/platform_linux.rb +71 -0
- data/lib/appwrite/models/platform_list.rb +32 -0
- data/lib/appwrite/models/platform_web.rb +71 -0
- data/lib/appwrite/models/platform_windows.rb +71 -0
- data/lib/appwrite/models/project.rb +412 -0
- data/lib/appwrite/models/webhook.rb +20 -20
- data/lib/appwrite/service.rb +1 -1
- data/lib/appwrite/services/account.rb +47 -2
- data/lib/appwrite/services/activities.rb +3 -1
- data/lib/appwrite/services/avatars.rb +9 -1
- data/lib/appwrite/services/backups.rb +13 -1
- data/lib/appwrite/services/databases.rb +132 -6
- data/lib/appwrite/services/functions.rb +27 -1
- data/lib/appwrite/services/graphql.rb +5 -3
- data/lib/appwrite/services/health.rb +26 -1
- data/lib/appwrite/services/locale.rb +9 -1
- data/lib/appwrite/services/messaging.rb +49 -1
- data/lib/appwrite/services/project.rb +840 -1
- data/lib/appwrite/services/sites.rb +26 -1
- data/lib/appwrite/services/storage.rb +14 -1
- data/lib/appwrite/services/tables_db.rb +132 -6
- data/lib/appwrite/services/teams.rb +14 -1
- data/lib/appwrite/services/tokens.rb +6 -1
- data/lib/appwrite/services/users.rb +44 -1
- data/lib/appwrite/services/webhooks.rb +31 -21
- data/lib/appwrite.rb +17 -0
- metadata +19 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 71453fa364510c42ae244dc43108518fd45bcd5eba4409148f181d544f61907e
|
|
4
|
+
data.tar.gz: '018040e5e8aab6d7ebc649f0754ce43a32cf1a64bebb70c2b5b4c93781c70add'
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bbd44f5cf20c90fe3f628a2badb9ed1766960d3605569475ca36b5bcb32931fbbd8a804e8036fbef454c7d73ff7b52c1c301111777eff84d7780661dbbd5a6c7
|
|
7
|
+
data.tar.gz: 68008c910bd8e7350dc6cc7b33c692b25ccdc4d8f45df13453ded2456c2b7cd62100838c157160c25d836a6fa5496cf75cb89bb2f5340e78dc5f14b244a11bee
|
data/lib/appwrite/client.rb
CHANGED
|
@@ -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'=> '
|
|
19
|
-
'X-Appwrite-Response-Format' => '1.9.
|
|
18
|
+
'x-sdk-version'=> '23.0.0',
|
|
19
|
+
'X-Appwrite-Response-Format' => '1.9.1'
|
|
20
20
|
}
|
|
21
21
|
@endpoint = 'https://cloud.appwrite.io/v1'
|
|
22
22
|
end
|
|
@@ -174,6 +174,13 @@ module Appwrite
|
|
|
174
174
|
self
|
|
175
175
|
end
|
|
176
176
|
|
|
177
|
+
# Get request headers
|
|
178
|
+
#
|
|
179
|
+
# @return [Hash]
|
|
180
|
+
def get_headers
|
|
181
|
+
@headers.dup
|
|
182
|
+
end
|
|
183
|
+
|
|
177
184
|
# Send the HTTP request.
|
|
178
185
|
#
|
|
179
186
|
# @param [String] method The HTTP method for the request
|
|
@@ -49,6 +49,7 @@ module Appwrite
|
|
|
49
49
|
DART_3_8 = 'dart-3.8'
|
|
50
50
|
DART_3_9 = 'dart-3.9'
|
|
51
51
|
DART_3_10 = 'dart-3.10'
|
|
52
|
+
DART_3_11 = 'dart-3.11'
|
|
52
53
|
DOTNET_6_0 = 'dotnet-6.0'
|
|
53
54
|
DOTNET_7_0 = 'dotnet-7.0'
|
|
54
55
|
DOTNET_8_0 = 'dotnet-8.0'
|
|
@@ -87,6 +88,7 @@ module Appwrite
|
|
|
87
88
|
FLUTTER_3_32 = 'flutter-3.32'
|
|
88
89
|
FLUTTER_3_35 = 'flutter-3.35'
|
|
89
90
|
FLUTTER_3_38 = 'flutter-3.38'
|
|
91
|
+
FLUTTER_3_41 = 'flutter-3.41'
|
|
90
92
|
end
|
|
91
93
|
end
|
|
92
94
|
end
|
|
@@ -49,6 +49,7 @@ module Appwrite
|
|
|
49
49
|
DART_3_8 = 'dart-3.8'
|
|
50
50
|
DART_3_9 = 'dart-3.9'
|
|
51
51
|
DART_3_10 = 'dart-3.10'
|
|
52
|
+
DART_3_11 = 'dart-3.11'
|
|
52
53
|
DOTNET_6_0 = 'dotnet-6.0'
|
|
53
54
|
DOTNET_7_0 = 'dotnet-7.0'
|
|
54
55
|
DOTNET_8_0 = 'dotnet-8.0'
|
|
@@ -87,6 +88,7 @@ module Appwrite
|
|
|
87
88
|
FLUTTER_3_32 = 'flutter-3.32'
|
|
88
89
|
FLUTTER_3_35 = 'flutter-3.35'
|
|
89
90
|
FLUTTER_3_38 = 'flutter-3.38'
|
|
91
|
+
FLUTTER_3_41 = 'flutter-3.41'
|
|
90
92
|
end
|
|
91
93
|
end
|
|
92
94
|
end
|
|
@@ -62,6 +62,10 @@ module Appwrite
|
|
|
62
62
|
WEBHOOKS_WRITE = 'webhooks.write'
|
|
63
63
|
PROJECT_READ = 'project.read'
|
|
64
64
|
PROJECT_WRITE = 'project.write'
|
|
65
|
+
KEYS_READ = 'keys.read'
|
|
66
|
+
KEYS_WRITE = 'keys.write'
|
|
67
|
+
PLATFORMS_READ = 'platforms.read'
|
|
68
|
+
PLATFORMS_WRITE = 'platforms.write'
|
|
65
69
|
POLICIES_WRITE = 'policies.write'
|
|
66
70
|
POLICIES_READ = 'policies.read'
|
|
67
71
|
ARCHIVES_READ = 'archives.read'
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module Appwrite
|
|
2
|
+
module Enums
|
|
3
|
+
module ServiceId
|
|
4
|
+
ACCOUNT = 'account'
|
|
5
|
+
AVATARS = 'avatars'
|
|
6
|
+
DATABASES = 'databases'
|
|
7
|
+
TABLESDB = 'tablesdb'
|
|
8
|
+
LOCALE = 'locale'
|
|
9
|
+
HEALTH = 'health'
|
|
10
|
+
PROJECT = 'project'
|
|
11
|
+
STORAGE = 'storage'
|
|
12
|
+
TEAMS = 'teams'
|
|
13
|
+
USERS = 'users'
|
|
14
|
+
VCS = 'vcs'
|
|
15
|
+
SITES = 'sites'
|
|
16
|
+
FUNCTIONS = 'functions'
|
|
17
|
+
PROXY = 'proxy'
|
|
18
|
+
GRAPHQL = 'graphql'
|
|
19
|
+
MIGRATIONS = 'migrations'
|
|
20
|
+
MESSAGING = 'messaging'
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
#frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Appwrite
|
|
4
|
+
module Models
|
|
5
|
+
class AuthProvider
|
|
6
|
+
attr_reader :key
|
|
7
|
+
attr_reader :name
|
|
8
|
+
attr_reader :app_id
|
|
9
|
+
attr_reader :secret
|
|
10
|
+
attr_reader :enabled
|
|
11
|
+
|
|
12
|
+
def initialize(
|
|
13
|
+
key:,
|
|
14
|
+
name:,
|
|
15
|
+
app_id:,
|
|
16
|
+
secret:,
|
|
17
|
+
enabled:
|
|
18
|
+
)
|
|
19
|
+
@key = key
|
|
20
|
+
@name = name
|
|
21
|
+
@app_id = app_id
|
|
22
|
+
@secret = secret
|
|
23
|
+
@enabled = enabled
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def self.from(map:)
|
|
27
|
+
AuthProvider.new(
|
|
28
|
+
key: map["key"],
|
|
29
|
+
name: map["name"],
|
|
30
|
+
app_id: map["appId"],
|
|
31
|
+
secret: map["secret"],
|
|
32
|
+
enabled: map["enabled"]
|
|
33
|
+
)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def to_map
|
|
37
|
+
{
|
|
38
|
+
"key": @key,
|
|
39
|
+
"name": @name,
|
|
40
|
+
"appId": @app_id,
|
|
41
|
+
"secret": @secret,
|
|
42
|
+
"enabled": @enabled
|
|
43
|
+
}
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
#frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Appwrite
|
|
4
|
+
module Models
|
|
5
|
+
class BillingLimits
|
|
6
|
+
attr_reader :bandwidth
|
|
7
|
+
attr_reader :storage
|
|
8
|
+
attr_reader :users
|
|
9
|
+
attr_reader :executions
|
|
10
|
+
attr_reader :gb_hours
|
|
11
|
+
attr_reader :image_transformations
|
|
12
|
+
attr_reader :auth_phone
|
|
13
|
+
attr_reader :budget_limit
|
|
14
|
+
|
|
15
|
+
def initialize(
|
|
16
|
+
bandwidth:,
|
|
17
|
+
storage:,
|
|
18
|
+
users:,
|
|
19
|
+
executions:,
|
|
20
|
+
gb_hours:,
|
|
21
|
+
image_transformations:,
|
|
22
|
+
auth_phone:,
|
|
23
|
+
budget_limit:
|
|
24
|
+
)
|
|
25
|
+
@bandwidth = bandwidth
|
|
26
|
+
@storage = storage
|
|
27
|
+
@users = users
|
|
28
|
+
@executions = executions
|
|
29
|
+
@gb_hours = gb_hours
|
|
30
|
+
@image_transformations = image_transformations
|
|
31
|
+
@auth_phone = auth_phone
|
|
32
|
+
@budget_limit = budget_limit
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def self.from(map:)
|
|
36
|
+
BillingLimits.new(
|
|
37
|
+
bandwidth: map["bandwidth"],
|
|
38
|
+
storage: map["storage"],
|
|
39
|
+
users: map["users"],
|
|
40
|
+
executions: map["executions"],
|
|
41
|
+
gb_hours: map["GBHours"],
|
|
42
|
+
image_transformations: map["imageTransformations"],
|
|
43
|
+
auth_phone: map["authPhone"],
|
|
44
|
+
budget_limit: map["budgetLimit"]
|
|
45
|
+
)
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def to_map
|
|
49
|
+
{
|
|
50
|
+
"bandwidth": @bandwidth,
|
|
51
|
+
"storage": @storage,
|
|
52
|
+
"users": @users,
|
|
53
|
+
"executions": @executions,
|
|
54
|
+
"GBHours": @gb_hours,
|
|
55
|
+
"imageTransformations": @image_transformations,
|
|
56
|
+
"authPhone": @auth_phone,
|
|
57
|
+
"budgetLimit": @budget_limit
|
|
58
|
+
}
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
#frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Appwrite
|
|
4
|
+
module Models
|
|
5
|
+
class Block
|
|
6
|
+
attr_reader :created_at
|
|
7
|
+
attr_reader :resource_type
|
|
8
|
+
attr_reader :resource_id
|
|
9
|
+
attr_reader :reason
|
|
10
|
+
attr_reader :expired_at
|
|
11
|
+
|
|
12
|
+
def initialize(
|
|
13
|
+
created_at:,
|
|
14
|
+
resource_type:,
|
|
15
|
+
resource_id:,
|
|
16
|
+
reason: ,
|
|
17
|
+
expired_at:
|
|
18
|
+
)
|
|
19
|
+
@created_at = created_at
|
|
20
|
+
@resource_type = resource_type
|
|
21
|
+
@resource_id = resource_id
|
|
22
|
+
@reason = reason
|
|
23
|
+
@expired_at = expired_at
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def self.from(map:)
|
|
27
|
+
Block.new(
|
|
28
|
+
created_at: map["$createdAt"],
|
|
29
|
+
resource_type: map["resourceType"],
|
|
30
|
+
resource_id: map["resourceId"],
|
|
31
|
+
reason: map["reason"],
|
|
32
|
+
expired_at: map["expiredAt"]
|
|
33
|
+
)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def to_map
|
|
37
|
+
{
|
|
38
|
+
"$createdAt": @created_at,
|
|
39
|
+
"resourceType": @resource_type,
|
|
40
|
+
"resourceId": @resource_id,
|
|
41
|
+
"reason": @reason,
|
|
42
|
+
"expiredAt": @expired_at
|
|
43
|
+
}
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
#frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Appwrite
|
|
4
|
+
module Models
|
|
5
|
+
class DevKey
|
|
6
|
+
attr_reader :id
|
|
7
|
+
attr_reader :created_at
|
|
8
|
+
attr_reader :updated_at
|
|
9
|
+
attr_reader :name
|
|
10
|
+
attr_reader :expire
|
|
11
|
+
attr_reader :secret
|
|
12
|
+
attr_reader :accessed_at
|
|
13
|
+
attr_reader :sdks
|
|
14
|
+
|
|
15
|
+
def initialize(
|
|
16
|
+
id:,
|
|
17
|
+
created_at:,
|
|
18
|
+
updated_at:,
|
|
19
|
+
name:,
|
|
20
|
+
expire:,
|
|
21
|
+
secret:,
|
|
22
|
+
accessed_at:,
|
|
23
|
+
sdks:
|
|
24
|
+
)
|
|
25
|
+
@id = id
|
|
26
|
+
@created_at = created_at
|
|
27
|
+
@updated_at = updated_at
|
|
28
|
+
@name = name
|
|
29
|
+
@expire = expire
|
|
30
|
+
@secret = secret
|
|
31
|
+
@accessed_at = accessed_at
|
|
32
|
+
@sdks = sdks
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def self.from(map:)
|
|
36
|
+
DevKey.new(
|
|
37
|
+
id: map["$id"],
|
|
38
|
+
created_at: map["$createdAt"],
|
|
39
|
+
updated_at: map["$updatedAt"],
|
|
40
|
+
name: map["name"],
|
|
41
|
+
expire: map["expire"],
|
|
42
|
+
secret: map["secret"],
|
|
43
|
+
accessed_at: map["accessedAt"],
|
|
44
|
+
sdks: map["sdks"]
|
|
45
|
+
)
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def to_map
|
|
49
|
+
{
|
|
50
|
+
"$id": @id,
|
|
51
|
+
"$createdAt": @created_at,
|
|
52
|
+
"$updatedAt": @updated_at,
|
|
53
|
+
"name": @name,
|
|
54
|
+
"expire": @expire,
|
|
55
|
+
"secret": @secret,
|
|
56
|
+
"accessedAt": @accessed_at,
|
|
57
|
+
"sdks": @sdks
|
|
58
|
+
}
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
#frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Appwrite
|
|
4
|
+
module Models
|
|
5
|
+
class Key
|
|
6
|
+
attr_reader :id
|
|
7
|
+
attr_reader :created_at
|
|
8
|
+
attr_reader :updated_at
|
|
9
|
+
attr_reader :name
|
|
10
|
+
attr_reader :expire
|
|
11
|
+
attr_reader :scopes
|
|
12
|
+
attr_reader :secret
|
|
13
|
+
attr_reader :accessed_at
|
|
14
|
+
attr_reader :sdks
|
|
15
|
+
|
|
16
|
+
def initialize(
|
|
17
|
+
id:,
|
|
18
|
+
created_at:,
|
|
19
|
+
updated_at:,
|
|
20
|
+
name:,
|
|
21
|
+
expire:,
|
|
22
|
+
scopes:,
|
|
23
|
+
secret:,
|
|
24
|
+
accessed_at:,
|
|
25
|
+
sdks:
|
|
26
|
+
)
|
|
27
|
+
@id = id
|
|
28
|
+
@created_at = created_at
|
|
29
|
+
@updated_at = updated_at
|
|
30
|
+
@name = name
|
|
31
|
+
@expire = expire
|
|
32
|
+
@scopes = scopes
|
|
33
|
+
@secret = secret
|
|
34
|
+
@accessed_at = accessed_at
|
|
35
|
+
@sdks = sdks
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def self.from(map:)
|
|
39
|
+
Key.new(
|
|
40
|
+
id: map["$id"],
|
|
41
|
+
created_at: map["$createdAt"],
|
|
42
|
+
updated_at: map["$updatedAt"],
|
|
43
|
+
name: map["name"],
|
|
44
|
+
expire: map["expire"],
|
|
45
|
+
scopes: map["scopes"],
|
|
46
|
+
secret: map["secret"],
|
|
47
|
+
accessed_at: map["accessedAt"],
|
|
48
|
+
sdks: map["sdks"]
|
|
49
|
+
)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def to_map
|
|
53
|
+
{
|
|
54
|
+
"$id": @id,
|
|
55
|
+
"$createdAt": @created_at,
|
|
56
|
+
"$updatedAt": @updated_at,
|
|
57
|
+
"name": @name,
|
|
58
|
+
"expire": @expire,
|
|
59
|
+
"scopes": @scopes,
|
|
60
|
+
"secret": @secret,
|
|
61
|
+
"accessedAt": @accessed_at,
|
|
62
|
+
"sdks": @sdks
|
|
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 KeyList
|
|
6
|
+
attr_reader :total
|
|
7
|
+
attr_reader :keys
|
|
8
|
+
|
|
9
|
+
def initialize(
|
|
10
|
+
total:,
|
|
11
|
+
keys:
|
|
12
|
+
)
|
|
13
|
+
@total = total
|
|
14
|
+
@keys = keys
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def self.from(map:)
|
|
18
|
+
KeyList.new(
|
|
19
|
+
total: map["total"],
|
|
20
|
+
keys: map["keys"].map { |it| Key.from(map: it) }
|
|
21
|
+
)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def to_map
|
|
25
|
+
{
|
|
26
|
+
"total": @total,
|
|
27
|
+
"keys": @keys.map { |it| it.to_map }
|
|
28
|
+
}
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
data/lib/appwrite/models/log.rb
CHANGED
|
@@ -8,6 +8,7 @@ module Appwrite
|
|
|
8
8
|
attr_reader :user_email
|
|
9
9
|
attr_reader :user_name
|
|
10
10
|
attr_reader :mode
|
|
11
|
+
attr_reader :user_type
|
|
11
12
|
attr_reader :ip
|
|
12
13
|
attr_reader :time
|
|
13
14
|
attr_reader :os_code
|
|
@@ -31,6 +32,7 @@ module Appwrite
|
|
|
31
32
|
user_email:,
|
|
32
33
|
user_name:,
|
|
33
34
|
mode:,
|
|
35
|
+
user_type:,
|
|
34
36
|
ip:,
|
|
35
37
|
time:,
|
|
36
38
|
os_code:,
|
|
@@ -53,6 +55,7 @@ module Appwrite
|
|
|
53
55
|
@user_email = user_email
|
|
54
56
|
@user_name = user_name
|
|
55
57
|
@mode = mode
|
|
58
|
+
@user_type = user_type
|
|
56
59
|
@ip = ip
|
|
57
60
|
@time = time
|
|
58
61
|
@os_code = os_code
|
|
@@ -78,6 +81,7 @@ module Appwrite
|
|
|
78
81
|
user_email: map["userEmail"],
|
|
79
82
|
user_name: map["userName"],
|
|
80
83
|
mode: map["mode"],
|
|
84
|
+
user_type: map["userType"],
|
|
81
85
|
ip: map["ip"],
|
|
82
86
|
time: map["time"],
|
|
83
87
|
os_code: map["osCode"],
|
|
@@ -104,6 +108,7 @@ module Appwrite
|
|
|
104
108
|
"userEmail": @user_email,
|
|
105
109
|
"userName": @user_name,
|
|
106
110
|
"mode": @mode,
|
|
111
|
+
"userType": @user_type,
|
|
107
112
|
"ip": @ip,
|
|
108
113
|
"time": @time,
|
|
109
114
|
"osCode": @os_code,
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
#frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Appwrite
|
|
4
|
+
module Models
|
|
5
|
+
class MockNumber
|
|
6
|
+
attr_reader :phone
|
|
7
|
+
attr_reader :otp
|
|
8
|
+
|
|
9
|
+
def initialize(
|
|
10
|
+
phone:,
|
|
11
|
+
otp:
|
|
12
|
+
)
|
|
13
|
+
@phone = phone
|
|
14
|
+
@otp = otp
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def self.from(map:)
|
|
18
|
+
MockNumber.new(
|
|
19
|
+
phone: map["phone"],
|
|
20
|
+
otp: map["otp"]
|
|
21
|
+
)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def to_map
|
|
25
|
+
{
|
|
26
|
+
"phone": @phone,
|
|
27
|
+
"otp": @otp
|
|
28
|
+
}
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
#frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Appwrite
|
|
4
|
+
module Models
|
|
5
|
+
class PlatformAndroid
|
|
6
|
+
attr_reader :id
|
|
7
|
+
attr_reader :created_at
|
|
8
|
+
attr_reader :updated_at
|
|
9
|
+
attr_reader :name
|
|
10
|
+
attr_reader :type
|
|
11
|
+
attr_reader :application_id
|
|
12
|
+
|
|
13
|
+
def initialize(
|
|
14
|
+
id:,
|
|
15
|
+
created_at:,
|
|
16
|
+
updated_at:,
|
|
17
|
+
name:,
|
|
18
|
+
type:,
|
|
19
|
+
application_id:
|
|
20
|
+
)
|
|
21
|
+
@id = id
|
|
22
|
+
@created_at = created_at
|
|
23
|
+
@updated_at = updated_at
|
|
24
|
+
@name = name
|
|
25
|
+
@type = validate_type(type)
|
|
26
|
+
@application_id = application_id
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def self.from(map:)
|
|
30
|
+
PlatformAndroid.new(
|
|
31
|
+
id: map["$id"],
|
|
32
|
+
created_at: map["$createdAt"],
|
|
33
|
+
updated_at: map["$updatedAt"],
|
|
34
|
+
name: map["name"],
|
|
35
|
+
type: map["type"],
|
|
36
|
+
application_id: map["applicationId"]
|
|
37
|
+
)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def to_map
|
|
41
|
+
{
|
|
42
|
+
"$id": @id,
|
|
43
|
+
"$createdAt": @created_at,
|
|
44
|
+
"$updatedAt": @updated_at,
|
|
45
|
+
"name": @name,
|
|
46
|
+
"type": @type,
|
|
47
|
+
"applicationId": @application_id
|
|
48
|
+
}
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
private
|
|
52
|
+
|
|
53
|
+
def validate_type(type)
|
|
54
|
+
valid_type = [
|
|
55
|
+
Appwrite::Enums::PlatformType::WINDOWS,
|
|
56
|
+
Appwrite::Enums::PlatformType::APPLE,
|
|
57
|
+
Appwrite::Enums::PlatformType::ANDROID,
|
|
58
|
+
Appwrite::Enums::PlatformType::LINUX,
|
|
59
|
+
Appwrite::Enums::PlatformType::WEB,
|
|
60
|
+
]
|
|
61
|
+
|
|
62
|
+
unless valid_type.include?(type)
|
|
63
|
+
raise ArgumentError, "Invalid " + type + ". Must be one of: " + valid_type.join(', ')
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
type
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
#frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Appwrite
|
|
4
|
+
module Models
|
|
5
|
+
class PlatformApple
|
|
6
|
+
attr_reader :id
|
|
7
|
+
attr_reader :created_at
|
|
8
|
+
attr_reader :updated_at
|
|
9
|
+
attr_reader :name
|
|
10
|
+
attr_reader :type
|
|
11
|
+
attr_reader :bundle_identifier
|
|
12
|
+
|
|
13
|
+
def initialize(
|
|
14
|
+
id:,
|
|
15
|
+
created_at:,
|
|
16
|
+
updated_at:,
|
|
17
|
+
name:,
|
|
18
|
+
type:,
|
|
19
|
+
bundle_identifier:
|
|
20
|
+
)
|
|
21
|
+
@id = id
|
|
22
|
+
@created_at = created_at
|
|
23
|
+
@updated_at = updated_at
|
|
24
|
+
@name = name
|
|
25
|
+
@type = validate_type(type)
|
|
26
|
+
@bundle_identifier = bundle_identifier
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def self.from(map:)
|
|
30
|
+
PlatformApple.new(
|
|
31
|
+
id: map["$id"],
|
|
32
|
+
created_at: map["$createdAt"],
|
|
33
|
+
updated_at: map["$updatedAt"],
|
|
34
|
+
name: map["name"],
|
|
35
|
+
type: map["type"],
|
|
36
|
+
bundle_identifier: map["bundleIdentifier"]
|
|
37
|
+
)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def to_map
|
|
41
|
+
{
|
|
42
|
+
"$id": @id,
|
|
43
|
+
"$createdAt": @created_at,
|
|
44
|
+
"$updatedAt": @updated_at,
|
|
45
|
+
"name": @name,
|
|
46
|
+
"type": @type,
|
|
47
|
+
"bundleIdentifier": @bundle_identifier
|
|
48
|
+
}
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
private
|
|
52
|
+
|
|
53
|
+
def validate_type(type)
|
|
54
|
+
valid_type = [
|
|
55
|
+
Appwrite::Enums::PlatformType::WINDOWS,
|
|
56
|
+
Appwrite::Enums::PlatformType::APPLE,
|
|
57
|
+
Appwrite::Enums::PlatformType::ANDROID,
|
|
58
|
+
Appwrite::Enums::PlatformType::LINUX,
|
|
59
|
+
Appwrite::Enums::PlatformType::WEB,
|
|
60
|
+
]
|
|
61
|
+
|
|
62
|
+
unless valid_type.include?(type)
|
|
63
|
+
raise ArgumentError, "Invalid " + type + ". Must be one of: " + valid_type.join(', ')
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
type
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|