@serenity-js/web 3.5.0 → 3.6.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 (30) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/lib/screenplay/abilities/BrowseTheWeb.d.ts +4 -4
  3. package/lib/screenplay/abilities/BrowseTheWeb.d.ts.map +1 -1
  4. package/lib/screenplay/abilities/BrowseTheWeb.js +6 -0
  5. package/lib/screenplay/abilities/BrowseTheWeb.js.map +1 -1
  6. package/lib/screenplay/models/BrowsingSession.d.ts +5 -0
  7. package/lib/screenplay/models/BrowsingSession.d.ts.map +1 -1
  8. package/lib/screenplay/models/BrowsingSession.js.map +1 -1
  9. package/lib/screenplay/models/Locator.d.ts +3 -0
  10. package/lib/screenplay/models/Locator.d.ts.map +1 -1
  11. package/lib/screenplay/models/Locator.js +3 -0
  12. package/lib/screenplay/models/Locator.js.map +1 -1
  13. package/lib/screenplay/models/Page.d.ts +6 -0
  14. package/lib/screenplay/models/Page.d.ts.map +1 -1
  15. package/lib/screenplay/models/Page.js.map +1 -1
  16. package/lib/screenplay/models/PageElement.d.ts +1 -0
  17. package/lib/screenplay/models/PageElement.d.ts.map +1 -1
  18. package/lib/screenplay/models/PageElement.js +6 -0
  19. package/lib/screenplay/models/PageElement.js.map +1 -1
  20. package/lib/screenplay/models/selectors/Selector.d.ts +2 -1
  21. package/lib/screenplay/models/selectors/Selector.d.ts.map +1 -1
  22. package/lib/screenplay/models/selectors/Selector.js +2 -1
  23. package/lib/screenplay/models/selectors/Selector.js.map +1 -1
  24. package/package.json +5 -5
  25. package/src/screenplay/abilities/BrowseTheWeb.ts +7 -5
  26. package/src/screenplay/models/BrowsingSession.ts +6 -0
  27. package/src/screenplay/models/Locator.ts +3 -0
  28. package/src/screenplay/models/Page.ts +7 -0
  29. package/src/screenplay/models/PageElement.ts +8 -0
  30. package/src/screenplay/models/selectors/Selector.ts +2 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,23 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.6.0](https://github.com/serenity-js/serenity-js/compare/v3.5.0...v3.6.0) (2023-07-11)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **deps:** update dependency tiny-types to ^1.20.0 ([6d7bf43](https://github.com/serenity-js/serenity-js/commit/6d7bf43c6135968bc90869cb8f9782ed70ca8dd9))
12
+
13
+
14
+ ### Features
15
+
16
+ * **web:** selectors are comparable and serialisable to JSON ([b285389](https://github.com/serenity-js/serenity-js/commit/b2853897e18a1a6693af156844830e8760d1a2b7)), closes [#1784](https://github.com/serenity-js/serenity-js/issues/1784)
17
+ * **web:** you can now use Serenity/JS Screenplay Pattern APIs for UI component testing ([3c9aa4b](https://github.com/serenity-js/serenity-js/commit/3c9aa4b16d223844116ffcb21d23f9cc8b96a793)), closes [#1784](https://github.com/serenity-js/serenity-js/issues/1784)
18
+
19
+
20
+
21
+
22
+
6
23
  # [3.5.0](https://github.com/serenity-js/serenity-js/compare/v3.4.2...v3.5.0) (2023-07-02)
7
24
 
8
25
 
@@ -79,10 +79,6 @@ import type { BrowserCapabilities, BrowsingSession, Page } from '../models';
79
79
  export declare abstract class BrowseTheWeb<Native_Element_Type = any> extends Ability {
80
80
  protected readonly session: BrowsingSession<Page<Native_Element_Type>>;
81
81
  constructor(session: BrowsingSession<Page<Native_Element_Type>>);
82
- /**
83
- * Returns {@apilink BrowserCapabilities|basic meta-data} about the browser associated with this ability.
84
- */
85
- abstract browserCapabilities(): Promise<BrowserCapabilities>;
86
82
  /**
87
83
  * Returns a {@apilink Page} representing the currently active browser tab.
88
84
  */
@@ -92,5 +88,9 @@ export declare abstract class BrowseTheWeb<Native_Element_Type = any> extends Ab
92
88
  * available in the current {@apilink BrowsingSession}.
93
89
  */
94
90
  allPages(): Promise<Array<Page<Native_Element_Type>>>;
91
+ /**
92
+ * Returns {@apilink BrowserCapabilities|basic meta-data} about the browser associated with this ability.
93
+ */
94
+ browserCapabilities(): Promise<BrowserCapabilities>;
95
95
  }
96
96
  //# sourceMappingURL=BrowseTheWeb.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowseTheWeb.d.ts","sourceRoot":"","sources":["../../../src/screenplay/abilities/BrowseTheWeb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AACH,8BAAsB,YAAY,CAAC,mBAAmB,GAAG,GAAG,CAAE,SAAQ,OAAO;IAE7D,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAAnD,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAIlF;;OAEG;IACH,QAAQ,CAAC,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAE5D;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAIvD;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;CAGxD"}
1
+ {"version":3,"file":"BrowseTheWeb.d.ts","sourceRoot":"","sources":["../../../src/screenplay/abilities/BrowseTheWeb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AACH,8BAAsB,YAAY,CAAC,mBAAmB,GAAG,GAAG,CAAE,SAAQ,OAAO;IAE7D,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAAnD,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAIlF;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAIvD;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAIrD;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAG5D"}
@@ -96,6 +96,12 @@ class BrowseTheWeb extends core_1.Ability {
96
96
  allPages() {
97
97
  return this.session.allPages();
98
98
  }
99
+ /**
100
+ * Returns {@apilink BrowserCapabilities|basic meta-data} about the browser associated with this ability.
101
+ */
102
+ async browserCapabilities() {
103
+ return this.session.browserCapabilities();
104
+ }
99
105
  }
100
106
  exports.BrowseTheWeb = BrowseTheWeb;
101
107
  //# sourceMappingURL=BrowseTheWeb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowseTheWeb.js","sourceRoot":"","sources":["../../../src/screenplay/abilities/BrowseTheWeb.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAI5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AACH,MAAsB,YAAwC,SAAQ,cAAO;IAEzE,YAA+B,OAAmD;QAC9E,KAAK,EAAE,CAAC;QADmB,YAAO,GAAP,OAAO,CAA4C;IAElF,CAAC;IAOD;;OAEG;IACH,KAAK,CAAC,WAAW;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,QAAQ;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACnC,CAAC;CACJ;AAzBD,oCAyBC"}
1
+ {"version":3,"file":"BrowseTheWeb.js","sourceRoot":"","sources":["../../../src/screenplay/abilities/BrowseTheWeb.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAI5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AACH,MAAsB,YAAwC,SAAQ,cAAO;IAEzE,YAA+B,OAAmD;QAC9E,KAAK,EAAE,CAAC;QADmB,YAAO,GAAP,OAAO,CAA4C;IAElF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,QAAQ;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAC9C,CAAC;CACJ;AA3BD,oCA2BC"}
@@ -1,4 +1,5 @@
1
1
  import type { CorrelationId } from '@serenity-js/core/lib/model';
2
+ import type { BrowserCapabilities } from './BrowserCapabilities';
2
3
  import type { Page } from './Page';
3
4
  /**
4
5
  * Represents the pages open in the current browsing context.
@@ -16,6 +17,10 @@ export declare abstract class BrowsingSession<Page_Type extends Page> {
16
17
  * Opens a new browser page and associates it with a {@apilink Page} object.
17
18
  */
18
19
  protected abstract registerCurrentPage(): Promise<Page_Type>;
20
+ /**
21
+ * Returns {@apilink BrowserCapabilities|basic meta-data} about the browser associated with this browsing session.
22
+ */
23
+ abstract browserCapabilities(): Promise<BrowserCapabilities>;
19
24
  /**
20
25
  * Returns a {@apilink Page} representing the currently active top-level browsing context.
21
26
  */
@@ -1 +1 @@
1
- {"version":3,"file":"BrowsingSession.d.ts","sourceRoot":"","sources":["../../../src/screenplay/models/BrowsingSession.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC;;;;;;;GAOG;AACH,8BAAsB,eAAe,CAAC,SAAS,SAAS,IAAI;IACxD,SAAS,CAAC,kBAAkB,EAAE,SAAS,CAAC;IACxC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAuC;IAExF,mBAAmB,CAAC,cAAc,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAWnE;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,mBAAmB,IAAI,OAAO,CAAC,SAAS,CAAC;IAE5D;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAQvC;;;;OAIG;IACH,QAAQ,CAAC,GAAG,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI;IAMrC;;;;;OAKG;IACH,UAAU,CAAC,GAAG,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI;IAM7C;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAI3C;;OAEG;IACH,iBAAiB,IAAI,KAAK,CAAC,aAAa,CAAC;IAIzC;;;;;;;;;;;;;;;;;OAiBG;IACG,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;CAQvC"}
1
+ {"version":3,"file":"BrowsingSession.d.ts","sourceRoot":"","sources":["../../../src/screenplay/models/BrowsingSession.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC;;;;;;;GAOG;AACH,8BAAsB,eAAe,CAAC,SAAS,SAAS,IAAI;IACxD,SAAS,CAAC,kBAAkB,EAAE,SAAS,CAAC;IACxC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAuC;IAExF,mBAAmB,CAAC,cAAc,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAWnE;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,mBAAmB,IAAI,OAAO,CAAC,SAAS,CAAC;IAE5D;;OAEG;aACa,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAEnE;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAQvC;;;;OAIG;IACH,QAAQ,CAAC,GAAG,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI;IAMrC;;;;;OAKG;IACH,UAAU,CAAC,GAAG,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI;IAM7C;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAI3C;;OAEG;IACH,iBAAiB,IAAI,KAAK,CAAC,aAAa,CAAC;IAIzC;;;;;;;;;;;;;;;;;OAiBG;IACG,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;CAQvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"BrowsingSession.js","sourceRoot":"","sources":["../../../src/screenplay/models/BrowsingSession.ts"],"names":[],"mappings":";;;AAIA;;;;;;;GAOG;AACH,MAAsB,eAAe;IAArC;QAEuB,UAAK,GAAkC,IAAI,GAAG,EAA4B,CAAC;IAoGlG,CAAC;IAlGG,KAAK,CAAC,mBAAmB,CAAC,cAAyB;QAC/C,KAAK,MAAM,IAAI,IAAI,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE;YACtC,IAAI,CAAE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE;gBACrC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC9B;SACJ;QAED,MAAM,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;IACnD,CAAC;IAOD;;OAEG;IACH,KAAK,CAAC,WAAW;QACb,IAAI,CAAE,IAAI,CAAC,kBAAkB,IAAI,CAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,EAAE;YAC1E,IAAI,CAAC,kBAAkB,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;SAC9D;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,GAAG,KAAkB;QAC1B,KAAI,MAAM,IAAI,IAAI,KAAK,EAAE;YACrB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;SACjC;IACL,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAC,GAAG,OAAwB;QAClC,KAAI,MAAM,MAAM,IAAI,OAAO,EAAE;YACzB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC7B;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAgB,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,iBAAiB;QACb,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,mBAAmB,CAAC,IAAe;QACrC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACf,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE;YACpC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;SACtB;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;IACxC,CAAC;CACJ;AAtGD,0CAsGC"}
1
+ {"version":3,"file":"BrowsingSession.js","sourceRoot":"","sources":["../../../src/screenplay/models/BrowsingSession.ts"],"names":[],"mappings":";;;AAKA;;;;;;;GAOG;AACH,MAAsB,eAAe;IAArC;QAEuB,UAAK,GAAkC,IAAI,GAAG,EAA4B,CAAC;IAyGlG,CAAC;IAvGG,KAAK,CAAC,mBAAmB,CAAC,cAAyB;QAC/C,KAAK,MAAM,IAAI,IAAI,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE;YACtC,IAAI,CAAE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE;gBACrC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC9B;SACJ;QAED,MAAM,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;IACnD,CAAC;IAYD;;OAEG;IACH,KAAK,CAAC,WAAW;QACb,IAAI,CAAE,IAAI,CAAC,kBAAkB,IAAI,CAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,EAAE;YAC1E,IAAI,CAAC,kBAAkB,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;SAC9D;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,GAAG,KAAkB;QAC1B,KAAI,MAAM,IAAI,IAAI,KAAK,EAAE;YACrB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;SACjC;IACL,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAC,GAAG,OAAwB;QAClC,KAAI,MAAM,MAAM,IAAI,OAAO,EAAE;YACzB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC7B;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAgB,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,iBAAiB;QACb,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,mBAAmB,CAAC,IAAe;QACrC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACf,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE;YACpC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;SACtB;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;IACxC,CAAC;CACJ;AA3GD,0CA2GC"}
@@ -30,6 +30,9 @@ export declare abstract class Locator<Native_Element_Type, Native_Selector_Type
30
30
  abstract element(): PageElement<Native_Element_Type>;
31
31
  abstract allElements(): Promise<Array<PageElement<Native_Element_Type>>>;
32
32
  toString(): string;
33
+ /**
34
+ * Custom [Node.js inspection method](https://nodejs.org/api/util.html#utilinspectcustom).
35
+ */
33
36
  [util.inspect.custom]: (depth: number, options: util.InspectOptionsStylized, inspect: typeof util.inspect) => string;
34
37
  }
35
38
  //# sourceMappingURL=Locator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Locator.d.ts","sourceRoot":"","sources":["../../../src/screenplay/models/Locator.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;;;;;;GAWG;AACH,8BAAsB,OAAO,CAAC,mBAAmB,EAAE,oBAAoB,GAAG,GAAG,CACzE,SAAQ,WAAW,CAAC,mBAAmB,CAAC;IAGpC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,mBAAmB,CAAC;aAC3C,QAAQ,EAAE,QAAQ;IAFtC,SAAS,aACc,MAAM,EAAE,WAAW,CAAC,mBAAmB,CAAC,EAC3C,QAAQ,EAAE,QAAQ;aAKtB,aAAa,IAAI,OAAO,CAAC,mBAAmB,CAAC;aAC7C,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAElE,aAAa,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIpC,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxC,SAAS,CAAC,QAAQ,CAAC,cAAc,IAAI,oBAAoB;IAEzD,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IACnF,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAElF,QAAQ,CAAC,OAAO,IAAI,WAAW,CAAC,mBAAmB,CAAC;IAEpD,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAExE,QAAQ,IAAI,MAAM;IAIlB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,gGAAiE;CACzF"}
1
+ {"version":3,"file":"Locator.d.ts","sourceRoot":"","sources":["../../../src/screenplay/models/Locator.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;;;;;;GAWG;AACH,8BAAsB,OAAO,CAAC,mBAAmB,EAAE,oBAAoB,GAAG,GAAG,CACzE,SAAQ,WAAW,CAAC,mBAAmB,CAAC;IAGpC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,mBAAmB,CAAC;aAC3C,QAAQ,EAAE,QAAQ;IAFtC,SAAS,aACc,MAAM,EAAE,WAAW,CAAC,mBAAmB,CAAC,EAC3C,QAAQ,EAAE,QAAQ;aAKtB,aAAa,IAAI,OAAO,CAAC,mBAAmB,CAAC;aAC7C,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAElE,aAAa,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIpC,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxC,SAAS,CAAC,QAAQ,CAAC,cAAc,IAAI,oBAAoB;IAEzD,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IACnF,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAElF,QAAQ,CAAC,OAAO,IAAI,WAAW,CAAC,mBAAmB,CAAC;IAEpD,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAExE,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,gGAAiE;CACzF"}
@@ -45,6 +45,9 @@ class Locator extends RootLocator_1.RootLocator {
45
45
  super();
46
46
  this.parent = parent;
47
47
  this.selector = selector;
48
+ /**
49
+ * Custom [Node.js inspection method](https://nodejs.org/api/util.html#utilinspectcustom).
50
+ */
48
51
  this[_a] = (0, io_1.inspectedObject)(this, ['parent', 'selector']);
49
52
  }
50
53
  async switchToFrame(element) {
@@ -1 +1 @@
1
- {"version":3,"file":"Locator.js","sourceRoot":"","sources":["../../../src/screenplay/models/Locator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA2D;AAC3D,2CAA6B,CAAC,2CAA2C;AAGzE,+CAA4C;AAG5C;;;;;;;;;;;GAWG;AACH,MAAsB,OAClB,SAAQ,yBAAgC;IAExC,YACuB,MAAwC,EAC3C,QAAkB;QAElC,KAAK,EAAE,CAAC;QAHW,WAAM,GAAN,MAAM,CAAkC;QAC3C,aAAQ,GAAR,QAAQ,CAAU;QAiCtC,QAAqB,GAAG,IAAA,oBAAe,EAAC,IAAI,EAAE,CAAE,QAAsB,EAAE,UAAU,CAAE,CAAC,CAAC;IA9BtF,CAAC;IAKD,KAAK,CAAC,aAAa,CAAC,OAA4B;QAC5C,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,mBAAmB;QACrB,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;IAC1C,CAAC;IAWD,QAAQ;QACJ,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACpC,CAAC;CAGJ;AAvCD,0BAuCC;KADI,IAAI,CAAC,OAAO,CAAC,MAAM"}
1
+ {"version":3,"file":"Locator.js","sourceRoot":"","sources":["../../../src/screenplay/models/Locator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA2D;AAC3D,2CAA6B,CAAC,2CAA2C;AAGzE,+CAA4C;AAG5C;;;;;;;;;;;GAWG;AACH,MAAsB,OAClB,SAAQ,yBAAgC;IAExC,YACuB,MAAwC,EAC3C,QAAkB;QAElC,KAAK,EAAE,CAAC;QAHW,WAAM,GAAN,MAAM,CAAkC;QAC3C,aAAQ,GAAR,QAAQ,CAAU;QAiCtC;;WAEG;QACH,QAAqB,GAAG,IAAA,oBAAe,EAAC,IAAI,EAAE,CAAE,QAAsB,EAAE,UAAU,CAAE,CAAC,CAAC;IAjCtF,CAAC;IAKD,KAAK,CAAC,aAAa,CAAC,OAA4B;QAC5C,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,mBAAmB;QACrB,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;IAC1C,CAAC;IAWD,QAAQ;QACJ,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACpC,CAAC;CAMJ;AA1CD,0BA0CC;KADI,IAAI,CAAC,OAAO,CAAC,MAAM"}
@@ -194,6 +194,12 @@ export declare abstract class Page<Native_Element_Type = any> implements Optiona
194
194
  static whichUrl(expectation: Expectation<string>): QuestionAdapter<Page>;
195
195
  private static findMatchingPage;
196
196
  constructor(session: BrowsingSession<Page<Native_Element_Type>>, rootLocator: RootLocator<Native_Element_Type>, modalDialogHandler: ModalDialogHandler, id: CorrelationId);
197
+ /**
198
+ * Creates a {@apilink PageElement} wrapping a native element.
199
+ *
200
+ * @param nativeElement
201
+ */
202
+ abstract createPageElement(nativeElement: Native_Element_Type): PageElement<Native_Element_Type>;
197
203
  /**
198
204
  * Creates a {@apilink PageElement}, retrieving an element located by {@apilink Selector}.
199
205
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../src/screenplay/models/Page.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../src/screenplay/models/Page.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../src/screenplay/models/Page.ts"],"names":[],"mappings":";;;AACA,4CAAyE;AAEzE,2CAA+C;AAG/C,4CAA4C;AAa5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgHG;AACH,MAAsB,IAAI;IAEtB;;OAEG;IACH,MAAM,CAAC,OAAO;QACV,OAAO,eAAQ,CAAC,KAAK,CAAO,cAAc,EAAE,KAAK,CAAC,EAAE;YAChD,OAAO,wBAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,SAAS,CAAC,WAAgC;QAC7C,OAAO,eAAQ,CAAC,KAAK,CAAC,wBAAyB,WAAY,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YACzE,MAAM,KAAK,GAAO,MAAM,wBAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;YAE1D,OAAO,IAAI,CAAC,gBAAgB,CACxB,aAAc,WAAY,EAAE,EAC5B,KAAK,EACL,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAC1D,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,UAAU,CAAC,WAAgC;QAC9C,OAAO,eAAQ,CAAC,KAAK,CAAC,yBAA0B,WAAY,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YAC1E,MAAM,KAAK,GAAO,MAAM,wBAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;YAE1D,OAAO,IAAI,CAAC,gBAAgB,CACxB,cAAe,WAAY,EAAE,EAC7B,KAAK,EACL,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAC3D,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,QAAQ,CAAC,WAAgC;QAC5C,OAAO,eAAQ,CAAC,KAAK,CAAC,uBAAwB,WAAY,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YACxE,MAAM,KAAK,GAAO,MAAM,wBAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;YAE1D,OAAO,IAAI,CAAC,gBAAgB,CACxB,YAAa,WAAY,EAAE,EAC3B,KAAK,EACL,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CACrC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC1C,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,sBAA8B,EAAE,KAAa,EAAE,OAAoD;QACrI,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACtB,MAAM,OAAO,GAAI,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAErC,IAAI,OAAO,YAAY,qBAAc,EAAE;gBACnC,OAAO,IAAI,CAAC;aACf;SACJ;QAED,MAAM,IAAI,iBAAU,CAAC,8BAA+B,sBAAuB,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,YACuB,OAAmD,EACnD,WAA6C,EACtD,kBAAsC,EAChC,EAAiB;QAHd,YAAO,GAAP,OAAO,CAA4C;QACnD,gBAAW,GAAX,WAAW,CAAkC;QACtD,uBAAkB,GAAlB,kBAAkB,CAAoB;QAChC,OAAE,GAAF,EAAE,CAAe;QAEjC,IAAA,mBAAM,EAAC,SAAS,EAAE,OAAO,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;QACxC,IAAA,mBAAM,EAAC,aAAa,EAAE,WAAW,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;QAChD,IAAA,mBAAM,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;QAC9D,IAAA,mBAAM,EAAC,IAAI,EAAE,EAAE,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;IAClC,CAAC;IAmPD;;;;;;;;OAQG;IACH,KAAK,CAAC,QAAQ;QAEV,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAEtD,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO;YACH,UAAU,EAAE,KAAK,IAAmB,EAAE;gBAClC,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;YACzD,CAAC;SACJ,CAAA;IACL,CAAC;IAYD;;OAEG;IACH,WAAW;QACP,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,QAAQ;QACJ,OAAO,YAAa,IAAI,CAAC,EAAE,CAAC,KAAM,GAAG,CAAC;IAC1C,CAAC;CACJ;AA7ZD,oBA6ZC"}
1
+ {"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../src/screenplay/models/Page.ts"],"names":[],"mappings":";;;AACA,4CAAyE;AAEzE,2CAA+C;AAG/C,4CAA4C;AAa5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgHG;AACH,MAAsB,IAAI;IAEtB;;OAEG;IACH,MAAM,CAAC,OAAO;QACV,OAAO,eAAQ,CAAC,KAAK,CAAO,cAAc,EAAE,KAAK,CAAC,EAAE;YAChD,OAAO,wBAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,SAAS,CAAC,WAAgC;QAC7C,OAAO,eAAQ,CAAC,KAAK,CAAC,wBAAyB,WAAY,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YACzE,MAAM,KAAK,GAAO,MAAM,wBAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;YAE1D,OAAO,IAAI,CAAC,gBAAgB,CACxB,aAAc,WAAY,EAAE,EAC5B,KAAK,EACL,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAC1D,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,UAAU,CAAC,WAAgC;QAC9C,OAAO,eAAQ,CAAC,KAAK,CAAC,yBAA0B,WAAY,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YAC1E,MAAM,KAAK,GAAO,MAAM,wBAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;YAE1D,OAAO,IAAI,CAAC,gBAAgB,CACxB,cAAe,WAAY,EAAE,EAC7B,KAAK,EACL,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAC3D,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,QAAQ,CAAC,WAAgC;QAC5C,OAAO,eAAQ,CAAC,KAAK,CAAC,uBAAwB,WAAY,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YACxE,MAAM,KAAK,GAAO,MAAM,wBAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;YAE1D,OAAO,IAAI,CAAC,gBAAgB,CACxB,YAAa,WAAY,EAAE,EAC3B,KAAK,EACL,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CACrC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC1C,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,sBAA8B,EAAE,KAAa,EAAE,OAAoD;QACrI,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACtB,MAAM,OAAO,GAAI,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAErC,IAAI,OAAO,YAAY,qBAAc,EAAE;gBACnC,OAAO,IAAI,CAAC;aACf;SACJ;QAED,MAAM,IAAI,iBAAU,CAAC,8BAA+B,sBAAuB,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,YACuB,OAAmD,EACnD,WAA6C,EACtD,kBAAsC,EAChC,EAAiB;QAHd,YAAO,GAAP,OAAO,CAA4C;QACnD,gBAAW,GAAX,WAAW,CAAkC;QACtD,uBAAkB,GAAlB,kBAAkB,CAAoB;QAChC,OAAE,GAAF,EAAE,CAAe;QAEjC,IAAA,mBAAM,EAAC,SAAS,EAAE,OAAO,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;QACxC,IAAA,mBAAM,EAAC,aAAa,EAAE,WAAW,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;QAChD,IAAA,mBAAM,EAAC,oBAAoB,EAAE,kBAAkB,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;QAC9D,IAAA,mBAAM,EAAC,IAAI,EAAE,EAAE,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;IAClC,CAAC;IA0PD;;;;;;;;OAQG;IACH,KAAK,CAAC,QAAQ;QAEV,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAEtD,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO;YACH,UAAU,EAAE,KAAK,IAAmB,EAAE;gBAClC,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;YACzD,CAAC;SACJ,CAAA;IACL,CAAC;IAYD;;OAEG;IACH,WAAW;QACP,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,QAAQ;QACJ,OAAO,YAAa,IAAI,CAAC,EAAE,CAAC,KAAM,GAAG,CAAC;IAC1C,CAAC;CACJ;AApaD,oBAoaC"}
@@ -17,6 +17,7 @@ import type { SwitchableOrigin } from './SwitchableOrigin';
17
17
  */
18
18
  export declare abstract class PageElement<Native_Element_Type = any> implements Optional, Switchable {
19
19
  readonly locator: Locator<Native_Element_Type>;
20
+ static from<NET>(nativeElement: NET): QuestionAdapter<PageElement<NET>> & MetaQuestion<PageElement, PageElement>;
20
21
  static located<NET>(selector: Answerable<Selector>): QuestionAdapter<PageElement<NET>> & MetaQuestion<PageElement, PageElement>;
21
22
  static of<NET>(childElement: Answerable<PageElement<NET>>, parentElement: Answerable<PageElement<NET>>): QuestionAdapter<PageElement<NET>> & MetaQuestion<PageElement, PageElement>;
22
23
  constructor(locator: Locator<Native_Element_Type>);
@@ -1 +1 @@
1
- {"version":3,"file":"PageElement.d.ts","sourceRoot":"","sources":["../../../src/screenplay/models/PageElement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PageElement.d.ts","sourceRoot":"","sources":["../../../src/screenplay/models/PageElement.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,12 @@ const abilities_1 = require("../abilities");
16
16
  * @group Models
17
17
  */
18
18
  class PageElement {
19
+ static from(nativeElement) {
20
+ return core_1.Question.about(`native page element`, async (actor) => {
21
+ const currentPage = await abilities_1.BrowseTheWeb.as(actor).currentPage();
22
+ return currentPage.createPageElement(nativeElement);
23
+ });
24
+ }
19
25
  static located(selector) {
20
26
  return core_1.Question.about((0, core_1.d) `page element located ${selector}`, async (actor) => {
21
27
  const bySelector = await actor.answer(selector);
@@ -1 +1 @@
1
- {"version":3,"file":"PageElement.js","sourceRoot":"","sources":["../../../src/screenplay/models/PageElement.ts"],"names":[],"mappings":";;;AACA,4CAAgD;AAChD,2CAA+C;AAE/C,4CAA4C;AAO5C;;;;;;;;;;GAUG;AACH,MAAsB,WAAW;IAE7B,MAAM,CAAC,OAAO,CAAM,QAA8B;QAC9C,OAAO,eAAQ,CAAC,KAAK,CAAC,IAAA,QAAC,EAAA,wBAAyB,QAAS,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YACvE,MAAM,UAAU,GAAI,MAAM,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,WAAW,GAAG,MAAM,wBAAY,CAAC,EAAE,CAAoB,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YAElF,OAAO,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC,CAA+E,CAAC;IACrF,CAAC;IAED,MAAM,CAAC,EAAE,CAAM,YAA0C,EAAE,aAA2C;QAClG,OAAO,eAAQ,CAAC,KAAK,CAAC,IAAA,QAAC,EAAA,GAAI,YAAa,OAAQ,aAAc,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YAC5E,MAAM,KAAK,GAAO,MAAM,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,MAAM,MAAM,GAAM,MAAM,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAEpD,OAAO,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC,CAA+E,CAAC;IACrF,CAAC;IAED,YAA4B,OAAqC;QAArC,YAAO,GAAP,OAAO,CAA8B;QAC7D,IAAA,mBAAM,EAAC,wBAAwB,EAAE,OAAO,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;IAC3D,CAAC;IAID;;OAEG;IACH,KAAK,CAAC,aAAa;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IACxC,CAAC;IAED,QAAQ;QACJ,OAAO,uBAAwB,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAG,EAAE,CAAC;IAC9D,CAAC;IAuDD;;;;OAIG;IACH,KAAK,CAAC,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IACpC,CAAC;CAoBJ;AArHD,kCAqHC"}
1
+ {"version":3,"file":"PageElement.js","sourceRoot":"","sources":["../../../src/screenplay/models/PageElement.ts"],"names":[],"mappings":";;;AACA,4CAAgD;AAChD,2CAA+C;AAE/C,4CAA4C;AAO5C;;;;;;;;;;GAUG;AACH,MAAsB,WAAW;IAE7B,MAAM,CAAC,IAAI,CAAM,aAAkB;QAC/B,OAAO,eAAQ,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YACvD,MAAM,WAAW,GAAG,MAAM,wBAAY,CAAC,EAAE,CAAoB,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YAElF,OAAO,WAAW,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACxD,CAAC,CAA+E,CAAC;IACrF,CAAC;IAED,MAAM,CAAC,OAAO,CAAM,QAA8B;QAC9C,OAAO,eAAQ,CAAC,KAAK,CAAC,IAAA,QAAC,EAAA,wBAAyB,QAAS,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YACvE,MAAM,UAAU,GAAI,MAAM,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,WAAW,GAAG,MAAM,wBAAY,CAAC,EAAE,CAAoB,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YAElF,OAAO,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC,CAA+E,CAAC;IACrF,CAAC;IAED,MAAM,CAAC,EAAE,CAAM,YAA0C,EAAE,aAA2C;QAClG,OAAO,eAAQ,CAAC,KAAK,CAAC,IAAA,QAAC,EAAA,GAAI,YAAa,OAAQ,aAAc,EAAE,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YAC5E,MAAM,KAAK,GAAO,MAAM,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,MAAM,MAAM,GAAM,MAAM,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAEpD,OAAO,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC,CAA+E,CAAC;IACrF,CAAC;IAED,YAA4B,OAAqC;QAArC,YAAO,GAAP,OAAO,CAA8B;QAC7D,IAAA,mBAAM,EAAC,wBAAwB,EAAE,OAAO,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;IAC3D,CAAC;IAID;;OAEG;IACH,KAAK,CAAC,aAAa;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IACxC,CAAC;IAED,QAAQ;QACJ,OAAO,uBAAwB,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAG,EAAE,CAAC;IAC9D,CAAC;IAuDD;;;;OAIG;IACH,KAAK,CAAC,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IACpC,CAAC;CAoBJ;AA7HD,kCA6HC"}
@@ -1,9 +1,10 @@
1
+ import { TinyType } from 'tiny-types';
1
2
  /**
2
3
  * Describes a selector you use to identify a {@apilink PageElement} or a group of {@apilink PageElements}.
3
4
  *
4
5
  * @group Models
5
6
  */
6
- export declare abstract class Selector {
7
+ export declare abstract class Selector extends TinyType {
7
8
  toString(): string;
8
9
  }
9
10
  //# sourceMappingURL=Selector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Selector.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/models/selectors/Selector.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,8BAAsB,QAAQ;IAE1B,QAAQ,IAAI,MAAM;CAMrB"}
1
+ {"version":3,"file":"Selector.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/models/selectors/Selector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;;GAIG;AACH,8BAAsB,QAAS,SAAQ,QAAQ;IAE3C,QAAQ,IAAI,MAAM;CAMrB"}
@@ -2,12 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Selector = void 0;
4
4
  const core_1 = require("@serenity-js/core");
5
+ const tiny_types_1 = require("tiny-types");
5
6
  /**
6
7
  * Describes a selector you use to identify a {@apilink PageElement} or a group of {@apilink PageElements}.
7
8
  *
8
9
  * @group Models
9
10
  */
10
- class Selector {
11
+ class Selector extends tiny_types_1.TinyType {
11
12
  toString() {
12
13
  const selectorDescription = this.constructor.name.replaceAll(/([a-z])([A-Z])/g, '$1 $2').toLowerCase();
13
14
  const parametersDescription = Object.keys(this).map(field => (0, core_1.f) `${this[field]}`).join(', ');
@@ -1 +1 @@
1
- {"version":3,"file":"Selector.js","sourceRoot":"","sources":["../../../../src/screenplay/models/selectors/Selector.ts"],"names":[],"mappings":";;;AAAA,4CAAsC;AAEtC;;;;GAIG;AACH,MAAsB,QAAQ;IAE1B,QAAQ;QACJ,MAAM,mBAAmB,GAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACzG,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAA,QAAC,EAAA,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE3F,OAAO,GAAI,mBAAoB,KAAM,qBAAsB,GAAG,CAAC;IACnE,CAAC;CACJ;AARD,4BAQC"}
1
+ {"version":3,"file":"Selector.js","sourceRoot":"","sources":["../../../../src/screenplay/models/selectors/Selector.ts"],"names":[],"mappings":";;;AAAA,4CAAsC;AACtC,2CAAsC;AAEtC;;;;GAIG;AACH,MAAsB,QAAS,SAAQ,qBAAQ;IAE3C,QAAQ;QACJ,MAAM,mBAAmB,GAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACzG,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAA,QAAC,EAAA,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE3F,OAAO,GAAI,mBAAoB,KAAM,qBAAsB,GAAG,CAAC;IACnE,CAAC;CACJ;AARD,4BAQC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@serenity-js/web",
3
- "version": "3.5.0",
3
+ "version": "3.6.0",
4
4
  "description": "Serenity/JS Screenplay Pattern APIs for the Web",
5
5
  "author": {
6
6
  "name": "Jan Molak",
@@ -44,9 +44,9 @@
44
44
  "node": "^16.13 || ^18.12 || ^20"
45
45
  },
46
46
  "dependencies": {
47
- "@serenity-js/assertions": "3.5.0",
48
- "@serenity-js/core": "3.5.0",
49
- "tiny-types": "^1.19.1"
47
+ "@serenity-js/assertions": "3.6.0",
48
+ "@serenity-js/core": "3.6.0",
49
+ "tiny-types": "^1.20.0"
50
50
  },
51
51
  "devDependencies": {
52
52
  "@integration/testing-tools": "3.0.0",
@@ -58,5 +58,5 @@
58
58
  "ts-node": "^10.9.1",
59
59
  "typescript": "^5.1.6"
60
60
  },
61
- "gitHead": "c34ec9a491ded36cc178f219a9b3cae058c34c2b"
61
+ "gitHead": "970ac224860693ab70e813e176b7532241503b14"
62
62
  }
@@ -84,11 +84,6 @@ export abstract class BrowseTheWeb<Native_Element_Type = any> extends Ability {
84
84
  super();
85
85
  }
86
86
 
87
- /**
88
- * Returns {@apilink BrowserCapabilities|basic meta-data} about the browser associated with this ability.
89
- */
90
- abstract browserCapabilities(): Promise<BrowserCapabilities>;
91
-
92
87
  /**
93
88
  * Returns a {@apilink Page} representing the currently active browser tab.
94
89
  */
@@ -103,4 +98,11 @@ export abstract class BrowseTheWeb<Native_Element_Type = any> extends Ability {
103
98
  allPages(): Promise<Array<Page<Native_Element_Type>>> {
104
99
  return this.session.allPages();
105
100
  }
101
+
102
+ /**
103
+ * Returns {@apilink BrowserCapabilities|basic meta-data} about the browser associated with this ability.
104
+ */
105
+ async browserCapabilities(): Promise<BrowserCapabilities> {
106
+ return this.session.browserCapabilities();
107
+ }
106
108
  }
@@ -1,5 +1,6 @@
1
1
  import type { CorrelationId } from '@serenity-js/core/lib/model';
2
2
 
3
+ import type { BrowserCapabilities } from './BrowserCapabilities';
3
4
  import type { Page } from './Page';
4
5
 
5
6
  /**
@@ -30,6 +31,11 @@ export abstract class BrowsingSession<Page_Type extends Page> {
30
31
  */
31
32
  protected abstract registerCurrentPage(): Promise<Page_Type>;
32
33
 
34
+ /**
35
+ * Returns {@apilink BrowserCapabilities|basic meta-data} about the browser associated with this browsing session.
36
+ */
37
+ public abstract browserCapabilities(): Promise<BrowserCapabilities>;
38
+
33
39
  /**
34
40
  * Returns a {@apilink Page} representing the currently active top-level browsing context.
35
41
  */
@@ -55,5 +55,8 @@ export abstract class Locator<Native_Element_Type, Native_Selector_Type = any>
55
55
  return this.selector.toString();
56
56
  }
57
57
 
58
+ /**
59
+ * Custom [Node.js inspection method](https://nodejs.org/api/util.html#utilinspectcustom).
60
+ */
58
61
  [util.inspect.custom] = inspectedObject(this, [ 'parent' as keyof this, 'selector' ]);
59
62
  }
@@ -257,6 +257,13 @@ export abstract class Page<Native_Element_Type = any> implements Optional, Switc
257
257
  ensure('id', id, isDefined());
258
258
  }
259
259
 
260
+ /**
261
+ * Creates a {@apilink PageElement} wrapping a native element.
262
+ *
263
+ * @param nativeElement
264
+ */
265
+ abstract createPageElement(nativeElement: Native_Element_Type): PageElement<Native_Element_Type>;
266
+
260
267
  /**
261
268
  * Creates a {@apilink PageElement}, retrieving an element located by {@apilink Selector}.
262
269
  *
@@ -22,6 +22,14 @@ import type { SwitchableOrigin } from './SwitchableOrigin';
22
22
  */
23
23
  export abstract class PageElement<Native_Element_Type = any> implements Optional, Switchable {
24
24
 
25
+ static from<NET>(nativeElement: NET): QuestionAdapter<PageElement<NET>> & MetaQuestion<PageElement, PageElement> {
26
+ return Question.about(`native page element`, async actor => {
27
+ const currentPage = await BrowseTheWeb.as<BrowseTheWeb<NET>>(actor).currentPage();
28
+
29
+ return currentPage.createPageElement(nativeElement);
30
+ }) as QuestionAdapter<PageElement<NET>> & MetaQuestion<PageElement, PageElement>;
31
+ }
32
+
25
33
  static located<NET>(selector: Answerable<Selector>): QuestionAdapter<PageElement<NET>> & MetaQuestion<PageElement, PageElement> {
26
34
  return Question.about(d`page element located ${ selector }`, async actor => {
27
35
  const bySelector = await actor.answer(selector);
@@ -1,11 +1,12 @@
1
1
  import { f } from '@serenity-js/core';
2
+ import { TinyType } from 'tiny-types';
2
3
 
3
4
  /**
4
5
  * Describes a selector you use to identify a {@apilink PageElement} or a group of {@apilink PageElements}.
5
6
  *
6
7
  * @group Models
7
8
  */
8
- export abstract class Selector {
9
+ export abstract class Selector extends TinyType {
9
10
 
10
11
  toString(): string {
11
12
  const selectorDescription = this.constructor.name.replaceAll(/([a-z])([A-Z])/g, '$1 $2').toLowerCase();