zeus_sdk 0.4.9 → 0.5.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bf1d99748dc5365676f95ee0a0a7f727bdbc0311cd7193f9da1247d440c2dfa9
4
- data.tar.gz: a8d056f73ec7a53a5d15dc9a0d5e0e14ec30a97dea8fdd10d338b3d90f239b99
3
+ metadata.gz: b2fabf1063f584c4383dba0a30cae778abc00481a99904bab7388b9858ab6f4e
4
+ data.tar.gz: 80c5d3778cd8d594401f4ee239e0b8674e5c74165abfd9492b5b3469bf0db158
5
5
  SHA512:
6
- metadata.gz: 797d7bd1194d684a526f9644a1e10bcac87d464e3841ed32d286034fdb770b484d4b5caf4ad178fc284e5fe11bce504b479aab53dea04a813db4027d88449ce0
7
- data.tar.gz: b30b536b77da3b3c961835a4f439b9d4692b70c6fb88717c61d2f1d9dd9828eb7169304998fb863f25ca933fe3154e883de9af138bac7df3f218acf108304e24
6
+ metadata.gz: 307710b2d0d05829e214c13cc2420b67d36dba5c4f66538aa0664d484f79dcf7bafebb914093bc63a65b131e2acc484577688635a6075f8433b854d02d3b4f18
7
+ data.tar.gz: edf6e6361c2fa539dd8cde02bba5f193e0d4c13acc5fb5ec3bac09d00a9aa061437338f752c5ee7d255305baee56a3184f54ae12ec2dc00ec3a0e1c8f74453c4
data/lib/zeus_sdk.rb CHANGED
@@ -20,5 +20,6 @@ module ZeusSdk
20
20
  require "zeus_sdk/v1/models/auth/user"
21
21
  require "zeus_sdk/v1/models/multiplayer/document"
22
22
  require "zeus_sdk/v1/models/multiplayer/node"
23
+ require "zeus_sdk/v1/models/assets/image"
23
24
  end
24
25
  end
@@ -7,5 +7,60 @@ module ZeusSdk::V1
7
7
 
8
8
  include HTTParty
9
9
  include ServiceBase
10
+
11
+ def list_images(query)
12
+ resp = self.class.get("/api/v1/images", query: query, headers: self.get_headers).parsed_response
13
+ if resp["success"] == true
14
+ return resp["objects"].map {|d| Image.new(d) }
15
+ else
16
+ puts(resp.inspect)
17
+ return nil
18
+ end
19
+ end
20
+
21
+ def create_image(image)
22
+ resp = self.class.post("/api/v1/images", body: {image: image}.to_json, headers: self.get_headers).parsed_response
23
+ if resp["success"] == true
24
+ return Image.new(resp["object"])
25
+ else
26
+ return nil
27
+ end
28
+ end
29
+
30
+ def get_image(id)
31
+ resp = self.class.get("/api/v1/images/#{id}", headers: self.get_headers).parsed_response
32
+ if resp["success"] == true
33
+ return Image.new(resp["object"])
34
+ else
35
+ return nil
36
+ end
37
+ end
38
+
39
+ def get_image_variants(id)
40
+ resp = self.class.get("/api/v1/images/#{id}/variants", headers: self.get_headers).parsed_response
41
+ if resp["success"] == true
42
+ return resp["object"]
43
+ else
44
+ return nil
45
+ end
46
+ end
47
+
48
+ def update_image(id, image)
49
+ resp = self.class.put("/api/v1/images/#{id}", body: {image: image}.to_json, headers: self.get_headers).parsed_response
50
+ if resp["success"] == true
51
+ return Image.new(resp["object"])
52
+ else
53
+ return nil
54
+ end
55
+ end
56
+
57
+ def destroy_image(id)
58
+ resp = self.class.delete("/api/v1/images/#{id}", headers: self.get_headers).parsed_response
59
+ if resp["success"] == true
60
+ return Image.new(resp["object"])
61
+ else
62
+ return nil
63
+ end
64
+ end
10
65
  end
11
66
  end
@@ -44,13 +44,18 @@ module ZeusSdk::V1
44
44
 
45
45
  class AuthJWT
46
46
  class << self
47
- def encode(payload, exp = 6.months.from_now)
48
- payload[:exp] = exp.to_i
49
- JWT.encode(payload, ENV["ZEUS_AUTH_SECRET_KEY"])
47
+ def encode(data, key, exp = 6.months.from_now)
48
+ payload = {
49
+ data: data,
50
+ exp: exp.to_i
51
+ }
52
+ #ENV["ZEUS_AUTH_SECRET_KEY"]
53
+ JWT.encode(payload, key, 'HS256')
50
54
  end
51
55
 
52
56
  def decode(token)
53
- body = JWT.decode(token, ENV["ZEUS_AUTH_SECRET_KEY"])[0]
57
+ #ENV["ZEUS_AUTH_SECRET_KEY"]
58
+ body = JWT.decode(token, key, true, { algorithm: 'HS256' })[0]
54
59
  HashWithIndifferentAccess.new body
55
60
  rescue
56
61
  nil
