playwright-ruby-client 1.27.0 → 1.28.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.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/documentation/docs/api/element_handle.md +1 -0
  3. data/documentation/docs/api/frame.md +51 -3
  4. data/documentation/docs/api/frame_locator.md +50 -3
  5. data/documentation/docs/api/js_handle.md +5 -3
  6. data/documentation/docs/api/keyboard.md +1 -1
  7. data/documentation/docs/api/locator.md +73 -3
  8. data/documentation/docs/api/page.md +51 -3
  9. data/documentation/docs/api/request.md +1 -1
  10. data/documentation/docs/article/guides/rails_integration.md +1 -0
  11. data/documentation/docs/include/api_coverage.md +3 -0
  12. data/lib/playwright/channel_owner.rb +41 -0
  13. data/lib/playwright/channel_owners/browser_context.rb +6 -0
  14. data/lib/playwright/channel_owners/element_handle.rb +8 -1
  15. data/lib/playwright/channel_owners/frame.rb +2 -0
  16. data/lib/playwright/channel_owners/page.rb +23 -28
  17. data/lib/playwright/connection.rb +4 -1
  18. data/lib/playwright/locator_impl.rb +16 -2
  19. data/lib/playwright/locator_utils.rb +13 -19
  20. data/lib/playwright/utils.rb +6 -0
  21. data/lib/playwright/version.rb +2 -2
  22. data/lib/playwright_api/android.rb +12 -6
  23. data/lib/playwright_api/android_device.rb +6 -6
  24. data/lib/playwright_api/api_request_context.rb +6 -6
  25. data/lib/playwright_api/browser.rb +6 -6
  26. data/lib/playwright_api/browser_context.rb +6 -6
  27. data/lib/playwright_api/browser_type.rb +6 -6
  28. data/lib/playwright_api/cdp_session.rb +6 -6
  29. data/lib/playwright_api/console_message.rb +6 -6
  30. data/lib/playwright_api/dialog.rb +6 -6
  31. data/lib/playwright_api/element_handle.rb +8 -7
  32. data/lib/playwright_api/frame.rb +45 -11
  33. data/lib/playwright_api/frame_locator.rb +39 -6
  34. data/lib/playwright_api/js_handle.rb +7 -7
  35. data/lib/playwright_api/keyboard.rb +1 -1
  36. data/lib/playwright_api/locator.rb +55 -5
  37. data/lib/playwright_api/page.rb +45 -11
  38. data/lib/playwright_api/playwright.rb +6 -6
  39. data/lib/playwright_api/request.rb +7 -7
  40. data/lib/playwright_api/response.rb +6 -6
  41. data/lib/playwright_api/route.rb +6 -6
  42. data/lib/playwright_api/selectors.rb +6 -6
  43. data/lib/playwright_api/tracing.rb +6 -6
  44. data/lib/playwright_api/web_socket.rb +6 -6
  45. data/lib/playwright_api/worker.rb +6 -6
  46. metadata +4 -4
@@ -4,7 +4,7 @@ module Playwright
4
4
  # [`method: Locator.frameLocator`] method.
5
5
  #
6
6
  # ```python sync
7
- # locator = page.frame_locator("my-frame").locator("text=Submit")
7
+ # locator = page.frame_locator("my-frame").get_by_text("Submit")
8
8
  # locator.click()
9
9
  # ```
10
10
  #
@@ -27,7 +27,7 @@ module Playwright
27
27
  # [`:scope`](https://developer.mozilla.org/en-US/docs/Web/CSS/:scope) CSS selector:
28
28
  #
29
29
  # ```python sync
30
- # frameLocator = locator.frame_locator(":scope");
30
+ # frameLocator = locator.frame_locator(":scope")
31
31
  # ```
32
32
  class FrameLocator < PlaywrightApi
33
33
 
@@ -52,7 +52,7 @@ module Playwright
52
52
  end
53
53
 
54
54
  # Allows locating input elements by the text of the associated label. For example, this method will find the input by
55
- # label text Password in the following DOM:
55
+ # label text "Password" in the following DOM:
56
56
  #
57
57
  # ```html
58
58
  # <label for="password-input">Password:</label>
@@ -85,13 +85,14 @@ module Playwright
85
85
  role,
86
86
  checked: nil,
87
87
  disabled: nil,
