userapi-ai 0.2.0 → 0.3.0

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: 2974c481166912bcce0d7a9a618c078aca85d5bfd8743cc56459772a5f66f96c
4
- data.tar.gz: 4d89389ee688e9127058bd34b7866f0daf72a09684679148114a12c7fe62c061
3
+ metadata.gz: 9b9f1e430a00b0c38594bfdcaf2e9a73fc0e1b84335880cbf41b4c37ed2f3962
4
+ data.tar.gz: 35674d40a7625af53ee130443d89b52b212e2f03540e26e1a8dd69b52e5cceba
5
5
  SHA512:
6
- metadata.gz: c01ab655dc9b0982d2a8dad34a2b4627bfe22a16233a1e76045fcdb27020f5645fcead5e95f5cd66d14295c4e725d8e13cd478f23e82829a1a6e2ee30eb97603
7
- data.tar.gz: 57294ef669f33f3bcccf5b13787c070f13d7ca3780a15da7433b1b362829bfca813025feee3b357ca3006034cd2b05c3b66e380b09ab3bca141fc495bc206a00
6
+ metadata.gz: 5f2e96c827d8e79235b72b43f431649558b99c42da4ad203cf31368e00d9505ccfe8da0ae9749454675ceda58149af6052c5b2af7861fb3639b7b3f147674168
7
+ data.tar.gz: abe25672348422d4d4fbb64868f3dfecf757fc504ab068303c1ab7f0f37ecda6c72e2fcaa19b8366b6be948188497b9dae58346b81db769efa0ad893058fd318
data/README.md CHANGED
@@ -103,7 +103,31 @@ You can use it to generate images of people, animals, objects, and anything else
103
103
  webhook_url:  "https://example.com/upscale/webhook-url",
104
104
  webhook_type: "result")
105
105
  ```
106
- See more [here](https://butternut-saffron-e5e.notion.site/Midjourney-userapi-ai-doc-en-119680339b0a47e2ba6ae467eca58142#9abe719bb58948039acb5f0a6aee8947)
106
+ See more [here](https://butternut-saffron-e5e.notion.site/Midjourney-userapi-ai-doc-en-119680339b0a47e2ba6ae467eca58142#9abe719bb58948039acb5f0a6aee8947).
107
+
108
+ #### Tools
109
+
110
+ You can split the quad-layout output from Midjourney into 4 separate images. Don't forget to add the `gem 'mini_magick'`.
111
+
112
+ ```ruby
113
+ response = client.status result
114
+ if response["status"] == "done"
115
+ local_paths = UserapiAi::Tool.crop result: response["result"]
116
+ # or UserapiAi::Tool.crop url: "https://example.com/img.png"
117
+ local_paths.each do |path|
118
+ f = File.open(path)
119
+ ...
120
+ end
121
+ end
122
+ ```
123
+
124
+ ```bash
125
+ => local_paths
126
+ ["/var/folders/yb/bjdvl6mn3cx2l7nd08726k500000gn/T/mini_magick20240324-73984-31zmkb-0.png",
127
+ "/var/folders/yb/bjdvl6mn3cx2l7nd08726k500000gn/T/mini_magick20240324-73984-31zmkb-1.png",
128
+ "/var/folders/yb/bjdvl6mn3cx2l7nd08726k500000gn/T/mini_magick20240324-73984-31zmkb-2.png",
129
+ "/var/folders/yb/bjdvl6mn3cx2l7nd08726k500000gn/T/mini_magick20240324-73984-31zmkb-3.png"]
130
+ ```
107
131
 
108
132
  ## Development
109
133
 
@@ -0,0 +1,13 @@
1
+ module UserapiAi
2
+ class Tool
3
+ def self.crop url: nil, result: nil
4
+ url = result["url"] if url.nil?
5
+ image = MiniMagick::Image.open url
6
+ image.crop "50%x50%"
7
+ arr = image.path.split(".")
8
+ (0..3).map{ |i|
9
+ arr.dup.insert(-2, "-#{i}.").join("")
10
+ }
11
+ end
12
+ end
13
+ end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module UserapiAi
4
- VERSION = "0.2.0"
4
+ VERSION = "0.3.0"
5
5
  end
6
6
 
data/lib/userapi-ai.rb CHANGED
@@ -5,6 +5,7 @@ require "faraday/multipart"
5
5
 
6
6
  require_relative "userapi/http"
7
7
  require_relative "userapi/client"
8
+ require_relative "userapi/tools"
8
9
  require_relative "userapi/version"
9
10
 
10
11
  module UserapiAi
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: userapi-ai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Smolev Denis
@@ -57,6 +57,7 @@ files:
57
57
  - lib/userapi/client.rb
58
58
  - lib/userapi/compatibility.rb
59
59
  - lib/userapi/http.rb
60
+ - lib/userapi/tools.rb
60
61
  - lib/userapi/version.rb
61
62
  - sig/userapi/ai.rbs
62
63
  homepage: https://userapi.ai.
@@ -72,9 +73,9 @@ require_paths:
72
73
  - lib
73
74
  required_ruby_version: !ruby/object:Gem::Requirement
74
75
  requirements:
75
- - - ">="
76
+ - - '='
76
77
  - !ruby/object:Gem::Version
77
- version: 2.6.0
78
+ version: 3.0.0
78
79
  required_rubygems_version: !ruby/object:Gem::Requirement
79
80
  requirements:
80
81
  - - ">="