@@ -0,0 +1,28 @@
1
+ module ZeusSdk::V1
2
+ class Image
3
+ attr_accessor :raw, :image_id, :urls, :presigned_url, :created_at, :updated_at
4
+
5
+ def initialize(obj)
6
+ self.raw = obj
7
+ self.image_id = obj["id"]
8
+ self.urls = obj["urls"]
9
+ self.presigned_url = obj["presigned_url"]
10
+ self.created_at = obj["created_at"]
11
+ self.updated_at = obj["updated_at"]
12
+ end
13
+
14
+ def as_json(options={})
15
+ return {
16
+ id: self.image_id,
17
+ urls: self.urls,
18
+ presigned_url: self.presigned_url,
19
+ created_at: self.created_at,
20
+ updated_at: self.updated_at
21
+ }
22
+ end
23
+
24
+ def to_s
25
+ "Image(id: #{self.image_id}, presigned_url: #{self.presigned_url}, urls: #{self.urls})"
26
+ end
27
+ end
28
+ end
@@ -1,10 +1,11 @@
1
1
  module ZeusSdk::V1
2
2
  class User
3
- attr_accessor :id, :name, :email, :email_verified, :first_name, :last_name, :created_at, :updated_at
3
+ attr_accessor :raw, :user_id, :name, :email, :email_verified, :first_name, :last_name, :created_at, :updated_at
4
4
 
5
5
  def initialize(user)
6
6
  return if user.blank?
7
- self.id = user["id"] if user.has_key?("id")
7
+ self.raw = user
8
+ self.user_id = user["id"] if user.has_key?("id")
8
9
  self.name = user["name"] if user.has_key?("name")
9
10
  self.first_name = user["first_name"] if user.has_key?("first_name")
10
11
  self.last_name = user["last_name"] if user.has_key?("last_name")
@@ -16,7 +17,7 @@ module ZeusSdk::V1
16
17
 
17
18
  def as_json(options={})
18
19
  {
19
- id: self.id,
20
+ id: self.user_id,
20
21
  name: self.name,
21
22
  first_name: self.first_name,
22
23
  last_name: self.last_name,
@@ -1,9 +1,10 @@
1
1
  module ZeusSdk::V1
2
2
  class Document
3
- attr_accessor :id, :name, :created_at, :updated_at
3
+ attr_accessor :raw, :document_id, :name, :created_at, :updated_at
4
4
 
5
5
  def initialize(doc)
6
- self.id = doc["id"]
6
+ self.raw = doc
7
+ self.document_id = doc["id"]
7
8
  self.name = doc["name"]
8
9
  self.created_at = doc["created_at"]
9
10
  self.updated_at = doc["updated_at"]
@@ -11,11 +12,15 @@ module ZeusSdk::V1
11
12
 
12
13
  def as_json(options={})
13
14
  return {
14
- id: self.id,
15
+ id: self.document_id,
15
16
  name: self.name,
16
17
  created_at: self.created_at,
17
18
  updated_at: self.updated_at
18
19
  }
19
20
  end
21
+
22
+ def to_s
23
+ "Document(id: #{self.document_id}, name: #{self.name})"
24
+ end
20
25
  end
21
26
  end
@@ -1,9 +1,11 @@
1
1
  module ZeusSdk::V1
2
2
  class Node
3
- attr_accessor :id, :document_id, :name, :type, :properties, :created_at, :updated_at
3
+ attr_accessor :raw, :node_id, :document_id, :name, :type, :properties, :created_at, :updated_at
4
4
 
5
5
  def initialize(node)
6
- self.id = node["id"]
6
+ self.raw = node
7
+ self.node_id = node["id"]
8
+ self.document_id = node["document_id"]
7
9
  self.name = node["name"]
8
10
  self.type = node["type"]
9
11
  self.properties = node["properties"]
@@ -13,7 +15,8 @@ module ZeusSdk::V1
13
15
 
14
16
  def as_json(options={})
15
17
  return {
16
- id: self.id,
18
+ id: self.node_id,
19
+ document_id: self.document_id,
17
20
  name: self.name,
18
21
  type: self.type,
19
22
  properties: self.properties,
@@ -21,5 +24,9 @@ module ZeusSdk::V1
21
24
  updated_at: self.updated_at
22
25
  }
23
26
  end
27
+
28
+ def to_s
29
+ "Node(id: #{self.node_id}, document_id: #{self.document_id}, name: #{self.name}, type: #{self.type}, properties: #{self.properties}, created_at: #{self.created_at}, updated_at: #{self.updated_at})"
30
+ end
24
31
  end
25
32
  end
@@ -1,3 +1,3 @@
1
1
  module ZeusSdk
2
- VERSION = "0.4.9"
2
+ VERSION = "0.5.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zeus_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.9
4
+ version: 0.5.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Campbell
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-16 00:00:00.000000000 Z
11
+ date: 2021-03-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -68,6 +68,7 @@ files:
68
68
  - lib/zeus_sdk/v1/auth.rb
69
69
  - lib/zeus_sdk/v1/content.rb
70
70
  - lib/zeus_sdk/v1/core.rb
71
+ - lib/zeus_sdk/v1/models/assets/image.rb
71
72
  - lib/zeus_sdk/v1/models/auth/user.rb
72
73
  - lib/zeus_sdk/v1/models/multiplayer/document.rb
73
74
  - lib/zeus_sdk/v1/models/multiplayer/node.rb