88
+ exact: nil,
88
89
  expanded: nil,
89
90
  includeHidden: nil,
90
91
  level: nil,
91
92
  name: nil,
92
93
  pressed: nil,
93
94
  selected: nil)
94
- wrap_impl(@impl.get_by_role(unwrap_impl(role), checked: unwrap_impl(checked), disabled: unwrap_impl(disabled), expanded: unwrap_impl(expanded), includeHidden: unwrap_impl(includeHidden), level: unwrap_impl(level), name: unwrap_impl(name), pressed: unwrap_impl(pressed), selected: unwrap_impl(selected)))
95
+ wrap_impl(@impl.get_by_role(unwrap_impl(role), checked: unwrap_impl(checked), disabled: unwrap_impl(disabled), exact: unwrap_impl(exact), expanded: unwrap_impl(expanded), includeHidden: unwrap_impl(includeHidden), level: unwrap_impl(level), name: unwrap_impl(name), pressed: unwrap_impl(pressed), selected: unwrap_impl(selected)))
95
96
  end
96
97
 
97
98
  # Locate element by the test id. By default, the `data-testid` attribute is used as a test id. Use
@@ -100,12 +101,44 @@ module Playwright
100
101
  wrap_impl(@impl.get_by_test_id(unwrap_impl(testId)))
101
102
  end
102
103
 
103
- # Allows locating elements that contain given text.
104
+ # Allows locating elements that contain given text. Consider the following DOM structure:
105
+ #
106
+ # ```html
107
+ # <div>Hello <span>world</span></div>
108
+ # <div>Hello</div>
109
+ # ```
110
+ #
111
+ # You can locate by text substring, exact string, or a regular expression:
112
+ #
113
+ # ```python sync
114
+ # # Matches <span>
115
+ # page.get_by_text("world")
116
+ #
117
+ # # Matches first <div>
118
+ # page.get_by_text("Hello world")
119
+ #
120
+ # # Matches second <div>
121
+ # page.get_by_text("Hello", exact=True)
122
+ #
123
+ # # Matches both <div>s
124
+ # page.get_by_text(re.compile("Hello"))
125
+ #
126
+ # # Matches second <div>
127
+ # page.get_by_text(re.compile("^hello$", re.IGNORECASE))
128
+ # ```
129
+ #
130
+ # See also [`method: Locator.filter`] that allows to match by another criteria, like an accessible role, and then filter
131
+ # by the text content.
132
+ #
133
+ # > NOTE: Matching by text always normalizes whitespace, even with exact match. For example, it turns multiple spaces into
134
+ # one, turns line breaks into spaces and ignores leading and trailing whitespace.
135
+ # > NOTE: Input elements of the type `button` and `submit` are matched by their `value` instead of the text content. For
136
+ # example, locating by text `"Log in"` matches `<input type=button value="Log in">`.
104
137
  def get_by_text(text, exact: nil)
105
138
  wrap_impl(@impl.get_by_text(unwrap_impl(text), exact: unwrap_impl(exact)))
106
139
  end
107
140
 
108
- # Allows locating elements by their title. For example, this method will find the button by its title "Submit":
141
+ # Allows locating elements by their title. For example, this method will find the button by its title "Place the order":
109
142
  #
110
143
  # ```html
111
144
  # <button title='Place the order'>Order Now</button>
@@ -59,7 +59,7 @@ module Playwright
59
59
  # The method returns a map with **own property names** as keys and JSHandle instances for the property values.
60
60
  #
61
61
  # ```python sync
62
- # handle = page.evaluate_handle("{window, document}")
62
+ # handle = page.evaluate_handle("({window, document})")
63
63
  # properties = handle.get_properties()
64
64
  # window_handle = properties.get("window")
65
65
  # document_handle = properties.get("document")
@@ -88,12 +88,6 @@ module Playwright
88
88
  wrap_impl(@impl.to_s)
89
89
  end
90
90
 
91
- # -- inherited from EventEmitter --
92
- # @nodoc
93
- def off(event, callback)
94
- event_emitter_proxy.off(event, callback)
95
- end
96
-
97
91
  # -- inherited from EventEmitter --
98
92
  # @nodoc
99
93
  def once(event, callback)
@@ -106,6 +100,12 @@ module Playwright
106
100
  event_emitter_proxy.on(event, callback)
