51 lines
36 KiB
HTML

<!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>AppRunner | Community Solid Server - v4.0.1</title><meta name="description" content="Documentation for Community Solid Server - v4.0.1"/><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 async src="../assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">Community Solid Server - v4.0.1</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">Community Solid Server - v4.0.1</a></li><li><a href="AppRunner.html">AppRunner</a></li></ul><h1>Class AppRunner</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><div class="lead">
<p>A class that can be used to instantiate and start a server based on a Component.js configuration.</p>
</div></div></section><section class="tsd-panel tsd-hierarchy"><h3>Hierarchy</h3><ul class="tsd-hierarchy"><li><span class="target">AppRunner</span></li></ul></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Constructors</h3><ul class="tsd-index-list"><li class="tsd-kind-constructor tsd-parent-kind-class"><a href="AppRunner.html#constructor" class="tsd-kind-icon">constructor</a></li></ul></section><section class="tsd-index-section tsd-is-private tsd-is-private-protected"><h3>Properties</h3><ul class="tsd-index-list"><li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="AppRunner.html#logger" class="tsd-kind-icon">logger</a></li></ul></section><section class="tsd-index-section "><h3>Methods</h3><ul class="tsd-index-list"><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#create" class="tsd-kind-icon">create</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="AppRunner.html#createApp" class="tsd-kind-icon">create<wbr/>App</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#createCli" class="tsd-kind-icon">create<wbr/>Cli</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="AppRunner.html#createComponentsManager" class="tsd-kind-icon">create<wbr/>Components<wbr/>Manager</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="AppRunner.html#resolveError" class="tsd-kind-icon">resolve<wbr/>Error</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="AppRunner.html#resolveVariables" class="tsd-kind-icon">resolve<wbr/>Variables</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#run" class="tsd-kind-icon">run</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#runCli" class="tsd-kind-icon">run<wbr/>Cli</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#runCliSync" class="tsd-kind-icon">run<wbr/>Cli<wbr/>Sync</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Constructors</h2><section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link">constructor<a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">new <wbr/>App<wbr/>Runner<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="AppRunner.html" class="tsd-signature-type" data-tsd-kind="Class">AppRunner</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="AppRunner.html" class="tsd-signature-type" data-tsd-kind="Class">AppRunner</a></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group tsd-is-private tsd-is-private-protected"><h2>Properties</h2><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-private"><a id="logger" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagPrivate">Private</span> <span class="tsd-flag ts-flagReadonly">Readonly</span> logger<a href="#logger" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">logger<span class="tsd-signature-symbol">:</span> <a href="../interfaces/Logger.html" class="tsd-signature-type" data-tsd-kind="Interface">Logger</a><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L29">src/init/AppRunner.ts:29</a></li></ul></aside></section></section><section class="tsd-panel-group tsd-member-group "><h2>Methods</h2><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="create" class="tsd-anchor"></a><h3 class="tsd-anchor-link">create<a href="#create" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">create<span class="tsd-signature-symbol">(</span>loaderProperties<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">IComponentsManagerBuilderOptions</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span>, configFile<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, variableBindings<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">VariableBindings</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L59">src/init/AppRunner.ts:59</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Returns an App object, created with the given config, that can start and stop the Solid server.
Keys of the <code>variableBindings</code> object should be Components.js variables.
E.g.: <code>{ &#39;urn:solid-server:default:variable:rootFilePath&#39;: &#39;.data&#39; }</code>.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>loaderProperties: <span class="tsd-signature-type">IComponentsManagerBuilderOptions</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>Components.js loader properties.</p>
</div></div></li><li><h5>configFile: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>Path to the server config file.</p>
</div></div></li><li><h5>variableBindings: <span class="tsd-signature-type">VariableBindings</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>Bindings of Components.js variables.</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-private"><a id="createApp" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagPrivate">Private</span> create<wbr/>App<a href="#createApp" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-private"><li class="tsd-signature tsd-kind-icon">create<wbr/>App<span class="tsd-signature-symbol">(</span>componentsManager<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">ComponentsManager</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span>, variables<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L178">src/init/AppRunner.ts:178</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The second Components.js instantiation,
where the App is created and started using the variable mappings.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>componentsManager: <span class="tsd-signature-type">ComponentsManager</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span></h5></li><li><h5>variables: <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="createCli" class="tsd-anchor"></a><h3 class="tsd-anchor-link">create<wbr/>Cli<a href="#createCli" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">create<wbr/>Cli<span class="tsd-signature-symbol">(</span>argv<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">CliArgv</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L109">src/init/AppRunner.ts:109</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Returns an App object, created by parsing the Command line arguments, that can start and stop the Solid server.
Will exit the process on failure.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>argv: <span class="tsd-signature-type">CliArgv</span><span class="tsd-signature-symbol"> = process.argv</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>Command line arguments.</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a id="createComponentsManager" class="tsd-anchor"></a><h3 class="tsd-anchor-link">create<wbr/>Components<wbr/>Manager<a href="#createComponentsManager" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><li class="tsd-signature tsd-kind-icon">create<wbr/>Components<wbr/>Manager<span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span>loaderProperties<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">IComponentsManagerBuilderOptions</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span>, configFile<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">ComponentsManager</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L147">src/init/AppRunner.ts:147</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Creates the Components Manager that will be used for instantiating.</p>
</div></div><h4 class="tsd-type-parameters-title">Type parameters</h4><ul class="tsd-type-parameters"><li><h4>T</h4></li></ul><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>loaderProperties: <span class="tsd-signature-type">IComponentsManagerBuilderOptions</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h5></li><li><h5>configFile: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">ComponentsManager</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-private"><a id="resolveError" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagPrivate">Private</span> resolve<wbr/>Error<a href="#resolveError" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-private"><li class="tsd-signature tsd-kind-icon">resolve<wbr/>Error<span class="tsd-signature-symbol">(</span>message<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, error<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">never</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L192">src/init/AppRunner.ts:192</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Throws a new error that provides additional information through the extra message.
Also appends the stack trace to the message.
This is needed for errors that are thrown before the logger is created as we can&#39;t log those the standard way.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>message: <span class="tsd-signature-type">string</span></h5></li><li><h5>error: <span class="tsd-signature-type">unknown</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">never</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-private"><a id="resolveVariables" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagPrivate">Private</span> resolve<wbr/>Variables<a href="#resolveVariables" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-private"><li class="tsd-signature tsd-kind-icon">resolve<wbr/>Variables<span class="tsd-signature-symbol">(</span>componentsManager<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">ComponentsManager</span><span class="tsd-signature-symbol">&lt;</span><a href="CliResolver.html" class="tsd-signature-type" data-tsd-kind="Class">CliResolver</a><span class="tsd-signature-symbol">&gt;</span>, argv<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">VariableBindings</span><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L160">src/init/AppRunner.ts:160</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Handles the first Components.js instantiation,
where CLI settings and variable mappings are created.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>componentsManager: <span class="tsd-signature-type">ComponentsManager</span><span class="tsd-signature-symbol">&lt;</span><a href="CliResolver.html" class="tsd-signature-type" data-tsd-kind="Class">CliResolver</a><span class="tsd-signature-symbol">&gt;</span></h5></li><li><h5>argv: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">VariableBindings</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="run" class="tsd-anchor"></a><h3 class="tsd-anchor-link">run<a href="#run" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">run<span class="tsd-signature-symbol">(</span>loaderProperties<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">IComponentsManagerBuilderOptions</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span>, configFile<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, variableBindings<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">VariableBindings</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L41">src/init/AppRunner.ts:41</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Starts the server with a given config.
This method can be used to start the server from within another JavaScript application.
Keys of the <code>variableBindings</code> object should be Components.js variables.
E.g.: <code>{ &#39;urn:solid-server:default:variable:rootFilePath&#39;: &#39;.data&#39; }</code>.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>loaderProperties: <span class="tsd-signature-type">IComponentsManagerBuilderOptions</span><span class="tsd-signature-symbol">&lt;</span><a href="App.html" class="tsd-signature-type" data-tsd-kind="Class">App</a><span class="tsd-signature-symbol">&gt;</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>Components.js loader properties.</p>
</div></div></li><li><h5>configFile: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>Path to the server config file.</p>
</div></div></li><li><h5>variableBindings: <span class="tsd-signature-type">VariableBindings</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>Parameters to pass into the VariableResolver.</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="runCli" class="tsd-anchor"></a><h3 class="tsd-anchor-link">run<wbr/>Cli<a href="#runCli" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">run<wbr/>Cli<span class="tsd-signature-symbol">(</span>argv<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">CliArgv</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L93">src/init/AppRunner.ts:93</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Starts the server as a command-line application.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> argv: <span class="tsd-signature-type">CliArgv</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>Command line arguments.</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="runCliSync" class="tsd-anchor"></a><h3 class="tsd-anchor-link">run<wbr/>Cli<wbr/>Sync<a href="#runCliSync" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">run<wbr/>Cli<wbr/>Sync<span class="tsd-signature-symbol">(</span>__namedParameters<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>argv<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">CliArgv</span><span class="tsd-signature-symbol">; </span>stderr<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">WriteStream</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/5b48766/src/init/AppRunner.ts#L82">src/init/AppRunner.ts:82</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Starts the server as a command-line application.
Will exit the process on failure.</p>
</div><div><p>Made non-async to lower the risk of unhandled promise rejections.
This is only relevant when this is used to start as a Node.js application on its own,
if you use this as part of your code you probably want to use the async version.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>__namedParameters: <span class="tsd-signature-symbol">{ </span>argv<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">CliArgv</span><span class="tsd-signature-symbol">; </span>stderr<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">WriteStream</span><span class="tsd-signature-symbol"> }</span></h5><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> argv<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">CliArgv</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> stderr<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">WriteStream</span></h5></li></ul></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../modules.html">Exports</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="current tsd-kind-class"><a href="AppRunner.html" class="tsd-kind-icon">App<wbr/>Runner</a><ul><li class="tsd-kind-constructor tsd-parent-kind-class"><a href="AppRunner.html#constructor" class="tsd-kind-icon">constructor</a></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="AppRunner.html#logger" class="tsd-kind-icon">logger</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#create" class="tsd-kind-icon">create</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="AppRunner.html#createApp" class="tsd-kind-icon">create<wbr/>App</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#createCli" class="tsd-kind-icon">create<wbr/>Cli</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="AppRunner.html#createComponentsManager" class="tsd-kind-icon">create<wbr/>Components<wbr/>Manager</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="AppRunner.html#resolveError" class="tsd-kind-icon">resolve<wbr/>Error</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="AppRunner.html#resolveVariables" class="tsd-kind-icon">resolve<wbr/>Variables</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#run" class="tsd-kind-icon">run</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#runCli" class="tsd-kind-icon">run<wbr/>Cli</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="AppRunner.html#runCliSync" class="tsd-kind-icon">run<wbr/>Cli<wbr/>Sync</a></li></ul></li></ul></nav></div></div></div><footer class=""><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li><li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li><li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-constructor tsd-parent-kind-interface"><span class="tsd-kind-icon">Constructor</span></li><li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li><li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-method tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="overlay"></div><script src="../assets/main.js"></script></body></html>