browser
Module providing the Browser factory.
Provides abstractions for browser APIs used internally by LaxarJS, which might need a different implementation in a server-side environment, or for testing. This service is internal to LaxarJS and not available to widgets and activities.
Contents
Types
Types
Browser
A brower mostly abstracts over the location-related DOM window APIs, and provides a console wrapper. Since it is internal to LaxarJS, only relevant APIs are included.
Browser.resolve( url, baseUrl )
Calculates an absolute URL from a (relative) URL, and an optional base URL.
If no base URL is given, the document.baseURI is used instead. The given base URL may also be
relative, in which case it is resolved against the document.baseURI before resolving the first URL.
For browser environments that do not support the new URL( url, baseUrl ) constructor for resolving
URLs or that do not support document.baseURI, fallback mechanisms are used.
Parameters
| Property | Type | Description |
|---|---|---|
| url | String |
the URL to resolve |
| baseUrl | String |
the base to resolve from |
Returns
| Type | Description |
|---|---|
String |
an absolute URL based on the given URL |
Browser.location()
Provides easily mocked access to window.location
Returns
| Type | Description |
|---|---|
Location |
the current (window's) DOM location |
Browser.fetch( input, init )
Provides easily mocked access to window.fetch or a suitable polyfill:
Parameters
| Property | Type | Description |
|---|---|---|
| input | String, Request |
the URL to fetch or the request to perform |
| init | Object |
additional options, described here in more detail: https://developer.mozilla.org/en-US/docs/Web/API/Globalfetch/fetch#Parameters |
Returns
| Type | Description |
|---|---|
Promise.<Response> |
the resulting promise |
Browser.console()
Provides easily mocked access to window.console:
Returns
| Type | Description |
|---|---|
Console |
the browser console promise |