107
101
  end
108
102
 
103
+ # -- inherited from EventEmitter --
104
+ # @nodoc
105
+ def off(event, callback)
106
+ event_emitter_proxy.off(event, callback)
107
+ end
108
+
109
109
  private def event_emitter_proxy
110
110
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
111
111
  end
@@ -1,6 +1,6 @@
1
1
  module Playwright
2
2
  # Keyboard provides an api for managing a virtual keyboard. The high level api is [`method: Keyboard.type`], which takes
3
- # raw characters and generates proper keydown, keypress/input, and keyup events on your page.
3
+ # raw characters and generates proper `keydown`, `keypress`/`input`, and `keyup` events on your page.
4
4
  #
5
5
  # For finer control, you can use [`method: Keyboard.down`], [`method: Keyboard.up`], and [`method: Keyboard.insertText`]
6
6
  # to manually fire events as if they were generated from a real keyboard.
@@ -15,6 +15,11 @@ module Playwright
15
15
  wrap_impl(@impl.all_text_contents)
16
16
  end
17
17
 
18
+ # Calls [blur](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/blur) on the element.
19
+ def blur(timeout: nil)
20
+ wrap_impl(@impl.blur(timeout: unwrap_impl(timeout)))
21
+ end
22
+
18
23
  # This method returns the bounding box of the element, or `null` if the element is not visible. The bounding box is
19
24
  # calculated relative to the main frame viewport - which is usually the same as the browser window.
20
25
  #
@@ -58,6 +63,17 @@ module Playwright
58
63
  wrap_impl(@impl.check(force: unwrap_impl(force), noWaitAfter: unwrap_impl(noWaitAfter), position: unwrap_impl(position), timeout: unwrap_impl(timeout), trial: unwrap_impl(trial)))
59
64
  end
60
65
 
