This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
indieauth/docs/classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html

510 lines
26 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Documentation</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/js/all.min.js" integrity="sha256-0vuk8LXoyrmCjp1f0O300qo1M75ZQyhH9X3J6d+scmk=" crossorigin="anonymous"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/taproot.html"><abbr title="\Taproot">Taproot</abbr></a></h4>
<ul class="phpdocumentor-list">
<li><a href="namespaces/taproot-indieauth.html"><abbr title="\Taproot\IndieAuth">IndieAuth</abbr></a></li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/taproot.html">Taproot</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/taproot-indieauth.html">IndieAuth</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/taproot-indieauth-callback.html">Callback</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
SingleUserPasswordAuthenticationCallback
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Callback/SingleUserPasswordAuthenticationCallback.php"><a href="files/src-callback-singleuserpasswordauthenticationcallback.html"><abbr title="src/Callback/SingleUserPasswordAuthenticationCallback.php">SingleUserPasswordAuthenticationCallback.php</abbr></a></abbr>
:
2021-06-12 23:30:44 +01:00
<span class="phpdocumentor-element-found-in__line">45</span>
</aside>
<p class="phpdocumentor-summary">Single User Password Authentication Callback</p>
2021-06-12 23:01:32 +01:00
<section class="phpdocumentor-description"><p>A simple example authentication callback which performs authentication itself rather
than redirecting to an existing authentication flow.</p>
<p>In some cases, it may make sense for your IndieAuth server to be able to authenticate
users itself, rather than redirecting them to an existing authentication flow. This
implementation provides a simple single-user password authentication method intended
for bootstrapping and testing purposes.</p>
<p>The sign-in form can be customised by making your own template and passing the path to
the constructor.</p>
<p>Minimal usage:</p>
2021-06-12 23:30:44 +01:00
<pre class="prettyprint"><code class="language-php">// One-off during app configuration:
2021-06-12 23:01:32 +01:00
YOUR_HASHED_PASSWORD = password_hash('my super strong password', PASSWORD_DEFAULT);
// In your app:
use Taproot\IndieAuth;
$server = new IndieAuth\Server([
'authenticationHandler' =&gt; new IndieAuth\Callback\SingleUserPasswordAuthenticationCallback(
2021-06-12 23:01:32 +01:00
['me' =&gt; 'https://me.example.com/'],
YOUR_HASHED_PASSWORD
)
]);
</code></pre>
<p>See documentation for <code class="prettyprint">__construct()</code> for information about customising behaviour.</p>
</section>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#constant_PASSWORD_FORM_PARAMETER">PASSWORD_FORM_PARAMETER</a>
<span>
&nbsp;= &#039;taproot_indieauth_server_password&#039; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -property -public">
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#property_csrfKey">$csrfKey</a>
<span>
&nbsp;: string </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -property -public">
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#property_formTemplate">$formTemplate</a>
<span>
&nbsp;: string </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#property_hashedPassword">$hashedPassword</a>
<span>
&nbsp;: string </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#property_user">$user</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#method___construct">__construct()</a>
<span>
&nbsp;: mixed </span>
</dt>
2021-06-12 23:01:32 +01:00
<dd>Constructor</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#method___invoke">__invoke()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd></dd>
</dl>
<section class="phpdocumentor-constants">
<h3 class="phpdocumentor-elements__header" id="constants">
Constants
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#constants" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_PASSWORD_FORM_PARAMETER">
PASSWORD_FORM_PARAMETER
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#constant_PASSWORD_FORM_PARAMETER" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Callback/SingleUserPasswordAuthenticationCallback.php"><a href="files/src-callback-singleuserpasswordauthenticationcallback.html"><abbr title="src/Callback/SingleUserPasswordAuthenticationCallback.php">SingleUserPasswordAuthenticationCallback.php</abbr></a></abbr>
:
2021-06-12 23:30:44 +01:00
<span class="phpdocumentor-element-found-in__line">46</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">PASSWORD_FORM_PARAMETER</span>
= <span class="phpdocumentor-signature__default-value">&#039;taproot_indieauth_server_password&#039;</span>
</code>
</article>
</section>
<section class="phpdocumentor-properties">
<h3 class="phpdocumentor-elements__header" id="properties">
Properties
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="
phpdocumentor-element
-property
-public
"
>
<h4 class="phpdocumentor-element__name" id="property_csrfKey">
$csrfKey
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#property_csrfKey" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Callback/SingleUserPasswordAuthenticationCallback.php"><a href="files/src-callback-singleuserpasswordauthenticationcallback.html"><abbr title="src/Callback/SingleUserPasswordAuthenticationCallback.php">SingleUserPasswordAuthenticationCallback.php</abbr></a></abbr>
:
2021-06-12 23:30:44 +01:00
<span class="phpdocumentor-element-found-in__line">48</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">string</span>
<span class="phpdocumentor-signature__name">$csrfKey</span>
</code>
</article>
<article
class="
phpdocumentor-element
-property
-public
"
>
<h4 class="phpdocumentor-element__name" id="property_formTemplate">
$formTemplate
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#property_formTemplate" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Callback/SingleUserPasswordAuthenticationCallback.php"><a href="files/src-callback-singleuserpasswordauthenticationcallback.html"><abbr title="src/Callback/SingleUserPasswordAuthenticationCallback.php">SingleUserPasswordAuthenticationCallback.php</abbr></a></abbr>
:
2021-06-12 23:30:44 +01:00
<span class="phpdocumentor-element-found-in__line">49</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">string</span>
<span class="phpdocumentor-signature__name">$formTemplate</span>
</code>
</article>
<article
class="
phpdocumentor-element
-property
-protected
"
>
<h4 class="phpdocumentor-element__name" id="property_hashedPassword">
$hashedPassword
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#property_hashedPassword" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Callback/SingleUserPasswordAuthenticationCallback.php"><a href="files/src-callback-singleuserpasswordauthenticationcallback.html"><abbr title="src/Callback/SingleUserPasswordAuthenticationCallback.php">SingleUserPasswordAuthenticationCallback.php</abbr></a></abbr>
:
2021-06-12 23:30:44 +01:00
<span class="phpdocumentor-element-found-in__line">51</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__type">string</span>
<span class="phpdocumentor-signature__name">$hashedPassword</span>
</code>
</article>
<article
class="
phpdocumentor-element
-property
-protected
"
>
<h4 class="phpdocumentor-element__name" id="property_user">
$user
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#property_user" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Callback/SingleUserPasswordAuthenticationCallback.php"><a href="files/src-callback-singleuserpasswordauthenticationcallback.html"><abbr title="src/Callback/SingleUserPasswordAuthenticationCallback.php">SingleUserPasswordAuthenticationCallback.php</abbr></a></abbr>
:
2021-06-12 23:30:44 +01:00
<span class="phpdocumentor-element-found-in__line">50</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__type">array&lt;string|int, mixed&gt;</span>
<span class="phpdocumentor-signature__name">$user</span>
</code>
</article>
</section>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method___construct">
__construct()
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Callback/SingleUserPasswordAuthenticationCallback.php"><a href="files/src-callback-singleuserpasswordauthenticationcallback.html"><abbr title="src/Callback/SingleUserPasswordAuthenticationCallback.php">SingleUserPasswordAuthenticationCallback.php</abbr></a></abbr>
:
2021-06-12 23:30:44 +01:00
<span class="phpdocumentor-element-found-in__line">61</span>
</aside>
2021-06-12 23:01:32 +01:00
<p class="phpdocumentor-summary">Constructor</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
2021-06-12 23:01:32 +01:00
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array&lt;string|int, mixed&gt;&nbsp;</span><span class="phpdocumentor-signature__argument__name">$user</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$hashedPassword</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">string|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$formTemplate</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">string|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$csrfKey</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<section class="phpdocumentor-description"></section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$user</span>
: <span class="phpdocumentor-signature__argument__return-type">array&lt;string|int, mixed&gt;</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
2021-06-12 23:01:32 +01:00
<section class="phpdocumentor-description"><p>An array representing the user, which will be returned on a successful authentication. MUST include a 'me' key, may also contain a 'profile' key, or other keys at your discretion.</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$hashedPassword</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
2021-06-12 23:01:32 +01:00
<section class="phpdocumentor-description"><p>The password used to authenticate as $user, hashed by <code class="prettyprint">password_hash($pass, PASSWORD_DEFAULT)</code></p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
2021-06-12 23:01:32 +01:00
<span class="phpdocumentor-signature__argument__name">$formTemplate</span>
: <span class="phpdocumentor-signature__argument__return-type">string|null</span>
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
2021-06-12 23:01:32 +01:00
<section class="phpdocumentor-description"><p>The path to a template used to render the sign-in form. Uses default if null.</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
2021-06-12 23:01:32 +01:00
<span class="phpdocumentor-signature__argument__name">$csrfKey</span>
: <span class="phpdocumentor-signature__argument__return-type">string|null</span>
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
2021-06-12 23:01:32 +01:00
<section class="phpdocumentor-description"><p>The key under which to fetch a CSRF token from <code class="prettyprint">$request</code> attributes, and as the CSRF token name in submitted form data. Defaults to the Server default, only change if youre using a custom CSRF middleware.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
<section class="phpdocumentor-description"></section>
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method___invoke">
__invoke()
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#method___invoke" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Callback/SingleUserPasswordAuthenticationCallback.php"><a href="files/src-callback-singleuserpasswordauthenticationcallback.html"><abbr title="src/Callback/SingleUserPasswordAuthenticationCallback.php">SingleUserPasswordAuthenticationCallback.php</abbr></a></abbr>
:
2021-06-13 14:35:36 +01:00
<span class="phpdocumentor-element-found-in__line">75</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
2021-06-13 14:35:36 +01:00
<span class="phpdocumentor-signature__name">__invoke</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Http\Message\ServerRequestInterface">ServerRequestInterface</abbr>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$request</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$formAction</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">string|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$normalizedMeUrl</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$request</span>
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Http\Message\ServerRequestInterface">ServerRequestInterface</abbr></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$formAction</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$normalizedMeUrl</span>
: <span class="phpdocumentor-signature__argument__return-type">string|null</span>
2021-06-13 14:35:36 +01:00
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
<section class="phpdocumentor-description"></section>
</article>
</section>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/Taproot-IndieAuth-Callback-SingleUserPasswordAuthenticationCallback.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
</body>
</html>