puppeteer-ruby 0.0.8 → 0.0.9
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/docs/Puppeteer.html +2 -2
- data/docs/Puppeteer/AsyncAwaitBehavior.html +1 -1
- data/docs/Puppeteer/Browser.html +47 -49
- data/docs/Puppeteer/BrowserContext.html +1 -1
- data/docs/Puppeteer/BrowserFetcher.html +1 -1
- data/docs/Puppeteer/BrowserRunner.html +1 -1
- data/docs/Puppeteer/BrowserRunner/BrowserProcess.html +1 -1
- data/docs/Puppeteer/CDPSession.html +1 -1
- data/docs/Puppeteer/CDPSession/Error.html +1 -1
- data/docs/Puppeteer/ConcurrentRubyUtils.html +1 -1
- data/docs/Puppeteer/Connection.html +1 -1
- data/docs/Puppeteer/Connection/MessageCallback.html +1 -1
- data/docs/Puppeteer/Connection/ProtocolError.html +1 -1
- data/docs/Puppeteer/Connection/RequestDebugPrinter.html +1 -1
- data/docs/Puppeteer/Connection/ResponseDebugPrinter.html +1 -1
- data/docs/Puppeteer/ConsoleMessage.html +1 -1
- data/docs/Puppeteer/ConsoleMessage/Location.html +1 -1
- data/docs/Puppeteer/DOMWorld.html +1 -1
- data/docs/Puppeteer/DOMWorld/DetachedError.html +1 -1
- data/docs/Puppeteer/DOMWorld/DocumentEvaluationError.html +1 -1
- data/docs/Puppeteer/DebugPrint.html +1 -1
- data/docs/Puppeteer/Device.html +1 -1
- data/docs/Puppeteer/Devices.html +1 -1
- data/docs/Puppeteer/ElementHandle.html +1 -1
- data/docs/Puppeteer/ElementHandle/ElementNotFoundError.html +1 -1
- data/docs/Puppeteer/ElementHandle/ElementNotVisibleError.html +1 -1
- data/docs/Puppeteer/ElementHandle/Point.html +1 -1
- data/docs/Puppeteer/ElementHandle/ScrollIntoViewError.html +1 -1
- data/docs/Puppeteer/EmulationManager.html +1 -1
- data/docs/Puppeteer/EventCallbackable.html +1 -1
- data/docs/Puppeteer/EventCallbackable/EventListeners.html +1 -1
- data/docs/Puppeteer/ExecutionContext.html +1 -1
- data/docs/Puppeteer/ExecutionContext/EvaluationError.html +1 -1
- data/docs/Puppeteer/ExecutionContext/JavaScriptExpression.html +1 -1
- data/docs/Puppeteer/ExecutionContext/JavaScriptFunction.html +1 -1
- data/docs/Puppeteer/FileChooser.html +1 -1
- data/docs/Puppeteer/Frame.html +1 -1
- data/docs/Puppeteer/FrameManager.html +22 -26
- data/docs/Puppeteer/FrameManager/NavigationError.html +1 -1
- data/docs/Puppeteer/IfPresent.html +1 -1
- data/docs/Puppeteer/JSHandle.html +1 -1
- data/docs/Puppeteer/Keyboard.html +1 -1
- data/docs/Puppeteer/Keyboard/KeyDefinition.html +1 -1
- data/docs/Puppeteer/Keyboard/KeyDescription.html +1 -1
- data/docs/Puppeteer/Launcher.html +1 -1
- data/docs/Puppeteer/Launcher/Base.html +1 -1
- data/docs/Puppeteer/Launcher/Base/ExecutablePathNotFound.html +1 -1
- data/docs/Puppeteer/Launcher/BrowserOptions.html +1 -1
- data/docs/Puppeteer/Launcher/Chrome.html +1 -1
- data/docs/Puppeteer/Launcher/Chrome/DefaultArgs.html +1 -1
- data/docs/Puppeteer/Launcher/ChromeArgOptions.html +1 -1
- data/docs/Puppeteer/Launcher/LaunchOptions.html +1 -1
- data/docs/Puppeteer/LifecycleWatcher.html +1 -1
- data/docs/Puppeteer/LifecycleWatcher/ExpectedLifecycle.html +1 -1
- data/docs/Puppeteer/LifecycleWatcher/FrameDetachedError.html +1 -1
- data/docs/Puppeteer/LifecycleWatcher/TerminatedError.html +1 -1
- data/docs/Puppeteer/Mouse.html +1 -1
- data/docs/Puppeteer/Mouse/Button.html +1 -1
- data/docs/Puppeteer/NetworkManager.html +1 -1
- data/docs/Puppeteer/NetworkManager/Credentials.html +1 -1
- data/docs/Puppeteer/Page.html +1 -1
- data/docs/Puppeteer/Page/FileChooserTimeoutError.html +1 -1
- data/docs/Puppeteer/Page/ScreenshotOptions.html +1 -1
- data/docs/Puppeteer/Page/ScriptTag.html +1 -1
- data/docs/Puppeteer/Page/StyleTag.html +1 -1
- data/docs/Puppeteer/Page/TargetCrashedError.html +1 -1
- data/docs/Puppeteer/RemoteObject.html +1 -1
- data/docs/Puppeteer/Target.html +102 -172
- data/docs/Puppeteer/Target/InitializeFailure.html +1 -1
- data/docs/Puppeteer/Target/TargetInfo.html +1 -1
- data/docs/Puppeteer/TimeoutError.html +1 -1
- data/docs/Puppeteer/TimeoutSettings.html +1 -1
- data/docs/Puppeteer/TouchScreen.html +1 -1
- data/docs/Puppeteer/Viewport.html +1 -1
- data/docs/Puppeteer/WaitTask.html +1 -1
- data/docs/Puppeteer/WaitTask/TerminatedError.html +1 -1
- data/docs/Puppeteer/WaitTask/TimeoutError.html +1 -1
- data/docs/Puppeteer/WebSocket.html +1 -1
- data/docs/Puppeteer/WebSocket/DriverImpl.html +1 -1
- data/docs/Puppeteer/WebSocketTransport.html +1 -1
- data/docs/Puppeteer/WebSocktTransportError.html +1 -1
- data/docs/_index.html +1 -1
- data/docs/file.README.html +1 -1
- data/docs/index.html +1 -1
- data/docs/method_list.html +300 -308
- data/docs/top-level-namespace.html +1 -1
- data/lib/puppeteer/browser.rb +3 -4
- data/lib/puppeteer/target.rb +16 -13
- data/lib/puppeteer/version.rb +1 -1
- metadata +2 -2
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
</div>
|
|
117
117
|
|
|
118
118
|
<div id="footer">
|
|
119
|
-
Generated on
|
|
119
|
+
Generated on Tue Jun 9 00:13:39 2020 by
|
|
120
120
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
121
121
|
0.9.24 (ruby-2.6.3).
|
|
122
122
|
</div>
|
data/lib/puppeteer/browser.rb
CHANGED
|
@@ -102,8 +102,7 @@ class Puppeteer::Browser
|
|
|
102
102
|
)
|
|
103
103
|
# assert(!this._targets.has(event.targetInfo.targetId), 'Target should not exist before targetCreated');
|
|
104
104
|
@targets[target_info.target_id] = target
|
|
105
|
-
|
|
106
|
-
target.on_initialize_succeeded do
|
|
105
|
+
if await target.initialized_promise
|
|
107
106
|
emit_event 'Events.Browser.TargetCreated', target
|
|
108
107
|
context.emit_event 'Events.BrowserContext.TargetCreated', target
|
|
109
108
|
end
|
|
@@ -118,10 +117,10 @@ class Puppeteer::Browser
|
|
|
118
117
|
def handle_target_destroyed(event)
|
|
119
118
|
target_id = event['targetId']
|
|
120
119
|
target = @targets[target_id]
|
|
121
|
-
target.
|
|
120
|
+
target.ignore_initialize_callback_promise
|
|
122
121
|
@targets.delete(target_id)
|
|
123
122
|
target.handle_closed
|
|
124
|
-
target.
|
|
123
|
+
if await target.initialized_promise
|
|
125
124
|
emit_event 'Events.Browser.TargetDestroyed', target
|
|
126
125
|
target.browser_context.emit_event 'Events.BrowserContext.TargetDestroyed', target
|
|
127
126
|
end
|
data/lib/puppeteer/target.rb
CHANGED
|
@@ -33,13 +33,16 @@ class Puppeteer::Target
|
|
|
33
33
|
# this._pagePromise = null;
|
|
34
34
|
# /** @type {?Promise<!Worker>} */
|
|
35
35
|
# this._workerPromise = null;
|
|
36
|
-
@
|
|
36
|
+
@initialize_callback_promise = resolvable_future
|
|
37
|
+
@initialized_promise = @initialize_callback_promise.then do |success|
|
|
38
|
+
handle_initialized(success)
|
|
39
|
+
end
|
|
37
40
|
# this._isClosedPromise = new Promise(fulfill => this._closedCallback = fulfill);
|
|
38
41
|
|
|
39
42
|
@is_initialized = @target_info.type != 'page' || !@target_info.url.empty?
|
|
40
43
|
|
|
41
44
|
if @is_initialized
|
|
42
|
-
|
|
45
|
+
@initialize_callback_promise.fulfill(true)
|
|
43
46
|
end
|
|
44
47
|
end
|
|
45
48
|
|
|
@@ -47,24 +50,24 @@ class Puppeteer::Target
|
|
|
47
50
|
|
|
48
51
|
class InitializeFailure < StandardError; end
|
|
49
52
|
|
|
50
|
-
def
|
|
53
|
+
def ignore_initialize_callback_promise
|
|
54
|
+
@initialize_callback_promise.fulfill(false)
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
private def handle_initialized(success)
|
|
51
58
|
unless success
|
|
52
|
-
|
|
59
|
+
raise InitializeFailure.new('Failed to create target for page')
|
|
53
60
|
end
|
|
54
|
-
@on_initialize_succeeded&.call
|
|
55
|
-
@initialized_promise.fulfill(true)
|
|
56
61
|
opener_page = opener&.page
|
|
57
62
|
if opener_page.nil? || type != 'page'
|
|
58
|
-
return
|
|
63
|
+
return true
|
|
59
64
|
end
|
|
60
65
|
# if (!openerPage.listenerCount(Events.Page.Popup))
|
|
61
66
|
# return true;
|
|
62
67
|
popup_page = page
|
|
63
68
|
opener_page.emit_event('Events.Page.Popup', popup_page)
|
|
64
|
-
end
|
|
65
69
|
|
|
66
|
-
|
|
67
|
-
@on_initialize_succeeded = block
|
|
70
|
+
true
|
|
68
71
|
end
|
|
69
72
|
|
|
70
73
|
def handle_closed
|
|
@@ -85,7 +88,7 @@ class Puppeteer::Target
|
|
|
85
88
|
end
|
|
86
89
|
|
|
87
90
|
def page
|
|
88
|
-
if ['page', 'background_page'].include?(@target_info.type) && @page.nil?
|
|
91
|
+
if ['page', 'background_page', 'webview'].include?(@target_info.type) && @page.nil?
|
|
89
92
|
client = @session_factory.call
|
|
90
93
|
@page = Puppeteer::Page.create(client, self, @ignore_https_errors, @default_viewport, @screenshot_task_queue)
|
|
91
94
|
end
|
|
@@ -142,9 +145,9 @@ class Puppeteer::Target
|
|
|
142
145
|
def handle_target_info_changed(target_info)
|
|
143
146
|
@target_info = target_info
|
|
144
147
|
|
|
145
|
-
if !@is_initialized && (@target_info.type != 'page' ||
|
|
148
|
+
if !@is_initialized && (@target_info.type != 'page' || !@target_info.url.empty?)
|
|
146
149
|
@is_initialized = true
|
|
147
|
-
|
|
150
|
+
@initialize_callback_promise.fulfill(true)
|
|
148
151
|
end
|
|
149
152
|
end
|
|
150
153
|
end
|
data/lib/puppeteer/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: puppeteer-ruby
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.9
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- YusukeIwaki
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2020-06-
|
|
11
|
+
date: 2020-06-08 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: concurrent-ruby
|