66
+ # This method waits for [actionability](../actionability.md) checks, focuses the element, clears it and triggers an
67
+ # `input` event after clearing.
68
+ #
69
+ # If the target element is not an `<input>`, `<textarea>` or `[contenteditable]` element, this method throws an error.
70
+ # However, if the element is inside the `<label>` element that has an associated
71
+ # [control](https://developer.mozilla.org/en-US/docs/Web/API/HTMLLabelElement/control), the control will be cleared
72
+ # instead.
73
+ def clear(force: nil, noWaitAfter: nil, timeout: nil)
74
+ wrap_impl(@impl.clear(force: unwrap_impl(force), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
75
+ end
76
+
61
77
  # This method clicks the element by performing the following steps:
62
78
  # 1. Wait for [actionability](../actionability.md) checks on the element, unless `force` option is set.
63
79
  # 1. Scroll the element into view if needed.
@@ -291,7 +307,7 @@ module Playwright
291
307
  end
292
308
 
293
309
  # Allows locating input elements by the text of the associated label. For example, this method will find the input by
294
- # label text Password in the following DOM:
310
+ # label text "Password" in the following DOM:
295
311
  #
296
312
  # ```html
297
313
  # <label for="password-input">Password:</label>
@@ -324,13 +340,14 @@ module Playwright
324
340
  role,
325
341
  checked: nil,
326
342
  disabled: nil,
343
+ exact: nil,
327
344
  expanded: nil,
328
345
  includeHidden: nil,
329
346
  level: nil,
330
347
  name: nil,
331
348
  pressed: nil,
332
349
  selected: nil)
333
- wrap_impl(@impl.get_by_role(unwrap_impl(role), checked: unwrap_impl(checked), disabled: unwrap_impl(disabled), expanded: unwrap_impl(expanded), includeHidden: unwrap_impl(includeHidden), level: unwrap_impl(level), name: unwrap_impl(name), pressed: unwrap_impl(pressed), selected: unwrap_impl(selected)))
350
+ wrap_impl(@impl.get_by_role(unwrap_impl(role), checked: unwrap_impl(checked), disabled: unwrap_impl(disabled), exact: unwrap_impl(exact), expanded: unwrap_impl(expanded), includeHidden: unwrap_impl(includeHidden), level: unwrap_impl(level), name: unwrap_impl(name), pressed: unwrap_impl(pressed), selected: unwrap_impl(selected)))
334
351
  end
335
352
 
336
353
  # Locate element by the test id. By default, the `data-testid` attribute is used as a test id. Use
@@ -339,12 +356,44 @@ module Playwright
339
356
  wrap_impl(@impl.get_by_test_id(unwrap_impl(testId)))
340
357
  end
341
358
 
342
- # Allows locating elements that contain given text.
359
+ # Allows locating elements that contain given text. Consider the following DOM structure:
360
+ #
361
+ # ```html
362
+ # <div>Hello <span>world</span></div>
363
+ # <div>Hello</div>
364
+ # ```
365
+ #
366
+ # You can locate by text substring, exact string, or a regular expression:
367
+ #
368
+ # ```python sync
369
+ # # Matches <span>
370
+ # page.get_by_text("world")
371
+ #
372
+ # # Matches first <div>
373
+ # page.get_by_text("Hello world")
374
+ #
375
+ # # Matches second <div>
376
+ # page.get_by_text("Hello", exact=True)
377
+ #
378
+ # # Matches both <div>s
379
+ # page.get_by_text(re.compile("Hello"))
380
+ #
381
+ # # Matches second <div>
382
+ # page.get_by_text(re.compile("^hello$", re.IGNORECASE))
383
+ # ```
384
+ #
385
+ # See also [`method: Locator.filter`] that allows to match by another criteria, like an accessible role, and then filter
386
+ # by the text content.
387
+ #
388
+ # > NOTE: Matching by text always normalizes whitespace, even with exact match. For example, it turns multiple spaces into
389
+ # one, turns line breaks into spaces and ignores leading and trailing whitespace.
390
+ # > NOTE: Input elements of the type `button` and `submit` are matched by their `value` instead of the text content. For
391
+ # example, locating by text `"Log in"` matches `<input type=button value="Log in">`.
343
392
  def get_by_text(text, exact: nil)
344
393
  wrap_impl(@impl.get_by_text(unwrap_impl(text), exact: unwrap_impl(exact)))
345
394
  end
346
395
 
347
- # Allows locating elements by their title. For example, this method will find the button by its title "Submit":
396
+ # Allows locating elements by their title. For example, this method will find the button by its title "Place the order":
348
397
  #
349
398
  # ```html
350
399
  # <button title='Place the order'>Order Now</button>
@@ -372,10 +421,11 @@ module Playwright
372
421
  def hover(
373
422
  force: nil,
374
423
  modifiers: nil,
424
+ noWaitAfter: nil,
375
425
  position: nil,
376
426
  timeout: nil,
377
427
  trial: nil)
378
- wrap_impl(@impl.hover(force: unwrap_impl(force), modifiers: unwrap_impl(modifiers), position: unwrap_impl(position), timeout: unwrap_impl(timeout), trial: unwrap_impl(trial)))
428
+ wrap_impl(@impl.hover(force: unwrap_impl(force), modifiers: unwrap_impl(modifiers), noWaitAfter: unwrap_impl(noWaitAfter), position: unwrap_impl(position), timeout: unwrap_impl(timeout), trial: unwrap_impl(trial)))
379
429
  end
380
430
 
381
431
  # Returns the `element.innerHTML`.
@@ -593,7 +593,7 @@ module Playwright
593
593
  end
594
594
 
595
595
  # Allows locating input elements by the text of the associated label. For example, this method will find the input by
596
- # label text Password in the following DOM:
596
+ # label text "Password" in the following DOM:
597
597
  #
598
598
  # ```html
599
599
  # <label for="password-input">Password:</label>
@@ -626,13 +626,14 @@ module Playwright
626
626
  role,
627
627
  checked: nil,
628
628
  disabled: nil,
629
+ exact: nil,
629
630
  expanded: nil,
630
631
  includeHidden: nil,
631
632
  level: nil,
632
633
  name: nil,
633
634
  pressed: nil,
634
635
  selected: nil)
635
- wrap_impl(@impl.get_by_role(unwrap_impl(role), checked: unwrap_impl(checked), disabled: unwrap_impl(disabled), expanded: unwrap_impl(expanded), includeHidden: unwrap_impl(includeHidden), level: unwrap_impl(level), name: unwrap_impl(name), pressed: unwrap_impl(pressed), selected: unwrap_impl(selected)))
636
+ wrap_impl(@impl.get_by_role(unwrap_impl(role), checked: unwrap_impl(checked), disabled: unwrap_impl(disabled), exact: unwrap_impl(exact), expanded: unwrap_impl(expanded), includeHidden: unwrap_impl(includeHidden), level: unwrap_impl(level), name: unwrap_impl(name), pressed: unwrap_impl(pressed), selected: unwrap_impl(selected)))
636
637
  end
