iframe-coordinator-cli 6.3.11 → 6.4.0-beta.afb5b99.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.
- package/dist/assets/index-DEUCFuke.css +1 -0
- package/dist/assets/index-UGIPE_8f.js +57 -0
- package/dist/favicon.svg +1 -0
- package/dist/help-circle.svg +1 -0
- package/dist/ifc-docs/.nojekyll +1 -0
- package/dist/ifc-docs/assets/hierarchy.js +1 -0
- package/dist/ifc-docs/assets/highlight.css +134 -0
- package/dist/ifc-docs/assets/icons.js +18 -0
- package/dist/ifc-docs/assets/icons.svg +1 -0
- package/dist/ifc-docs/assets/main.js +60 -0
- package/dist/ifc-docs/assets/navigation.js +1 -0
- package/dist/ifc-docs/assets/search.js +1 -0
- package/dist/ifc-docs/assets/style.css +1633 -0
- package/dist/ifc-docs/classes/client.Client.html +99 -0
- package/dist/ifc-docs/classes/host.FrameRouterElement.html +24 -0
- package/dist/ifc-docs/classes/workerClient.WorkerClient.html +91 -0
- package/dist/ifc-docs/classes/workerPool.WorkerPool.html +24 -0
- package/dist/ifc-docs/documents/client-setup.html +94 -0
- package/dist/ifc-docs/functions/host.registerCustomElements.html +3 -0
- package/dist/ifc-docs/hierarchy.html +1 -0
- package/dist/ifc-docs/index.html +43 -0
- package/dist/ifc-docs/interfaces/client.ClientConfigOptions.html +4 -0
- package/dist/ifc-docs/interfaces/host.ClientConfig.html +7 -0
- package/dist/ifc-docs/interfaces/host.ClientRegistration.html +24 -0
- package/dist/ifc-docs/interfaces/host.RoutingMap.html +4 -0
- package/dist/ifc-docs/interfaces/workerPool.AppData.html +6 -0
- package/dist/ifc-docs/interfaces/workerPool.WorkerConfig.html +7 -0
- package/dist/ifc-docs/interfaces/workerPool.WorkerItem.html +6 -0
- package/dist/ifc-docs/interfaces/workerPool.WorkerRegistry.html +2 -0
- package/dist/ifc-docs/modules/client.html +2 -0
- package/dist/ifc-docs/modules/host.html +1 -0
- package/dist/ifc-docs/modules/workerClient.html +1 -0
- package/dist/ifc-docs/modules/workerPool.html +1 -0
- package/dist/ifc-docs/modules.html +1 -0
- package/dist/index.html +3 -3
- package/dist/sidebar.svg +1 -0
- package/dist/tool.svg +1 -0
- package/package.json +1 -2
- package/dist/assets/index-BACxQIa4.css +0 -1
- package/dist/assets/index-D2HpqHIZ.js +0 -49
- package/dist/favicon.ico +0 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="./"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><h1>iframe-coordinator - v6.4.0-beta.afb5b99.0</h1></div><div class="tsd-panel tsd-typography"><h1 id="iframe-coordinator" class="tsd-anchor-link">iframe-coordinator<a href="#iframe-coordinator" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h1><p>Tools for coordinating independent single-page-apps embedded via iframe</p>
|
|
2
|
+
<h2 id="why-would-i-want-to-do-that" class="tsd-anchor-link">Why would I want to do that?<a href="#why-would-i-want-to-do-that" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>Iframes are the only way to obtain strong isolation of the javascript runtime in a browser. This is useful for organizations with multiple teams shipping interfaces for different features. Teams can ship with confidence, knowing errors in other's code won't crash their interface.</p>
|
|
3
|
+
<p>Embedding applications via iframe also means that code from separate teams can be deployed and rolled back independently, limiting the impact of breaking changes.</p>
|
|
4
|
+
<h2 id="how-do-i-use-it" class="tsd-anchor-link">How do I use it?<a href="#how-do-i-use-it" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><h3 id="host-application-example" class="tsd-anchor-link">Host Application Example<a href="#host-application-example" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><strong>JavaScript</strong></p>
|
|
5
|
+
<pre><code class="js"><span class="hl-0">/*</span><br/><span class="hl-0"> * We require a few polyfills in order to support IE11. These</span><br/><span class="hl-0"> * will be needed to be loaded by both the host and the client.</span><br/><span class="hl-0"> */</span><br/><span class="hl-1">import</span><span class="hl-2"> </span><span class="hl-3">"@babel/polyfill"</span><span class="hl-2">;</span><br/><span class="hl-1">import</span><span class="hl-2"> </span><span class="hl-3">"custom-event-polyfill/polyfill.js"</span><span class="hl-2">;</span><br/><span class="hl-1">import</span><span class="hl-2"> </span><span class="hl-3">"url-polyfill"</span><span class="hl-2">;</span><br/><br/><span class="hl-0">/* The iframe coordinator library uses custom elements to</span><br/><span class="hl-0"> * embed itself in the host app. If you are targeting browsers</span><br/><span class="hl-0"> * that don't support custom elements, you'll need a polyfill.</span><br/><span class="hl-0"> * see: https://github.com/webcomponents/custom-elements for</span><br/><span class="hl-0"> * more details on configuring the polyfill</span><br/><span class="hl-0"> */</span><br/><span class="hl-1">import</span><span class="hl-2"> </span><span class="hl-3">"@webcomponents/custom-elements/src/native-shim.js"</span><span class="hl-2">;</span><br/><span class="hl-1">import</span><span class="hl-2"> </span><span class="hl-3">"@webcomponents/custom-elements/src/custom-elements.js"</span><span class="hl-2">;</span><br/><br/><span class="hl-0">/* Import the host library */</span><br/><span class="hl-1">import</span><span class="hl-2"> { </span><span class="hl-4">registerCustomElements</span><span class="hl-2"> } </span><span class="hl-1">from</span><span class="hl-2"> </span><span class="hl-3">"iframe-coordinator/host.js"</span><span class="hl-2">;</span><br/><br/><span class="hl-0">/* This will make the custom element `frame-router` available</span><br/><span class="hl-0"> * for use in your browser. This element is the primary</span><br/><span class="hl-0"> * host interface for the library.</span><br/><span class="hl-0"> */</span><br/><span class="hl-5">registerCustomElements</span><span class="hl-2">();</span><br/><br/><span class="hl-0">/* The frame router configuration can be set up by setting the</span><br/><span class="hl-0"> * `clientConfig` property on the frame-router element.</span><br/><span class="hl-0"> * This registers two client apps with the `frame-router`.</span><br/><span class="hl-0"> * `assignedRoute` is the fragment path in the current page that represents the root</span><br/><span class="hl-0"> * path for that client. `url` is the page to load in the</span><br/><span class="hl-0"> * iframe on that route. It must be a full Url, but you can</span><br/><span class="hl-0"> * use the URL constructor to simplify handling</span><br/><span class="hl-0"> * clients on the same domain.</span><br/><span class="hl-0"> * (e.g. `new URL('/client/app/path/', window.location).toString()`)</span><br/><span class="hl-0"> *</span><br/><span class="hl-0"> * If the client uses fragment-based routing, the URL should include a hash fragment:</span><br/><span class="hl-0"> * http://example.com/client/#/</span><br/><span class="hl-0"> *</span><br/><span class="hl-0"> * if the client uses pushstate path-based routing, leave the fragment out:</span><br/><span class="hl-0"> * e.g. http://example.com/client/</span><br/><span class="hl-0"> */</span><br/><br/><span class="hl-4">frameRouter</span><span class="hl-2">.</span><span class="hl-4">clientConfig</span><span class="hl-2"> = {</span><br/><span class="hl-2"> </span><span class="hl-4">clients:</span><span class="hl-2"> {</span><br/><span class="hl-2"> </span><span class="hl-4">application1:</span><span class="hl-2"> {</span><br/><span class="hl-2"> </span><span class="hl-4">url:</span><span class="hl-2"> </span><span class="hl-3">`http://</span><span class="hl-6">${</span><span class="hl-4">hostname</span><span class="hl-6">}</span><span class="hl-3">:8080/client-app-1/#/`</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">assignedRoute:</span><span class="hl-2"> </span><span class="hl-3">"/app1"</span><span class="hl-2">,</span><br/><span class="hl-2"> },</span><br/><span class="hl-2"> </span><span class="hl-4">application2:</span><span class="hl-2"> {</span><br/><span class="hl-2"> </span><span class="hl-4">url:</span><span class="hl-2"> </span><span class="hl-3">`http://</span><span class="hl-6">${</span><span class="hl-4">hostname</span><span class="hl-6">}</span><span class="hl-3">:8080/client-app-2/#/`</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">assignedRoute:</span><span class="hl-2"> </span><span class="hl-3">"/app2"</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">allow:</span><span class="hl-2"> </span><span class="hl-3">"camera http://localhost:8080;"</span><span class="hl-2">, </span><span class="hl-0">// optional</span><br/><span class="hl-2"> </span><span class="hl-4">sandbox:</span><span class="hl-2"> </span><span class="hl-3">"allow-presentation allow-modals"</span><span class="hl-2">, </span><span class="hl-0">// optional</span><br/><span class="hl-2"> </span><span class="hl-4">defaultTitle:</span><span class="hl-2"> </span><span class="hl-3">"iframe Application 2 Example"</span><span class="hl-2">, </span><span class="hl-0">// optional, but needed for accessibility</span><br/><span class="hl-2"> },</span><br/><span class="hl-2"> },</span><br/><span class="hl-2"> </span><span class="hl-4">envData:</span><span class="hl-2"> {</span><br/><span class="hl-2"> </span><span class="hl-4">locale:</span><span class="hl-2"> </span><span class="hl-3">"en-US"</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">hostRootUrl:</span><span class="hl-2"> </span><span class="hl-4">window</span><span class="hl-2">.</span><span class="hl-4">location</span><span class="hl-2">.</span><span class="hl-4">origin</span><span class="hl-2"> + </span><span class="hl-3">"/#/"</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">registeredKeys:</span><span class="hl-2"> [</span><br/><span class="hl-2"> { </span><span class="hl-4">key:</span><span class="hl-2"> </span><span class="hl-3">"a"</span><span class="hl-2">, </span><span class="hl-4">ctrlKey:</span><span class="hl-2"> </span><span class="hl-6">true</span><span class="hl-2"> },</span><br/><span class="hl-2"> { </span><span class="hl-4">key:</span><span class="hl-2"> </span><span class="hl-3">"b"</span><span class="hl-2">, </span><span class="hl-4">altKey:</span><span class="hl-2"> </span><span class="hl-6">true</span><span class="hl-2"> },</span><br/><span class="hl-2"> { </span><span class="hl-4">key:</span><span class="hl-2"> </span><span class="hl-3">"a"</span><span class="hl-2">, </span><span class="hl-4">ctrlKey:</span><span class="hl-2"> </span><span class="hl-6">true</span><span class="hl-2">, </span><span class="hl-4">shiftKey:</span><span class="hl-2"> </span><span class="hl-6">true</span><span class="hl-2"> },</span><br/><span class="hl-2"> ],</span><br/><span class="hl-2"> </span><span class="hl-4">custom:</span><span class="hl-2"> </span><span class="hl-5">getCustomClientData</span><span class="hl-2">(),</span><br/><span class="hl-2"> },</span><br/><span class="hl-2">};</span>
|
|
6
|
+
</code><button type="button">Copy</button></pre>
|
|
7
|
+
|
|
8
|
+
<p><strong>HTML/DOM</strong></p>
|
|
9
|
+
<p>Once the <code>frame-router</code> element is rendered and the client apps configured via setting the <code>clientConfig</code> property, navigation between and within client apps is done by changing the
|
|
10
|
+
element's <code>route</code> attribute. In the example below, based on the previously shown
|
|
11
|
+
configuration, the frame router will show show the URL at:<br>
|
|
12
|
+
<a href="https://example.com/components/example1/#/my/path">https://example.com/components/example1/#/my/path</a></p>
|
|
13
|
+
<pre><code class="html"><span class="hl-7"><</span><span class="hl-8">body</span><span class="hl-7">></span><br/><span class="hl-2"> </span><span class="hl-0"><!-- host-app stuff --></span><br/><span class="hl-2"> </span><span class="hl-7"><</span><span class="hl-8">frame-router</span><br/><span class="hl-2"> </span><span class="hl-9">id</span><span class="hl-2">=</span><span class="hl-10">"frame-element"</span><br/><span class="hl-2"> </span><span class="hl-9">route</span><span class="hl-2">=</span><span class="hl-10">"/one/my/path"</span><br/><span class="hl-2"> </span><span class="hl-9">frame-id</span><span class="hl-2">=</span><span class="hl-10">"id-for-child-iframe"</span><br/><span class="hl-2"> </span><span class="hl-7">/></span><br/><span class="hl-2"> </span><span class="hl-0"><!-- more host-app stuff --></span><br/><span class="hl-7"></</span><span class="hl-8">body</span><span class="hl-7">></span>
|
|
14
|
+
</code><button type="button">Copy</button></pre>
|
|
15
|
+
|
|
16
|
+
<h3 id="client-application-setup" class="tsd-anchor-link">Client Application Setup<a href="#client-application-setup" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p>See the client module docs for detailed setup instructions.</p>
|
|
17
|
+
<h3 id="local-client-application-development" class="tsd-anchor-link">Local Client Application Development<a href="#local-client-application-development" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p>When working on a client application locally, or running automated selenium tests,
|
|
18
|
+
it can be burdensome to bootstrap a fully featured host-application just to work
|
|
19
|
+
on the client app feature. To help with this, the iframe-coordinator library also
|
|
20
|
+
provides a command-line utility <code>ifc-cli</code> which can spin up a local bare-bones
|
|
21
|
+
host application. Documentation is always available via <code>ifc-cli --help</code>:</p>
|
|
22
|
+
<pre><code><span class="hl-11">Usage</span><span class="hl-2">: </span><span class="hl-4">ifc</span><span class="hl-2">-</span><span class="hl-4">cli</span><span class="hl-2"> [</span><span class="hl-4">options</span><span class="hl-2">]</span><br/><br/><span class="hl-11">Options</span><span class="hl-2">:</span><br/><span class="hl-2"> -</span><span class="hl-4">f</span><span class="hl-2">, --</span><span class="hl-4">config</span><span class="hl-2">-</span><span class="hl-4">file</span><span class="hl-2"> <</span><span class="hl-4">file</span><span class="hl-2">> </span><span class="hl-4">iframe</span><span class="hl-2"> </span><span class="hl-4">client</span><span class="hl-2"> </span><span class="hl-4">configuration</span><span class="hl-2"> </span><span class="hl-5">file</span><span class="hl-2"> (</span><span class="hl-4">default</span><span class="hl-2">: </span><span class="hl-3">"/home/mcheely/projects/iframe-coordinator/ifc-cli.config.js"</span><span class="hl-2">)</span><br/><span class="hl-2"> -</span><span class="hl-4">p</span><span class="hl-2">, --</span><span class="hl-4">port</span><span class="hl-2"> <</span><span class="hl-4">port_num</span><span class="hl-2">> </span><span class="hl-4">port</span><span class="hl-2"> </span><span class="hl-4">number</span><span class="hl-2"> </span><span class="hl-4">to</span><span class="hl-2"> </span><span class="hl-4">host</span><span class="hl-2"> </span><span class="hl-5">on</span><span class="hl-2"> (</span><span class="hl-4">default</span><span class="hl-2">: </span><span class="hl-12">3000</span><span class="hl-2">)</span><br/><span class="hl-2"> -</span><span class="hl-4">s</span><span class="hl-2">, --</span><span class="hl-4">ssl</span><span class="hl-2"> </span><span class="hl-4">serve</span><span class="hl-2"> </span><span class="hl-4">over</span><span class="hl-2"> </span><span class="hl-4">https</span><br/><span class="hl-2"> --</span><span class="hl-4">ssl</span><span class="hl-2">-</span><span class="hl-4">cert</span><span class="hl-2"> <</span><span class="hl-4">cert_path</span><span class="hl-2">> </span><span class="hl-4">certificate</span><span class="hl-2"> </span><span class="hl-4">file</span><span class="hl-2"> </span><span class="hl-4">to</span><span class="hl-2"> </span><span class="hl-4">use</span><span class="hl-2"> </span><span class="hl-4">for</span><span class="hl-2"> </span><span class="hl-4">https</span><br/><span class="hl-2"> --</span><span class="hl-4">ssl</span><span class="hl-2">-</span><span class="hl-4">key</span><span class="hl-2"> <</span><span class="hl-4">key_path</span><span class="hl-2">> </span><span class="hl-4">key</span><span class="hl-2"> </span><span class="hl-4">file</span><span class="hl-2"> </span><span class="hl-4">to</span><span class="hl-2"> </span><span class="hl-4">use</span><span class="hl-2"> </span><span class="hl-4">for</span><span class="hl-2"> </span><span class="hl-4">https</span><br/><span class="hl-2"> -</span><span class="hl-4">h</span><span class="hl-2">, --</span><span class="hl-4">help</span><span class="hl-2"> </span><span class="hl-4">output</span><span class="hl-2"> </span><span class="hl-4">usage</span><span class="hl-2"> </span><span class="hl-4">information</span><br/><br/><span class="hl-2"> </span><span class="hl-4">This</span><span class="hl-2"> </span><span class="hl-4">program</span><span class="hl-2"> </span><span class="hl-4">will</span><span class="hl-2"> </span><span class="hl-4">start</span><span class="hl-2"> </span><span class="hl-4">a</span><span class="hl-2"> </span><span class="hl-4">server</span><span class="hl-2"> </span><span class="hl-4">for</span><span class="hl-2"> </span><span class="hl-4">a</span><span class="hl-2"> </span><span class="hl-4">basic</span><span class="hl-2"> </span><span class="hl-4">iframe</span><span class="hl-2">-</span><span class="hl-4">coordinator</span><span class="hl-2"> </span><span class="hl-4">host</span><span class="hl-2"> </span><span class="hl-4">app</span><span class="hl-2">. </span><span class="hl-4">In</span><br/><span class="hl-2"> </span><span class="hl-4">order</span><span class="hl-2"> </span><span class="hl-4">to</span><span class="hl-2"> </span><span class="hl-4">configure</span><span class="hl-2"> </span><span class="hl-4">the</span><span class="hl-2"> </span><span class="hl-4">frame</span><span class="hl-2">-</span><span class="hl-4">router</span><span class="hl-2"> </span><span class="hl-4">element</span><span class="hl-2"> </span><span class="hl-4">and</span><span class="hl-2"> </span><span class="hl-4">any</span><span class="hl-2"> </span><span class="hl-4">other</span><span class="hl-2"> </span><span class="hl-4">custom</span><span class="hl-2"> </span><span class="hl-4">logic</span><span class="hl-2"> </span><span class="hl-4">needed</span><br/><span class="hl-2"> </span><span class="hl-6">in</span><span class="hl-2"> </span><span class="hl-4">the</span><span class="hl-2"> </span><span class="hl-4">host</span><span class="hl-2"> </span><span class="hl-4">app</span><span class="hl-2">, </span><span class="hl-4">a</span><span class="hl-2"> </span><span class="hl-4">config</span><span class="hl-2"> </span><span class="hl-4">file</span><span class="hl-2"> </span><span class="hl-4">must</span><span class="hl-2"> </span><span class="hl-4">be</span><span class="hl-2"> </span><span class="hl-4">provided</span><span class="hl-2"> </span><span class="hl-4">which</span><span class="hl-2"> </span><span class="hl-4">should</span><span class="hl-2"> </span><span class="hl-4">assign</span><span class="hl-2"> </span><span class="hl-4">a</span><br/><span class="hl-2"> </span><span class="hl-6">function</span><span class="hl-2"> </span><span class="hl-5">to</span><span class="hl-2"> `</span><span class="hl-5">module</span><span class="hl-2">.</span><span class="hl-5">exports</span><span class="hl-2">` </span><span class="hl-5">that</span><span class="hl-2"> </span><span class="hl-5">will</span><span class="hl-2"> </span><span class="hl-5">be</span><span class="hl-2"> </span><span class="hl-5">passed</span><span class="hl-2"> </span><span class="hl-5">the</span><span class="hl-2"> </span><span class="hl-5">frame</span><span class="hl-2">-</span><span class="hl-5">router</span><span class="hl-2"> </span><span class="hl-5">element</span><br/><span class="hl-2"> </span><span class="hl-5">as</span><span class="hl-2"> </span><span class="hl-5">an</span><span class="hl-2"> </span><span class="hl-5">input</span><span class="hl-2"> </span><span class="hl-5">once</span><span class="hl-2"> </span><span class="hl-5">it</span><span class="hl-2"> </span><span class="hl-5">has</span><span class="hl-2"> </span><span class="hl-5">been</span><span class="hl-2"> </span><span class="hl-5">mounted</span><span class="hl-2">. </span><span class="hl-5">The</span><span class="hl-2"> </span><span class="hl-5">function</span><span class="hl-2"> </span><span class="hl-5">should</span><span class="hl-2"> </span><span class="hl-5">return</span><span class="hl-2"> </span><span class="hl-5">a</span><span class="hl-2"> </span><span class="hl-5">config</span><br/><span class="hl-2"> </span><span class="hl-5">object</span><span class="hl-2"> </span><span class="hl-5">with</span><span class="hl-2"> </span><span class="hl-5">the</span><span class="hl-2"> </span><span class="hl-5">following</span><span class="hl-2"> </span><span class="hl-5">fields</span><span class="hl-2">:</span><br/><br/><span class="hl-2"> - </span><span class="hl-5">publishTopics</span><span class="hl-2">: </span><span class="hl-5">A</span><span class="hl-2"> </span><span class="hl-5">list</span><span class="hl-2"> </span><span class="hl-5">of</span><span class="hl-2"> </span><span class="hl-5">messaging</span><span class="hl-2"> </span><span class="hl-5">topics</span><span class="hl-2"> </span><span class="hl-5">the</span><span class="hl-2"> </span><span class="hl-5">client</span><span class="hl-2"> </span><span class="hl-5">publishes</span><span class="hl-2"> </span><span class="hl-5">on</span><br/><br/><span class="hl-2"> </span><span class="hl-5">Keep</span><span class="hl-2"> </span><span class="hl-5">in</span><span class="hl-2"> </span><span class="hl-5">mind</span><span class="hl-2"> </span><span class="hl-5">that</span><span class="hl-2"> </span><span class="hl-5">the</span><span class="hl-2"> </span><span class="hl-5">config</span><span class="hl-2"> </span><span class="hl-5">file</span><span class="hl-2"> </span><span class="hl-5">is</span><span class="hl-2"> </span><span class="hl-5">not</span><span class="hl-2"> </span><span class="hl-5">a</span><span class="hl-2"> </span><span class="hl-5">true</span><span class="hl-2"> </span><span class="hl-5">commonJS</span><span class="hl-2"> </span><span class="hl-5">module</span><span class="hl-2">, </span><span class="hl-5">and</span><br/><span class="hl-2"> </span><span class="hl-5">will</span><span class="hl-2"> </span><span class="hl-5">be</span><span class="hl-2"> </span><span class="hl-5">evaluated</span><span class="hl-2"> </span><span class="hl-5">directly</span><span class="hl-2"> </span><span class="hl-5">inside</span><span class="hl-2"> </span><span class="hl-5">the</span><span class="hl-2"> </span><span class="hl-5">browser</span><span class="hl-2"> </span><span class="hl-5">in</span><span class="hl-2"> </span><span class="hl-5">an</span><span class="hl-2"> </span><span class="hl-5">immediately</span><span class="hl-2"> </span><span class="hl-5">invoked</span><br/><span class="hl-2"> </span><span class="hl-6">function</span><span class="hl-2"> </span><span class="hl-5">expression</span><span class="hl-2">.</span>
|
|
23
|
+
</code><button>Copy</button></pre>
|
|
24
|
+
|
|
25
|
+
<p>The CLI host app also provides a proxy config file that can be used
|
|
26
|
+
if you need the client and host applications on the same domain. (See <code>app2</code> in the config below
|
|
27
|
+
for an example).</p>
|
|
28
|
+
<p><code>ifc-cli-config.js</code></p>
|
|
29
|
+
<pre><code class="json"><span class="hl-2">module.exports = function(frameRouter) {</span><br/><span class="hl-2"> </span><span class="hl-13">frameRouter.clientConfig</span><span class="hl-2"> </span><span class="hl-13">=</span><span class="hl-2"> </span><span class="hl-13">{</span><br/><span class="hl-2"> </span><span class="hl-13">clients</span><span class="hl-2">: {</span><br/><span class="hl-2"> </span><span class="hl-13">app1</span><span class="hl-2">: {</span><br/><span class="hl-2"> </span><span class="hl-13">url</span><span class="hl-2">: </span><span class="hl-13">'/client-app</span><span class="hl-12">-1</span><span class="hl-13">/#/'</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-13">assignedRoute</span><span class="hl-2">: </span><span class="hl-13">'/app</span><span class="hl-12">1</span><span class="hl-13">'</span><br/><span class="hl-2"> },</span><br/><span class="hl-2"> </span><span class="hl-13">app2</span><span class="hl-2">: {</span><br/><span class="hl-2"> </span><span class="hl-13">url</span><span class="hl-2">: </span><span class="hl-13">'/client-app</span><span class="hl-12">-2</span><span class="hl-13">/#/'</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-13">assignedRoute</span><span class="hl-2">: </span><span class="hl-13">'/app</span><span class="hl-12">2</span><span class="hl-13">'</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-13">sandbox</span><span class="hl-2">: </span><span class="hl-13">'allow-presentation'</span><span class="hl-2">, </span><span class="hl-0">// optional</span><br/><span class="hl-2"> </span><span class="hl-13">allow</span><span class="hl-2">: </span><span class="hl-13">'microphone</span><span class="hl-2"> </span><span class="hl-13">http:</span><span class="hl-0">//localhost:8080;' // optional</span><br/><span class="hl-2"> }</span><br/><span class="hl-2"> },</span><br/><span class="hl-2"> </span><span class="hl-13">envData</span><span class="hl-2">: {</span><br/><span class="hl-2"> </span><span class="hl-13">locale</span><span class="hl-2">: </span><span class="hl-13">'en-US'</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-13">hostRootUrl</span><span class="hl-2">:</span><br/><span class="hl-2"> </span><span class="hl-13">window.location.origin</span><span class="hl-2"> </span><span class="hl-13">+</span><br/><span class="hl-2"> </span><span class="hl-13">window.location.pathname</span><span class="hl-2"> </span><span class="hl-13">+</span><br/><span class="hl-2"> </span><span class="hl-13">window.location.search</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-13">custom</span><span class="hl-2">: </span><span class="hl-13">getCustomClientData()</span><br/><span class="hl-2"> }</span><br/><span class="hl-2"> };</span><br/><br/><span class="hl-2"> return {</span><br/><span class="hl-2"> </span><span class="hl-0">// These are the topics that the host app should display payloads for when</span><br/><span class="hl-2"> </span><span class="hl-0">// the client publishes on them.</span><br/><span class="hl-2"> </span><span class="hl-13">publishTopics</span><span class="hl-2">: [</span><span class="hl-13">'publish.topic'</span><span class="hl-2">]</span><br/><span class="hl-2"> };</span><br/><span class="hl-2">};</span><br/><br/><span class="hl-2">function getCustomClientData() {</span><br/><span class="hl-2"> </span><span class="hl-13">return</span><span class="hl-2"> </span><span class="hl-13">{</span><span class="hl-2"> </span><span class="hl-13">test</span><span class="hl-2">: </span><span class="hl-13">'This</span><span class="hl-2"> </span><span class="hl-13">is</span><span class="hl-2"> </span><span class="hl-13">only</span><span class="hl-2"> </span><span class="hl-13">a</span><span class="hl-2"> </span><span class="hl-13">test'</span><span class="hl-2"> };</span><br/><span class="hl-2">}</span>
|
|
30
|
+
</code><button type="button">Copy</button></pre>
|
|
31
|
+
|
|
32
|
+
<p><code>ifc-proxy.config.json</code></p>
|
|
33
|
+
<pre><code class="json"><span class="hl-2">{</span><br/><span class="hl-2"> </span><span class="hl-14">"static"</span><span class="hl-2">: {</span><br/><span class="hl-2"> </span><span class="hl-0">// Instead of directly referencing client 2 via "url: `http://${hostname}:8080/client-app-2/#/`"</span><br/><span class="hl-2"> </span><span class="hl-0">// we create a static directory for the second client.</span><br/><span class="hl-2"> </span><span class="hl-14">"/client-app-2"</span><span class="hl-2">: </span><span class="hl-3">"http://${hostname}:8080"</span><br/><span class="hl-2"> },</span><br/><span class="hl-2"> </span><span class="hl-0">// This file also has support for basic proxy configurations</span><br/><span class="hl-2"> </span><span class="hl-14">"proxies"</span><span class="hl-2">: {</span><br/><span class="hl-2"> </span><span class="hl-14">"something"</span><span class="hl-2">: {</span><br/><span class="hl-2"> </span><span class="hl-13">path</span><span class="hl-2">: </span><span class="hl-3">"/something"</span><br/><span class="hl-2"> </span><span class="hl-13">target:</span><span class="hl-2"> </span><span class="hl-3">"http://www.example.org/something"</span><br/><span class="hl-2"> }</span><br/><span class="hl-2"> }</span><br/><span class="hl-2">}</span>
|
|
34
|
+
</code><button type="button">Copy</button></pre>
|
|
35
|
+
|
|
36
|
+
<h3 id="development" class="tsd-anchor-link">Development<a href="#development" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><h4 id="installation" class="tsd-anchor-link">Installation<a href="#installation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p>Before you can build this you will need to make sure that you are using the LTS version of nodejs. Then you can run the following command <code>npm ci</code></p>
|
|
37
|
+
<h4 id="building-the-library" class="tsd-anchor-link">Building the Library<a href="#building-the-library" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p>To run the build you can use the following command <code>npm run build</code></p>
|
|
38
|
+
<h4 id="testing" class="tsd-anchor-link">Testing<a href="#testing" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code><span class="hl-4">npm</span><span class="hl-2"> </span><span class="hl-4">run</span><span class="hl-2"> </span><span class="hl-4">test</span><span class="hl-2"> # </span><span class="hl-4">single</span><span class="hl-2"> </span><span class="hl-4">run</span><span class="hl-2"> </span><span class="hl-6">of</span><span class="hl-2"> </span><span class="hl-4">tests</span><br/><span class="hl-4">npm</span><span class="hl-2"> </span><span class="hl-4">run</span><span class="hl-2"> </span><span class="hl-4">test</span><span class="hl-2">.</span><span class="hl-4">watch</span><span class="hl-2"> # </span><span class="hl-4">continuous</span><span class="hl-2"> </span><span class="hl-4">run</span><span class="hl-2"> </span><span class="hl-6">of</span><span class="hl-2"> </span><span class="hl-4">tests</span><br/><span class="hl-4">npm</span><span class="hl-2"> </span><span class="hl-4">run</span><span class="hl-2"> </span><span class="hl-4">test</span><span class="hl-2">.</span><span class="hl-4">watch</span><span class="hl-2">.</span><span class="hl-4">chrome</span><span class="hl-2"> # </span><span class="hl-4">continuous</span><span class="hl-2"> </span><span class="hl-4">run</span><span class="hl-2"> </span><span class="hl-6">of</span><span class="hl-2"> </span><span class="hl-4">tests</span><span class="hl-2"> </span><span class="hl-6">in</span><span class="hl-2"> </span><span class="hl-4">a</span><span class="hl-2"> </span><span class="hl-4">chromium</span><span class="hl-2"> </span><span class="hl-4">browser</span><span class="hl-2">.</span>
|
|
39
|
+
</code><button>Copy</button></pre>
|
|
40
|
+
|
|
41
|
+
<h4 id="running-the-example-app" class="tsd-anchor-link">Running the Example App<a href="#running-the-example-app" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p>To see an example of this in action you can run the following command <code>npm run start-client-example</code> and navigate to <a href="http://localhost:3000">http://localhost:3000</a> on your machine.</p>
|
|
42
|
+
<h3 id="ie11-support" class="tsd-anchor-link">IE11 support<a href="#ie11-support" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p>Our target version of javascript is ES2015. This means that you will be required to transpile this library if you wish to support IE11. In addition the necessary polyfills will need to be loaded by both the host application and the client frame.</p>
|
|
43
|
+
</div></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><a href="#iframe-coordinator"><span>iframe-<wbr/>coordinator</span></a><ul><li><a href="#why-would-i-want-to-do-that"><span>Why would <wbr/>I want to do that?</span></a></li><li><a href="#how-do-i-use-it"><span>How do <wbr/>I use it?</span></a></li><li><ul><li><a href="#host-application-example"><span>Host <wbr/>Application <wbr/>Example</span></a></li><li><a href="#client-application-setup"><span>Client <wbr/>Application <wbr/>Setup</span></a></li><li><a href="#local-client-application-development"><span>Local <wbr/>Client <wbr/>Application <wbr/>Development</span></a></li><li><a href="#development"><span>Development</span></a></li><li><ul><li><a href="#installation"><span>Installation</span></a></li><li><a href="#building-the-library"><span>Building the <wbr/>Library</span></a></li><li><a href="#testing"><span>Testing</span></a></li><li><a href="#running-the-example-app"><span>Running the <wbr/>Example <wbr/>App</span></a></li></ul></li><li><a href="#ie11-support"><span>IE11 support</span></a></li></ul></li></ul></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>ClientConfigOptions | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="../modules/client.html">client</a></li><li><a href="" aria-current="page">ClientConfigOptions</a></li></ul><h1>Interface ClientConfigOptions</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>Client configuration options.</p>
|
|
2
|
+
</div></section><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">ClientConfigOptions</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#hostorigin">hostOrigin</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/client.ts#L16">client.ts:16</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#hostorigin" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>host<wbr/>Origin?</span></a>
|
|
3
|
+
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="hostorigin"><code class="tsd-tag">Optional</code><span>host<wbr/>Origin</span><a href="#hostorigin" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">hostOrigin</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>The expected origin of the host application. Messages will not be sent to other origins.</p>
|
|
4
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/client.ts#L18">client.ts:18</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#hostorigin"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>host<wbr/>Origin</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>ClientConfig | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="../modules/host.html">host</a></li><li><a href="" aria-current="page">ClientConfig</a></li></ul><h1>Interface ClientConfig</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>Data structure defining the list of iframe clients, their associated routes
|
|
2
|
+
and any environmental data required by the clients.</p>
|
|
3
|
+
</div></section><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">ClientConfig</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#clients">clients</a><span class="tsd-signature-symbol">:</span> <a href="host.RoutingMap.html" class="tsd-signature-type tsd-kind-interface">RoutingMap</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#envdata">envData</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">EnvData</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/elements/frame-router.ts#L15">elements/frame-router.ts:15</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#clients" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>clients</span></a>
|
|
4
|
+
<a href="#envdata" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>env<wbr/>Data</span></a>
|
|
5
|
+
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="clients"><span>clients</span><a href="#clients" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">clients</span><span class="tsd-signature-symbol">:</span> <a href="host.RoutingMap.html" class="tsd-signature-type tsd-kind-interface">RoutingMap</a></div><div class="tsd-comment tsd-typography"><p>The map of registrations for the available clients.</p>
|
|
6
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/elements/frame-router.ts#L17">elements/frame-router.ts:17</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="envdata"><span>env<wbr/>Data</span><a href="#envdata" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">envData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">EnvData</span></div><div class="tsd-comment tsd-typography"><p>Information about the host environment.</p>
|
|
7
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/elements/frame-router.ts#L19">elements/frame-router.ts:19</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#clients"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>clients</span></a><a href="#envdata"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>env<wbr/>Data</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>ClientRegistration | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="../modules/host.html">host</a></li><li><a href="" aria-current="page">ClientRegistration</a></li></ul><h1>Interface ClientRegistration</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>Configuration for a single <code>frame-router</code> client.</p>
|
|
2
|
+
<p>The 'url' property is the location where the client application is hosted. If the
|
|
3
|
+
client uses fragment-based routing, the URL should include a hash fragment, e.g.
|
|
4
|
+
<code>http://example.com/client/#/</code> if the client uses pushState routing, leave the
|
|
5
|
+
fragment out, e.g. <code>http://example.com/client</code>.</p>
|
|
6
|
+
<p>The <code>assignedRoute</code> property is the prefix for all routes that will be mapped to this client.
|
|
7
|
+
This prefix will be stripped when setting the route on the client. As an example,
|
|
8
|
+
if <code>assignedRoute</code> is <code>/foo/bar/</code>, <code>url</code> is <code>https://example.com/client/#/</code> and the
|
|
9
|
+
<code>frame-router</code> element is passed the route <code>/foo/bar/baz/qux</code>, the embedded iframe URL
|
|
10
|
+
will be <code>http://example.com/client/#/baz/qux</code></p>
|
|
11
|
+
</div></section><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">ClientRegistration</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#allow">allow</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#assignedroute">assignedRoute</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#defaulttitle">defaultTitle</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#sandbox">sandbox</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#url">url</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/HostRouter.ts#L96">HostRouter.ts:96</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#allow" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>allow?</span></a>
|
|
12
|
+
<a href="#assignedroute" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>assigned<wbr/>Route</span></a>
|
|
13
|
+
<a href="#defaulttitle" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>default<wbr/>Title?</span></a>
|
|
14
|
+
<a href="#sandbox" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>sandbox?</span></a>
|
|
15
|
+
<a href="#url" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>url</span></a>
|
|
16
|
+
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="allow"><code class="tsd-tag">Optional</code><span>allow</span><a href="#allow" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">allow</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>Sets the iframe's <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#attr-allow">allow attribute</a>
|
|
17
|
+
for this client.</p>
|
|
18
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/HostRouter.ts#L105">HostRouter.ts:105</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="assignedroute"><span>assigned<wbr/>Route</span><a href="#assignedroute" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">assignedRoute</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>The <code>frame-router</code> route attribute prefix that maps to this client app</p>
|
|
19
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/HostRouter.ts#L100">HostRouter.ts:100</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="defaulttitle"><code class="tsd-tag">Optional</code><span>default<wbr/>Title</span><a href="#defaulttitle" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">defaultTitle</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>Sets the iframe's default <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#accessibility_concerns">title</a> attribute.
|
|
20
|
+
This is required for accessibility.</p>
|
|
21
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/HostRouter.ts#L115">HostRouter.ts:115</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="sandbox"><code class="tsd-tag">Optional</code><span>sandbox</span><a href="#sandbox" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">sandbox</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>Sets the iframe's <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#attr-sandbox">sandbox attribute</a>
|
|
22
|
+
for this client. Values wll be merged with built-in defaults.</p>
|
|
23
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/HostRouter.ts#L110">HostRouter.ts:110</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="url"><span>url</span><a href="#url" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">url</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>The URL where the client application is hosted</p>
|
|
24
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/HostRouter.ts#L98">HostRouter.ts:98</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#allow"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>allow</span></a><a href="#assignedroute"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>assigned<wbr/>Route</span></a><a href="#defaulttitle"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>default<wbr/>Title</span></a><a href="#sandbox"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>sandbox</span></a><a href="#url"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>url</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>RoutingMap | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="../modules/host.html">host</a></li><li><a href="" aria-current="page">RoutingMap</a></li></ul><h1>Interface RoutingMap</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>A map from client identifiers to configuration describing
|
|
2
|
+
where the client app is hosted, and what routes should be
|
|
3
|
+
directed to it.</p>
|
|
4
|
+
</div></section><section class="tsd-panel"><h4 class="tsd-before-signature">Indexable</h4><ul class="tsd-signatures"><li class="tsd-index-signature"><div class="tsd-signature"><span class="tsd-signature-symbol">[</span><span class="tsd-kind-parameter">key</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <a href="host.ClientRegistration.html" class="tsd-signature-type tsd-kind-interface">ClientRegistration</a></div></li></ul></section><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/HostRouter.ts#L78">HostRouter.ts:78</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>AppData | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="../modules/workerPool.html">workerPool</a></li><li><a href="" aria-current="page">AppData</a></li></ul><h1>Interface AppData</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>Worker-associated application data</p>
|
|
2
|
+
</div></section><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">AppData</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#assignedroute">assignedRoute</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#url">url</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L37">workerPool.ts:37</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#assignedroute" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>assigned<wbr/>Route</span></a>
|
|
3
|
+
<a href="#url" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>url</span></a>
|
|
4
|
+
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="assignedroute"><span>assigned<wbr/>Route</span><a href="#assignedroute" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">assignedRoute</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>The route the application is assigned to in the <a href="../classes/host.FrameRouterElement.html" class="tsd-kind-class">FrameRouterElement</a>'s <a href="host.ClientConfig.html" class="tsd-kind-interface">ClientConfig</a></p>
|
|
5
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L41">workerPool.ts:41</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="url"><span>url</span><a href="#url" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">url</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>The URL of the associated app</p>
|
|
6
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L39">workerPool.ts:39</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#assignedroute"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>assigned<wbr/>Route</span></a><a href="#url"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>url</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>WorkerConfig | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="../modules/workerPool.html">workerPool</a></li><li><a href="" aria-current="page">WorkerConfig</a></li></ul><h1>Interface WorkerConfig</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>Data structure defining the list of web workers, and any environmental data
|
|
2
|
+
they may need for initialization.</p>
|
|
3
|
+
</div></section><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">WorkerConfig</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#clients">clients</a><span class="tsd-signature-symbol">:</span> <a href="workerPool.WorkerRegistry.html" class="tsd-signature-type tsd-kind-interface">WorkerRegistry</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#envdata">envData</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">EnvData</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L10">workerPool.ts:10</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#clients" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>clients</span></a>
|
|
4
|
+
<a href="#envdata" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>env<wbr/>Data</span></a>
|
|
5
|
+
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="clients"><span>clients</span><a href="#clients" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">clients</span><span class="tsd-signature-symbol">:</span> <a href="workerPool.WorkerRegistry.html" class="tsd-signature-type tsd-kind-interface">WorkerRegistry</a></div><div class="tsd-comment tsd-typography"><p>Web worker registrations</p>
|
|
6
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L12">workerPool.ts:12</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="envdata"><span>env<wbr/>Data</span><a href="#envdata" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">envData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">EnvData</span></div><div class="tsd-comment tsd-typography"><p>Information about the host environment.</p>
|
|
7
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L14">workerPool.ts:14</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#clients"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>clients</span></a><a href="#envdata"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>env<wbr/>Data</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>WorkerItem | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="../modules/workerPool.html">workerPool</a></li><li><a href="" aria-current="page">WorkerItem</a></li></ul><h1>Interface WorkerItem</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>Web worker metadata.</p>
|
|
2
|
+
</div></section><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">WorkerItem</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#app">app</a><span class="tsd-signature-symbol">:</span> <a href="workerPool.AppData.html" class="tsd-signature-type tsd-kind-interface">AppData</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#script">script</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">"string | URL"</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L27">workerPool.ts:27</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#app" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>app</span></a>
|
|
3
|
+
<a href="#script" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>script</span></a>
|
|
4
|
+
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="app"><span>app</span><a href="#app" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">app</span><span class="tsd-signature-symbol">:</span> <a href="workerPool.AppData.html" class="tsd-signature-type tsd-kind-interface">AppData</a></div><div class="tsd-comment tsd-typography"><p>Application metadata. Allows a worker easily generate links for an associated application</p>
|
|
5
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L31">workerPool.ts:31</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="script"><span>script</span><a href="#script" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">script</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">"string | URL"</span></div><div class="tsd-comment tsd-typography"><p>The script to run for the worker</p>
|
|
6
|
+
</div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L29">workerPool.ts:29</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#app"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>app</span></a><a href="#script"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>script</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>WorkerRegistry | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="../modules/workerPool.html">workerPool</a></li><li><a href="" aria-current="page">WorkerRegistry</a></li></ul><h1>Interface WorkerRegistry</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>Map from logical identifier to worker details. Keys are used to address workers.</p>
|
|
2
|
+
</div></section><section class="tsd-panel"><h4 class="tsd-before-signature">Indexable</h4><ul class="tsd-signatures"><li class="tsd-index-signature"><div class="tsd-signature"><span class="tsd-signature-symbol">[</span><span class="tsd-kind-parameter">key</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <a href="workerPool.WorkerItem.html" class="tsd-signature-type tsd-kind-interface">WorkerItem</a></div></li></ul></section><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/purecloudlabs/iframe-coordinator/blob/5038b975b9e5431fdc7730ce4b446b87c660e445/packages/iframe-coordinator/src/workerPool.ts#L20">workerPool.ts:20</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>client | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">client</a></li></ul><h1>Module client</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>[[include:client-setup.md]]</p>
|
|
2
|
+
</div></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Classes"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Classes</h2></summary><dl class="tsd-member-summaries"><dt class="tsd-member-summary" id="client"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="../assets/icons.svg#icon-128"></use></svg><a href="../classes/client.Client.html">Client</a><a href="#client" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd></dl></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Interfaces"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Interfaces</h2></summary><dl class="tsd-member-summaries"><dt class="tsd-member-summary" id="clientconfigoptions"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="../assets/icons.svg#icon-256"></use></svg><a href="../interfaces/client.ClientConfigOptions.html">ClientConfigOptions</a><a href="#clientconfigoptions" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd></dl></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Classes"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Classes</summary><div><a href="#client"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="../assets/icons.svg#icon-128"></use></svg><span>Client</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Interfaces"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Interfaces</summary><div><a href="#clientconfigoptions"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="../assets/icons.svg#icon-256"></use></svg><span>Client<wbr/>Config<wbr/>Options</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>host | iframe-coordinator - v6.4.0-beta.afb5b99.0</title><meta name="description" content="Documentation for iframe-coordinator"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">host</a></li></ul><h1>Module host</h1></div><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Classes"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Classes</h2></summary><dl class="tsd-member-summaries"><dt class="tsd-member-summary" id="framerouterelement"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="../assets/icons.svg#icon-128"></use></svg><a href="../classes/host.FrameRouterElement.html">FrameRouterElement</a><a href="#framerouterelement" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd></dl></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Interfaces"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Interfaces</h2></summary><dl class="tsd-member-summaries"><dt class="tsd-member-summary" id="clientconfig"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="../assets/icons.svg#icon-256"></use></svg><a href="../interfaces/host.ClientConfig.html">ClientConfig</a><a href="#clientconfig" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="clientregistration"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="../assets/icons.svg#icon-256"></use></svg><a href="../interfaces/host.ClientRegistration.html">ClientRegistration</a><a href="#clientregistration" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="routingmap"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="../assets/icons.svg#icon-256"></use></svg><a href="../interfaces/host.RoutingMap.html">RoutingMap</a><a href="#routingmap" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd></dl></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Functions"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Functions</h2></summary><dl class="tsd-member-summaries"><dt class="tsd-member-summary" id="registercustomelements"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Function"><use href="../assets/icons.svg#icon-64"></use></svg><a href="../functions/host.registerCustomElements.html">registerCustomElements</a><a href="#registercustomelements" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd></dl></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-References"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>References</h2></summary><dl class="tsd-member-summaries"><dt class="tsd-member-summary" id="workerpool"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="../assets/icons.svg#icon-128"></use></svg><span>WorkerPool</span><span> → </span><a href="../classes/workerPool.WorkerPool.html">WorkerPool</a><a href="#workerpool" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd></dl></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Classes"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Classes</summary><div><a href="#framerouterelement"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="../assets/icons.svg#icon-128"></use></svg><span>Frame<wbr/>Router<wbr/>Element</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Interfaces"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Interfaces</summary><div><a href="#clientconfig"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="../assets/icons.svg#icon-256"></use></svg><span>Client<wbr/>Config</span></a><a href="#clientregistration"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="../assets/icons.svg#icon-256"></use></svg><span>Client<wbr/>Registration</span></a><a href="#routingmap"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="../assets/icons.svg#icon-256"></use></svg><span>Routing<wbr/>Map</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Functions"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Functions</summary><div><a href="#registercustomelements"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Function"><use href="../assets/icons.svg#icon-64"></use></svg><span>register<wbr/>Custom<wbr/>Elements</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-References"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>References</summary><div><a href="#workerpool"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Reference"><use href="../assets/icons.svg#icon-4194304"></use></svg><span>Worker<wbr/>Pool</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">iframe-coordinator - v6.4.0-beta.afb5b99.0</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|