stagehand 0.0.4 → 3.5.2
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 +7 -0
- data/.ignore +2 -0
- data/CHANGELOG.md +185 -0
- data/README.md +394 -31
- data/SECURITY.md +23 -0
- data/lib/stagehand/client.rb +123 -4
- data/lib/stagehand/errors.rb +228 -0
- data/lib/stagehand/file_part.rb +58 -0
- data/lib/stagehand/internal/stream.rb +56 -0
- data/lib/stagehand/internal/transport/base_client.rb +575 -0
- data/lib/stagehand/internal/transport/pooled_net_requester.rb +210 -0
- data/lib/stagehand/internal/type/array_of.rb +168 -0
- data/lib/stagehand/internal/type/base_model.rb +531 -0
- data/lib/stagehand/internal/type/base_page.rb +55 -0
- data/lib/stagehand/internal/type/base_stream.rb +83 -0
- data/lib/stagehand/internal/type/boolean.rb +77 -0
- data/lib/stagehand/internal/type/converter.rb +327 -0
- data/lib/stagehand/internal/type/enum.rb +131 -0
- data/lib/stagehand/internal/type/file_input.rb +111 -0
- data/lib/stagehand/internal/type/hash_of.rb +188 -0
- data/lib/stagehand/internal/type/request_parameters.rb +42 -0
- data/lib/stagehand/internal/type/union.rb +237 -0
- data/lib/stagehand/internal/type/unknown.rb +81 -0
- data/lib/stagehand/internal/util.rb +920 -0
- data/lib/stagehand/internal.rb +20 -0
- data/lib/stagehand/local.rb +439 -0
- data/lib/stagehand/models/action.rb +50 -0
- data/lib/stagehand/models/model_config.rb +55 -0
- data/lib/stagehand/models/session_act_params.rb +112 -0
- data/lib/stagehand/models/session_act_response.rb +127 -0
- data/lib/stagehand/models/session_end_params.rb +33 -0
- data/lib/stagehand/models/session_end_response.rb +17 -0
- data/lib/stagehand/models/session_execute_params.rb +212 -0
- data/lib/stagehand/models/session_execute_response.rb +212 -0
- data/lib/stagehand/models/session_extract_params.rb +107 -0
- data/lib/stagehand/models/session_extract_response.rb +46 -0
- data/lib/stagehand/models/session_navigate_params.rb +107 -0
- data/lib/stagehand/models/session_navigate_response.rb +44 -0
- data/lib/stagehand/models/session_observe_params.rb +99 -0
- data/lib/stagehand/models/session_observe_response.rb +91 -0
- data/lib/stagehand/models/session_replay_params.rb +33 -0
- data/lib/stagehand/models/session_replay_response.rb +100 -0
- data/lib/stagehand/models/session_start_params.rb +762 -0
- data/lib/stagehand/models/session_start_response.rb +55 -0
- data/lib/stagehand/models/stream_event.rb +120 -0
- data/lib/stagehand/models.rb +63 -0
- data/lib/stagehand/request_options.rb +77 -0
- data/lib/stagehand/resources/sessions.rb +488 -0
- data/lib/stagehand/version.rb +3 -1
- data/lib/stagehand.rb +74 -29
- data/manifest.yaml +17 -0
- data/rbi/stagehand/client.rbi +89 -0
- data/rbi/stagehand/errors.rbi +205 -0
- data/rbi/stagehand/file_part.rbi +37 -0
- data/rbi/stagehand/internal/stream.rbi +20 -0
- data/rbi/stagehand/internal/transport/base_client.rbi +314 -0
- data/rbi/stagehand/internal/transport/pooled_net_requester.rbi +83 -0
- data/rbi/stagehand/internal/type/array_of.rbi +104 -0
- data/rbi/stagehand/internal/type/base_model.rbi +308 -0
- data/rbi/stagehand/internal/type/base_page.rbi +42 -0
- data/rbi/stagehand/internal/type/base_stream.rbi +75 -0
- data/rbi/stagehand/internal/type/boolean.rbi +58 -0
- data/rbi/stagehand/internal/type/converter.rbi +216 -0
- data/rbi/stagehand/internal/type/enum.rbi +82 -0
- data/rbi/stagehand/internal/type/file_input.rbi +59 -0
- data/rbi/stagehand/internal/type/hash_of.rbi +104 -0
- data/rbi/stagehand/internal/type/request_parameters.rbi +29 -0
- data/rbi/stagehand/internal/type/union.rbi +128 -0
- data/rbi/stagehand/internal/type/unknown.rbi +58 -0
- data/rbi/stagehand/internal/util.rbi +487 -0
- data/rbi/stagehand/internal.rbi +18 -0
- data/rbi/stagehand/models/action.rbi +77 -0
- data/rbi/stagehand/models/model_config.rbi +94 -0
- data/rbi/stagehand/models/session_act_params.rbi +204 -0
- data/rbi/stagehand/models/session_act_response.rbi +250 -0
- data/rbi/stagehand/models/session_end_params.rbi +87 -0
- data/rbi/stagehand/models/session_end_response.rbi +30 -0
- data/rbi/stagehand/models/session_execute_params.rbi +440 -0
- data/rbi/stagehand/models/session_execute_response.rbi +414 -0
- data/rbi/stagehand/models/session_extract_params.rbi +209 -0
- data/rbi/stagehand/models/session_extract_response.rbi +91 -0
- data/rbi/stagehand/models/session_navigate_params.rbi +240 -0
- data/rbi/stagehand/models/session_navigate_response.rbi +91 -0
- data/rbi/stagehand/models/session_observe_params.rbi +198 -0
- data/rbi/stagehand/models/session_observe_response.rbi +184 -0
- data/rbi/stagehand/models/session_replay_params.rbi +89 -0
- data/rbi/stagehand/models/session_replay_response.rbi +286 -0
- data/rbi/stagehand/models/session_start_params.rbi +1703 -0
- data/rbi/stagehand/models/session_start_response.rbi +102 -0
- data/rbi/stagehand/models/stream_event.rbi +237 -0
- data/rbi/stagehand/models.rbi +25 -0
- data/rbi/stagehand/request_options.rbi +59 -0
- data/rbi/stagehand/resources/sessions.rbi +421 -0
- data/rbi/stagehand/version.rbi +5 -0
- data/sig/stagehand/client.rbs +41 -0
- data/sig/stagehand/errors.rbs +117 -0
- data/sig/stagehand/file_part.rbs +21 -0
- data/sig/stagehand/internal/stream.rbs +9 -0
- data/sig/stagehand/internal/transport/base_client.rbs +133 -0
- data/sig/stagehand/internal/transport/pooled_net_requester.rbs +48 -0
- data/sig/stagehand/internal/type/array_of.rbs +48 -0
- data/sig/stagehand/internal/type/base_model.rbs +102 -0
- data/sig/stagehand/internal/type/base_page.rbs +24 -0
- data/sig/stagehand/internal/type/base_stream.rbs +38 -0
- data/sig/stagehand/internal/type/boolean.rbs +26 -0
- data/sig/stagehand/internal/type/converter.rbs +79 -0
- data/sig/stagehand/internal/type/enum.rbs +32 -0
- data/sig/stagehand/internal/type/file_input.rbs +25 -0
- data/sig/stagehand/internal/type/hash_of.rbs +48 -0
- data/sig/stagehand/internal/type/request_parameters.rbs +19 -0
- data/sig/stagehand/internal/type/union.rbs +52 -0
- data/sig/stagehand/internal/type/unknown.rbs +26 -0
- data/sig/stagehand/internal/util.rbs +185 -0
- data/sig/stagehand/internal.rbs +9 -0
- data/sig/stagehand/models/action.rbs +46 -0
- data/sig/stagehand/models/model_config.rbs +56 -0
- data/sig/stagehand/models/session_act_params.rbs +111 -0
- data/sig/stagehand/models/session_act_response.rbs +121 -0
- data/sig/stagehand/models/session_end_params.rbs +41 -0
- data/sig/stagehand/models/session_end_response.rbs +13 -0
- data/sig/stagehand/models/session_execute_params.rbs +193 -0
- data/sig/stagehand/models/session_execute_response.rbs +215 -0
- data/sig/stagehand/models/session_extract_params.rbs +112 -0
- data/sig/stagehand/models/session_extract_response.rbs +36 -0
- data/sig/stagehand/models/session_navigate_params.rbs +114 -0
- data/sig/stagehand/models/session_navigate_response.rbs +36 -0
- data/sig/stagehand/models/session_observe_params.rbs +105 -0
- data/sig/stagehand/models/session_observe_response.rbs +89 -0
- data/sig/stagehand/models/session_replay_params.rbs +41 -0
- data/sig/stagehand/models/session_replay_response.rbs +137 -0
- data/sig/stagehand/models/session_start_params.rbs +866 -0
- data/sig/stagehand/models/session_start_response.rbs +44 -0
- data/sig/stagehand/models/stream_event.rbs +109 -0
- data/sig/stagehand/models.rbs +23 -0
- data/sig/stagehand/request_options.rbs +34 -0
- data/sig/stagehand/resources/sessions.rbs +121 -0
- data/sig/stagehand/version.rbs +3 -0
- metadata +170 -54
- data/.gitignore +0 -16
- data/Gemfile +0 -4
- data/Rakefile +0 -10
- data/lib/stagehand/client/oauth.rb +0 -32
- data/lib/stagehand/client/user.rb +0 -10
- data/lib/stagehand/rack/middleware.rb +0 -33
- data/lib/stagehand/railtie.rb +0 -19
- data/spec/spec_helper.rb +0 -7
- data/spec/stagehand_spec.rb +0 -44
- data/stagehand.gemspec +0 -25
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
module Stagehand::Rack
|
|
2
|
-
class Middleware
|
|
3
|
-
def initialize(app)
|
|
4
|
-
@app = app
|
|
5
|
-
end
|
|
6
|
-
|
|
7
|
-
def call(env)
|
|
8
|
-
request = env['stagehand'] = Rack::Request.new(env)
|
|
9
|
-
|
|
10
|
-
response = catch :stagehand do
|
|
11
|
-
if request.path == '/callback'
|
|
12
|
-
token_response = HTTParty.post(Stagehand.access_token_url, :body => {
|
|
13
|
-
:client_id => Stagehand.config.client_id,
|
|
14
|
-
:client_secret => Stagehand.config.client_secret,
|
|
15
|
-
:redirect_uri => Stagehand.redirect_uri,
|
|
16
|
-
:code => request.params['code'],
|
|
17
|
-
:grant_type => 'authorization_code'}
|
|
18
|
-
)
|
|
19
|
-
env['rack.session'][:access_token] = token_response["access_token"]
|
|
20
|
-
# redirect to root
|
|
21
|
-
[302, {'Location'=>'/'}, []]
|
|
22
|
-
else
|
|
23
|
-
@app.call(env)
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
rescue InvalidRequest => e
|
|
27
|
-
[400, {}, e.message]
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
class InvalidRequest < StandardError
|
|
32
|
-
end
|
|
33
|
-
end
|
data/lib/stagehand/railtie.rb
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
require 'rails'
|
|
2
|
-
|
|
3
|
-
class Stagehand::Railtie < Rails::Railtie
|
|
4
|
-
config.stagehand = ActiveSupport::OrderedOptions.new
|
|
5
|
-
|
|
6
|
-
initializer "staghand.configure" do |app|
|
|
7
|
-
Stagehand.configure do |config|
|
|
8
|
-
config.client_id = app.config.stagehand[:client_id]
|
|
9
|
-
config.client_secret = app.config.stagehand[:client_secret]
|
|
10
|
-
config.resource_host = app.config.stagehand[:resource_host]
|
|
11
|
-
config.client_host = app.config.stagehand[:client_host]
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
initializer "stagehand.initialize_middleware" do |app|
|
|
16
|
-
app.middleware.use ::Stagehand::Rack::Middleware
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
end
|
data/spec/spec_helper.rb
DELETED
data/spec/stagehand_spec.rb
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
|
|
3
|
-
RSpec.configure do |c|
|
|
4
|
-
c.before(:each) do
|
|
5
|
-
Stagehand.configure do |config|
|
|
6
|
-
config.client_id = 'test_app'
|
|
7
|
-
config.client_secret = 'abcdef123456'
|
|
8
|
-
config.resource_host = 'http://0.0.0.0:3000'
|
|
9
|
-
config.client_host = 'http://0.0.0.0:4000'
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
describe Stagehand do
|
|
15
|
-
describe "initialization" do
|
|
16
|
-
it "can create an OAuth 2.0 authorize url" do
|
|
17
|
-
Stagehand.authorize_url.should == "http://0.0.0.0:3000/oauth/authorize?client_id=test_app&client_secret=abcdef123456&redirect_uri=http://0.0.0.0:4000/callback"
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
describe "url helpers" do
|
|
22
|
-
it "can get the access token url" do
|
|
23
|
-
Stagehand.access_token_url.should == "http://0.0.0.0:3000/oauth/access_token"
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
it "can get the redirect uri" do
|
|
27
|
-
Stagehand.redirect_uri.should == "http://0.0.0.0:4000/callback"
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
it "can get the logout url" do
|
|
31
|
-
Stagehand.logout_url.should == "http://0.0.0.0:3000/logout?redirect_uri=http://0.0.0.0:4000"
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
it "can get the access token" do
|
|
35
|
-
Stagehand.access_token == session[:access_token]
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
describe "current user" do
|
|
40
|
-
it "can see his profile" do
|
|
41
|
-
Stagehand.profile == { username: "Test" }
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
end
|
data/stagehand.gemspec
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
|
2
|
-
$:.push File.expand_path("../lib", __FILE__)
|
|
3
|
-
require "stagehand/version"
|
|
4
|
-
|
|
5
|
-
Gem::Specification.new do |s|
|
|
6
|
-
s.name = "stagehand"
|
|
7
|
-
s.version = Stagehand::VERSION
|
|
8
|
-
s.authors = ["Reed Law"]
|
|
9
|
-
s.email = ["reed@smashingboxes.com.com"]
|
|
10
|
-
s.homepage = "https://github.com/smashingboxes/stagehand"
|
|
11
|
-
s.summary = %q{client library for Personas (user management) service}
|
|
12
|
-
s.description = %q{Client-side library for manipulating RESTful resources provided by Personas, a Rails + Backbone user managment service}
|
|
13
|
-
|
|
14
|
-
s.rubyforge_project = "stagehand"
|
|
15
|
-
|
|
16
|
-
s.files = `git ls-files`.split("\n")
|
|
17
|
-
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
|
18
|
-
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
|
19
|
-
s.require_paths = ["lib"]
|
|
20
|
-
|
|
21
|
-
# specify any dependencies here; for example:
|
|
22
|
-
s.add_development_dependency 'rspec', '~> 2.7.0'
|
|
23
|
-
s.add_runtime_dependency 'yajl-ruby', '~> 1.0.0'
|
|
24
|
-
s.add_runtime_dependency 'httparty', '~> 0.8.1'
|
|
25
|
-
end
|