637
638
 
638
639
  # Locate element by the test id. By default, the `data-testid` attribute is used as a test id. Use
@@ -641,12 +642,44 @@ module Playwright
641
642
  wrap_impl(@impl.get_by_test_id(unwrap_impl(testId)))
642
643
  end
643
644
 
644
- # Allows locating elements that contain given text.
645
+ # Allows locating elements that contain given text. Consider the following DOM structure:
646
+ #
647
+ # ```html
648
+ # <div>Hello <span>world</span></div>
649
+ # <div>Hello</div>
650
+ # ```
651
+ #
652
+ # You can locate by text substring, exact string, or a regular expression:
653
+ #
654
+ # ```python sync
655
+ # # Matches <span>
656
+ # page.get_by_text("world")
657
+ #
658
+ # # Matches first <div>
659
+ # page.get_by_text("Hello world")
660
+ #
661
+ # # Matches second <div>
662
+ # page.get_by_text("Hello", exact=True)
663
+ #
664
+ # # Matches both <div>s
665
+ # page.get_by_text(re.compile("Hello"))
666
+ #
667
+ # # Matches second <div>
668
+ # page.get_by_text(re.compile("^hello$", re.IGNORECASE))
669
+ # ```
670
+ #
671
+ # See also [`method: Locator.filter`] that allows to match by another criteria, like an accessible role, and then filter
672
+ # by the text content.
673
+ #
674
+ # > NOTE: Matching by text always normalizes whitespace, even with exact match. For example, it turns multiple spaces into
675
+ # one, turns line breaks into spaces and ignores leading and trailing whitespace.
676
+ # > NOTE: Input elements of the type `button` and `submit` are matched by their `value` instead of the text content. For
677
+ # example, locating by text `"Log in"` matches `<input type=button value="Log in">`.
645
678
  def get_by_text(text, exact: nil)
646
679
  wrap_impl(@impl.get_by_text(unwrap_impl(text), exact: unwrap_impl(exact)))
647
680
  end
648
681
 
649
- # Allows locating elements by their title. For example, this method will find the button by its title "Submit":
682
+ # Allows locating elements by their title. For example, this method will find the button by its title "Place the order":
650
683
  #
651
684
  # ```html
652
685
  # <button title='Place the order'>Order Now</button>
@@ -711,11 +744,12 @@ module Playwright
711
744
  selector,
712
745
  force: nil,
713
746
  modifiers: nil,
747
+ noWaitAfter: nil,
714
748
  position: nil,
715
749
  strict: nil,
716
750
  timeout: nil,
717
751
  trial: nil)
718
- wrap_impl(@impl.hover(unwrap_impl(selector), force: unwrap_impl(force), modifiers: unwrap_impl(modifiers), position: unwrap_impl(position), strict: unwrap_impl(strict), timeout: unwrap_impl(timeout), trial: unwrap_impl(trial)))
752
+ wrap_impl(@impl.hover(unwrap_impl(selector), force: unwrap_impl(force), modifiers: unwrap_impl(modifiers), noWaitAfter: unwrap_impl(noWaitAfter), position: unwrap_impl(position), strict: unwrap_impl(strict), timeout: unwrap_impl(timeout), trial: unwrap_impl(trial)))
719
753
  end
720
754
 
721
755
  # Returns `element.innerHTML`.
@@ -1520,12 +1554,6 @@ module Playwright
1520
1554
  wrap_impl(@impl.stop_css_coverage)
1521
1555
  end
1522
1556
 
1523
- # -- inherited from EventEmitter --
1524
- # @nodoc
1525
- def off(event, callback)
1526
- event_emitter_proxy.off(event, callback)
1527
- end
1528
-
1529
1557
  # -- inherited from EventEmitter --
1530
1558
  # @nodoc
1531
1559
  def once(event, callback)
@@ -1538,6 +1566,12 @@ module Playwright
1538
1566
  event_emitter_proxy.on(event, callback)
1539
1567
  end
1540
1568
 
1569
+ # -- inherited from EventEmitter --
1570
+ # @nodoc
1571
+ def off(event, callback)
1572
+ event_emitter_proxy.off(event, callback)
1573
+ end
1574
+
1541
1575
  private def event_emitter_proxy
1542
1576
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
1543
1577
  end
@@ -96,12 +96,6 @@ module Playwright
96
96
  wrap_impl(@impl.electron)
97
97
  end
98
98
 
99
- # -- inherited from EventEmitter --
100
- # @nodoc
101
- def off(event, callback)
102
- event_emitter_proxy.off(event, callback)
103
- end
104
-
105
99
  # -- inherited from EventEmitter --
106
100
  # @nodoc
107
101
  def once(event, callback)
@@ -114,6 +108,12 @@ module Playwright
114
108
  event_emitter_proxy.on(event, callback)
115
109
  end
116
110
 
111
+ # -- inherited from EventEmitter --
112
+ # @nodoc
113
+ def off(event, callback)
114
+ event_emitter_proxy.off(event, callback)
115
+ end
116
+
117
117
  private def event_emitter_proxy
118
118
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
119
119
  end
@@ -10,7 +10,7 @@ module Playwright
10
10
  # > NOTE: HTTP Error responses, such as 404 or 503, are still successful responses from HTTP standpoint, so request will
11
11
  # complete with `'requestfinished'` event.
12
12
  #
13
- # If request gets a 'redirect' response, the request is successfully finished with the 'requestfinished' event, and a new
13
+ # If request gets a 'redirect' response, the request is successfully finished with the `requestfinished` event, and a new
14
14
  # request is issued to a redirected url.
15
15
  class Request < PlaywrightApi
16
16
 
@@ -161,12 +161,6 @@ module Playwright
161
161
  wrap_impl(@impl.apply_fallback_overrides(unwrap_impl(overrides)))
162
162
  end
163
163
 
164
- # -- inherited from EventEmitter --
165
- # @nodoc
166
- def off(event, callback)
167
- event_emitter_proxy.off(event, callback)
168
- end
169
-
170
164
  # -- inherited from EventEmitter --
171
165
  # @nodoc
172
166
  def once(event, callback)
@@ -179,6 +173,12 @@ module Playwright
179
173
  event_emitter_proxy.on(event, callback)
180
174
  end
181
175
 
176
+ # -- inherited from EventEmitter --
177
+ # @nodoc
178
+ def off(event, callback)
179
+ event_emitter_proxy.off(event, callback)
180
+ end
181
+
182
182
  private def event_emitter_proxy
183
183
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
184
184
  end
@@ -110,12 +110,6 @@ module Playwright
110
110
  wrap_impl(@impl.from_service_worker?)
111
111
  end
112
112
 
113
- # -- inherited from EventEmitter --
114
- # @nodoc
115
- def off(event, callback)
116
- event_emitter_proxy.off(event, callback)
117
- end
118
-
119
113
  # -- inherited from EventEmitter --
120
114
  # @nodoc
121
115
  def once(event, callback)
@@ -128,6 +122,12 @@ module Playwright
128
122
  event_emitter_proxy.on(event, callback)
129
123
  end
130
124
 
125
+ # -- inherited from EventEmitter --
126
+ # @nodoc
127
+ def off(event, callback)
128
+ event_emitter_proxy.off(event, callback)
129
+ end
130
+
131
131
  private def event_emitter_proxy
132
132
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
133
133
  end
@@ -118,12 +118,6 @@ module Playwright
118
118
  wrap_impl(@impl.redirect_navigation_request(unwrap_impl(url)))
119
119
  end
120
120
 
121
- # -- inherited from EventEmitter --
122
- # @nodoc
123
- def off(event, callback)
124
- event_emitter_proxy.off(event, callback)
125
- end
126
-
127
121
  # -- inherited from EventEmitter --
128
122
  # @nodoc
129
123
  def once(event, callback)
@@ -136,6 +130,12 @@ module Playwright
136
130
  event_emitter_proxy.on(event, callback)
137
131
  end
138
132
 
133
+ # -- inherited from EventEmitter --
134
+ # @nodoc
135
+ def off(event, callback)
136
+ event_emitter_proxy.off(event, callback)
137
+ end
138
+
139
139
  private def event_emitter_proxy
140
140
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
141
141
  end
@@ -54,12 +54,6 @@ module Playwright
54
54
  wrap_impl(@impl.text_id_attribute=(unwrap_impl(attribute_name)))
55
55
  end
56
56
 
57
- # -- inherited from EventEmitter --
58
- # @nodoc
59
- def off(event, callback)
60
- event_emitter_proxy.off(event, callback)
61
- end
62
-
63
57
  # -- inherited from EventEmitter --
64
58
  # @nodoc
65
59
  def once(event, callback)
@@ -72,6 +66,12 @@ module Playwright
72
66
  event_emitter_proxy.on(event, callback)
73
67
  end
74
68
 
69
+ # -- inherited from EventEmitter --
70
+ # @nodoc
71
+ def off(event, callback)
72
+ event_emitter_proxy.off(event, callback)
73
+ end
74
+
75
75
  private def event_emitter_proxy
76
76
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
77
77
  end
@@ -64,12 +64,6 @@ module Playwright
64
64
  wrap_impl(@impl.stop_chunk(path: unwrap_impl(path)))
65
65
  end
66
66
 
67
- # -- inherited from EventEmitter --
68
- # @nodoc
69
- def off(event, callback)
70
- event_emitter_proxy.off(event, callback)
71
- end
72
-
73
67
  # -- inherited from EventEmitter --
74
68
  # @nodoc
75
69
  def once(event, callback)
@@ -82,6 +76,12 @@ module Playwright
82
76
  event_emitter_proxy.on(event, callback)
83
77
  end
84
78
 
79
+ # -- inherited from EventEmitter --
80
+ # @nodoc
81
+ def off(event, callback)
82
+ event_emitter_proxy.off(event, callback)
83
+ end
84
+
85
85
  private def event_emitter_proxy
86
86
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
87
87
  end
@@ -27,12 +27,6 @@ module Playwright
27
27
  wrap_impl(@impl.wait_for_event(unwrap_impl(event), predicate: unwrap_impl(predicate), timeout: unwrap_impl(timeout), &wrap_block_call(block)))
28
28
  end
29
29
 
30
- # -- inherited from EventEmitter --
31
- # @nodoc
32
- def off(event, callback)
33
- event_emitter_proxy.off(event, callback)
34
- end
35
-
36
30
  # -- inherited from EventEmitter --
37
31
  # @nodoc
38
32
  def once(event, callback)
@@ -45,6 +39,12 @@ module Playwright
45
39
  event_emitter_proxy.on(event, callback)
46
40
  end
47
41
 
42
+ # -- inherited from EventEmitter --
43
+ # @nodoc
44
+ def off(event, callback)
45
+ event_emitter_proxy.off(event, callback)
46
+ end
47
+
48
48
  private def event_emitter_proxy
49
49
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
50
50
  end
@@ -53,12 +53,6 @@ module Playwright
53
53
  wrap_impl(@impl.page=(unwrap_impl(req)))
54
54
  end
55
55
 
56
- # -- inherited from EventEmitter --
57
- # @nodoc
58
- def off(event, callback)
59
- event_emitter_proxy.off(event, callback)
60
- end
61
-
62
56
  # -- inherited from EventEmitter --
63
57
  # @nodoc
64
58
  def once(event, callback)
@@ -71,6 +65,12 @@ module Playwright
71
65
  event_emitter_proxy.on(event, callback)
72
66
  end
73
67
 
68
+ # -- inherited from EventEmitter --
69
+ # @nodoc
70
+ def off(event, callback)
71
+ event_emitter_proxy.off(event, callback)
72
+ end
73
+
74
74
  private def event_emitter_proxy
75
75
  @event_emitter_proxy ||= EventEmitterProxy.new(self, @impl)
76
76
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: playwright-ruby-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.27.0
4
+ version: 1.28.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - YusukeIwaki
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-10-14 00:00:00.000000000 Z
11
+ date: 2022-12-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby
@@ -397,8 +397,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
397
397
  - !ruby/object:Gem::Version
398
398
  version: '0'
399
399
  requirements: []
400
- rubygems_version: 3.3.7
400
+ rubygems_version: 3.3.26
401
401
  signing_key:
402
402
  specification_version: 4
403
- summary: The Ruby binding of playwright driver 1.27.0
403
+ summary: The Ruby binding of playwright driver 1.28.1
404
404
  test_files: []